- Opcode: 0x0131
- Short name: HOLD
- Long name: Set PHS lock status
Argument
none
Stack
Player-Character ID
Switchable?
Selectable?
HOLD
Description
Sets whether the given character is “held” (locked) in the PHS/party-switch menu.
The handler pops three stack slots but only uses two of them: the bottom value is the character ID (mapped to a slot via getPointerCharaData) and the middle value is the switchable flag; the top value (nominally Selectable?) is popped and discarded. If the switchable flag is non-zero it sets bits 0x02|0x04 of that character’s flags word in SG_ARRAY_CHARA_DATA (.Exists); if zero it clears those bits.
PC handler: SCRIPT_HOLD.
Function addresses
| Function | Address | Description |
|---|---|---|
SCRIPT_HOLD | 0x51EA50 | Field script opcode handler (verified IDA function) |