List of Opcodes: Difference between revisions
m Moooooooore opcooooooodes, up to 0xC6 Tags: Reverted Visual edit |
m The opcodes never end (up to 0xDF) Tags: Reverted Visual edit |
||
| Line 209: | Line 209: | ||
|} | |} | ||
=== 0x8 - back_SetDungeonBanner === | === 0x8 - back_SetDungeonBanner === | ||
Displays a specific string using the <code>FONT/banner.bin:FONT/b_pal.bin</code> font, editable in the Misc. Graphics tab of SkyTemple. The text chosen is defined in Dungeons tab as a dungeon's <code> | Displays a specific string using the <code>FONT/banner.bin:FONT/b_pal.bin</code> font, editable in the Misc. Graphics tab of SkyTemple. The text chosen is defined in Dungeons tab as a dungeon's <code>back_SetDungeonBanner</code> string. This opcode will delete any actors, objects, and performers that are currently loaded. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 230: | Line 230: | ||
|} | |} | ||
=== 0x9 - back_SetGround === | === 0x9 - back_SetGround === | ||
Sets the Map Background from a Level. Upon using this opcode, the variable $GROUND_MAP will be updated to match the ID of the chosen Level. This opcode will delete any actors, objects, and performers that are currently loaded. | Sets the Map Background from a Level. Upon using this opcode, the variable <code>$GROUND_MAP</code> will be updated to match the ID of the chosen Level. This opcode will delete any actors, objects, and performers that are currently loaded. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 327: | Line 327: | ||
|String | |String | ||
|title | |title | ||
|The title displayed | |The title displayed on the Touch Screen. | ||
|} | |} | ||
=== 0xe - back_SetWeather === | === 0xe - back_SetWeather === | ||
| Line 580: | Line 580: | ||
|1 | |1 | ||
|sint | |sint | ||
| | |mode | ||
|A value of 0 is no mode. A negative value seems to set the Top Screen to the overworld's current Top Screen setting. | |A value of 0 is no mode. A negative value seems to set the Top Screen to the overworld's current Top Screen setting. | ||
| Line 779: | Line 779: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to change the BGM's volume. | |The number of frames used to change the BGM's volume. | ||
|- | |- | ||
|2 | |2 | ||
| Line 836: | Line 836: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to fade in the BGM. | |The number of frames used to fade in the BGM. | ||
|- | |- | ||
|3 | |3 | ||
| Line 1,674: | Line 1,674: | ||
|GameVar | |GameVar | ||
|var | |var | ||
|One of the 115 possible script variables. A two-indexed variable (e.g., $SCENARIO_MAIN) is encouraged to use. | |One of the 115 possible script variables. A two-indexed variable (e.g., <code>$SCENARIO_MAIN</code>) is encouraged to use. | ||
|- | |- | ||
|2 | |2 | ||
| Line 1,925: | Line 1,925: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to fade out the screens. | |The number of frames used to fade out the screens. | ||
|} | |} | ||
=== 0x8e - main_EnterGround === | === 0x8e - main_EnterGround === | ||
| Line 1,955: | Line 1,955: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to fade out the screens. | |The number of frames used to fade out the screens. | ||
|} | |} | ||
=== 0x8f - main_EnterGroundMulti === | === 0x8f - main_EnterGroundMulti === | ||
| Line 1,985: | Line 1,985: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to fade out the screens. | |The number of frames used to fade out the screens. | ||
|- | |- | ||
|3 | |3 | ||
| Line 2,006: | Line 2,006: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to fade out the screens. | |The number of frames used to fade out the screens. | ||
|} | |} | ||
=== 0x91 - main_EnterTraining === | === 0x91 - main_EnterTraining === | ||
| Line 2,255: | Line 2,255: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to fade in/out the Touch Screen. | |The number of frames used to fade in/out the Touch Screen. | ||
|- | |- | ||
|2 | |2 | ||
| Line 2,488: | Line 2,488: | ||
Moves an entity (i.e., an actor, object, or performer) to an actor without restricting the angles used. | Moves an entity (i.e., an actor, object, or performer) to an actor without restricting the angles used. | ||
This opcode | This opcode must be used in a with-statement or a targeted routine. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 2,671: | Line 2,671: | ||
Moves an entity (i.e., an actor, object, or performer) to an actor in a rapid, strange motion. | Moves an entity (i.e., an actor, object, or performer) to an actor in a rapid, strange motion. | ||
This opcode | This opcode must be used in a with-statement or a targeted routine. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 2,905: | Line 2,905: | ||
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. | 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 | This opcode must be used in a with-statement or a targeted routine. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 2,929: | Line 2,929: | ||
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. | 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 | This opcode must be used in a with-statement or a targeted routine. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 2,953: | Line 2,953: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to move the entity. | |The number of frames used to move the entity. | ||
|} | |} | ||
=== 0xc2 - MovePositionMark === | === 0xc2 - MovePositionMark === | ||
| Line 3,030: | Line 3,030: | ||
|uint | |uint | ||
|duration | |duration | ||
|The number of frames to move the entity. | |The number of frames used to move the entity. | ||
|} | |} | ||
=== 0xc5 - MovePositionOffset === | === 0xc5 - MovePositionOffset === | ||
| Line 3,086: | Line 3,086: | ||
|} | |} | ||
=== 0xc7 - MoveSpecial === | === 0xc7 - MoveSpecial === | ||
Currently unknown. Seems to move an entity (i.e., an actor, object, or performer) based on some hardcoded behaviors. | |||
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 3,098: | Line 3,100: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |mode | ||
| | |Determines the kind of action. | ||
# Spin and move in a circular motion. | |||
# Spin and move in a circular motion. | |||
# Currently unknown. | |||
# Currently unknown. | |||
# Currently unknown. Seems to be the most commonly-used value, as a part of the Unionall Coroutine CORO_LIVES_REPLY_NOMRAL. | |||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
|unk1 | |unk1 | ||
| | |Currently unknown. Seems to affect how far the entity will move? | ||
|- | |- | ||
|3 | |3 | ||
|uint | |uint | ||
|unk2 | |unk2 | ||
| | |Currently unknown. | ||
|} | |} | ||
=== 0xc8 - MoveTurn === | === 0xc8 - MoveTurn === | ||
< | Moves an entity (i.e., an actor, object, or performer) based on a certain pattern. Unlike other <code>Move</code> opcodes, this opcode will make the entity interact with the currently loaded Map Background's collision (i.e., the entity stops when hitting a wall). | ||
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 3,124: | Line 3,134: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |distance | ||
| | |How far the entity will move. Higher values result in greater distance being covered. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
| | |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. | |||
This parameter also seems to affect the distance traveled. | |||
|- | |- | ||
|3 | |3 | ||
|uint | |uint | ||
| | |pattern | ||
| | |A hardcoded pattern to move in. | ||
# Moves in a circle clockwise. | |||
# Moves in a circle counterclockwise. | |||
# Moves in a square clockwise. | |||
# Moves in a square counterclockwise. | |||
# Zig-zags back and forth. | |||
Values 6 and above seem to be variations of random movement. | |||
|} | |} | ||
=== 0xca - PauseEffect === | === 0xca - PauseEffect === | ||
Instantly pauses the current graphical effect of an entity (i.e., an actor, object, or performer). The effect will freeze mid-frame. | |||
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 3,149: | Line 3,172: | ||
|- | |- | ||
|1 | |1 | ||
| | |Effect | ||
| | |effect_id | ||
| | |A graphical effect to display relative to an entity. | ||
|} | |} | ||
=== 0xcc - ProcessSpecial === | === 0xcc - ProcessSpecial === | ||
< | Executes one of the game's Special Processes. The return value of a Special Process can be checked by encasing this opcode in a <code>switch</code> statement. A negative return value is not acceptable and will cause the game to suspend indefinitely. | ||
This opcode cannot be used in targeted routines. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,167: | Line 3,192: | ||
|ProcessSpecial | |ProcessSpecial | ||
|process_id | |process_id | ||
| | |One of the game's Special Processes. | ||
|- | |- | ||
|2 | |2 | ||
| | |sint | ||
| | |process_param1 | ||
| | |The first parameter used by the Special Process. | ||
|- | |- | ||
|3 | |3 | ||
| | |sint | ||
| | |process_param2 | ||
| | |The first parameter used by the Special Process. | ||
|} | |} | ||
=== 0xcd - PursueTurnLives === | === 0xcd - PursueTurnLives === | ||
Causes an entity (i.e., an actor, object, or performer) to continuously turn toward an actor for a certain number of frames. | |||
This opcode must be used in a with-statement or a targeted routine. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,192: | Line 3,219: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |duration | ||
| | |The number of frames used to make the entity turn. A value of 0 will make the entity turn forever. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
| | |speed | ||
| | |Turning speed. Higher values result in a slower speed. | ||
|- | |- | ||
|3 | |3 | ||
| | |Entity | ||
| | |actor_id | ||
| | |The actor to turn toward. | ||
|- | |- | ||
|4 | |4 | ||
|uint | |uint | ||
| | |rotation | ||
| | | | ||
# Clockwise. | |||
# Counterclockwise. | |||
A value of 10 will make the entity choose the nearest rotation. | |||
|} | |} | ||
=== 0xce - PursueTurnLives2 === | === 0xce - PursueTurnLives2 === | ||
Causes an entity (i.e., an actor, object, or performer) to continuously turn toward an actor for a certain number of frames. | |||
This opcode must be used in a with-statement or a targeted routine. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,223: | Line 3,256: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |duration | ||
| | |The number of frames used to make the entity turn. A value of 0 will make the entity turn forever. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
| | |speed | ||
| | |Turning speed. Higher values result in a slower speed. | ||
|- | |- | ||
|3 | |3 | ||
| | |Entity | ||
| | |actor_id | ||
| | |The actor to turn toward. | ||
|- | |- | ||
|4 | |4 | ||
|uint | |uint | ||
| | |rotation | ||
| | | | ||
# Clockwise. | |||
# Counterclockwise. | |||
A value of 10 will make the entity choose the nearest rotation. | |||
|} | |} | ||
=== 0xcf - ResetAttribute === | === 0xcf - ResetAttribute === | ||
Currently unknown. Seems to get ignored when parsed in the scripting engine. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,255: | Line 3,292: | ||
|uint | |uint | ||
|unk0 | |unk0 | ||
| | |Currently unknown. | ||
|} | |} | ||
=== 0xd0 - ResetFunctionAttribute === | === 0xd0 - ResetFunctionAttribute === | ||
Sets certain bits of an entity's (i.e., an actor, object, or performer) "function" attribute to 0. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,270: | Line 3,307: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |function_bitfield | ||
| | |Most bits' purposes are unknown. Bit 1 appears to be the bit used for allowing an entity to follow a Type 1 actor, like the actor ACTOR_ATTENDANT1 in the overworld. | ||
|} | |} | ||
=== 0xd1 - ResetHitAttribute === | === 0xd1 - ResetHitAttribute === | ||
Sets certain bits of an entity's (i.e., an actor, object, or performer) "hit" attribute to 0. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,286: | Line 3,323: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |hit_bitfield | ||
| | |Most bits' purposes are unknown. | ||
* 2: Entity collision. | |||
* 6: Talk Script upon collision. | |||
* 7: Talk Script upon pressing the A Button near the entity. | |||
|} | |} | ||
=== 0xd2 - ResetOutputAttribute === | === 0xd2 - ResetOutputAttribute === | ||
Sets certain bits of an entity's (i.e., an actor, object, or performer) "output" attribute to 0. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,302: | Line 3,343: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |output_bitfield | ||
| | | | ||
# Underlay below entities. | |||
# Overlay above entities. | |||
# Overlay above the current Map Background's Layer 2. | |||
# Overlay above the game's canvas system, which includes the textbox, portrait, and some <code>screen_</code> commands that do not end in <code>All</code>. | |||
# Flicker. | |||
# Transparency. | |||
# Invisibility. | |||
# Displays shadow. | |||
|} | |} | ||
=== 0xd3 - ResetReplyAttribute === | === 0xd3 - ResetReplyAttribute === | ||
Sets certain bits of an entity's (i.e., an actor, object, or performer) "reply" attribute to 0. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,318: | Line 3,367: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |reply_bitfield | ||
| | |Most bits' purposes are unknown. | ||
* 1: Talk Script upon collision. | |||
* 2: Talk Script upon pressing the A Button near the entity. | |||
* 6: Underlay below entities. | |||
* 7: Overlay above entities. | |||
|} | |} | ||
=== 0xd4 - ResumeEffect === | === 0xd4 - ResumeEffect === | ||
< | Resumes the current graphical effect of an entity (i.e., an actor, object, or performer) that has been paused with <code>PauseEffect</code> prior to using this opcode. | ||
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 3,333: | Line 3,389: | ||
|- | |- | ||
|1 | |1 | ||
| | |Effect | ||
| | |effect_id | ||
| | |A graphical effect to display relative to an entity. | ||
|} | |} | ||
=== 0xd6 - SavePosition === | === 0xd6 - SavePosition === | ||
< | Saves various attributes of an entity (i.e., an actor, object, or performer) to the following script variables: | ||
* <code>$POSITION_X</code>: The pixel position of the entity on the X-axis multiplied by 256. | |||
* <code>$POSITION_Y</code>: The pixel position of the entity on the Y-axis multiplied by 256. | |||
* <code>$POSITION_HEIGHT</code>: The pixel height (i.e., displacement of the entity from their shadow) of the entity multiplied by 256. | |||
* <code>$POSITION_DIRECTION</code>: The direction the entity is facing. | |||
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 3,350: | Line 3,413: | ||
|1 | |1 | ||
|uint | |uint | ||
| | |index | ||
| | |Index used by all <code>$POSITION_</code> script variables, ranged from 0-2 (inclusive). | ||
|} | |} | ||
=== 0xd7 - screen_FadeChange === | === 0xd7 - screen_FadeChange === | ||
Changes the brightness | Changes the brightness of the screen across a certain number of frames. This opcode will not affect: | ||
* Entities who have had their 4th "output" bit set to 1 (e.g., by using <code>SetOutputAttribute(16);</code> with them). | |||
* Portraits. | |||
* Textboxes. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,366: | Line 3,433: | ||
|1 | |1 | ||
|bool | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and 1 is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
| | |duration | ||
| | |The number of frames used to change the Touch Screen's brightness. | ||
|- | |- | ||
|3 | |3 | ||
|uint | |uint | ||
|start_brightness | |start_brightness | ||
| | |The brightness level the opcode will begin at. | ||
* The minimum brightness is 0, which results in a black screen. | |||
* The default brightness is 256. | |||
* The maximum brightness is 512, which results in a white screen. | |||
|- | |- | ||
|4 | |4 | ||
|uint | |uint | ||
|end_brightness | |end_brightness | ||
| | |The brightness level the opcode will end at. | ||
* The minimum brightness is 0, which results in a black screen. | |||
* The default brightness is 256. | |||
* The maximum brightness is 512, which results in a white screen. | |||
|} | |} | ||
=== 0xd8 - screen_FadeChangeAll === | === 0xd8 - screen_FadeChangeAll === | ||
Changes the brightness of the screen across a certain number of frames. This opcode will affect everything on the Touch Screen. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,396: | Line 3,471: | ||
|- | |- | ||
|1 | |1 | ||
| | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and anything else is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
| | |duration | ||
| | |The number of frames used to change the Touch Screen's brightness. | ||
|- | |- | ||
|3 | |3 | ||
|uint | |uint | ||
| | |start_brightness | ||
| | |The brightness level the opcode will begin at. | ||
* The minimum brightness is 0, which results in a black screen. | |||
* The default brightness is 256. | |||
* The maximum brightness is 512, which results in a white screen. | |||
|- | |- | ||
|4 | |4 | ||
|uint | |uint | ||
| | |end_brightness | ||
| | |The brightness level the opcode will end at. | ||
* The minimum brightness is 0, which results in a black screen. | |||
* The default brightness is 256. | |||
* The maximum brightness is 512, which results in a white screen. | |||
|} | |} | ||
=== 0xd9 - screen_FadeIn === | === 0xd9 - screen_FadeIn === | ||
< | Changes the brightness of the screen to its default state across a certain number of frames. This opcode will not affect: | ||
* Entities who have had their 4th "output" bit set to 1 (e.g., by using <code>SetOutputAttribute(16);</code> with them). | |||
* Portraits. | |||
* Textboxes. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,428: | Line 3,515: | ||
|1 | |1 | ||
|bool | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and anything else is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
|duration | |duration | ||
| | |The number of frames used to change the Touch Screen's brightness. | ||
|} | |} | ||
=== 0xda - screen_FadeInAll === | === 0xda - screen_FadeInAll === | ||
Changes the brightness of the screen to its default state across a certain number of frames. This opcode will affect everything on the Touch Screen. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,449: | Line 3,536: | ||
|1 | |1 | ||
|bool | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and anything else is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
|duration | |duration | ||
| | |The number of frames used to change the Touch Screen's brightness. | ||
|} | |} | ||
=== 0xdb - screen_FadeOut === | === 0xdb - screen_FadeOut === | ||
< | Changes the brightness of the screen to its minimum (i.e., a black screen) across a certain number of frames. This opcode will not affect: | ||
* Entities who have had their 4th "output" bit set to 1 (e.g., by using <code>SetOutputAttribute(16);</code> with them). | |||
* Portraits. | |||
* Textboxes. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,470: | Line 3,561: | ||
|1 | |1 | ||
|bool | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and anything else is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
|duration | |duration | ||
| | |The number of frames used to change the Touch Screen's brightness. | ||
|} | |} | ||
=== 0xdc - screen_FadeOutAll === | === 0xdc - screen_FadeOutAll === | ||
Changes the brightness of the screen to its minimum (i.e., a black screen) across a certain number of frames. This opcode will affect everything on the Touch Screen. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,491: | Line 3,582: | ||
|1 | |1 | ||
|bool | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and anything else is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
|duration | |duration | ||
| | |The number of frames used to change the Touch Screen's brightness. | ||
|} | |} | ||
=== 0xdd - screen_FlushChange === | === 0xdd - screen_FlushChange === | ||
Currently unknown. This opcode is not used in the base game. | |||
{| class="wikitable" | {| class="wikitable" | ||
|+Parameters | |+Parameters | ||
!# | !# | ||
!Type | !Type | ||
| Line 3,513: | Line 3,602: | ||
|uint | |uint | ||
|unk0 | |unk0 | ||
| | |Currently unknown. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
|unk1 | |unk1 | ||
| | |Currently unknown. | ||
|- | |- | ||
|3 | |3 | ||
|uint | |uint | ||
|unk2 | |unk2 | ||
| | |Currently unknown. | ||
|- | |- | ||
|4 | |4 | ||
|uint | |uint | ||
|unk3 | |unk3 | ||
| | |Currently unknown. | ||
|- | |- | ||
|5 | |5 | ||
|uint | |uint | ||
|unk4 | |unk4 | ||
| | |Currently unknown. | ||
|- | |- | ||
|6 | |6 | ||
|uint | |uint | ||
|unk5 | |unk5 | ||
| | |Currently unknown. | ||
|- | |- | ||
|7 | |7 | ||
|uint | |uint | ||
|unk6 | |unk6 | ||
| | |Currently unknown. | ||
|- | |- | ||
|8 | |8 | ||
|uint | |uint | ||
|unk7 | |unk7 | ||
| | |Currently unknown. | ||
|} | |} | ||
=== 0xde - screen_FlushIn === | === 0xde - screen_FlushIn === | ||
Changes the color of the screen from a specific state (given by the opcode's parameters, which affect the Touch Screen instantly) to its default state across a certain number of frames. This opcode will affect everything on the Touch Screen. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,562: | Line 3,652: | ||
|- | |- | ||
|1 | |1 | ||
| | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and anything else is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
| | |duration | ||
| | |The number of frames used to change the Touch Screen's color. | ||
|- | |- | ||
|3 | |3 | ||
|uint | |uint | ||
| | |mode | ||
| | | | ||
# Completely darkens the Touch Screen. | |||
# Completely turns the Touch Screen to a certain color. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with a certain color. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with hardcoded color bytes: 144, 144, and 255. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with hardcoded color bytes: 255, 192, and 128. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white. | |||
# Instantly overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white. | |||
|- | |- | ||
|4 | |4 | ||
|uint | |uint | ||
| | |r | ||
| | |Unused if ''mode'' is not 2 or 4. Byte used for the color red. Has a minimum of 0 and a maximium of 255. | ||
|- | |- | ||
|5 | |5 | ||
|uint | |uint | ||
| | |g | ||
| | |Unused if ''mode'' is not 2 or 4. Byte used for the color green. Has a minimum of 0 and a maximium of 255. | ||
|- | |- | ||
|6 | |6 | ||
|uint | |uint | ||
| | |b | ||
| | |Unused if ''mode'' is not 2 or 4. Byte used for the color blue. Has a minimum of 0 and a maximium of 255. | ||
|} | |} | ||
=== 0xdf - screen_FlushOut === | === 0xdf - screen_FlushOut === | ||
Changes the color of the screen across a certain number of frames. This opcode will affect everything on the Touch Screen. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 3,603: | Line 3,704: | ||
|- | |- | ||
|1 | |1 | ||
| | |bool | ||
| | |suspension_flag | ||
| | |Determines whether the script will suspend until this opcode's operation is complete. 0 is false and anything else is true. | ||
|- | |- | ||
|2 | |2 | ||
|uint | |uint | ||
| | |duration | ||
| | |The number of frames used to change the Touch Screen's color. | ||
|- | |- | ||
|3 | |3 | ||
|uint | |uint | ||
| | |mode | ||
| | | | ||
# Completely darkens the Touch Screen. | |||
# Completely turns the Touch Screen to a certain color. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with a certain color. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with hardcoded color bytes: 144, 144, and 255. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with hardcoded color bytes: 255, 192, and 128. | |||
# Instantly darkens the Touch Screen? | |||
# Overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white. | |||
# Instantly overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white. | |||
|- | |- | ||
|4 | |4 | ||
|uint | |uint | ||
| | |r | ||
| | |Unused if ''mode'' is not 2 or 4. Byte used for the color red. Has a minimum of 0 and a maximium of 255. | ||
|- | |- | ||
|5 | |5 | ||
|uint | |uint | ||
| | |g | ||
| | |Unused if ''mode'' is not 2 or 4. Byte used for the color green. Has a minimum of 0 and a maximium of 255. | ||
|- | |- | ||
|6 | |6 | ||
|uint | |uint | ||
| | |b | ||
| | |Unused if ''mode'' is not 2 or 4. Byte used for the color blue. Has a minimum of 0 and a maximium of 255. | ||
|} | |} | ||
=== 0xe0 - screen_WhiteChange === | === 0xe0 - screen_WhiteChange === | ||