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

Pizza mission state for the pizza delivery minigame and related characters. More...

#include <pizza.h>

Inheritance diagram for PizzaMissionState:
Collaboration diagram for PizzaMissionState:

Classes

struct  Mission
 Holds all data for a single pizza mission for a specific actor. More...
 

Public Member Functions

 PizzaMissionState ()
 Constructs a new PizzaMissionState and initializes missions for all possible actors. More...
 
const char * ClassName () const override
 Returns the name of this state class (PizzaMissionState). More...
 
MxBool IsA (const char *p_name) const override
 Checks whether the given class name is PizzaMissionState or any base. More...
 
MxResult Serialize (LegoStorage *p_storage) override
 Serializes custom mission fields (score, progress) for saving/loading game state. More...
 
void SetUnknown0xb0 (MxU32 p_unk0xb0)
 Sets the m_unk0xb0 member, which holds the current object ID of the pending mission action. More...
 
MxU32 GetUnknown0xb0 ()
 Gets the m_unk0xb0 member, which holds the object ID associated with current/next mission flow. More...
 
MxS16 GetHighScore (MxU8 p_actorId)
 Retrieves the historical best (high) score for a given actor's pizza mission. More...
 
MissionGetMission (MxU8 p_actorId)
 Finds the Mission struct belonging to a given actor/character. More...
 
MxS16 FUN_10039540 ()
 Invokes logic in the PizzeriaState required for mission state transitions. 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

PizzeriaStatem_pizzeriaState
 Pointer to current pizzeria state for delegating cross-mission logic. [AI]. More...
 
undefined4 m_unk0x0c
 Used for internal state machine; controls mission flow/progress (e.g., 0=idle, 1=proposed, ...) [AI]. More...
 
Mission m_missions [5]
 Array with per-actor mission progress. [AI]. More...
 
MxU32 m_unk0xb0
 Holds currently "pending" action/object for mission transitions. [AI]. More...
 

Static Public Attributes

static IsleScript::Script g_pepperActions []
 Action scripts for each actor's pizza mission (indexed in Mission::m_actions) [AI]. More...
 
static IsleScript::Script g_mamaActions []
 
static IsleScript::Script g_papaActions []
 
static IsleScript::Script g_nickActions []
 
static IsleScript::Script g_lauraActions []
 
static MxLong g_pepperFinishTimes [] = {100000, 200000, 300000, 350000}
 Finish time thresholds (red/blue/yellow/timeout) for all pizza missions (per-actor) [AI]. More...
 
static MxLong g_mamaFinishTimes [] = {100000, 200000, 300000, 350000}
 
static MxLong g_papaFinishTimes [] = {100000, 200000, 300000, 350000}
 
static MxLong g_nickFinishTimes [] = {100000, 200000, 300000, 350000}
 
static MxLong g_lauraFinishTimes [] = {100000, 200000, 300000, 350000}
 

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

Pizza mission state for the pizza delivery minigame and related characters.

[AI]

PizzaMissionState encapsulates the persistent state for the pizza delivery mission for each character (Pepper, Mama, Papa, Nick, Laura). It stores the mission scripting, finish time thresholds, and score tracking for each actor, as well as state for mission progress and serialization. [AI]

Definition at line 21 of file pizza.h.

Constructor & Destructor Documentation

◆ PizzaMissionState()

PizzaMissionState::PizzaMissionState ( )

Constructs a new PizzaMissionState and initializes missions for all possible actors.

[AI]

Definition at line 595 of file pizza.cpp.

Member Function Documentation

◆ ClassName()

const char * PizzaMissionState::ClassName ( ) const
inlineoverridevirtual

Returns the name of this state class (PizzaMissionState).

[AI]

Reimplemented from LegoState.

Definition at line 178 of file pizza.h.

◆ FUN_10039540()

MxS16 PizzaMissionState::FUN_10039540 ( )

Invokes logic in the PizzeriaState required for mission state transitions.

[AI] [AI_SUGGESTED_NAME: GetPizzeriaProgressStage]

Returns
Value indicating current mission proposal state/progress. [AI]

Definition at line 648 of file pizza.cpp.

◆ GetHighScore()

MxS16 PizzaMissionState::GetHighScore ( MxU8  p_actorId)
inline

Retrieves the historical best (high) score for a given actor's pizza mission.

[AI]

Parameters
p_actorIdCharacter whose mission is checked. [AI]

Definition at line 220 of file pizza.h.

◆ GetMission()

PizzaMissionState::Mission * PizzaMissionState::GetMission ( MxU8  p_actorId)

Finds the Mission struct belonging to a given actor/character.

[AI] [AI_SUGGESTED_NAME: GetMission]

Parameters
p_actorIdThe actor ID (Pepper, Mama, etc.) [AI]
Returns
Pointer to that actor's Mission struct. [AI]

Definition at line 635 of file pizza.cpp.

◆ GetUnknown0xb0()

MxU32 PizzaMissionState::GetUnknown0xb0 ( )
inline

Gets the m_unk0xb0 member, which holds the object ID associated with current/next mission flow.

[AI]

Returns
The unknown object ID. [AI]

Definition at line 213 of file pizza.h.

◆ IsA()

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

Checks whether the given class name is PizzaMissionState or any base.

[AI]

Parameters
p_nameClass name to check. [AI]
Returns
True if it matches. [AI]

Reimplemented from LegoState.

Definition at line 190 of file pizza.h.

◆ Serialize()

MxResult PizzaMissionState::Serialize ( LegoStorage p_storage)
overridevirtual

Serializes custom mission fields (score, progress) for saving/loading game state.

[AI]

Parameters
p_storageStorage to serialize with. [AI]

Reimplemented from LegoState.

Definition at line 609 of file pizza.cpp.

◆ SetUnknown0xb0()

void PizzaMissionState::SetUnknown0xb0 ( MxU32  p_unk0xb0)
inline

Sets the m_unk0xb0 member, which holds the current object ID of the pending mission action.

[AI]

Parameters
p_unk0xb0The object ID to set. [AI]

Definition at line 206 of file pizza.h.

Member Data Documentation

◆ g_lauraActions

IsleScript::Script PizzaMissionState::g_lauraActions
static
Initial value:

Definition at line 245 of file pizza.h.

◆ g_lauraFinishTimes

MxLong PizzaMissionState::g_lauraFinishTimes = {100000, 200000, 300000, 350000}
static

Definition at line 252 of file pizza.h.

◆ g_mamaActions

◆ g_mamaFinishTimes

MxLong PizzaMissionState::g_mamaFinishTimes = {100000, 200000, 300000, 350000}
static

Definition at line 249 of file pizza.h.

◆ g_nickActions

◆ g_nickFinishTimes

MxLong PizzaMissionState::g_nickFinishTimes = {100000, 200000, 300000, 350000}
static

Definition at line 251 of file pizza.h.

◆ g_papaActions

◆ g_papaFinishTimes

MxLong PizzaMissionState::g_papaFinishTimes = {100000, 200000, 300000, 350000}
static

Definition at line 250 of file pizza.h.

◆ g_pepperActions

◆ g_pepperFinishTimes

MxLong PizzaMissionState::g_pepperFinishTimes = {100000, 200000, 300000, 350000}
static

Finish time thresholds (red/blue/yellow/timeout) for all pizza missions (per-actor) [AI].

Definition at line 248 of file pizza.h.

◆ m_missions

Mission PizzaMissionState::m_missions[5]

Array with per-actor mission progress. [AI].

Definition at line 237 of file pizza.h.

◆ m_pizzeriaState

PizzeriaState* PizzaMissionState::m_pizzeriaState

Pointer to current pizzeria state for delegating cross-mission logic. [AI].

Definition at line 235 of file pizza.h.

◆ m_unk0x0c

undefined4 PizzaMissionState::m_unk0x0c

Used for internal state machine; controls mission flow/progress (e.g., 0=idle, 1=proposed, ...) [AI].

Definition at line 236 of file pizza.h.

◆ m_unk0xb0

MxU32 PizzaMissionState::m_unk0xb0

Holds currently "pending" action/object for mission transitions. [AI].

Definition at line 238 of file pizza.h.


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