Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Fabriyin en Diciembre 29, 2019, 01:48:31 am

Título: ¿Como le hago para crear una nueva variable?
Publicado por: Fabriyin en Diciembre 29, 2019, 01:48:31 am
Quiero saber como crear una variable , ¿necesito explicar algo más? ???
Título: Re:¿Como le hago para crear una nueva variable?
Publicado por: 3dgeminis en Diciembre 29, 2019, 04:48:31 am
https://www.comunidadgm.org/articulos/(tutorial)-gml-para-tontos-3-desvariando-con-variables/
Título: Re:¿Como le hago para crear una nueva variable?
Publicado por: dixon en Diciembre 30, 2019, 07:24:50 pm
Hola, fabriyin. Gusto en saludarlo.


Para declarar una variable debes tomar en cuenta lo siguiente.

1. Normalmente no se dice crear una variable,  se dice declarar una variable. Es lo mismo estás creando una variable, la estás declarando. Pero en programación decimos declarar.
2. Las variables guardan datos es decir almacenan algún contenido. Estos son los tipos de contenido más comunes que yo uso.
    a) tipo string: son de tipo texto, almacenan caracteres, puede ser un nombre de usuario, una indicación, una palabra etc.. y se colocan entre comillas dobles "" o comillas simples ''.
          Ejemplo de declaración de variable tipo string:
          variable_string="Dixon"
          Tambien pude haber llamado a la variable "Nombre"
         Nombre="Dixon"
          Entonces si quiero que aparezca en pantalla tengo que escribir:
         
Código: [Seleccionar]
  draw_text(0,0,Nombre)   
    b) Tipo numérica: son las variables que guardan algún numero,  por ejemplo 3,14. A estas variables se le puede aplicar cualquier función matemática.
          Ejemplo de declaración o creación de variable numérica:
          numero=5
          La puedo llamar como yo quiera (numero_A, telefono, mi_ip, ) depende para que la quieras, se recomienda llamarla según el uso que le vallas a dar para que siempre las puedas recordar.
           Ejemplo 2:
            posicion_x=100
          posicion_y=200
           Tambien puedo usarlas para colocar un texto en pantalla en alguna posicion ideal usando la draw_text

               draw_text(posicion_x, posicion_y, Nombre)

Te voy a dejar esto para que practiques:

Coloca este código dentro de una pieza de código dentro de un evento creación o tambien llamado create:

Código: [Seleccionar]
Nombre="Dixon"
posicion_x=500
posicion_y=500

Ahora coloca este otro código en un evento dibujo o tambien llamado draw

Código: [Seleccionar]
draw_text(posicion_x, posicion_y, Nombre)

Al darle play verás mi nombre en el centro de la pantalla, puedes cambiarlo y colocarle el nombre que tu quieras pero no te olvides de las comillas.

Título: Re:¿Como le hago para crear una nueva variable?
Publicado por: Black_Cat en Diciembre 31, 2019, 01:23:09 pm
Quiero saber como crear una variable , ¿necesito explicar algo más? ???
Pues si, el alcance o ámbito.

Existen 3 tipos de variables respecto a la clasificacion anterior:
1) Local de instancia
2) Local de evento
3) Globales

La 1, es local a la instancia, solo pertenece a éste, por ejemplo la vida de un enemigo, cada enemigo tiene su propia vida. Estas variables se declaran o crean desde el evento create del objeto:
vida = 100
nombre = "hormiga reina"
La 2, local al evento, solo existe dentro del evento en que se declaró y solamente sirve para aclarar un poco el codigo, evitar repeticiones, acomodar la logica. No tiene un uso así super especial como que digás WOW!, solo se usa para acomodar las cosas. Para este tipo de veriable se usa la palabra clave var y se puede usar en cualquier evento.
Ejemplo evento draw:
var operacion =  (32 * round(15/ 12)) + sign(vida) //operacion de ejemplo
if (operacion > 0)
    draw_text(0, 0, string(operacion))
else
     draw_text(0, 0, "La operacion vale 0 o menos")

draw_sprite(spr_enemigo, operacion, x, y)
notese que si omitieramos el uso de la variable operacion, deberíamos hacer el calculo por todo el codigo, lo cual lo haría dificil de mantener y de leer.

La 3, la variable global, es un tipo de variable que perdura por encima de todo, es decir, se puede leer entre rooms, objetos y no pertenece a un objeto en concreto. Por ejemplo la variable score, que s epuede leer desde cualquier lugar.
Tiene 2 formas de declararse:
globalvar score = 0//crea una variable llamada score 
global.salud = 100 //crea una variable llamada global.salud