Space Engineers

Space Engineers

Not enough ratings
Database interfaz
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
2.480 KB
9 Nov, 2015 @ 9:54pm
14 Nov, 2015 @ 11:39am
6 Change Notes ( view )

Subscribe to download
Database interfaz

In 1 collection by cab331
Mis Scripts
3 items
Description
On discussions I put the examples mains

Guide Apps:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=604974126



Auto Interfaz example
https://steamhost.cn/steamcommunity_com/workshop/filedetails/discussion/551473621/496881121379827159/


New! Door Security DataBase Interfaz System
https://steamhost.cn/steamcommunity_com/workshop/filedetails/discussion/551473621/496881136898729497/

Interfaz example
https://steamhost.cn/steamcommunity_com/workshop/filedetails/discussion/551473621/496880503082750646/

DataBase Example
https://steamhost.cn/steamcommunity_com/workshop/filedetails/discussion/551473621/496880503082748124/

Create a Red like a internet:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=599847036

------------------------------------------------------------------
Object:

database:
Permite guardar informacion en el tipo string y posee metodos para convertirala a datos numericos.
Podemos crear bases de datos y utilizarlas para crear programas más robustos o guardar variables.

Las database se componen de filas y columnas donde las filas son una List<string> y las columnas contenidas en el dato string de cada fila.

Si queremos hacer una database de 2 filas x 3 columnas:

columan1|columna2|columna3
columan1|columna2|columna3

Si queremos hacer una database de 3 filas x 5 columnas:

columan1|columna2|columna3|columna4|columna5
columan1|columna2|columna3|columna4|columna5
columan1|columna2|columna3|columna4|columna5

Update1.1: Its not nesesary use ' , ' in to the end of fila press 'Intro'

propiedades:

filas List<string>


metodos:

database(string db="null", string columna="null") Constructor
El parametro db es donde podremos alimentar la database
Ejemplo:
database personas = database(_<IMyTextPanel>("DataBase Personas").GetPublicText());

Addfila(string fila) Void
Permite introducir una fila
Ejemplo database.Addfila("Carlos|22|carls1993@wow.com|2015");
//Para separar los campos use '|'


GetDataInt(int Indexfila, int IndexColumna) Int
Permite ir a la posicion deseada dentro de la database y obtener un entero si es posible
Ejemplo:

Database ->

26|78,
2|7

int dato11=database.GetDataInt(0,0);
int dato12=database.GetDataInt(0,1);
nt dato21=database.GetDataInt(1,0);
nt dato22=database.GetDataInt(1,1);

GetDataFloat(int Indexfila, int IndexCol) Float
Permite ir a la posicion deseada dentro de la database y obtener un flotante si es posible

GetDataString(int Indexfila, int IndexCol) String
Permite ir a la posicion deseada dentro de la database y obtener una cadena si es posible

Setfila(int Indexfila, string fila) Void
Cambia una fila ya creada por otra

Save() String
Guarda toda la database en un string

existEnColumnas(int columna, string var) bool
Pregunta si var existe por lo menos para una fila en su columna y devuelve true si, false no

FilaForColumna(int columna, string var) string[]
Pregunta si var existe por lo menos para una fila en su columna y entrega un vector de string y si no devuleve un vector con casilla 0 en "null"

------------------------------------------------------------------------------------------------

Objetc:


interfaz
Objeto que nos permite crear interfaces o menus totalmente personalizables


metodos:

interfaz() Constructor


addMenu(string titulo,string aditionaltext) Void
Crear una nueva interfaz o menu con un titulo y un texto adicional
Ejemlo interfaz.addMenu("Main Menu","Select one option");

addOptionIn(int index, string name, int sig) Void
Crea las opciones a escoger por el usuario, index de la lista de interfaces, name el nombre de la opscion, sig la siguiente interfaz a mostrar
Ejemplo:
interfaz.addMenu("Main Menu","Select one option");//interfaz 0
interfaz. addOptionIn(0, "Next", 1);

interfaz.addMenu("Next","Select one option");//interfaz 1
interfaz. addOptionIn(1, "Back", 0);


run(int teclaon) List<int>
Depende de la funcion:
teclado(string keyup,string keydown,string keycheck,string keyback) int
Debe crear 4 timer blocks he introducir sus nombres en cada uno de las cadenas
Luego:
List<int> moves = interfaz.run(teclado("keyup","keydown","keycheck","keyback"));
run devulve una lista de 3 posiciones enteros
moves[0] => key presionada
moves[1] => cursorposition
moves[2] => interfaz actual


SetIfact(int index) Void
Permite cambiar a una interfaz deseada

makeUsingDataBase(string db) void
Crea una interfaz basado en una database ya creada

ejemplo:

DataBase Display Public Text format -> title , aditionaltext , name_option ; sig

Main Menu|Select one:|Menu 1;1|Menu 2;2
Menu 1|Select one:|back;0
Menu 2|Select one:|Menu 1:1|Main Menu;0

interfaz.makeUsingDataBase(_<IMyTextPanel>("DataBase Display").GetPublicText() );



propiedades:

ifcs List<menu>
para hacer uso de un Display o TextPanel debes hacer:
mostrar(string text,string display, bool pub=true, bool show=true) Void


mostrar(interfaz.ifcs[ interfaz.GetIfact() ].mostrar() , "MyDisplay");

O puede crear un metodo dentro de interfaz:
public string GetMenuLookActual()
{
return ifcs[ ifact ].mostrar();
}

mostrar(interfaz.GetMenuLookActual() , "MyDisplay");






------------------------------------------------------------------------------------------------

Basic Functions:

_<T>(string name, string action) T
Captura el objeto de tipo T
Ejemplo:
_<IMyTextPanel>("MyDisplay").WritePublicTitle("Hi");
_<IMyTextPanel>("MyDisplay","OnOff");


__<T>(string set, string action) Void
Cambia la accion de los objetos llamados inicialmente como set seguido el 1 en incremento.
Ejemplo:
Doors Names:
Set1_1,Set1_2,Set1_3,Set1_4
__<IMyDoor>("Set1_", "Open_On");

Set2_1,Set2_2,Set2_3,Set2_4
__<IMyDoor>("Set2_", "Open_Off");


__<IMyDoor>("Set1_,Set2_", "OnOff");



__<T>(string set, ref List<string> BlocksT); Void
Captura los nombres de un cojunto de elementos.
Ejemplo:

List<string> doors= new List<string>();

__<IMyDoor>("Set1_", ref doors);

for(int i=0;i<doors.Count;i++)
{
//Close the door if it is open
if(_<IMyDoor>(doors [ i ]).Open)
_<IMyDoor>(doors [ i ],"Open_Off");
}


exist(string nombre_objeto) bool
pregunta si el objeto existe, true si, false no





Popular Discussions View All (4)
2
10 Nov, 2015 @ 11:15pm
Door Security Database Interfaz System
cab331
2
10 Nov, 2015 @ 1:07pm
Auto Interfaz Using a database
cab331
1
10 Nov, 2015 @ 10:28am
Interfaz Example
cab331
4 Comments
agonzalezloz 21 Apr, 2019 @ 3:29am 
hola cab331 , gracias por tu magnifico script ,soy usuario de tu script y me preguntaba si estás pensado en actualizarlo , durante la compilación aparecen varios avisos aunque sigue funcionando bien .
Por otro lado me preguntaba si me darías permiso para hacer alguna modificación en el código ,necesito que el 'main' reciba parámetros para poder ser llamado desde otro bloque programable
cab331  [author] 10 Nov, 2015 @ 9:21am 
The video of Interfaz is aviable now!! https://youtu.be/5EF973cHf7w
cab331  [author] 10 Nov, 2015 @ 7:26am 
Interfaz is comming :steamhappy:
cab331  [author] 9 Nov, 2015 @ 11:20pm 
I am going to show you how to create a database and interfaces on videos :steambored: