Últimos temas
» LA BRÚJULA DE ZAZA [VXACE]
por Pocari Hoy a las 1:29 pm

» [VXA]Resident Evil Menu
por DorFenn Hoy a las 1:42 am

» (RMMV) Precognition
por JapoZero Jue Oct 17, 2019 11:40 pm

» Ayuda, duda
por BACA Miér Oct 16, 2019 7:38 pm

» Duda con ventana de comandos en Script
por DorFenn Lun Oct 14, 2019 1:46 am

» Índice Scripts RGSS3
por ZororoWhite Dom Oct 13, 2019 12:24 am

» [VX Ace] Script para duplicar tamaño y escala de ventana del juego
por ZororoWhite Dom Oct 13, 2019 12:23 am

» [Sugerencia]Limpieza de recursos viejos en el foro.
por ZororoWhite Dom Oct 06, 2019 10:25 pm

» RPG maker mv ABS
por Akutenshi Vie Oct 04, 2019 5:35 am

» Pokemon Destiny
por Greninja555 Jue Oct 03, 2019 7:31 pm

» Montura más realista [XP]
por Ledai Jue Oct 03, 2019 7:16 pm

» Characters y face de samurais o gente japonesa
por Metatron Jue Oct 03, 2019 4:53 pm


¿Por qué no funciona este evento común?

Ir abajo

¿Por qué no funciona este evento común? Empty ¿Por qué no funciona este evento común?

Mensaje por MCarlos15 el Vie Ene 05, 2018 9:02 pm

Buenas. Pretendía incluir un detalle secreto en mi proyecto, que consiste en lo siguiente:

Repartidos por todo el mundo del juego hay 11 capítulos de una historia. Cada uno de ellos es un objeto que, al usarlo en el inventario, llama a un evento común, (cada capítulo tiene el suyo), en el que te cuentan una parte de la historia, te dicen cuantos capítulos has leído y, si los has visto todos, hay un pequeño diálogo especial entre los personajes.

El caso es que estaba intentando usar los interruptores locales de los eventos para hacer realidad esta idea, de esta forma:

> [Si el interruptor local A está en OFF]
 -Aumentar la variable "Historia" en 1
 -Encender interruptor local A
> Fin de la condición
 -Mostrar texto: "Capítulos leídos: [Valor de la variable "Historia"]/11"

En teoría, la variable solo aumentaría si es la primera vez que se lee el capítulo, y todo funcionaría correctamente. Pero por alguna razón, aunque he hecho exactamente lo que he puesto más arriba, NO ME FUNCIONA. He estado probando con cada capítulo, y LA VARIABLE NO SUBE.

¿Estoy haciendo algo mal? ¿Es que los eventos comunes no pueden operar variables? ¿Debería renunciar a utilizarlas y probar con otra cosa?

Si alguien se ha leído todo esto y puede ayudarme, gracias xD
MCarlos15
MCarlos15
PJ de Quest
PJ de Quest

España
RPG Maker : Ace
Mensajes : 46
Monedas : 164
Reputación : 0

Volver arriba Ir abajo

¿Por qué no funciona este evento común? Empty Re: ¿Por qué no funciona este evento común?

Mensaje por Pokefanmati el Sáb Ene 06, 2018 5:01 am

Es que el evento común no trabaja con interruptores locales. Así que tendrás que crear 11 interruptores del juego que guarden esos datos.

Se me ocurren dos soluciones rápidas, pero usan scripts. Tarde o temprano tendrás que aprender a usarlos, y este me parece un buen ejercicio:

1)

Lo que puedes haces convertir una "variable del juego" en una lista... Es más cómodo pero sería más complicado.

Has esto: Todos configuramos el juego con un evento cuando empieza. En ese evento añade una opción del apartado "avanzados". La opción es "script". Allí escribe:
Código:
$game_variables[200] = []
Con esto harás que la variable del juego número 200 (o la que quieras) se convierta en una lista "vacía".Tal como el nombre lo indica, es una lista de objetos a los que puedes acceder después
Luego, en cada evento común haces lo siguiente
Código:
$game_variables[200][i] = true

# Donde i es la posición del objeto en la lista
# Osea que para el primer objeto escribes $game_variables[200][1] = true
# para el segundo $game_variables[200][2] = true y así

Finalmente, cuando quieras añadir la  "separación condicional" ve a la pestaña número 4 y coloca "script". Ahí escribes
Código:
$game_variables[200].count(true) >= 11
# (o sea, cuenta la cantidad de "trues" que hay en la lista y
# determina si son mayores o iguales a 11)

Y con eso tienes.

Very Happy Very Happy Very Happy Very Happy Very Happy Very Happy Very Happy Very Happy Very Happy

2)
La otra opción, que es un poco más simple pero donde aprendes poco es...
Hacer los 11 interruptores del juego.
Luego, cuando estés creando el evento "final" ir a la cuarta pestaña de "separación condicional" y escribir
Código:
$game_switches[i,j].count(true) >= 11

# En este caso asumo que usaste los interruptores de corridos.
# i es la posición de inicio y j la del final más uno
# Por ejemplo, si usaste los interruptores del 1 al 11 sería...

$game_switches[1,12].count(true) >= 11

3) # Sí, sé que dije dos, pero este era el plan original puedes ir sumando a una variable.   


Dentro de todo, recomiendo esta ultima opción porque es más "amigable". Pero te recomendaría probar las dos opciones para que te familiarices con los scripts
Pokefanmati
Pokefanmati
PJ Principal
PJ Principal

Masculino
Chile
RPG Maker : Ace
Mensajes : 185
Monedas : 368
Reputación : 17
Edad : 22
Localización : En el cuarto del boss

Volver arriba Ir abajo

¿Por qué no funciona este evento común? Empty Re: ¿Por qué no funciona este evento común?

Mensaje por MCarlos15 el Sáb Ene 06, 2018 9:00 pm

Muchas gracias por tu extensa respuesta, al fin todo funcionó :D
Me has ayudado mucho (y no es la primera vez)
MCarlos15
MCarlos15
PJ de Quest
PJ de Quest

España
RPG Maker : Ace
Mensajes : 46
Monedas : 164
Reputación : 0

Volver arriba Ir abajo

¿Por qué no funciona este evento común? Empty Re: ¿Por qué no funciona este evento común?

Mensaje por NinjaLOL el Mar Feb 20, 2018 4:25 am

Se que mi respuesta es corta, y no tengo mucha experiencia, pero lo que deverias hacer con eso es usar los interruptores, no los locales, por ejemplo:
Activar interruptor ´´capitulo´´
Porque los interruptores locales se usarian mas que nada para cosas como los npc, bosses u objetos en el mapa como cofres, interruptores o trampas.
Si me entiendes?

NinjaLOL
PJ de Quest
PJ de Quest

Rmakercom
RPG Maker : Ace
Mensajes : 30
Monedas : 57
Reputación : 0

Volver arriba Ir abajo

¿Por qué no funciona este evento común? Empty Re: ¿Por qué no funciona este evento común?

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

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