Decompile fn_21433 (CGameMode::NotifyUnknown0604)
Batch #7575 by eAthena: 0 byte-identical, 1 confirmed by peer review. - fn_21433 CGameMode::NotifyUnknown0604: logic confirmed by peer review Peer-reviewed-by: ragnarok-clanker, eAthena Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
parent
16f92d48f9
commit
fdda61f1aa
2 changed files with 52 additions and 2 deletions
|
|
@ -147,6 +147,7 @@ public:
|
|||
bool IsEffectId994Group(int id);
|
||||
bool ConfirmDraggedItemUse();
|
||||
void sub_CFE480(int actorId);
|
||||
void NotifyUnknown0604(int value);
|
||||
void WorldCell(float x, float z, int& column, int& row) const;
|
||||
void SubcellPosition(int column, int row, int subColumn, int subRow, float& x, float& z) const;
|
||||
void PlayerCell(int* column, int* row) const;
|
||||
|
|
@ -407,8 +408,8 @@ public:
|
|||
void sub_D63D70(const unsigned char* record);
|
||||
void sub_D65FC0(const unsigned char* record);
|
||||
void sub_D7B170(
|
||||
int first, std::string text, int second, int third, int fourth, int fifth, int sixth, int seventh, int eighth,
|
||||
int ninth, int tenth, int eleventh, int twelfth, int thirteenth, int fourteenth, int fifteenth
|
||||
int first, int second, int third, int fourth, int fifth, int sixth, int seventh, int eighth, int ninth, int tenth,
|
||||
int eleventh, int twelfth, int thirteenth, int fourteenth, std::string text, int fifteenth
|
||||
);
|
||||
void Slot7(int value) override;
|
||||
void PlaceWindowAtActor(UIWindow* window, CGameActor* actor);
|
||||
|
|
|
|||
|
|
@ -955,3 +955,52 @@ ReplayTime CGameMode::StopReplayRecording() {
|
|||
Replay::Instance().CloseFile();
|
||||
return duration;
|
||||
}
|
||||
|
||||
#pragma pack(push, 1)
|
||||
struct GameModeChunkHeader {
|
||||
/* 0000 */ std::int16_t type;
|
||||
/* 0002 */ std::uint32_t size;
|
||||
};
|
||||
#pragma pack(pop)
|
||||
|
||||
static_assert(sizeof(GameModeChunkHeader) == 6);
|
||||
|
||||
#pragma pack(push, 1)
|
||||
struct GameModeStoredRecord00DA {
|
||||
/* 0000 */ std::uint16_t type;
|
||||
/* 0002 */ int value0002;
|
||||
/* 0006 */ int value0006;
|
||||
/* 000A */ std::uint16_t value000A;
|
||||
/* 000C */ std::uint16_t value000C;
|
||||
/* 000E */ unsigned char value000E;
|
||||
/* 000F */ std::uint16_t value000F;
|
||||
/* 0011 */ int value0011;
|
||||
/* 0015 */ int value0015;
|
||||
/* 0019 */ std::uint16_t value0019;
|
||||
/* 001B */ std::uint16_t value001B;
|
||||
/* 001D */ std::uint16_t value001D;
|
||||
/* 001F */ std::uint16_t value001F;
|
||||
/* 0021 */ std::uint16_t value0021;
|
||||
/* 0023 */ std::uint16_t value0023;
|
||||
/* 0025 */ char text[0x18];
|
||||
/* 003D */ std::uint16_t value003D;
|
||||
};
|
||||
#pragma pack(pop)
|
||||
|
||||
static_assert(offsetof(GameModeStoredRecord00DA, text) == 0x25);
|
||||
static_assert(offsetof(GameModeStoredRecord00DA, value003D) == 0x3D);
|
||||
|
||||
static_assert(sizeof(GameModeTextRecord) == 0x190);
|
||||
static_assert(offsetof(GameModeTextRecord, buffer) == 0x1E);
|
||||
|
||||
// OFFSET: 0x00CFE4D0
|
||||
// FUNCTION: fn_21433
|
||||
void CGameMode::NotifyUnknown0604(int value) {
|
||||
for (std::list<UIWindow*>::iterator it = this->unknown_0604.begin(); it != this->unknown_0604.end(); ++it) {
|
||||
(*it)->SendMsg(nullptr, 60, value, 0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
// OFFSET: 0x00CEBF30
|
||||
|
||||
// OFFSET: 0x00CEC100
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue