List of Opcodes: Difference between revisions

Capypara (talk | contribs)
Add nav template
Adex (talk | contribs)
m Moooooooore opcooooooodes, up to 0xC6
Tags: Reverted Visual edit
Line 2,120: Line 2,120:
No parameters.
No parameters.
=== 0x98 - message_Explanation ===
=== 0x98 - message_Explanation ===
Displays the string defined in the ''txt'' parameter centered in the middle of the Touch Screen. The string will appear without any frame defined in FONT/frameX.wte (as seen in the Misc. Graphics tab of SkyTemple). This opcode does not need <code>message_Close</code> to suspend the routine.
Displays the string defined in the ''txt'' parameter centered in the middle of the Touch Screen. The string will appear without any frame defined in <code>FONT/frameX.wte</code> (as seen in the Misc. Graphics tab of SkyTemple). This opcode does not need <code>message_Close</code> to suspend the routine.


This opcode does not support displaying a portrait. No sound will emit from the text scrolling.
This opcode does not support displaying a portrait. No sound will emit from the text scrolling.
Line 2,159: Line 2,159:
|}
|}
=== 0x9a - message_ImitationSound ===
=== 0x9a - message_ImitationSound ===
Displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in FONT/frameX.wte (as seen in the Misc. Graphics tab of SkyTemple).
Displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in <code>FONT/frameX.wte</code> (as seen in the Misc. Graphics tab of SkyTemple).


This opcode does not support displaying a portrait. No sound will emit from the text scrolling.
This opcode does not support displaying a portrait. No sound will emit from the text scrolling.
Line 2,190: Line 2,190:
No parameters.
No parameters.
=== 0x9c - message_Mail ===
=== 0x9c - message_Mail ===
Displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in FONT/frameX.wte (as seen in the Misc. Graphics tab of SkyTemple).
Displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in <code>FONT/frameX.wte</code> (as seen in the Misc. Graphics tab of SkyTemple).


This opcode does not support displaying a portrait. No sound will emit from the text scrolling.
This opcode does not support displaying a portrait. No sound will emit from the text scrolling.
Line 2,224: Line 2,224:
|}
|}
=== 0x9e - message_Monologue ===
=== 0x9e - message_Monologue ===
Displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in FONT/frameX.wte (as seen in the Misc. Graphics tab of SkyTemple).
Displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in <code>FONT/frameX.wte</code> (as seen in the Misc. Graphics tab of SkyTemple).


This opcode supports displaying a portrait. No sound will emit from the text scrolling.
This opcode supports displaying a portrait. No sound will emit from the text scrolling.
Line 2,242: Line 2,242:
|}
|}
=== 0x9f - message_Narration ===
=== 0x9f - message_Narration ===
Fades in the screen and instantly displays the string defined in the ''txt'' parameter centered in the middle of the Touch Screen. The string will appear without any frame defined in FONT/frameX.wte (as seen in the Misc. Graphics tab of SkyTemple). This opcode does not need <code>message_Close</code> to suspend the routine. Once the routine is resumed (by pressing the A Button, B Button, or text via the Touch Screen), the screen will fade out, including the string.
Fades in the screen and instantly displays the string defined in the ''txt'' parameter centered in the middle of the Touch Screen. The string will appear without any frame defined in <code>FONT/frameX.wte</code> (as seen in the Misc. Graphics tab of SkyTemple). This opcode does not need <code>message_Close</code> to suspend the routine. Once the routine is resumed (by pressing the A Button, B Button, or text via the Touch Screen), the screen will fade out, including the string.


{| class="wikitable"
{| class="wikitable"
Line 2,263: Line 2,263:
|}
|}
=== 0xa0 - message_Notice ===
=== 0xa0 - message_Notice ===
Instantly displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in FONT/frameX.wte (as seen in the Misc. Graphics tab of SkyTemple).
Instantly displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in <code>FONT/frameX.wte</code> (as seen in the Misc. Graphics tab of SkyTemple).


This opcode does not support displaying a portrait.
This opcode does not support displaying a portrait.
Line 2,383: Line 2,383:
|}
|}
=== 0xa7 - message_SetFacePosition ===
=== 0xa7 - message_SetFacePosition ===
Repositions an actor's portrait.
Re-positions an actor's portrait.


{| class="wikitable"
{| class="wikitable"
Line 2,399: Line 2,399:
|}
|}
=== 0xa8 - message_SetWaitMode ===
=== 0xa8 - message_SetWaitMode ===
<TO DO: Opcode description>
Makes strings displayed with a <code>message_</code> opcode auto-scroll. For both parameters, a value of -1 means the auto-scroll will stop.


{| class="wikitable"
{| class="wikitable"
Line 2,410: Line 2,410:
|-
|-
|1
|1
|uint
|sint
|unk0
|duration0
|
|Sets the frame count for a textbox auto-advancing, once the end of the string has been displayed.
|-
|-
|2
|2
|uint
|sint
|unk1
|duration1
|
|Sets the frame count for text tags such as [K] auto-advancing.
|}
|}
=== 0xa9 - message_SpecialTalk ===
=== 0xa9 - message_SpecialTalk ===
<TO DO: Opcode description>
Displays a random Text String based off of the actor ACTOR_TALK_SUB's Talk Group.


{| class="wikitable"
{| class="wikitable"
Line 2,432: Line 2,432:
|1
|1
|uint
|uint
|unk0
|category
|
|A category of Text String.
 
* 0 seems to use Text Strings while not in a dungeon (e.g., teammates waiting at Spinda's Cafe).
* 1 seems to be use Text Strings while mid-dungeon (e.g., teammates at Amp Plains).
|}
|}
=== 0xae - message_Talk ===
=== 0xae - message_Talk ===
Displays text in the dialog box.  
Displays the string defined in the ''txt'' parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in <code>FONT/frameX.wte</code> (as seen in the Misc. Graphics tab of SkyTemple).
 
This opcode supports displaying a portrait. The sound effect 16133 will emit from the each character scrolling in the text.


{| class="wikitable"
{| class="wikitable"
Line 2,449: Line 2,454:
|String
|String
|txt
|txt
|
|Text to be displayed on the Touch Screen.
|}
|}
=== 0xaf - Move2Position ===
=== 0xaf - Move2Position ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a specific pixel position without restricting the angles used.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,464: Line 2,471:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|uint
|x
|x
|
|The pixel position on the X-axis.
|-
|-
|3
|3
|uint
|uint
|y
|y
|
|The pixel position on the Y-axis.
|}
|}
=== 0xb0 - Move2PositionLives ===
=== 0xb0 - Move2PositionLives ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to an actor without restricting the angles used.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,490: Line 2,500:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|Entity
|unk1
|actor_id
|
|An entry in the Actor List.
|}
|}
=== 0xb1 - Move2PositionMark ===
=== 0xb1 - Move2PositionMark ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a Position Mark without restricting the angles used.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,512: Line 2,525:
|uint
|uint
|num_parameters
|num_parameters
|
|The number of parameters to read from this opcode.
|-
|-
|2+
|2+
|PositionMark
|PositionMark
|pos_marker
|pos_marker
|This parameter may be repeated multiple times
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.
This parameter may be repeated multiple times.
|}
|}
=== 0xb2 - Move2PositionMark ===
=== 0xb2 - Move2PositionMark ===
Moves an actor to the position marker defined by the user. The speed of the movement is defined by the first parameter, with the actor moving faster with higher numbers. Notably, there exists numbers that will cause the actor to move slower than the speed of 1, generally these are around 32000, such as 32896. The actor will not be bound by the grid and can walk diagonally to reach the position defined.
Moves an entity (i.e., an actor, object, or performer) to a Position Mark without restricting the angles used.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,532: Line 2,548:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|PositionMark
|PositionMark
|pos_marker
|pos_marker
|
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.
|}
|}
=== 0xb3 - Move2PositionOffset ===
=== 0xb3 - Move2PositionOffset ===
<TO DO: Opcode description>
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes without restricting the angles used.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,554: Line 2,573:
|uint
|uint
|num_parameters
|num_parameters
|
|The number of parameters to read from this opcode.
|-
|-
|2+
|2+
|sint
|sint
|x
|x, y
|This parameter may be repeated multiple times
|The pixel offset to shift the entity across the X or Y-axis.
This parameter may be repeated multiple times.
|}
|}
=== 0xb4 - Move2PositionOffset ===
=== 0xb4 - Move2PositionOffset ===
Moves an actor to a position that is x and y units away from their current x and y position respectively. The speed of the movement is defined by the first parameter, with the actor moving faster with higher numbers. Notably, there exists numbers that will cause the actor to move slower than the speed of 1, generally these are around 32000, such as 32896. The actor will not be bound by the grid and can walk diagonally to reach the position defined.
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes without restricting the angles used.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,574: Line 2,596:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|sint
|sint
|x
|x
|
|The pixel offset to shift the entity across the X-axis.
|-
|-
|3
|3
|sint
|sint
|y
|y
|
|The pixel offset to shift the entity across the Y-axis.
|}
|}
=== 0xb5 - Move2PositionOffsetRandom ===
=== 0xb5 - Move2PositionOffsetRandom ===
<TO DO: Opcode description>
Continuously and randomly offsets an entity (i.e., an actor, object, or performer) from its current position across both axes without restricting the angles used.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,600: Line 2,625:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|sint
|sint
|x
|x
|
|Determines something about the random pixel value chosen to apply to the X-axis; somewhat unknown.
|-
|-
|3
|3
|sint
|sint
|y
|y
|
|Determines something about the random pixel value chosen to apply to the Y-axis; somewhat unknown.
|}
|}
=== 0xb6 - Move3Position ===
=== 0xb6 - Move3Position ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a specific pixel position in a rapid, strange motion.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,626: Line 2,654:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|uint
|x
|x
|
|The pixel position on the X-axis.
|-
|-
|3
|3
|uint
|uint
|y
|y
|
|The pixel position on the Y-axis.
|}
|}
=== 0xb7 - Move3PositionLives ===
=== 0xb7 - Move3PositionLives ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to an actor in a rapid, strange motion.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,652: Line 2,683:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|Entity
|unk1
|actor_id
|
|An entry in the Actor List.
|}
|}
=== 0xb8 - Move3PositionMark ===
=== 0xb8 - Move3PositionMark ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a Position Mark in a rapid, strange motion.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,674: Line 2,708:
|uint
|uint
|num_parameters
|num_parameters
|
|The number of parameters to read from this opcode.
|-
|-
|2+
|2+
|PositionMark
|PositionMark
|pos_marker
|pos_marker
|This parameter may be repeated multiple times
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.
This parameter may be repeated multiple times.
|}
|}
=== 0xb9 - Move3PositionMark ===
=== 0xb9 - Move3PositionMark ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a Position Mark in a rapid, strange motion.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,694: Line 2,731:
|1
|1
|uint
|uint
|num_parameters
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|PositionMark
|PositionMark
|pos_marker
|pos_marker
|
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.
|}
|}
=== 0xba - Move3PositionOffset ===
=== 0xba - Move3PositionOffset ===
<TO DO: Opcode description>
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes in a rapid, strange motion.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,716: Line 2,756:
|uint
|uint
|num_parameters
|num_parameters
|
|The number of parameters to read from this opcode.
|-
|-
|2+
|2+
|sint
|sint
|x
|x, y
|This parameter may be repeated multiple times
|The pixel offset to shift the entity across the X or Y-axis.
This parameter may be repeated multiple times.
|}
|}
=== 0xbb - Move3PositionOffset ===
=== 0xbb - Move3PositionOffset ===
<TO DO: Opcode description>
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes in a rapid, strange motion.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,736: Line 2,779:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|sint
|sint
|x
|x
|
|The pixel offset to shift the entity across the X-axis.
|-
|-
|3
|3
|sint
|sint
|y
|y
|
|The pixel offset to shift the entity across the Y-axis.
|}
|}
=== 0xbc - Move3PositionOffsetRandom ===
=== 0xbc - Move3PositionOffsetRandom ===
<TO DO: Opcode description>
Continuously and randomly offsets an entity (i.e., an actor, object, or performer) from its current position across both axes in a rapid, strange motion.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,762: Line 2,808:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|sint
|sint
|x
|x
|
|Determines something about the random pixel value chosen to apply to the X-axis; somewhat unknown.
|-
|-
|3
|3
|sint
|sint
|y
|y
|
|Determines something about the random pixel value chosen to apply to the Y-axis; somewhat unknown.
|}
|}
=== 0xbd - MoveDirection ===
=== 0xbd - MoveDirection ===
<TO DO: Opcode description>
Offsets an entity (i.e., an actor, object, or performer) by a certain number of pixels based on a given direction. Movement is performed while restricting movement by eight angles—as if movement was performed using the D-Pad.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,788: Line 2,837:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|-
|-
|2
|2
|uint
|sint
|unk1
|offset
|
|The pixel offset to shift the entity relative to the entity's direction.
|-
|-
|3
|3
|uint
|Direction
|unk2
|direction
|
|The type of direction, the list of which can be seen by typing DIR_ in SkyTemple's Script Engine Debugger.
|}
|}
=== 0xbe - MoveHeight ===
=== 0xbe - MoveHeight ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a certain pixel height, displacing it from its shadow. When used, the entity's animation and direction will not change.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,814: Line 2,865:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|-
|-
|2
|2
|uint
|sint
|unk1
|height
|
|The pixel height to set the entity relative to their shadow.
|}
|}
=== 0xbf - MovePosition ===
=== 0xbf - MovePosition ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a specific pixel position while restricting movement by eight angles—as if movement was performed using the D-Pad.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,835: Line 2,888:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|uint
|x
|x
|
|The pixel position on the X-axis.
|-
|-
|3
|3
|uint
|uint
|y
|y
|
|The pixel position on the Y-axis.
|}
|}
=== 0xc0 - MovePositionLives ===
=== 0xc0 - MovePositionLives ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to an actor while restricting movement by eight angles—as if movement was performed using the D-Pad.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,861: Line 2,917:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|Entity
|unk1
|actor_id
|
|An entry in the Actor List.
|}
|}
=== 0xc1 - MovePositionLivesTime ===
=== 0xc1 - MovePositionLivesTime ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to an actor while restricting movement by eight angles—as if movement was performed using the D-Pad. Movement will end once either the entity reaches the actor or after a certain number of frames have passed—whichever comes first.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,882: Line 2,941:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|Entity
|unk1
|actor_id
|
|An entry in the Actor List.
|-
|-
|3
|3
|uint
|uint
|unk2
|duration
|
|The number of frames to move the entity.
|}
|}
=== 0xc2 - MovePositionMark ===
=== 0xc2 - MovePositionMark ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to a Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,909: Line 2,971:
|uint
|uint
|num_parameters
|num_parameters
|
|The number of parameters to read from this opcode.
|-
|-
|2+
|2+
|PositionMark
|PositionMark
|pos_marker
|pos_marker
|This parameter may be repeated multiple times
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.
This parameter may be repeated multiple times.
|}
|}
=== 0xc3 - MovePositionMark ===
=== 0xc3 - MovePositionMark ===
Moves an actor to the position marker defined by the user. The speed of the movement is defined by the first parameter, with the actor moving faster with higher numbers. Notably, there exists numbers that will cause the actor to move slower than the speed of 1, generally these are around 32000, such as 32896. The actor is bound by the grid and will move in cardinal directions and diagonally, but only in directions 45 degrees from the cardinal directions.
Moves an entity (i.e., an actor, object, or performer) to a Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,929: Line 2,994:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|PositionMark
|PositionMark
|pos_marker
|pos_marker
|
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.
|}
|}
=== 0xc4 - MovePositionMarkTime ===
=== 0xc4 - MovePositionMarkTime ===
<TO DO: Opcode description>
Moves an entity (i.e., an actor, object, or performer) to an Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad. Movement will end once either the entity reaches the Position Mark or after a certain number of frames have passed—whichever comes first.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,950: Line 3,018:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|uint
|PositionMark
|unk1
|pos_marker
|
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.
|-
|-
|3
|3
|PositionMark
|uint
|pos_marker
|duration
|
|The number of frames to move the entity.
|}
|}
=== 0xc5 - MovePositionOffset ===
=== 0xc5 - MovePositionOffset ===
<TO DO: Opcode description>
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes while restricting movement by eight angles—as if movement was performed using the D-Pad.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,977: Line 3,048:
|uint
|uint
|num_parameters
|num_parameters
|
|The number of parameters to read from this opcode.
|-
|-
|2+
|2+
|sint
|sint
|x
|x, y
|This parameter may be repeated multiple times
|The pixel offset to shift the entity across the X or Y-axis.
This parameter may be repeated multiple times.
|}
|}
=== 0xc6 - MovePositionOffset ===
=== 0xc6 - MovePositionOffset ===
Moves an actor to a position that is x and y units away from their current x and y position respectively. The speed of the movement is defined by the first parameter, with the actor moving faster with higher numbers. Notably, there exists numbers that will cause the actor to move slower than the speed of 1, generally these are around 32000, such as 32896. The actor is bound by the grid and will move in cardinal directions and diagonally, but only in directions 45 degrees from the cardinal directions.
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes while restricting movement by eight angles—as if movement was performed using the D-Pad.
 
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.


{| class="wikitable"
{| class="wikitable"
Line 2,997: Line 3,071:
|1
|1
|uint
|uint
|unk0
|speed
|
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
|sint
|sint
|x
|x
|
|The pixel offset to shift the entity across the X-axis.
|-
|-
|3
|3
|sint
|sint
|y
|y
|
|The pixel offset to shift the entity across the Y-axis.
|}
|}
=== 0xc7 - MoveSpecial ===
=== 0xc7 - MoveSpecial ===