mirror of
https://github.com/krystalgamer/spidey-decomp.git
synced 2024-10-06 18:23:23 +00:00
CPlayer::CheckGroundGone
This commit is contained in:
parent
1f12f81e40
commit
5c02e6615e
2
cop.cpp
2
cop.cpp
@ -75,7 +75,7 @@ void CCop::Acknowledge(void)
|
||||
// @Ok
|
||||
INLINE void CCop::CheckToShoot(i32 a2, i32 a3)
|
||||
{
|
||||
if ( MechList->field_57C && !gCopList && !MechList->field_E48)
|
||||
if ( MechList->field_57C && !gCopList && !MechList->mHeldObject)
|
||||
{
|
||||
if ( ((this->field_218 & 0x800) && a2 < this->field_37C)
|
||||
||
|
||||
|
@ -11,6 +11,12 @@ extern const char *gObjFile;
|
||||
extern u8 gObjFileRegion;
|
||||
extern CBody* EnvironmentalObjectList;
|
||||
|
||||
// @SMALLTODO
|
||||
void CManipOb::Drop(CVector*)
|
||||
{
|
||||
printf("void CManipOb::Drop(CVector*)");
|
||||
}
|
||||
|
||||
// @Ok
|
||||
CManipOb::~CManipOb(void)
|
||||
{
|
||||
|
@ -18,6 +18,7 @@ class CManipOb : public CBody
|
||||
EXPORT void TurnOffShadow(void);
|
||||
EXPORT void SendPulse(void);
|
||||
EXPORT void Pickup(void);
|
||||
EXPORT void Drop(CVector*);
|
||||
|
||||
EXPORT CManipOb(u16*, i32);
|
||||
EXPORT virtual ~CManipOb(void);
|
||||
|
10
ob.cpp
10
ob.cpp
@ -377,9 +377,10 @@ CBody::CBody()
|
||||
this->field_95 = 0;
|
||||
this->field_96 = 0;
|
||||
|
||||
this->field_A8 = 0;
|
||||
this->field_AA = 0;
|
||||
this->field_AC = 0;
|
||||
this->field_A8.vx = 0;
|
||||
this->field_A8.vy = 0;
|
||||
this->field_A8.vz = 0;
|
||||
|
||||
this->bodyVector.vx = 0;
|
||||
this->bodyVector.vy = 0;
|
||||
this->bodyVector.vz = 0;
|
||||
@ -751,8 +752,6 @@ void validate_CBody(void){
|
||||
|
||||
VALIDATE(CBody, field_A4, 0xA4);
|
||||
VALIDATE(CBody, field_A8, 0xA8);
|
||||
VALIDATE(CBody, field_AA, 0xAA);
|
||||
VALIDATE(CBody, field_AC, 0xAC);
|
||||
|
||||
VALIDATE(CBody, bodyVector, 0xB8);
|
||||
|
||||
@ -772,6 +771,7 @@ void validate_CBody(void){
|
||||
|
||||
VALIDATE(CBody, field_DE, 0xDE);
|
||||
|
||||
VALIDATE(CBody, field_E0, 0xE0);
|
||||
VALIDATE(CBody, field_E2, 0xE2);
|
||||
|
||||
VALIDATE(CBody, field_E4, 0xE4);
|
||||
|
6
ob.h
6
ob.h
@ -109,9 +109,7 @@ public:
|
||||
int field_9C;
|
||||
int field_A0;
|
||||
int field_A4;
|
||||
__int16 field_A8;
|
||||
__int16 field_AA;
|
||||
__int16 field_AC;
|
||||
CSVector field_A8;
|
||||
|
||||
unsigned char padAfterAC[0xB8-0xAC-2];
|
||||
|
||||
@ -133,8 +131,8 @@ public:
|
||||
|
||||
unsigned __int16 field_DE;
|
||||
|
||||
unsigned char stopPPPad[0x2];
|
||||
|
||||
i16 field_E0;
|
||||
__int16 field_E2;
|
||||
|
||||
u16 field_E4;
|
||||
|
@ -361,7 +361,7 @@ void CRhino::FuckUpSomeBarrels(void)
|
||||
{
|
||||
if (cur->field_38 == 401)
|
||||
{
|
||||
if (Utils_CrapDist(this->mPos, cur->mPos) < 0x2BC && cur != MechList->field_E48)
|
||||
if (Utils_CrapDist(this->mPos, cur->mPos) < 0x2BC && cur != MechList->mHeldObject)
|
||||
{
|
||||
reinterpret_cast<CBaddy*>(cur)->PlayerIsVisible();
|
||||
barrels++;
|
||||
|
67
spidey.cpp
67
spidey.cpp
@ -161,10 +161,50 @@ void CPlayer::CheckForwards(bool)
|
||||
printf("CPlayer::CheckForwards(bool)");
|
||||
}
|
||||
|
||||
// @SMALLTODO
|
||||
void CPlayer::CheckGroundGone(void)
|
||||
// @Ok
|
||||
i32 CPlayer::CheckGroundGone(void)
|
||||
{
|
||||
printf("CPlayer::CheckGroundGone(void)");
|
||||
if (!(this->field_E0 & 2))
|
||||
{
|
||||
if ( this->field_EA4 )
|
||||
this->field_EA4--;
|
||||
|
||||
if (this->field_EA4)
|
||||
return 0;
|
||||
|
||||
if ( this->mHeldObject )
|
||||
{
|
||||
CVector v11 = (4 * this->field_C84);
|
||||
this->mHeldObject->Drop(&v11);
|
||||
this->mHeldObject = 0;
|
||||
}
|
||||
|
||||
this->field_E38 = this->mPos.vy;
|
||||
this->PlaySingleAnim(212, 0, -1);
|
||||
|
||||
this->field_E8C = 0;
|
||||
this->field_AE5 = 0;
|
||||
this->field_AE6 = 0;
|
||||
if ( this->field_AD4 )
|
||||
{
|
||||
this->field_AD4 = 0;
|
||||
this->field_A8.vx = 0;
|
||||
this->field_A8.vy = -4096;
|
||||
this->field_A8.vz = 0;
|
||||
|
||||
CVector v11;
|
||||
v11.vx = 0;
|
||||
v11.vy = 0;
|
||||
v11.vz = 4096;
|
||||
this->OrientToNormal(true, &v11);
|
||||
}
|
||||
|
||||
this->field_E1C = 4;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// @MEDIUMTODO
|
||||
@ -1196,7 +1236,7 @@ void CPlayer::CreateJumpingSmashKickTrail(void)
|
||||
|
||||
// @Ok
|
||||
// @Matching
|
||||
void CPlayer::PlaySingleAnim(int a2, int a3, int a4)
|
||||
INLINE void CPlayer::PlaySingleAnim(int a2, int a3, int a4)
|
||||
{
|
||||
|
||||
i32* v4 = gPlayerAnimRelated[a2];
|
||||
@ -1211,7 +1251,7 @@ void CPlayer::PlaySingleAnim(int a2, int a3, int a4)
|
||||
}
|
||||
}
|
||||
|
||||
this->RunAnim(a2, a3, a4);
|
||||
CSuper::RunAnim(a2, a3, a4);
|
||||
}
|
||||
|
||||
// @BIGTODO
|
||||
@ -1261,9 +1301,9 @@ void CPlayer::CutSceneSkipCleanup(void)
|
||||
reinterpret_cast<VECTOR*>(&v14),
|
||||
reinterpret_cast<VECTOR*>(&v14));
|
||||
|
||||
this->field_A8 = 0;
|
||||
this->field_AA = -4096;
|
||||
this->field_AC = 0;
|
||||
this->field_A8.vx = 0;
|
||||
this->field_A8.vy = -4096;
|
||||
this->field_A8.vz = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1513,6 +1553,9 @@ void validate_CPlayer(void)
|
||||
|
||||
VALIDATE(CPlayer, gCamAngleLock, 0x8EC);
|
||||
|
||||
VALIDATE(CPlayer, field_AE5, 0xAE5);
|
||||
VALIDATE(CPlayer, field_AE6, 0xAE6);
|
||||
|
||||
VALIDATE(CPlayer, field_AD4, 0xAD4);
|
||||
|
||||
VALIDATE(CPlayer, field_C78, 0xC78);
|
||||
@ -1555,6 +1598,12 @@ void validate_CPlayer(void)
|
||||
VALIDATE(CPlayer, field_E2D, 0xE2D);
|
||||
VALIDATE(CPlayer, field_E2E, 0xE2E);
|
||||
|
||||
VALIDATE(CPlayer, field_E48, 0xE48);
|
||||
VALIDATE(CPlayer, field_E38, 0xE38);
|
||||
|
||||
VALIDATE(CPlayer, field_E8C, 0xE8C);
|
||||
|
||||
VALIDATE(CPlayer, mHeldObject, 0xE48);
|
||||
|
||||
VALIDATE(CPlayer, field_EA4, 0xEA4);
|
||||
|
||||
}
|
||||
|
28
spidey.h
28
spidey.h
@ -6,6 +6,7 @@
|
||||
|
||||
#include "export.h"
|
||||
#include "ob.h"
|
||||
#include "manipob.h"
|
||||
|
||||
class CPlayer : public CSuper
|
||||
{
|
||||
@ -66,8 +67,12 @@ class CPlayer : public CSuper
|
||||
unsigned char gCamAngleLock; //8EC
|
||||
unsigned char padAfterLock[0xAD4-0x8EC-1];
|
||||
|
||||
char field_AD4;
|
||||
unsigned char padAfterAD4[0xC6C-0xAD4-1];
|
||||
u8 field_AD4;
|
||||
u8 padAfterAD4[0xAE5-0xAD4-1];
|
||||
|
||||
u8 field_AE5;
|
||||
u8 field_AE6;
|
||||
u8 padAfterAE6[0xC6C-0xAE6-1];
|
||||
|
||||
|
||||
CVector field_C6C;
|
||||
@ -122,16 +127,25 @@ class CPlayer : public CSuper
|
||||
unsigned char padAfterE12[4];
|
||||
|
||||
int field_E18;
|
||||
int field_E1C;
|
||||
i32 field_E1C;
|
||||
unsigned char padAfterE1C[0xE2D-0xE1C-4];
|
||||
|
||||
char field_E2D;
|
||||
char field_E2E;
|
||||
u8 padAfterE2E[(0xE48-0xE2E)-0x1];
|
||||
u8 padAfterE2E[(0xE38-0xE2E)-0x1];
|
||||
|
||||
CBody* field_E48;
|
||||
i32 field_E38;
|
||||
u8 padAfterE38[(0xE48-0xE38)-0x4];
|
||||
|
||||
u8 padBottomPlayer[(0xEFC-0xE48)-0x4];
|
||||
CManipOb* mHeldObject;
|
||||
u8 padAfterE48[0xE8C-0xE48-4];
|
||||
|
||||
u8 field_E8C;
|
||||
u8 padAfterE8C[0xEA4-0xE8C-1];
|
||||
|
||||
|
||||
u8 field_EA4;
|
||||
u8 padBottomPlayer[(0xEFC-0xEA4)-0x1];
|
||||
|
||||
|
||||
EXPORT void SetCamAngleLock(unsigned __int16);
|
||||
@ -179,7 +193,7 @@ class CPlayer : public CSuper
|
||||
EXPORT void CheckExteriorSurfaceTransition(void);
|
||||
EXPORT void CheckFenceSurfaceTransition(void);
|
||||
EXPORT void CheckForwards(bool);
|
||||
EXPORT void CheckGroundGone(void);
|
||||
EXPORT i32 CheckGroundGone(void);
|
||||
EXPORT void CheckInteriorSurfaceTransition(void);
|
||||
EXPORT void CheckJump(void);
|
||||
EXPORT void CheckJumpingR1ZipWeb(void);
|
||||
|
4
thug.cpp
4
thug.cpp
@ -231,7 +231,7 @@ INLINE i32 CThug::ShouldIShootPlayer(void)
|
||||
if ( MechList->field_57C
|
||||
|| gThugList
|
||||
|| this->DistanceToPlayer(2) >= 2000
|
||||
|| MechList->field_E48
|
||||
|| MechList->mHeldObject
|
||||
|| this->DistanceToPlayer(2) <= 650
|
||||
&& (abs(MechList->mPos.vy - this->field_29C - 0x4000) <= 409600) )
|
||||
{
|
||||
@ -287,7 +287,7 @@ INLINE i32 CThug::DrawBarrelFlash(
|
||||
// Validate when used
|
||||
INLINE void CThug::CheckToShoot(i32 a2, i32 a3)
|
||||
{
|
||||
if ( MechList->field_57C && !gThugList && !MechList->field_E48)
|
||||
if ( MechList->field_57C && !gThugList && !MechList->mHeldObject)
|
||||
{
|
||||
if ( ((this->field_218 & 0x800) && a2 < this->field_37C)
|
||||
||
|
||||
|
Loading…
Reference in New Issue
Block a user