¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Últimos temas
» Tutorial Interactivo [Uso de interruptores]
por Ledai Hoy a las 16:58

» Necesito Script
por Elian84 Hoy a las 04:44

» Holaaa a tod@s!!!
por chronoMxx Hoy a las 03:41

» [AYUDA]Hootshot de moghunter
por Rudy_kinneas Hoy a las 01:06

» El poder oculto (Segunda entrega)
por alex1633 Ayer a las 23:18

» Hola mucho gusto
por Hk Diamond Ayer a las 13:49

» SoraDeathss se presenta!
por chronoMxx Ayer a las 07:50

» {AYUDA}Blizz-ABS Script
por chronoMxx Ayer a las 06:45

» las cosas como son...
por Bleuw Ayer a las 04:18

» Busco artistas graficos para proyecto serio
por Rudy_kinneas 2016-12-02, 20:52

Afiliados
Estadísticas
Tenemos 3381 miembros registrados.
El último usuario registrado es Hk Diamond.

Nuestros miembros han publicado un total de 79767 mensajes en 11247 argumentos.
Navega con Google Chrome
[DESCARGA]

Scripts basicos para "Condiciones y Efectos"

 :: RPG Maker :: Ayuda RPG

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker XP Scripts basicos para "Condiciones y Efectos"

Mensaje por paulo60379 el 2014-12-28, 06:23

Bueno, trabajando en mi proyecto se me origino otra duda respecto a la maldita/bendita opcion "Condiciones y efectos".
La cosa es que me gustaria que con "Condiciones y Efectos" se pudiera comprobar si el jugador tiene X numero de X objeto (En mi caso 3 Carnes)
¿Como puedo hacerlo?

Ahora este tema lo hice con la esperanza de que no solo se responda a mi pregunta, si no que tambien se den (como dice el titulo) los scripts básicos para "Condiciones y Efectos".
Ya que (aunque no esta dentro de las opciones en el editor) con la opcion "Script" se pueden comprobar muchísimos mas datos de los que se imaginan.

Cuando me refiero a los basicos podria ser:
• x cantidad de objeto
• x cantidad de exp
• x nivel de x personaje (Aunque este ya lo pedi y lo se, pero es para que los otros tambien se enteren :v)
• x cantidad de vida
• Etc.

paulo60379
Novato
Novato

0/3

Créditos 86

Gracias : 7

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por silvanash el 2014-12-28, 12:35

Con el caso de los objetos, la condición sería así:

Código:
$game_party.item_number(id) >= x


Donde "id" es la id del objeto en la base de datos y "x" la cantidad.

Para leer la experiencia y el nivel de un personaje no necesitas scripts. El comando de operaciones de variable te permite leer esos datos y guardarlos en una variable, y lo mismo con el HP/MP.

Lo único para lo que necesitarías usar condición con script es para comprobar cuántas copias de un objeto tiene el jugador, y en realidad podrías hacer eso con un engine.

Variable[x] sustituir por 0
Comenzar ciclo
Condición, si objeto [x] poseído
-> Cambiar objetos [x], quitar constante 1
-> Variable[x] sumar 1
Excepción
-> Romper ciclo
Fin de condición
Cambiar objetos [x], añadir variable[x]

Y listos. Después puedes hacer un condiciones y efectos con la variable[x].

silvanash
Aventurero
Aventurero

0/3

Créditos 1417

Gracias : 176

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por rpgmanumaker el 2014-12-28, 13:43

Bueno,  supondré que eres nuev@ y que no conoces el tan afamado (y parece que discreto) comando "opciones de variables". úsalo, que es muy útil =), y nada difícil de manejar.
Por si tienes dudas, solo tienes que ir a opciones de variables, personajes. Escoges el personaje que quieras comprobar y luego las características (mp, hp, exp, lv) que te interese. Y después le das a comprobar dicha variable con el comando condiciones y efectos. Nada del otro mundo.
Bueno, mira un ejemplo, por si eres de esas personas despistadas, como yo.
Variable[X] = Alexis[001] - Exp
Condiciones y efectos[VariableX] == 4
 -Lo que quieras que suceda.
 
 Excepción
 -Lo que quieras que suceda.
end

rpgmanumaker
Veterano
Veterano

1/3

Créditos 678

Gracias : 23

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por Wecoc el 2014-12-28, 14:41

Usar variables e interruptores está bien para esas cosas que no puedes llamar directamente con script, almacenamientos temporales y "variables de evento". Creo que ese ejemplo sería el típico en el que no vale la pena gastar una variable (excepto en 2k/3, claro).

No sé mucho qué ejemplos poner de códigos, porque cualquier parámetro de los scripts se puede buscar cómo se llama y llamarlo de la misma forma.

Para ahorrarse pasos encadenados también es útil eso, pondré dos ejemplos claros de condiciones y efectos encadenados sin script y con script.

Ejemplo 1; dos interruptores que actúan juntos.

Código:
> Condiciones y efectos: Interruptor 1 Activado
>> Condiciones y efectos: Interruptor 2 Activado
>>> # Pasa A (se cumplen ámbos)
>> Excepción
>>> # Pasa B (no se cumplen ámbos)
>> Fin
> Excepción
>> # Pasa B (no se cumplen ámbos)
> Fin


Código:
> Condiciones y efectos: $game_switches[1] == true and $game_switches[2] == true
>> # Pasa A (se cumplen ámbos)
> Excepción
>> # Pasa B (no se cumplen ámbos)
> Fin


Ejemplo 2; dos parámetros que actúan como uno solo

Código:
> Opciones de variable : Variable 1 = [Personaje] Coordenada X
> Opciones de variable : Variable 2 = [Personaje] Coordenada Y
> Condiciones y efectos: Variable 1 vale 7
>> Condiciones y efectos: Variable 2 vale 5
>>> # Pasa A
>> Excepción
>>> # Pasa B
>> Fin
> Excepción
>> # Pasa B
> Fin


Código:
> Condiciones y efectos: [$game_player.x, $game_player.y] == [7, 5]
>> # Pasa A
> Excepción
>> # Pasa B
> Fin


A ver, pondré las cosas más típicas:

Pulsar botones:

Input.trigger?(Input::C) # Pulsar
Input.repeat?(Input::C) # Mantener pulsado
Input.press?(Input::C) # Pulsar o Mantener pulsado (Equivale al Pulsar Tecla de las opciones)

Buscar parámetros del jugador y de los eventos:

$game_map.events[id].x == (X)
$game_map.events[id].y == (Y)
$game_player.direction == 2 # 2: Abajo, 4: Izquierda, 6: Derecha, 8: Arriba (como en Numpad)
$game_player.passable?(DIRECCIÓN) # Ver ejemplo anterior
$game_player.terrain_tag == (TERRAIN_ID)
$game_player.bush_depth > 0 # Eso miraría si está en hierba alta
$game_player.moving?

Parámetros de actores:

$game_party.actors[id].exp >= (EXP)
$game_party.actors[id].hp < (HP)
$game_party.actors[id].states.include?(STATE_ID)
$game_party.actors[id].skills.include?(SKILL_ID)
$game_party.actors[id].character_name == (NAME)

O de la party:

$game_party.gold >= (GOLD)

O finalmente cosas más complejas:

$game_map.data[(X), (Y), (LAYER)] == 384 + (TILE ID) # Tile en una posición concreta del mapa

Si queréis hacer alguna llamada que no haya comentado y no sabéis cómo se hace esa en concreto, os la busco.

Wecoc
Administrador
Administrador



Créditos 8263

Gracias : 372

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por paulo60379 el 2014-12-29, 03:24

Wecoc te pasaste otra vez :D
Muchas gracias por toda la info, espero que a otros les sirva tanto como a mi ^^
(El script que comprueba si se esta en hierba alta me parece de lo mas util, seguro que le encuentro un buen uso xD)

paulo60379
Novato
Novato

0/3

Créditos 86

Gracias : 7

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por paulo60379 el 2014-12-29, 17:47

Perdón por el doble post pero tengo otra duda respecto a esto :v
¿Como seria para comprobar si se esta en cierto mapa?...
Wecoc escribió:$game_map.data[(X), (Y), (LAYER)] == 384 + (TILE ID) # Tile en una posición concreta del mapa


Ese es el mas parecido, pero no necesito tantos datos. Seguro hay una forma de simplificarlo con solo la ID del mapa.

Y lo otro, ¿Como se haría para que se tenga que cumplir mas de una condición?... tipo... que solo funcione si esta en mapa 1 o en mapa 2 o en mapa 3.

Para que quede mas claro, yo quiero hacer que haya un objeto teletransportador (Cosa que haré llamando a un evento común que tendrá condiciones y efectos) la cosa es que quiero que en ciertos mapas no se pueda teletransportar. Para eso pensaba usar "Condiciones y efectos" y poner "Si el jugador esta en mapa 1, mapa 2, mapa 3, etc... no hacer nada. Si no teletransportar".

paulo60379
Novato
Novato

0/3

Créditos 86

Gracias : 7

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por silvanash el 2014-12-29, 17:52

$game_map.map_id

Con eso debería funcionar. Aunque repito que puedes guardar la ID del mapa actual con operaciones de variable.

silvanash
Aventurero
Aventurero

0/3

Créditos 1417

Gracias : 176

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por Wecoc el 2014-12-29, 18:31

Sí, usa $game_map.map_id

Luego para comprobar varios, recuerda que se puede usar and y or dentro del comando, eso que dije de encadenar. Puedes poner tantos and, or como te de la gana, para dar prioridad a unos u otros usa paréntesis como en las fórmulas matemáticas: (A and B) or (C and D)

Ejemplos reales:

$game_map.map_id == 1 or $game_map.map_id == 3 # 1 o 3
$game_map.map_id >= 1 and $game_map.map_id <= 6 # De 1 a 6


Y finalmente si son ids saltadas yo lo que hago es hacer una array con todas las id posibles y luego mirar si dentro de esa array está la id del mapa actual:

[1, 3, 4, 9, 11, 13, 17].include?($game_map.map_id)

Son truquillos que se aprenden en la mili con el tiempo xD

Wecoc
Administrador
Administrador



Créditos 8263

Gracias : 372

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por orochii el 2014-12-29, 20:29

Recomendación: Escribe esas cosas primero en un Notepad o algo. El cuadro de Condiciones y efectos es horriblemente incómodo xDDD.

Pero hasta el momento no he visto que tenga límite de espacio :V. Incluso se puede hacer multilínea si se usa ; para separar. Ejemplo:

Código:
a = 0; for(i=0;i<5;i+=1) { a+=1 if $game_variables[i] == true } ; (a>3)


En un cierto proyecto, por ejemplo, para ahorrarme un pocote de comandos de evento, hice un condiciones y efectos con esto. Ejemplifica lo que dice Wecoc (&& es igual que escribir and y || es igual que escribir or).
Código:
($game_player.y == event.y-0.5) && (Input.dir4==2) && ($game_player.moving? == false) ||  (($game_player.y == event.y) && (Input.trigger?(Input::DOWN)))


Eso era lo que quería agregar al tema, perdón si no explico bien xD. Salut!

orochii
Caballero Shiro
Caballero Shiro

0/3

Créditos 6045

Gracias : 266

http://drekirokr.weebly.com/

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por paulo60379 el 2015-01-02, 01:12

Es bueno saberlo, (Es hora de colapsar RPG maker con condiciones y efectos (?) xD).

Ya que nadie respondió mi otro post de ayuda (que entiendo tuvo que haber sonado super complejo) y después de buscar ayuda por varias paginas gringas (no se si no se buscar, o si en ningún lado te presentan todos los script calls) necesito ayuda otra vez ._.

Hay alguna otra forma de tomar tiempo aparte de "Esperar x frames". O también (en el peor de los casos) podría servirme una forma de comprobar los pasos (No el total, si no que se compruebe una cantidad)

EJ: Al dar x pasos activar este evento.

paulo60379
Novato
Novato

0/3

Créditos 86

Gracias : 7

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por Wecoc el 2015-01-02, 02:04

Te puedo decir el símil de esperar x frames en script para usarlo con Llamar Script, es útil para cuando quieres igualarlo a una variable, a un valor random entre un rango de valores o en tu caso, para que valga más de 999. Lo que pasa es que no entiendo por qué no te funciona el engine del otro post así que no te puedo garantizar que te funcione.

@wait_count = n

Cambiando n por el número de frames.

-----

Para comprobar el número de pasos se requiere un pequeño engine a parte, ya que solo se pueden obtener los pasos totales hechos.

1 - En una variable, guardas el número de pasos inicial: Está en las opciones de variable. Según la versión puede estar mal traducido y poner "Oasis" pero son los Pasos xD

Para que se entienda, cada vez que te "cures" ésta variable se igualará al número de pasos actual.

2 - En el condiciones y efectos que se irá comprobando, pones ésto:

$game_party.steps >= $game_variables[id] + n

Cambiando id por la id de la variable y n por el número de pasos que permitirás antes que suceda algo.

Si además quieres que esa n no sea un número fijo sinó que haya cierta libertad (por azar) habrá que definir otra variable ya te diría como, porque es un poco más complejo. Si ese fuera el caso me lo dices.

Wecoc
Administrador
Administrador



Créditos 8263

Gracias : 372

Volver arriba Ir abajo

RPG Maker XP Re: Scripts basicos para "Condiciones y Efectos"

Mensaje por Contenido patrocinado Hoy a las 20:21


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 :: RPG Maker :: Ayuda RPG

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