KevinXDE
Usuario mítico
No sé si alguien me va a poder ayudar con esto porque he buscado y buscado información sobre scriptear animaciones en decompilación y he encontrado 0. Todo lo que he conseguido ha sido por mi cuenta, vaya, a base de comparar movimientos y los ya creados en el battle_engine.
De todos modos: he conseguido hacer algunas animaciones sin problemas, la mayoría de ellas son ataques con .target = MOVE_TARGET_SELECTED y .target = MOVE_TARGET_USER. Las de target selected funcionan correctamente en combates dobles incluso cuando se ataca al compañero. Aquí dos ejemplos:
Ahora, cuando se trata de ataques con .target = MOVE_TARGET_BOTH, consigo que me funcionen en combates individuales, pero no en combates dobles. He mirado los códigos de ataques como Disparo Demora y Brecha Negra pero por mucho que pruebo cosas no consigo efectos similares, y el código sinceramente no me es muy evidente.
Por ejemplo, en el siguiente ataque, quiero conseguir que en combates dobles,haya dos ondas, una por cada Pokémon. O, otra opción, que la onda quede centrada. El ataque del primer gif está bien conseguido, pero en combates dobles como veis la onda solo afecta a un Pokémon. A pesar de que he conseguido agitar a los dos, no consigo lo mismo poniendo el código de la onda dos veces.
El código:
He probado tocando los argumentos en hexadecimal y dandoles distintos valores, pero ninguno me ha dado buenos resultados aunque alguno se acercaba (no son muy intuitivos que digamos...).
Ahora, mirando las animaciones de Disparo Demora y Brecha negra: en el primer ataque se puede ver como la animación es fija, atacando siempre al centro. Esa opción sería la de centrar la onda de mi ataque.
En Brecha negra, en combates individuales aparece una sombra, mientras que en combates dobles aparecen dos. Esa sería la otra opción.
Eso sería todo. Alguna idea de como puedo conseguir esos efectos? Tendría que modificar las estructuras de los templates? O se puede hacer con otros comandos u otros valores en los argumentos? La verdad es que estoy un poco perdido. Menos mal que no tengo que hacer muchas más animaciones , sino me decantaré por usar unas existentes o hacer que queden algo más cutres. Gracias por leer mi tochaco
De todos modos: he conseguido hacer algunas animaciones sin problemas, la mayoría de ellas son ataques con .target = MOVE_TARGET_SELECTED y .target = MOVE_TARGET_USER. Las de target selected funcionan correctamente en combates dobles incluso cuando se ataca al compañero. Aquí dos ejemplos:
Ahora, cuando se trata de ataques con .target = MOVE_TARGET_BOTH, consigo que me funcionen en combates individuales, pero no en combates dobles. He mirado los códigos de ataques como Disparo Demora y Brecha Negra pero por mucho que pruebo cosas no consigo efectos similares, y el código sinceramente no me es muy evidente.
Por ejemplo, en el siguiente ataque, quiero conseguir que en combates dobles,haya dos ondas, una por cada Pokémon. O, otra opción, que la onda quede centrada. El ataque del primer gif está bien conseguido, pero en combates dobles como veis la onda solo afecta a un Pokémon. A pesar de que he conseguido agitar a los dos, no consigo lo mismo poniendo el código de la onda dos veces.
El código:
Código:
loadspritegfx ANIM_TAG_ALERT
playsewithpan SE_M_SWAGGER2, SOUND_PAN_ATTACKER
createsprite gKinesisZapEnergySpriteTemplate, ANIM_ATTACKER, 19, 32, -8, 0
playsewithpan SE_M_SWAGGER2, SOUND_PAN_ATTACKER
createsprite gKinesisZapEnergySpriteTemplate, ANIM_ATTACKER, 19, 32, 16, 1
waitforvisualfinish
loadspritegfx ANIM_TAG_PINK_PETAL @pink color
loadspritegfx ANIM_TAG_THIN_RING @ring
monbg ANIM_DEF_PARTNER
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 0, 9, RGB_BLACK
playsewithpan SE_M_HAZE, 0
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_TARGET 0x3 0x0 0x6 0x1
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_DEF_PARTNER 0x3 0x0 0x6 0x1
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x1 0x0 0x1F 0x8
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x3 0x0 0x1F 0x8
waitforvisualfinish
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_TARGET 0x3 0x0 0x6 0x1
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_DEF_PARTNER 0x3 0x0 0x6 0x1
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x1 0x0 0x1F 0x8
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x3 0x0 0x1F 0x8
waitforvisualfinish
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_TARGET 0x3 0x0 0x6 0x1
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_DEF_PARTNER 0x3 0x0 0x6 0x1
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x1 0x0 0x1F 0x8
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x3 0x0 0x1F 0x8
waitforvisualfinish
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_TARGET 0x3 0x0 0x6 0x1
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_DEF_PARTNER 0x3 0x0 0x6 0x1
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x1 0x0 0x1F 0x8
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x3 0x0 0x1F 0x8
waitforvisualfinish
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_TARGET 0x3 0x0 0x6 0x1
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_DEF_PARTNER 0x3 0x0 0x6 0x1
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x1 0x0 0x1F 0x8
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x3 0x0 0x1F 0x8
waitforvisualfinish
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_TARGET 0x3 0x0 0x6 0x1
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_DEF_PARTNER 0x3 0x0 0x6 0x1
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x1 0x0 0x1F 0x8
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x3 0x0 0x1F 0x8
waitforvisualfinish
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_TARGET 0x3 0x0 0x6 0x1
launchtask AnimTask_ShakeMon 0x2 0x5 ANIM_DEF_PARTNER 0x3 0x0 0x6 0x1
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x1 0x0 0x1F 0x8
launchtemplate gSimpleBeamPinkRingTemplate 0x0 0x6 0x0 0x0 0x3 0x0 0x1F 0x8
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 9, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
delay 1
waitforvisualfinish
end
He probado tocando los argumentos en hexadecimal y dandoles distintos valores, pero ninguno me ha dado buenos resultados aunque alguno se acercaba (no son muy intuitivos que digamos...).
Ahora, mirando las animaciones de Disparo Demora y Brecha negra: en el primer ataque se puede ver como la animación es fija, atacando siempre al centro. Esa opción sería la de centrar la onda de mi ataque.
En Brecha negra, en combates individuales aparece una sombra, mientras que en combates dobles aparecen dos. Esa sería la otra opción.
Eso sería todo. Alguna idea de como puedo conseguir esos efectos? Tendría que modificar las estructuras de los templates? O se puede hacer con otros comandos u otros valores en los argumentos? La verdad es que estoy un poco perdido. Menos mal que no tengo que hacer muchas más animaciones , sino me decantaré por usar unas existentes o hacer que queden algo más cutres. Gracias por leer mi tochaco