Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.

[Duda] Funcionamiento de RPG::EventCommand

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker XP [Duda] Funcionamiento de RPG::EventCommand

Mensaje por Pativerus el 2018-07-08, 01:39

Buenas.
Estoy haciendo Eventos mediante Script en RPG Maker XP, y me encuentro atascado en el EventCommand del evento, ¿Alguien me puede explicar como funcionan los atributos de code, indent y parameters de la clase  RPG::EventCommand? Como para poder, como ejemplo, hacer que al hablarle al evento este genere un texto (como con Window_Message.new)
Gracias :)
avatar
Pativerus
Iniciado
Iniciado

0/3

Créditos 5

Gracias : 2

Volver arriba Ir abajo

RPG Maker XP Re: [Duda] Funcionamiento de RPG::EventCommand

Mensaje por Wecoc el 2018-07-08, 10:24

No sé exactamente cómo estás montando los eventos por script ni con qué finalidad, pero intentaré hacer un resúmen rápido. Iría bien que postearas lo que has hecho hasta ahora, porque si quieres generar un evento de 0 hay más lío que el que preguntas; lo más improtante es definirle la list, el interpreter... Y ya en general debo decir que no suele ser necesario montar el evento vía script de 0, solo en casos muy particulares puede servir de algo. Yo hice un sistema de drop items que lo hacía de modo básico, puedes usarlo de referencia.

¿Alguien me puede explicar como funcionan los atributos de code, indent y parameters de la clase RPG::EventCommand?

Cada comando de evento tiene un número indicativo llamado code.
Para saber esa información debes mirarlo en la clase Interpreter, parte 2. Ahí verás que por ejemplo hay un método llamado command_125 que corresponde a Change Gold. Eso significa que el comando "Cambiar dinero" tiene code 125.

Luego, cada comando tiene una array que son los parameters que acepta. En algunos está vacía, en otros se requiere uno o varios.
Usando el mismo ejemplo, si buscas el def command_125 verás que usa 3 parámetros; operation, operand_type y operand, que son 3 integers. Esos tres parámetros se usan en varios comandos parecidos: operation si vale 0 significa sumar, 1 restar; operand_type si vale 0 significa valor fijo, 1 variable; 2 significa la cantidad o bien el número de esa variable de donde sacar la cantidad.

Si quieres otro ejemplo, el command_101 que es Mostrar texto solo acepta un parámetro de tipo String, que indica el contenido del texto.

Por último indent digamos que es algo así como la tabulación del comando dentro del evento. Por ejemplo si haces un Condiciones y Efectos, lo que queda dentro tiene tabulación, ¿verdad? Lo que queda fuera tiene indent 0 y lo de dentro indent 1. Y ya si haces loops encadenados o esas cosas el indent puede subir a 2, 3, 4...

Como para poder, como ejemplo, hacer que al hablarle al evento este genere un texto

Si la estructura del evento se mantiene puedes usar varios trucos para lograr generar un texto dinámico.
Primeramente desde Llamar script puedes hacer [line]@list[@index + 1].parameters[0] = "Texto"[/line]
Y justo después de eso poner el Mostrar Mensaje, con contenido vacío. Eso hará que el contenido de Mostrar Mensaje sea "Texto". Óbviamente en vez de eso
puedes usar algo más complejo desde la misma llamada de script para que realmente sea dinámico. Debo decir que es una solución engorrosa pero en algunos casos sirve.

Finalmente también puedes definir tu contenido dinámico en una variable mediante script y luego hacer que el contenido de Mostrar mensaje sea \v[1] (1 es la ID de la variable).
Nota: Ten en cuenta que para salto de línea en el texto debes usar \n
avatar
Wecoc
Administrador
Administrador



Créditos 12211

Gracias : 632

Volver arriba Ir abajo

RPG Maker XP Re: [Duda] Funcionamiento de RPG::EventCommand

Mensaje por Wecoc el 2018-07-08, 14:54

Puesto que ya me peleé con los code y parameters de cada comando cuando hice el script ScreenEX y lo tengo documentado, he hecho un excel con la información de cada uno.

Descarga: Comandos de evento XP.xlsx

Ojalá sea de utilidad. Está dividido en 3 páginas, y puesto según el órden en el que aparecen los comandos de evento.
avatar
Wecoc
Administrador
Administrador



Créditos 12211

Gracias : 632

Volver arriba Ir abajo

RPG Maker XP Re: [Duda] Funcionamiento de RPG::EventCommand

Mensaje por orochii el 2018-07-08, 20:57

Otra opción que tienes es que, si vas a estar haciendo los mismos eventos una y otra vez, en lugar de hacer 100 eventos de cero, hacer "plantillas". Puedes hacer eventos en un mapa nuevo. Luego cargas el mapa en una variable (load_data), y copias el evento que quieres desde los datos de ese mapa, cambiando por ejemplo textos y cosas por el estilo.

Lo bueno de esto es que así puedes meterle más detalle al evento sin tener que añadirlo por código. Pero bueno es una idea. xD
avatar
orochii
Reportero

0/3

Créditos 7724

Gracias : 436

Volver arriba Ir abajo

RPG Maker XP Re: [Duda] Funcionamiento de RPG::EventCommand

Mensaje por Pativerus el 2018-07-10, 03:23

Muchas gracias por sus respuestas, me fui guiando con tu script Wecoc y ahora es posible interactuar con el evento que estaba haciendo :p
avatar
Pativerus
Iniciado
Iniciado

0/3

Créditos 5

Gracias : 2

Volver arriba Ir abajo

RPG Maker XP Re: [Duda] Funcionamiento de RPG::EventCommand

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


Permisos de este foro:
No puedes responder a temas en este foro.