List of Opcodes: Difference between revisions

Happylappy (talk | contribs)
m SwitchLives & SwitchRandom
Happylappy (talk | contribs)
m World Map Mode documentation
 
(19 intermediate revisions by 6 users not shown)
Line 382: Line 382:
|}
|}
=== 0xf - back_SetWeatherEffect ===
=== 0xf - back_SetWeatherEffect ===
Currently unknown. The only values this opcode accepts seems to be 1, 2, and 3. Its only known use is in V00P02/m01a04a.ssb, which is a test script used by the developers.
Currently unknown. The only values this opcode accepts seems to be 1, 2, and 3. Value 3 was previously used in S02P01A/m00a01a.ssb in Time/Darkness, for its iteration of the personality test. In Sky, its only use is in V00P02/m01a04a.ssb, which is a leftover test script used by the developers to test the visuals of the Time/Darkness iteration of the aura test.


{| class="wikitable"
{| class="wikitable"
Line 397: Line 397:
|Currently unknown.
|Currently unknown.
|}
|}
=== 0x10 - back_SetWeatherScrollOffset ===
=== 0x10 - back_SetWeatherScrollOffset ===
Currently unknown. This opcode is not used in the base game.
Currently unknown. This opcode is not used in the base game.
Line 927: Line 928:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 946: Line 947:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 965: Line 966:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,004: Line 1,005:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 1,121: Line 1,122:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,140: Line 1,141:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,159: Line 1,160:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,198: Line 1,199:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 1,281: Line 1,282:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,298: Line 1,299:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,315: Line 1,316:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,354: Line 1,355:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 1,467: Line 1,468:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,484: Line 1,485:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,501: Line 1,502:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|}
|}
Line 1,540: Line 1,541:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 1,761: Line 1,762:
|}
|}
=== 0x81 - Flash ===
=== 0x81 - Flash ===
Currently unknown; it does not seem to affect much. This opcode is not used in the base game.
Zeroes-out the return address used by the <code>Return</code> opcode. This opcode is not used in the base game.


No parameters.
No parameters.
Line 1,835: Line 1,836:
|2
|2
|uint
|uint
|table
|table_ID
|Some unknown item tables related to Spinda's Cafe.
|Some item tables related to Spinda's Cafe.
|}
The table IDs themselves are as follows. Values above 15 are currently unknown and untested.
{| class="wikitable"
!#
!Description
!#
!Description
|-
|0
|Sky Gift Item Pool
|8
|Silver Ticket Win Pool
|-
|1
|Numel "Give" Item Pool
|9
|Silver Ticket Big Win Pool
|-
|2
|Numel "Recieve" Item Pool
|10
|Gold Ticket Loss Pool
|-
|3
|Happiny Lost Item Pool
|11
|Gold Ticket Win Pool
|-
|4
|Prize Ticket Loss Pool
|12
|Gold Ticket Big Win Pool
|-
|5
|Prize Ticket Win Pool
|13
|Prism Ticket Loss Pool
|-
|6
|Prize Ticket Big Win Pool
|14
|Prism Ticket Win Pool
|-
|7
|Silver Ticket Loss Pool
|15
|Prism Ticket Big Win Pool
|}
|}
=== 0x86 - item_SetVariable ===
=== 0x86 - item_SetVariable ===
Saves the value of a script variable to an item slot. Items in slot 0 may also be added to the player's bag and storage with hardcoded menus, such as <code>message_Menu(MENU_GIVE_ITEM);</code> and <code>message_Menu(MENU_GIVE_ITEM2);</code>, respectively. Additionally, the text tag <code>[s_item:X]</code> will display the item's name, where X is the item slot number.
Saves the value of a script variable to an item slot. Items in slot 0 may also be added to the player's bag and storage with hardcoded menus, such as <code>message_Menu(MENU_GIVE_ITEM);</code> and <code>message_Menu(MENU_GIVE_ITEM2);</code>, respectively. Additionally, the text tag <code>[s_item:X]</code> will display the item's name, where X is the item slot number.
Line 2,503: Line 2,552:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,532: Line 2,581:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,581: Line 2,630:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,629: Line 2,678:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,658: Line 2,707:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,687: Line 2,736:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,716: Line 2,765:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,764: Line 2,813:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,812: Line 2,861:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,841: Line 2,890:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,870: Line 2,919:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
|-
|-
|2
|2
Line 2,898: Line 2,947:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
|-
|-
|2
|2
Line 2,921: Line 2,970:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,950: Line 2,999:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 2,974: Line 3,023:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 3,027: Line 3,076:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 3,051: Line 3,100:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 3,104: Line 3,153:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 3,172: Line 3,221:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.


Line 4,695: Line 4,744:
|}
|}
=== 0x102 - SetEffect ===
=== 0x102 - SetEffect ===
<TO DO: Opcode description>
Plays back an [[List of Effect Animations|effect animation]] assigned to an actor or performer.


{| class="wikitable"
{| class="wikitable"
Line 4,708: Line 4,757:
|Effect
|Effect
|effect_id
|effect_id
|
|The ID of a given effect.
|-
|-
|2
|2
|uint
|uint
|position_marker_id?
|position_marker_id?
|
|Set to one of the following character sprite offsets:
0: Head<br>1: Right Hand<br>2: Left Hand<br>3: Center<br>4: No offset (bottom of sprite)
|}
|}
=== 0x103 - SetFunctionAttribute ===
=== 0x103 - SetFunctionAttribute ===
<TO DO: Opcode description>
<TO DO: Opcode description>
Line 4,790: Line 4,841:
|}
|}
=== 0x107 - SetOutputAttribute ===
=== 0x107 - SetOutputAttribute ===
<TO DO: Opcode description>
Sets certain bits of an entity's (i.e., an actor, object, or performer) "output" attribute to 1.
 
{| class="wikitable"
{| class="wikitable"
|+Parameters
|+Parameters
Line 4,802: Line 4,852:
|1
|1
|bitfield
|bitfield
|unk0
|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.
|}
|}
=== 0x108 - SetPosition ===
=== 0x108 - SetPosition ===
Line 4,960: Line 5,018:
|uint
|uint
|speed
|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.
|Movement speed. Higher values result in a faster speed. Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
Line 4,987: Line 5,045:
|uint
|uint
|speed
|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.
|Movement speed. Higher values result in a faster speed. Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
Line 5,036: Line 5,094:
|uint
|uint
|speed
|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.
|Movement speed. Higher values result in a faster speed. Values starting at 32770 and above will be slower than a value of 1.
|-
|-
|2
|2
Line 5,422: Line 5,480:
|uint
|uint
|speed
|speed
|Movement speed. Higher values result in a faster speed. 0 will result in an instant movement.
|Movement speed. Higher values result in a faster speed.  
Values starting at 32770 and above will be slower than a value of 1.
Values starting at 32770 and above will be slower than a value of 1.
|-
|-
Line 5,576: Line 5,634:
|Level
|Level
|level
|level
|
|Map LEVEL the script should be located in.
|-
|-
|2
|2
|ConstString
|ConstString
|script_id
|script_id
|
|Name of the script itself, only the first 8 characters are read.
|-
|-
|3
|3
|uint
|uint
|unk2
|script_sector
|
|The "sector" of the script, and the value <code>switch(sector())</code> will return in def 0. Often used to determine whether a cutscene should be played as a flashback or not.
|}
|}


=== 0x12d - supervision_ExecuteActingSub ===
=== 0x12d - supervision_ExecuteActingSub ===
Loads a specified Acting script from the specified level from within Unionall
Loads a specified Acting script from the specified level from within Unionall.


{| class="wikitable"
{| class="wikitable"
Line 5,603: Line 5,661:
|Level
|Level
|level
|level
|
|Map LEVEL the script should be located in.
|-
|-
|2
|2
|ConstString
|ConstString
|script_id
|script_id
|
|Name of the script itself, only the first 8 characters are read.
|-
|-
|3
|3
|uint
|uint
|unk2
|script_sector
|
|The "sector" of the script, and the value <code>switch(sector())</code> will return in def 0. Often used to determine whether a cutscene should be played as a flashback or not.
|}
|}


Line 6,549: Line 6,607:


=== 0x174 - worldmap_ChangeLevel ===
=== 0x174 - worldmap_ChangeLevel ===
<TO DO: Opcode description>
Causes the clouds parting animation on the world map, presumably hardcoded by vanilla use-case.


{| class="wikitable"
{| class="wikitable"
Line 6,561: Line 6,619:
|1
|1
|uint
|uint
|unk0
|world_map_level
|
|Level to transition the world map state to.
|}
|}
=== 0x175 - worldmap_DeleteArrow ===
=== 0x175 - worldmap_DeleteArrow ===
Line 6,583: Line 6,641:
|uint
|uint
|world_map_marker_id
|world_map_marker_id
|
|The world map id to move the camera to.
|}
|}


Line 6,609: Line 6,667:


=== 0x179 - worldmap_SetCamera ===
=== 0x179 - worldmap_SetCamera ===
<TO DO: Opcode description>
Centers the world map camera on a specific world map marker.


{| class="wikitable"
{| class="wikitable"
Line 6,621: Line 6,679:
|1
|1
|uint
|uint
|unk0
|world_map_marker_id
|
|The world map id to set the camera to.
|}
|}
=== 0x17a - worldmap_SetLevel ===
=== 0x17a - worldmap_SetLevel ===
<TO DO: Opcode description>
Sets the current world map state. Additionally updates $WORLD_MAP_LEVEL


{| class="wikitable"
{| class="wikitable"
Line 6,637: Line 6,695:
|1
|1
|uint
|uint
|unk0
|world_map_level
|
|Level to assign the world map state to.
|}
|}
=== 0x17b - worldmap_SetMark ===
=== 0x17b - worldmap_SetMark ===
<TO DO: Opcode description>
Enables a yellow dot for the specified world map marker.


{| class="wikitable"
{| class="wikitable"
Line 6,653: Line 6,711:
|1
|1
|uint
|uint
|unk0
|world_map_marker_id
|
|The world map id to enable the yellow dot for.
|}
|}
=== 0x17c - worldmap_SetMessage ===
=== 0x17c - worldmap_SetMessage ===
<TO DO: Opcode description>
<TO DO: Opcode description>
Seemingly unused in vanilla.


{| class="wikitable"
{| class="wikitable"
Line 6,690: Line 6,750:


=== 0x17e - worldmap_SetMode ===
=== 0x17e - worldmap_SetMode ===
<TO DO: Opcode description>
Sets the "mode" of the world map, to align with a particular purpose.
 
Mode 1 seems to be for handling travel to a dungeon or area.
 
Mode 2 is only used by debug scripts.
 
Mode 3 is for handling moving clouds.
 
Mode 4 is for cutscene use, or for showing where things are on a map.
 
All other modes are unused.


{| class="wikitable"
{| class="wikitable"
Line 6,702: Line 6,772:
|1
|1
|uint
|uint
|unk0
|world_map_mode
|
|
|}
|}
Line 7,099: Line 7,169:
|}
|}
=== 0x36 - BranchVariation ===
=== 0x36 - BranchVariation ===
<TO DO: Opcode description>
Used for demo cutscenes.
 
Jumps to the specified address if the first parameter is 0. On the demo version of the game, jumps if the first parameter is 3.


{| class="wikitable"
{| class="wikitable"
Line 7,112: Line 7,184:
|uint
|uint
|param
|param
|
|Unknown. Always 3.
|-
|-
|2
|2
|uint
|uint
|jump_address
|jump_address
|
|Address to jump to.
|}
|}
=== 0x37 - Call ===
=== 0x37 - Call ===
Line 7,612: Line 7,684:
|}
|}
=== 0xaa - message_SwitchMenu ===
=== 0xaa - message_SwitchMenu ===
<TO DO: Opcode description>
Enclose within a switch case, and generates a dialogue prompt with the options present in subsequent "case menu("text"):"


{| class="wikitable"
{| class="wikitable"
Line 7,624: Line 7,696:
|1
|1
|uint
|uint
|unk0
|cancel
|
|If player can use the B button to back out of a menu. 0 for false, 1 for true.
|-
|-
|2
|2
|uint
|uint
|unk1
|init
|
|Entry number to start the cursor at, starting at 1
|}
|}
=== 0xab - message_SwitchMenu2 ===
=== 0xab - message_SwitchMenu2 ===
<TO DO: Opcode description>
Same as message_SwitchMenu, but it also takes an argument for a bitfield, and will only display dialogue options for which the corresponding bit is enabled (set to 1).


{| class="wikitable"
{| class="wikitable"
Line 7,645: Line 7,717:
|1
|1
|uint
|uint
|unk0
|cancel
|
|If player can use the B button to back out of a menu. 0 for false, 1 for true.
|-
|-
|2
|2
|uint
|uint
|unk1
|init
|
|Entry number to start the cursor at, starting at 1
|-
|-
|3
|3
|uint
|uint
|unk2
|unk2
|
|Bitfield $VAR
|}
|}
=== 0xac - message_SwitchMonologue ===
=== 0xac - message_SwitchMonologue ===
<TO DO: Opcode description>
Structured similarly to a switch statement. Typically uses <code>$HERO_TALK_KIND</code> as an argument, and uses multiple cases to display certain dialogue strings.
 
<code>case 4:</code> used when the player is male or genderless
 
<code>case 5:</code> used when the player is female
 
<code>default:</code> used when <code>$HERO_TALK_KIND</code>'s Talk Group has a value other than 4 or 5
 
This opcode supports displaying a portrait. No sound effect is used when text is scrolling.


{| class="wikitable"
{| class="wikitable"
Line 7,672: Line 7,752:
|GameVar
|GameVar
|var
|var
|
|<code>$x_TALK_KIND</code>, contains Talk Group number
|}
|}
=== 0xad - message_SwitchTalk ===
=== 0xad - message_SwitchTalk ===
<TO DO: Opcode description>
Same as _SwitchMonologue, but typically uses <code>$PARTNER_TALK_KIND</code> as an argument, and the cases used vary.
 
Of the vanilla game partner options:
 
<code>case 1:</code> used if Squirtle, Tododile, Chimchar, Meowth, or Munchlax
 
<code>case 2:</code> used for all other male partners
 
<code>case 3:</code> used for all female partners
 
<code>default:</code> used when <code>$PARTNER_TALK_KIND</code>'s Talk Group has a value other than 1, 2, or 3
 
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 7,688: Line 7,780:
|GameVar
|GameVar
|var
|var
|
|<code>$x_TALK_KIND</code>, contains Talk Group number
|}
|}
=== 0xc9 - object ===
=== 0xc9 - object ===