mirror of
https://codeberg.org/KeybadeBlox/JSRF-Decompilation.git
synced 2026-02-20 10:17:03 +03:00
Continue populating JSRF/Core
This commit is contained in:
parent
f65876135d
commit
f8578b0871
3 changed files with 356 additions and 28 deletions
|
|
@ -30,9 +30,48 @@
|
||||||
"source_path": "src/JSRF/Core.cpp"
|
"source_path": "src/JSRF/Core.cpp"
|
||||||
},
|
},
|
||||||
"symbol_mappings": {
|
"symbol_mappings": {
|
||||||
|
"DrawTree::DrawTree": "??0DrawTree@@QAE@PAUGameObj@@W4GameObjIndex@@W4GameObjFlags@@@Z",
|
||||||
|
"DrawTree::`scalar_deleting_destructor'": "??_GDrawTree@@UAEPAXI@Z",
|
||||||
|
"DrawTree::copySomeVectors": "?copySomeVectors@DrawTree@@QAEXXZ",
|
||||||
|
"DrawTree::~DrawTree": "??1DrawTree@@UAE@XZ",
|
||||||
|
"GameObj::GameObj": "??0GameObj@@QAE@PAU0@W4GameObjIndex@@W4GameObjFlags@@@Z",
|
||||||
"GameObj::`scalar_deleting_destructor'": "??_GGameObj@@UAEPAXI@Z",
|
"GameObj::`scalar_deleting_destructor'": "??_GGameObj@@UAEPAXI@Z",
|
||||||
"GameObj::`vftable'": "??_7GameObj@@6B@",
|
"GameObj::`vftable'": "??_7GameObj@@6B@",
|
||||||
"GameObj::~GameObj": "??1GameObj@@UAE@XZ"
|
"GameObj::addToSiblings": "?addToSiblings@GameObj@@QAEXPAU1@0@Z",
|
||||||
|
"GameObj::destructChildren": "?destructChildren@GameObj@@QAEXPAU1@@Z",
|
||||||
|
"GameObj::drawListCoveredPause": "?drawListCoveredPause@GameObj@@QAEXW4GameObjFlags@@HH0I00@Z",
|
||||||
|
"GameObj::drawListDefault": "?drawListDefault@GameObj@@QAEXW4GameObjFlags@@HH0I00@Z",
|
||||||
|
"GameObj::drawListEvent": "?drawListEvent@GameObj@@QAEXW4GameObjFlags@@HH0I00@Z",
|
||||||
|
"GameObj::drawListFreezeCam": "?drawListFreezeCam@GameObj@@QAEXW4GameObjFlags@@HH0I00@Z",
|
||||||
|
"GameObj::drawListUncoveredPause": "?drawListUncoveredPause@GameObj@@QAEXW4GameObjFlags@@HH0I00@Z",
|
||||||
|
"GameObj::drawTreeCoveredPause1": "?drawTreeCoveredPause1@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeCoveredPause2": "?drawTreeCoveredPause2@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeDefault1": "?drawTreeDefault1@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeDefault2": "?drawTreeDefault2@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeEvent1": "?drawTreeEvent1@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeEvent2": "?drawTreeEvent2@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeFreezeCam1": "?drawTreeFreezeCam1@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeFreezeCam2": "?drawTreeFreezeCam2@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeUncoveredPause1": "?drawTreeUncoveredPause1@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::drawTreeUncoveredPause2": "?drawTreeUncoveredPause2@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::getParent": "?getParent@GameObj@@QAEPAU1@XZ",
|
||||||
|
"GameObj::nopDraw": "?drawDefault@GameObj@@UAEXH@Z",
|
||||||
|
"GameObj::nopExec": "?execDefault@GameObj@@UAEXXZ",
|
||||||
|
"GameObj::recursiveExecCoveredPause": "?recursiveExecCoveredPause@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursiveExecDefault": "?recursiveExecDefault@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursiveExecEvent": "?recursiveExecEvent@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursiveExecFreezeCam": "?recursiveExecFreezeCam@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursiveExecUncoveredPause": "?recursiveExecUncoveredPause@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursivePostExecCoveredPause": "?recursivePostExecCoveredPause@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursivePostExecDefault": "?recursivePostExecDefault@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursivePostExecEvent": "?recursivePostExecEvent@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursivePostExecFreezeCam": "?recursivePostExecFreezeCam@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::recursivePostExecUncoveredPause": "?recursivePostExecUncoveredPause@GameObj@@QAEXXZ",
|
||||||
|
"GameObj::removeChildrenFromObjList": "?removeChildrenFromObjList@GameObj@@QAEXPAU1@@Z",
|
||||||
|
"GameObj::removeFromObjList": "?removeFromObjList@GameObj@@QAEXPAU1@@Z",
|
||||||
|
"GameObj::setParent": "?setParent@GameObj@@QAEXPAU1@@Z",
|
||||||
|
"GameObj::~GameObj": "??1GameObj@@UAE@XZ",
|
||||||
|
"PlayerObj::PlayerObj": "??0PlayerObj@@QAE@PAUGameObj@@W4GameObjIndex@@W4GameObjFlags@@@Z"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
||||||
|
|
@ -11,3 +11,294 @@ Game and GameObj classes that form the foundation of the JSRF game code.
|
||||||
GameObj::~GameObj() {
|
GameObj::~GameObj() {
|
||||||
g_game->gameObjCnt -= 1;
|
g_game->gameObjCnt -= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011070
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursiveExecDefault() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000110A0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawListDefault(
|
||||||
|
GameObjFlags flagFilterAny1,
|
||||||
|
int drawArg1,
|
||||||
|
int drawArg2,
|
||||||
|
GameObjFlags flagFilterAll,
|
||||||
|
unsigned otherBitfieldFilterAny,
|
||||||
|
GameObjFlags flagFilterNone,
|
||||||
|
GameObjFlags flagFilterAny2
|
||||||
|
) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011220
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeDefault1() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011260
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeDefault2() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000112A0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursiveExecEvent() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000112D0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawListEvent(
|
||||||
|
GameObjFlags flagFilterAny1,
|
||||||
|
int drawArg1,
|
||||||
|
int drawArg2,
|
||||||
|
GameObjFlags flagFilterAll,
|
||||||
|
unsigned otherBitfieldFilterAny,
|
||||||
|
GameObjFlags flagFilterNone,
|
||||||
|
GameObjFlags flagFilterAny2
|
||||||
|
) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011450
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeEvent1() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011490
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeEvent2() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000114D0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursiveExecCoveredPause() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011500
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawListCoveredPause(
|
||||||
|
GameObjFlags flagFilterAny1,
|
||||||
|
int drawArg1,
|
||||||
|
int drawArg2,
|
||||||
|
GameObjFlags flagFilterAll,
|
||||||
|
unsigned otherBitfieldFilterAny,
|
||||||
|
GameObjFlags flagFilterNone,
|
||||||
|
GameObjFlags flagFilterAny2
|
||||||
|
) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011680
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeCoveredPause1() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000116C0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeCoveredPause2() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011700
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursiveExecFreezeCam() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011730
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawListFreezeCam(
|
||||||
|
GameObjFlags flagFilterAny1,
|
||||||
|
int drawArg1,
|
||||||
|
int drawArg2,
|
||||||
|
GameObjFlags flagFilterAll,
|
||||||
|
unsigned otherBitfieldFilterAny,
|
||||||
|
GameObjFlags flagFilterNone,
|
||||||
|
GameObjFlags flagFilterAny2
|
||||||
|
) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000118B0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeFreezeCam1() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000118F0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeFreezeCam2() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011930
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursiveExecUncoveredPause() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011960
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawListUncoveredPause(
|
||||||
|
GameObjFlags flagFilterAny1,
|
||||||
|
int drawArg1,
|
||||||
|
int drawArg2,
|
||||||
|
GameObjFlags flagFilterAll,
|
||||||
|
unsigned otherBitfieldFilterAny,
|
||||||
|
GameObjFlags flagFilterNone,
|
||||||
|
GameObjFlags flagFilterAny2
|
||||||
|
) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011AE0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeUncoveredPause1() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011B20
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::drawTreeUncoveredPause2() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011B60
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::addToSiblings(GameObj * sibling, GameObj * parent) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011B90
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::destructChildren(GameObj * firstChild) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011BD0
|
||||||
|
// Matching: yes
|
||||||
|
GameObj * GameObj::getParent() {
|
||||||
|
return this->parent;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011BE0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::removeFromObjList(GameObj * obj) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011C20
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::removeChildrenFromObjList(GameObj * firstChild) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011C80
|
||||||
|
// Matching: yes
|
||||||
|
void GameObj::drawDefault(int unknown) {}
|
||||||
|
|
||||||
|
// Address: 0x00011C90
|
||||||
|
// Matching: yes
|
||||||
|
void GameObj::execDefault() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::postExecDefault() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::execEvent() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::postExecEvent() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C80)
|
||||||
|
void GameObj::drawEvent(int unknown) {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::execCoveredPause() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::postExecCoveredPause() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C80)
|
||||||
|
void GameObj::drawCoveredPause(int unknown) {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::execFreezeCam() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::postExecFreezeCam() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C80)
|
||||||
|
void GameObj::drawFreezeCam(int unknown) {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::execUncoveredPause() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C90)
|
||||||
|
void GameObj::postExecUncoveredPause() {}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x00011C80)
|
||||||
|
void GameObj::drawUncoveredPause(int unknown) {}
|
||||||
|
|
||||||
|
// Address: 0x00011CA0
|
||||||
|
// Matching: no
|
||||||
|
void DrawTree::copySomeVectors() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011D00
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursivePostExecDefault() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011D00
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursivePostExecEvent() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011E40
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursivePostExecCoveredPause() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011EE0
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursivePostExecFreezeCam() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00011F80
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::recursivePostExecUncoveredPause() {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00012020
|
||||||
|
// Matching: no
|
||||||
|
void GameObj::setParent(GameObj * parent) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00012100
|
||||||
|
// Matching: no
|
||||||
|
GameObj::GameObj(GameObj * parent, GameObjIndex index, GameObjFlags flags) {
|
||||||
|
g_game->setObj(index, this);
|
||||||
|
|
||||||
|
this->parent = NULL;
|
||||||
|
this->firstChild = NULL;
|
||||||
|
this->prevSibling = NULL;
|
||||||
|
this->nextSibling = NULL;
|
||||||
|
this->index = index;
|
||||||
|
this->flags = flags;
|
||||||
|
|
||||||
|
this->setParent(parent);
|
||||||
|
|
||||||
|
this->sortKey = 0;
|
||||||
|
this->otherBitfield = 1;
|
||||||
|
|
||||||
|
g_game->gameObjCnt += 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x00012170
|
||||||
|
// Matching: no
|
||||||
|
DrawTree::DrawTree(GameObj * parent, GameObjIndex index, GameObjFlags flags) :
|
||||||
|
GameObj(parent, index, flags) {
|
||||||
|
this->otherBitfield = 7;
|
||||||
|
this->someIndex = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Address: 0x000121D0
|
||||||
|
// Matching: no
|
||||||
|
DrawTree::~DrawTree() {}
|
||||||
|
|
||||||
|
// Address: 0x000121E0
|
||||||
|
// Matching: no
|
||||||
|
PlayerObj::PlayerObj(GameObj * parent, GameObjIndex index, GameObjFlags flags) :
|
||||||
|
GameObj(parent, index, flags) {
|
||||||
|
this->unknown0x44 = 0;
|
||||||
|
this->unknown0x48 = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Eliminated by link time code generation (aliased with 0x000121D0)
|
||||||
|
PlayerObj::~PlayerObj() {}
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ enum GameObjIndex {
|
||||||
};
|
};
|
||||||
|
|
||||||
// Base class of most objects (and everything in g_game->objects)
|
// Base class of most objects (and everything in g_game->objects)
|
||||||
class GameObj {
|
struct GameObj {
|
||||||
GameObjFlags flags;
|
GameObjFlags flags;
|
||||||
GameObjIndex index;
|
GameObjIndex index;
|
||||||
|
|
||||||
|
|
@ -64,7 +64,6 @@ class GameObj {
|
||||||
// Another linked list sort of arrangement
|
// Another linked list sort of arrangement
|
||||||
GameObj * someKindOfNextObj;
|
GameObj * someKindOfNextObj;
|
||||||
|
|
||||||
public:
|
|
||||||
virtual ~GameObj();
|
virtual ~GameObj();
|
||||||
|
|
||||||
void recursiveExecDefault();
|
void recursiveExecDefault();
|
||||||
|
|
@ -147,23 +146,23 @@ public:
|
||||||
// frame.
|
// frame.
|
||||||
virtual void execDefault();
|
virtual void execDefault();
|
||||||
virtual void postExecDefault();
|
virtual void postExecDefault();
|
||||||
virtual void drawDefault();
|
virtual void drawDefault(int);
|
||||||
|
|
||||||
virtual void execEvent();
|
virtual void execEvent();
|
||||||
virtual void postExecEvent();
|
virtual void postExecEvent();
|
||||||
virtual void drawEvent();
|
virtual void drawEvent(int);
|
||||||
|
|
||||||
virtual void execCoveredPause();
|
virtual void execCoveredPause();
|
||||||
virtual void postExecCoveredPause();
|
virtual void postExecCoveredPause();
|
||||||
virtual void drawCoveredPause();
|
virtual void drawCoveredPause(int);
|
||||||
|
|
||||||
virtual void execFreezeCam();
|
virtual void execFreezeCam();
|
||||||
virtual void postExecFreezeCam();
|
virtual void postExecFreezeCam();
|
||||||
virtual void drawFreezeCam();
|
virtual void drawFreezeCam(int);
|
||||||
|
|
||||||
virtual void execUncoveredPause();
|
virtual void execUncoveredPause();
|
||||||
virtual void postExecUncoveredPause();
|
virtual void postExecUncoveredPause();
|
||||||
virtual void drawUncoveredPause();
|
virtual void drawUncoveredPause(int);
|
||||||
|
|
||||||
void recursivePostExecDefault();
|
void recursivePostExecDefault();
|
||||||
void recursivePostExecEvent();
|
void recursivePostExecEvent();
|
||||||
|
|
@ -178,7 +177,7 @@ public:
|
||||||
|
|
||||||
// Base class of objects serving as the head of a tree of objects to draw
|
// Base class of objects serving as the head of a tree of objects to draw
|
||||||
// recursively
|
// recursively
|
||||||
class DrawTree : GameObj {
|
struct DrawTree : GameObj {
|
||||||
D3DVECTOR unknown0x44;
|
D3DVECTOR unknown0x44;
|
||||||
D3DVECTOR unknown0x50;
|
D3DVECTOR unknown0x50;
|
||||||
D3DVECTOR unknown0x5C;
|
D3DVECTOR unknown0x5C;
|
||||||
|
|
@ -190,18 +189,17 @@ class DrawTree : GameObj {
|
||||||
D3DRECT viewport;
|
D3DRECT viewport;
|
||||||
unsigned someIndex;
|
unsigned someIndex;
|
||||||
|
|
||||||
public:
|
|
||||||
void copySomeVectors();
|
void copySomeVectors();
|
||||||
DrawTree(GameObj * parent, GameObjIndex index, GameObjFlags flags);
|
DrawTree(GameObj * parent, GameObjIndex index, GameObjFlags flags);
|
||||||
virtual ~DrawTree();
|
virtual ~DrawTree();
|
||||||
};
|
};
|
||||||
|
|
||||||
class PlayerObj : GameObj {
|
struct PlayerObj : GameObj {
|
||||||
unsigned unknown0x44;
|
unsigned unknown0x44;
|
||||||
unsigned unknown0x48;
|
unsigned unknown0x48;
|
||||||
|
|
||||||
public:
|
|
||||||
PlayerObj(GameObj * parent, GameObjIndex index, GameObjFlags flags);
|
PlayerObj(GameObj * parent, GameObjIndex index, GameObjFlags flags);
|
||||||
|
virtual ~PlayerObj();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Top-level globally-accessible "god object" that runs the main loop and
|
// Top-level globally-accessible "god object" that runs the main loop and
|
||||||
|
|
@ -251,9 +249,9 @@ extern struct Game {
|
||||||
BOOL uncoveredPauseNextFrame;
|
BOOL uncoveredPauseNextFrame;
|
||||||
BOOL noUncoveredPauseNextFrame;
|
BOOL noUncoveredPauseNextFrame;
|
||||||
|
|
||||||
unsigned unknown0x70;
|
BOOL drawChildren;
|
||||||
BOOL skipDraw;
|
BOOL skipDraw;
|
||||||
int zeroedByExec;
|
BOOL runSomeExtraDrawListCode;
|
||||||
GraphicsPerformanceCounters perfCounters;
|
GraphicsPerformanceCounters perfCounters;
|
||||||
|
|
||||||
DrawMode drawMode;
|
DrawMode drawMode;
|
||||||
|
|
@ -262,17 +260,17 @@ extern struct Game {
|
||||||
GameObj * objects[7668];
|
GameObj * objects[7668];
|
||||||
unsigned globals[461]; // Items may be any 32-bit type, e.g. ptr
|
unsigned globals[461]; // Items may be any 32-bit type, e.g. ptr
|
||||||
|
|
||||||
GameObj * somethingLinkedBHead;
|
DrawTree * drawTreesHead;
|
||||||
GameObj * * somethingLinkedBEndNext;
|
DrawTree * * drawTreesEndNext;
|
||||||
|
|
||||||
GameObj * somethingLinkedAHead;
|
GameObj * drawListHead;
|
||||||
GameObj * * somethingLinkedAEndNext;
|
GameObj * * drawListEndNext;
|
||||||
|
|
||||||
GameObj * sortedLinkedListHead;
|
GameObj * drawPriorityListHead;
|
||||||
GameObj * * sortedLinkedListEndNext;
|
GameObj * * drawPriorityListEndNext;
|
||||||
|
|
||||||
GameObj * linkedListsByKeyHeads [256];
|
GameObj * drawPriorityListsByKeyHeads [256];
|
||||||
GameObj * * linkedListByKeyEndNexts[256];
|
GameObj * * drawPriorityListsByKeyEndNexts[256];
|
||||||
|
|
||||||
LARGE_INTEGER execPerfCount;
|
LARGE_INTEGER execPerfCount;
|
||||||
LARGE_INTEGER drawPerfCount;
|
LARGE_INTEGER drawPerfCount;
|
||||||
|
|
@ -286,10 +284,10 @@ extern struct Game {
|
||||||
int frameCnt2;
|
int frameCnt2;
|
||||||
int frameCnt3;
|
int frameCnt3;
|
||||||
unsigned gameObjCnt;
|
unsigned gameObjCnt;
|
||||||
GameObj * rootDrawObj;
|
DrawTree * currentDrawTree;
|
||||||
int unknown0x87F0;
|
GameObjIndex currentDrawTreeIndex;
|
||||||
int unknown0x87F4;
|
int unknown0x87F4;
|
||||||
Mat4 unknown0x87F8;
|
Mat4 parentMatrix;
|
||||||
unsigned unknown0x8838;
|
unsigned unknown0x8838;
|
||||||
unsigned unknown0x883C;
|
unsigned unknown0x883C;
|
||||||
|
|
||||||
|
|
@ -324,8 +322,8 @@ extern struct Game {
|
||||||
void addToDrawList (GameObj * obj);
|
void addToDrawList (GameObj * obj);
|
||||||
void removeFromDrawList(GameObj * obj);
|
void removeFromDrawList(GameObj * obj);
|
||||||
|
|
||||||
void setObj (GameObjIndex index );
|
void setObj (GameObjIndex index , GameObj * obj);
|
||||||
void unsetObj (GameObjIndex index , GameObj * obj);
|
void unsetObj (GameObjIndex index );
|
||||||
GameObj * getObj (GameObjIndex index );
|
GameObj * getObj (GameObjIndex index );
|
||||||
int allocObjIndex(GameObjIndex min , GameObjIndex max);
|
int allocObjIndex(GameObjIndex min , GameObjIndex max);
|
||||||
BOOL objIndexAvail(GameObjIndex index );
|
BOOL objIndexAvail(GameObjIndex index );
|
||||||
|
|
@ -351,7 +349,7 @@ extern struct Game {
|
||||||
} * g_game;
|
} * g_game;
|
||||||
|
|
||||||
// Root of the exec GameObj tree
|
// Root of the exec GameObj tree
|
||||||
class RootExecObj : GameObj {
|
struct RootExecObj : GameObj {
|
||||||
RootExecObj(GameObj * parent, GameObjIndex index, GameObjFlags flags);
|
RootExecObj(GameObj * parent, GameObjIndex index, GameObjFlags flags);
|
||||||
virtual ~RootExecObj();
|
virtual ~RootExecObj();
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue