mirror of
https://github.com/zeldaret/ss
synced 2026-06-24 09:21:20 -04:00
Everything OK except for weak dtor order
This commit is contained in:
@@ -18,7 +18,7 @@ public:
|
||||
/** 0x10 */ virtual void onDirty();
|
||||
/** 0x14 */ virtual void copyFlagsFromSave() = 0;
|
||||
/** 0x18 */ virtual void setupUnkFlagsStuff() = 0;
|
||||
/** 0x1C */ virtual bool doCommit() = 0;
|
||||
/** 0x1C */ virtual void doCommit() = 0;
|
||||
/** 0x20 */ virtual void setFlag(u16 flag);
|
||||
/** 0x24 */ virtual void unsetFlag(u16 flag);
|
||||
/** 0x28 */ virtual void setFlagOrCounterToValue(u16 flag, u16 value);
|
||||
@@ -59,16 +59,19 @@ public:
|
||||
|
||||
FlagSpace storyFlags;
|
||||
|
||||
void init();
|
||||
bool commit();
|
||||
|
||||
/** 0x0C */ virtual void setFlagszptr() override {
|
||||
|
||||
storyFlagsPtr = &storyFlags;
|
||||
}
|
||||
/** 0x10 */ virtual void onDirty() override;
|
||||
/** 0x14 */ virtual void copyFlagsFromSave() override;
|
||||
/** 0x18 */ virtual void setupUnkFlagsStuff() override;
|
||||
/** 0x1C */ virtual bool doCommit() override {}
|
||||
/** 0x1C */ virtual void doCommit() override {
|
||||
u16 sz = flagSizeMaybe;
|
||||
u16 *flags = storyFlagsPtr->getFlagPtrUnchecked();
|
||||
FileManager::sInstance->setStoryFlags(flags, 0, sz);
|
||||
}
|
||||
/** 0x20 */ virtual void setFlag(u16 flag) override;
|
||||
/** 0x24 */ virtual void unsetFlag(u16 flag) override;
|
||||
/** 0x28 */ virtual void setFlagOrCounterToValue(u16 flag, u16 value) override;
|
||||
@@ -92,16 +95,15 @@ public:
|
||||
ItemflagManager();
|
||||
virtual ~ItemflagManager() {}
|
||||
|
||||
void init();
|
||||
bool commit();
|
||||
|
||||
/** 0x0C */ virtual void setFlagszptr() override {
|
||||
|
||||
storyFlagsPtr = &itemFlags;
|
||||
}
|
||||
/** 0x10 */ virtual void onDirty() override;
|
||||
/** 0x14 */ virtual void copyFlagsFromSave();
|
||||
/** 0x18 */ virtual void setupUnkFlagsStuff();
|
||||
/** 0x1C */ virtual bool doCommit() {
|
||||
/** 0x1C */ virtual void doCommit() {
|
||||
u16 sz = flagSizeMaybe;
|
||||
u16 *flags = storyFlagsPtr->getFlagPtrUnchecked();
|
||||
FileManager::sInstance->setItemFlags(flags, 0, sz);
|
||||
@@ -117,7 +119,7 @@ public:
|
||||
return getFlag(flag & ~0x4000);
|
||||
}
|
||||
/** 0x30 */ virtual u16 getUncommittedValue(u16 flag) {
|
||||
return getUncommittedValue_Priv(flag & ~0x4000);
|
||||
return ItemStoryManagerBase::getUncommittedValue(flag & ~0x4000);
|
||||
}
|
||||
/** 0x34 */ virtual void unk3(u16 arg) {
|
||||
FUN_800bf600(arg & ~0x4000);
|
||||
|
||||
@@ -80,7 +80,7 @@ public:
|
||||
|
||||
virtual void doCommit() override {
|
||||
FileManager *mgr = FileManager::sInstance;
|
||||
mgr->setItemFlags(mFlagSpace.getFlagPtrUnchecked(), 0, 0x1000);
|
||||
mgr->setEnemyDefeatFlags(mFlagSpace.getFlagPtrUnchecked(), 0, 0x1000);
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ public:
|
||||
static u16 sZoneFlags[0xFC];
|
||||
|
||||
static SceneflagManager *sInstance;
|
||||
void doNothing();
|
||||
void init();
|
||||
void setShouldCommit(u16 flag);
|
||||
SceneflagManager();
|
||||
s32 isNotTempOrZoneFlag(u16 flag);
|
||||
|
||||
Reference in New Issue
Block a user