summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--include/daEnDosun_c.h18
-rw-r--r--include/daEnemy_c.h27
-rw-r--r--include/g3dhax.h2
-rwxr-xr-xinclude/game.h24
4 files changed, 42 insertions, 29 deletions
diff --git a/include/daEnDosun_c.h b/include/daEnDosun_c.h
index 49acabe..fadaedb 100644
--- a/include/daEnDosun_c.h
+++ b/include/daEnDosun_c.h
@@ -39,19 +39,17 @@ public:
nw4r::g3d::ResFile resFile; // _540
m3d::mdl_c bodyModel; // _544
m3d::anmVis_c anmVis; // _584
- //u8 collision_struct[4]; // _5BC
- u32 collision_struct; // _5BC
- u32 _5C0, _5C4, _5C8;
- float posXrelated_1; // _5CC
+ u32 collision_struct[4]; // _5BC
+ float shakePosXoffset; // _5CC shakePosXoffset
u32 bigOrSmall; // _5D0 0=small,1=big
- u32 holdsFromSettings; // _5D4
+ u32 holdsFromSettings; // _5D4 0=normal,1=???,2=alwaysFalling
u16 puruMoveCounter; // _5D8
- u16 _5DA;
+ u16 shakeIndex; // _5DA 0=shake,1=normal
u32 countdownTimer; // _5DC
- u32 anotherCounter; // _5E0
- float posXrelated_2; // _5E4
- float posYrelated_1; // _5E8
- u32 _5EC;
+ u32 dieCounter; // _5E0
+ float unusedXoffset; // _5E4
+ float unusedYoffset; // _5E8
+ u32 _5EC; // padding
/* don't have params yet */
void setupBodyModel(); // 809f63f0
diff --git a/include/daEnemy_c.h b/include/daEnemy_c.h
index 36fd574..7b74fed 100644
--- a/include/daEnemy_c.h
+++ b/include/daEnemy_c.h
@@ -7,23 +7,26 @@
/* All Addresses NTSCv2 */
+//FIXME :(
+extern "C" void HandlesOverallScale(Vec3* scale);
+
class daEnemy_c : public dEn_c {
public:
- int _vf58(); // 809a54e0 // daEnAkoya_c
- void _vf5C(); // 809a54d0 // daEnAkoya_c
- int _vf68(); // 809a5520 // daEnAkoya_c
+ int _vf58() { return 8; } // 809a54e0 // daEnAkoya_c
+ void _vf5C() { return; } // 809a54d0 // daEnAkoya_c
+ int _vf68() { return 1; } // 809a5520 // daEnAkoya_c
//u8* _vf6C(); // 809a3550 // daEnAkoya_c
//FIXME
- u8* ptrToWhichPlayer(); // 809a3550 // daEnAkoya_c
- int _vf74(); // 809a5510 // dActorState_c
- void _vf7C(); // 809a5500 // dActorState_c
- void _vfB8(); // 809a54f0 // dActorState_c
- void _vf228(); // 809a5560 // smthg w/InitlScale
- void _vf23C(); // 809a5550 // nullsub
- void _vf240(); // 809a5540 // nullsub
- int _vf244(); // 809a5530 // return 0;
+ u8* ptrToWhichPlayer() { return &this->which_player; } // 809a3550 // daEnAkoya_c
+ int _vf74() { return 1; } // 809a5510 // dActorState_c
+ void _vf7C() { return; } // 809a5500 // dActorState_c
+ void _vfB8() { return; } // 809a54f0 // dActorState_c
+ void _vf228() { HandlesOverallScale(&this->initialScale); } // 809a5560 // smthg w/InitlScale
+ void _vf23C() { return; } // 809a5550 // nullsub
+ void _vf240() { return; } // 809a5540 // nullsub
+ int _vf244() { return 0; } // 809a5530 // return 0;
- void setupBodyModel(); //FIXME
+ //void setupBodyModel(); //FIXME
};
#endif
diff --git a/include/g3dhax.h b/include/g3dhax.h
index f13aab3..b016e55 100644
--- a/include/g3dhax.h
+++ b/include/g3dhax.h
@@ -280,7 +280,7 @@ namespace m3d {
// 28 might be Max Frame?
float _28, _2C, currentFrame;
- u8 _34; // animation group??
+ u8 playState; // animation group??
};
class anmChr_c : public fanm_c {
diff --git a/include/game.h b/include/game.h
index 5fd71d5..8e7d86a 100755
--- a/include/game.h
+++ b/include/game.h
@@ -1245,6 +1245,8 @@ public:
void Clear3();
int CollidedWithTile();
+ int SomethingSemiImportant(int);
+ int s_80072BC0();
dStageActor_c* owner;
void* struct1_ptr;
@@ -1462,6 +1464,10 @@ public:
virtual void _vf5C();
~dActor_c();
+
+ void UpdateObjectPosBasedOnSpeedValuesReal();
+ void HandleXSpeed();
+ void HandleYSpeed();
};
class dStageActor_c : public dActor_c {
@@ -1487,10 +1493,13 @@ public:
u16 spriteSomeFlag;
u8 _366, _367;
u32 _368;
- u8 _36C, _36D;
+ u8 eatenState; // 0=normal,2=eaten
+ u8 _36D;
Vec somethingRelatedToScale;
u32 _37C, _380, _384, _388;
- u8 _38C, _38D, enableFlag, currentLayerID;
+ u8 _38C;
+ u8 which_player; // _38D
+ u8 enableFlag, currentLayerID;
u8 _390, _391, _392, _padding;
dStageActor_c();
@@ -1537,7 +1546,9 @@ public:
virtual void _vfD0(Vec2 *p); // mostly same as vfC8, but uses PLAYER_SE_OBJ/GROUP_BOOT/SE_OBJ_CMN_SPLASH_POISON
// I'll add methods as I need them
- void checkZoneBoundaries(u32 flags); // I think this method is for that, anyway
+ int outOfZone(Vec3 pos, float* rect, u8 zone);
+ int checkZoneBoundaries(u32 flags); // I think this method is for that, anyway
+ void Delete(u8 param1); // fBase_c::Delete(void);
~dStageActor_c();
@@ -1624,7 +1635,6 @@ public:
u32 _510, _514, _518;
void *_51C;
dEn_c *_520;
- u32 _524;
dEn_c();
@@ -1760,9 +1770,11 @@ public:
~dEn_c();
-
static void collisionCallback(ActivePhysics::Info *one, ActivePhysics::Info *two);
+ void doSpriteMovement();
+ bool CheckIfPlayerBelow(float,float);
+
// States
USING_STATES(dEn_c);
REF_NINTENDO_STATE(DieFumi);
@@ -1778,7 +1790,7 @@ public:
class daEnBlockMain_c : public dEn_c {
public:
- u32 _528, _52C, _530;
+ u32 _534, _528, _52C, _530;
Physics physics;
float _618, _61C, _620;
u32 _624, _628, _62C;