Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Fashion_Trozos en Mayo 27, 2019, 08:01:43 PM

Título: [RESUELTO] Problema con enumerador
Publicado por: Fashion_Trozos en Mayo 27, 2019, 08:01:43 PM
Hola, buenas a todo el mundo. Tengo un problema, quiero usar un enumerador porque estoy siguiendo (otra vez) un tutorial de como hacer una maquina de estados. Me da error en el evento Create.

enum ep{
parado = scr_parado(),
caminando = scr_prota_moviendose()
}

dir = "abajo";
estado = ep.parado;


El error que me da es "error game maker enum assignment must be an integer". No estoy utilizando bien el enumerador? un saludo!
Título: Re:Problema con enumerador
Publicado por: bygdle en Mayo 27, 2019, 08:06:32 PM
Cita de: Fashion_Trozos en Mayo 27, 2019, 08:01:43 PM
Hola, buenas a todo el mundo. Tengo un problema, quiero usar un enumerador porque estoy siguiendo (otra vez) un tutorial de como hacer una maquina de estados. Me da error en el evento Create.

enum ep{
parado = scr_parado(),
caminando = scr_prota_moviendose()
}

dir = "abajo";
estado = ep.parado;


El error que me da es "error game maker enum assignment must be an integer". No estoy utilizando bien el enumerador? un saludo!
En el error está la misma respuesta: en los enumeradores debes poner específicamente (LITERALMENTE) números enteros.
Título: Re:Problema con enumerador
Publicado por: FridaFlowers en Mayo 27, 2019, 08:17:37 PM
De hecho, es posible. Solo que no debe llevar parentesis puesto que, si los tiene se entiende como una llamada a método.
Sin los parentesis contendría la ID de la funcion dentro de, supongo, la tabla o el stack:

[GML]
enum FUNC{
    saludar = scr_hola,
}

hablar = FUNC.saludar;

script_execute(hablar)
[/GML]

Aunque no se porqué querrías complicarte tanto el código  XD
Título: Re:Problema con enumerador
Publicado por: somnus en Mayo 27, 2019, 11:08:14 PM
yo aconsejo que el enum se ponga en un script, donde tengas otras constantes, macros u otra configuracion para que tus estados no solamente sean para tu objeto si no que Tambien puedan server los mismos estados para otros objetos ya sea NPC, o enemigos, etc.
Título: Re:Problema con enumerador
Publicado por: FridaFlowers en Mayo 28, 2019, 12:50:51 AM
Cita de: somnus en Mayo 27, 2019, 11:08:14 PM
yo aconsejo que el enum se ponga en un script, donde tengas otras constantes, macros u otra configuracion para que tus estados no solamente sean para tu objeto si no que Tambien puedan server los mismos estados para otros objetos ya sea NPC, o enemigos, etc.

Pues las enums tienen global scope.
No importa si se declara dentro de un objeto, es accesible a nivel global.

Título: Re:[RESUELTO] Problema con enumerador
Publicado por: Fashion_Trozos en Mayo 28, 2019, 01:01:22 PM
Frida Flowers me funcionado así como has comentado, simplemente quitando los paréntesis. Muchas  gracias y a los demás por contestar!