Anonymous

Changes

From Final Fantasy Inside

FF7/Field/Script/Opcodes/C0 JUMP

1,557 bytes added, 02:06, 7 September 2006
no edit summary
* Opcode: '''0xC0'''
* Short name: '''JUMP'''
* Long name: Jump

==== Memory layout ====
{| border="1" cellspacing="1" cellpadding="3" style="border: 1px solid black; border-collapse: collapse;"
! width="40" | 0xC2
! width="40" | ''0''
! width="40" | ''0''
! width="40" | ''X''
! width="40" | ''Y''
! width="40" | ''Z''
! width="40" | ''H''
|}

==== Arguments ====

* '''const UShort''' ''0'': Zero. First byte changes co-ordinates; second crashes if non-zero.
* '''const Short''' ''X'': X-coordinate of the target to jump to.
* '''const Short''' ''Y'': Y-coordinate of the target to jump to.
* '''const Short''' ''Z'': Z-coordinate of the target to jump to.
* '''const UShort''' ''H'': Height of the jump. Must be non-zero.

==== Description ====

Causes the character to jump to the specified point, with the jump curve peaking at a height which is increased by using a larger value for the '''H''' argument. In addition, the larger the number, the longer the jump will take to complete. A "normal" value is around 0x15, 0x01 is fast and instantaneous; the argument must not be zero or the game will crash. Whilst this is an unsigned two-byte number, a large value (beyond around 0x60) will not only cause a vast jump height, but also cause the screen to scroll erratically (the larger the number, the more erratic).

Neither animation nor sound is specified in this opcode. An animation is played by using an animation opcode such as [[FF7/Field/Script/Opcodes/A2 DFANM|DFANM]], and a [[FF7/Field/Script/Opcodes/F1 SOUND|SOUND]] played, before the jump.