Pokered Save Editor 2
Pokemon Red & Blue save file editor - Qt 6 C++/QML
Loading...
Searching...
No Matches
WorldEvents Class Reference

The game's story-event flags – a flat array of 508 booleans. More...

#include <worldevents.h>

Inheritance diagram for WorldEvents:
Collaboration diagram for WorldEvents:

Public Member Functions

 WorldEvents (SaveFile *saveFile=nullptr)
virtual ~WorldEvents ()
int eventsCount ()
 Number of event flags (eventCount).
bool eventsAt (int ind)
 Is event ind set?
void eventsSet (int ind, bool val)
 Set/clear event ind.
protected::void completedEventsChanged ()
void load (SaveFile *saveFile=nullptr)
 Expand all event bits from the save.
void save (SaveFile *saveFile)
 Flatten all event bits to the save.
void reset ()
 Clear every event.
void randomize ()
 Randomize the event flags.

Public Attributes

bool completedEvents [eventCount]
 One flag per known story event.

Detailed Description

The game's story-event flags – a flat array of 508 booleans.

Gen 1 tracks story progress as individual event bits scattered all over the save, so this object presents them as one flat completedEvents array of eventCount flags, with QML count/at/set access. Toggling these is how story flags are edited. Standard expanded-node convention (see SaveFileExpanded).

See also
World.

Definition at line 38 of file worldevents.h.

Constructor & Destructor Documentation

◆ WorldEvents()

WorldEvents::WorldEvents ( SaveFile * saveFile = nullptr)

Definition at line 33 of file worldevents.cpp.

References load().

◆ ~WorldEvents()

WorldEvents::~WorldEvents ( )
virtual

Definition at line 38 of file worldevents.cpp.

Member Function Documentation

◆ completedEventsChanged()

protected::void WorldEvents::completedEventsChanged ( )

References load(), randomize(), reset(), and save().

Referenced by eventsSet(), load(), and reset().

◆ eventsAt()

bool WorldEvents::eventsAt ( int ind)

Is event ind set?

Definition at line 45 of file worldevents.cpp.

References completedEvents.

◆ eventsCount()

int WorldEvents::eventsCount ( )

Number of event flags (eventCount).

Definition at line 40 of file worldevents.cpp.

References eventCount.

◆ eventsSet()

void WorldEvents::eventsSet ( int ind,
bool val )

Set/clear event ind.

Definition at line 50 of file worldevents.cpp.

References completedEvents, and completedEventsChanged().

◆ load()

void WorldEvents::load ( SaveFile * saveFile = nullptr)

Expand all event bits from the save.

Definition at line 56 of file worldevents.cpp.

References completedEvents, completedEventsChanged(), EventsDB::getStore(), EventsDB::getStoreSize(), EventsDB::inst(), reset(), and SaveFile::toolset.

Referenced by completedEventsChanged(), and WorldEvents().

◆ randomize()

void WorldEvents::randomize ( )

Randomize the event flags.

Definition at line 92 of file worldevents.cpp.

References reset().

Referenced by completedEventsChanged().

◆ reset()

void WorldEvents::reset ( )

Clear every event.

Definition at line 83 of file worldevents.cpp.

References completedEvents, completedEventsChanged(), and eventCount.

Referenced by completedEventsChanged(), load(), and randomize().

◆ save()

void WorldEvents::save ( SaveFile * saveFile)

Flatten all event bits to the save.

Definition at line 73 of file worldevents.cpp.

References completedEvents, EventsDB::getStore(), EventsDB::getStoreSize(), EventsDB::inst(), and SaveFile::toolset.

Referenced by completedEventsChanged().

Member Data Documentation

◆ completedEvents

bool WorldEvents::completedEvents[eventCount]

One flag per known story event.

Definition at line 60 of file worldevents.h.

Referenced by eventsAt(), eventsSet(), load(), reset(), and save().


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