Isle
Loading...
Searching...
No Matches
PizzeriaState Class Reference

[AI] Stores all state information for the pizzeria (Pizza Shop) minigame. More...

#include <pizzeria.h>

Inheritance diagram for PizzeriaState:
Collaboration diagram for PizzeriaState:

Public Member Functions

 PizzeriaState ()
 [AI] Constructor that initializes the playlists for each pizzeria actor and resets progress state. More...
 
const char * ClassName () const override
 [AI] Returns the class name string identifier. More...
 
MxBool IsA (const char *p_name) const override
 [AI] Checks if this object is a PizzeriaState or a base type. More...
 
MxResult Serialize (LegoStorage *p_storage) override
 [AI] Serializes Playlist progress/state for all actors to/from the provided storage. More...
 
MxS16 FUN_10017d50 ()
 [AI] Returns the per-actor progress state index for the actor corresponding to the current player's actorId. More...
 
MxU32 NextAction ()
 [AI] Advance and fetch the next action (animation script) for the player's actor in the pizzeria. More...
 
- Public Member Functions inherited from LegoState
 ~LegoState () override
 [AI] Virtual destructor to allow subclass cleanup. More...
 
virtual MxBool IsSerializable ()
 [AI] Returns if this state can be serialized (for game saving/loading support). More...
 
virtual MxBool Reset ()
 [AI] Hook for returning object to default (empty) state; not implemented in this base. More...
 
virtual MxResult Serialize (LegoStorage *p_storage)
 [AI] Serialize state to a storage (for save/load). More...
 
const char * ClassName () const override
 [AI] Gets this class's name for RTTI/IsA functionality. More...
 
MxBool IsA (const char *p_name) const override
 [AI] Tests if this object is of a given class name, directly or through inheritance. More...
 
- Public Member Functions inherited from MxCore
 MxCore ()
 [AI] Constructs a new MxCore object and assigns it a unique id. More...
 
virtual ~MxCore ()
 [AI] Virtual destructor. Required for correct polymorphic cleanup in derived classes. More...
 
virtual MxLong Notify (MxParam &p_param)
 [AI] Virtual callback notification mechanism. More...
 
virtual MxResult Tickle ()
 [AI] Called by tickle managers to allow the object to update itself. More...
 
virtual const char * ClassName () const
 [AI] Returns the runtime class name of this object. More...
 
virtual MxBool IsA (const char *p_name) const
 [AI] Checks whether this object's class type or parents match the given name. More...
 
MxU32 GetId ()
 [AI] Gets the unique (per-process) id assigned to this object instance. More...
 

Public Attributes

Playlist m_unk0x08 [5]
 [AI] Playlists (one for each actor in the pizzeria: Pepper, Mama, Papa, Nick, Laura) holding the list of animation script IDs to be played in order. More...
 
MxS32 m_unk0x44 [5]
 [AI] Per-actor state counters. More...
 

Static Public Attributes

static IsleScript::Script g_pepperActions []
 [AI] Static list of script IDs for Pepper's actions/animations in the pizzeria minigame. More...
 
static IsleScript::Script g_mamaActions []
 [AI] Static list of script IDs for Mama's actions/animations in the pizzeria minigame. More...
 
static IsleScript::Script g_papaActions []
 [AI] Static list of script IDs for Papa's actions/animations in the pizzeria minigame. More...
 
static IsleScript::Script g_nickActions []
 [AI] Static list of script IDs for Nick's actions/animations in the pizzeria minigame. More...
 
static IsleScript::Script g_lauraActions []
 [AI] Static list of script IDs for Laura's actions/animations in the pizzeria minigame. More...
 

Additional Inherited Members

- Public Types inherited from LegoState
enum  ScoreColor { e_grey = 0 , e_yellow , e_blue , e_red }
 [AI] Score coloring values for in-game display feedback or logic. More...
 

Detailed Description

[AI] Stores all state information for the pizzeria (Pizza Shop) minigame.

Tracks animation progress for each character (Pepper, Mama, Papa, Nick, Laura) and manages action playlists and progress for each.

[AI] Maintains an array of Playlist objects for each character (for animation sequences) and an array that tracks individual progress/state for each character. Serialization saves/loads playlist indexes so that progress is consistent through save/load cycles.

Definition at line 21 of file pizzeria.h.

Constructor & Destructor Documentation

◆ PizzeriaState()

PizzeriaState::PizzeriaState ( )

[AI] Constructor that initializes the playlists for each pizzeria actor and resets progress state.

Definition at line 90 of file pizzeria.cpp.

Member Function Documentation

◆ ClassName()

const char * PizzeriaState::ClassName ( ) const
inlineoverridevirtual

[AI] Returns the class name string identifier.

Returns
const char* "PizzeriaState" [AI]

Reimplemented from LegoState.

Definition at line 32 of file pizzeria.h.

◆ FUN_10017d50()

MxS16 PizzeriaState::FUN_10017d50 ( )

[AI] Returns the per-actor progress state index for the actor corresponding to the current player's actorId.

[AI] Used to determine how far the player has progressed in the pizzeria sequence.

Returns
MxS16 Current progress state index for the active actor. [AI]

Definition at line 101 of file pizzeria.cpp.

◆ IsA()

MxBool PizzeriaState::IsA ( const char *  p_name) const
inlineoverridevirtual

[AI] Checks if this object is a PizzeriaState or a base type.

Parameters
p_nameName of class to check type against. [AI]
Returns
MxBool True if matching classname or parent type, false otherwise. [AI]

Reimplemented from LegoState.

Definition at line 43 of file pizzeria.h.

◆ NextAction()

MxU32 PizzeriaState::NextAction ( )

[AI] Advance and fetch the next action (animation script) for the player's actor in the pizzeria.

[AI] Updates per-actor state to ensure actors progress through their available action scripts, incrementing the action index up to 2. Uses Playlist for cycling through actor animation scripts.

Returns
MxU32 The next IsleScript::Script value (animation/action script ID) to use. [AI]

Definition at line 108 of file pizzeria.cpp.

◆ Serialize()

MxResult PizzeriaState::Serialize ( LegoStorage p_storage)
overridevirtual

[AI] Serializes Playlist progress/state for all actors to/from the provided storage.

Reads and writes the next action index for each playlist to allow save-load of animation progress.

Parameters
p_storageSave/load storage object. [AI]
Returns
MxResult Result code from LegoState::Serialize and serialization operations. [AI]

Reimplemented from LegoState.

Definition at line 121 of file pizzeria.cpp.

Member Data Documentation

◆ g_lauraActions

IsleScript::Script PizzeriaState::g_lauraActions
static
Initial value:

[AI] Static list of script IDs for Laura's actions/animations in the pizzeria minigame.

Definition at line 105 of file pizzeria.h.

◆ g_mamaActions

IsleScript::Script PizzeriaState::g_mamaActions
static
Initial value:

[AI] Static list of script IDs for Mama's actions/animations in the pizzeria minigame.

Definition at line 93 of file pizzeria.h.

◆ g_nickActions

IsleScript::Script PizzeriaState::g_nickActions
static
Initial value:

[AI] Static list of script IDs for Nick's actions/animations in the pizzeria minigame.

Definition at line 101 of file pizzeria.h.

◆ g_papaActions

IsleScript::Script PizzeriaState::g_papaActions
static
Initial value:

[AI] Static list of script IDs for Papa's actions/animations in the pizzeria minigame.

Definition at line 97 of file pizzeria.h.

◆ g_pepperActions

IsleScript::Script PizzeriaState::g_pepperActions
static
Initial value:

[AI] Static list of script IDs for Pepper's actions/animations in the pizzeria minigame.

Definition at line 89 of file pizzeria.h.

◆ m_unk0x08

Playlist PizzeriaState::m_unk0x08[5]

[AI] Playlists (one for each actor in the pizzeria: Pepper, Mama, Papa, Nick, Laura) holding the list of animation script IDs to be played in order.

[AI]

Definition at line 78 of file pizzeria.h.

◆ m_unk0x44

MxS32 PizzeriaState::m_unk0x44[5]

[AI] Per-actor state counters.

Index corresponds to actor ID - 1. Tracks how many actions have already been performed by each actor, used for sequentially advancing through available actions. [AI]

Definition at line 84 of file pizzeria.h.


The documentation for this class was generated from the following files: