CLizMan::IsSafeToSwitchToFollowWaypoints

This commit is contained in:
krystalgamer 2024-05-29 19:09:09 +02:00
parent 873cc188f6
commit 0a2bcdc4b4
8 changed files with 53 additions and 5 deletions

View File

@ -1,5 +1,6 @@
#include "Image.h"
#include "validate.h"
#include "dcshellutils.h"
// @Ok
Image::Image(void)
@ -21,6 +22,13 @@ int SlicedImage2::screenHeight(void)
return (this->field_C * this->field_16) >> 12;
}
// @Ok
int Load8BitBMP_2(char *a1, char **a2, int *a3, int *a4, unsigned __int16 *a5)
{
Load8BitBMP2(a1, a2, a3, a4, a5, false);
return 1;
}
void validate_SlicedImage(void)
{
VALIDATE_SIZE(SlicedImage2, 0x20);

View File

@ -33,6 +33,8 @@ class SlicedImage2 : public Image
unsigned char padBottom[0x20-0x16-4];
};
EXPORT void validate_Image(void);
EXPORT void validate_SlicedImage(void);
EXPORT int Load8BitBMP_2(char *, char **, int *, int *, unsigned __int16 *);
void validate_Image(void);
void validate_SlicedImage(void);
#endif

View File

@ -789,6 +789,8 @@ void validate_CBaddy(void){
VALIDATE(CBaddy, field_1A8, 0x1A8);
VALIDATE(CBaddy, field_1B4, 0x1B4);
VALIDATE(CBaddy, field_1F0, 0x1F0);
VALIDATE(CBaddy, field_1F4, 0x1F4);
VALIDATE(CBaddy, field_1F8, 0x1F8);
VALIDATE(CBaddy, field_1FC, 0x1FC);

View File

@ -61,8 +61,8 @@ public:
CVector field_1A8;
CVector field_1B4[5];
unsigned char padAfter1B4[0x4];
int field_1F0;
int field_1F4;
int field_1F8;
__int16 field_1FC;

View File

@ -1 +1,5 @@
#include "dcshellutils.h"
#include "dcshellutils.h"
// @TODO
void Load8BitBMP2(char *a1, char **a2, int *a3, int *a4, unsigned __int16 *a5, bool a6)
{}

View File

@ -3,4 +3,7 @@
#ifndef DCSHELLUTILS_H
#define DCSHELLUTILS_H
#endif
#include "export.h"
EXPORT void Load8BitBMP2(char *, char **, int *, int *, unsigned __int16 *, bool);
#endif

View File

@ -37,6 +37,33 @@ void CLizMan::StopClimbing(void)
this->field_390 = 0;
}
// @TODO
void CLizMan::FlyAcrossRoom(void)
{
switch(this->dumbAssPad)
{
case 3:
if (this->IsSafeToSwitchToFollowWaypoints())
{
this->field_31C.bothFlags = 2;
}
else
{
this->field_31C.bothFlags = 1;
}
this->dumbAssPad = 0;
}
}
// @Ok
int __inline CLizMan::IsSafeToSwitchToFollowWaypoints(void)
{
if (this->field_1F0 || this->field_1F4 > 0)
return 1;
return 0;
}
void validate_CLizMan(void){
VALIDATE_SIZE(CLizMan, 0x3B8);

View File

@ -9,6 +9,8 @@ public:
EXPORT void StandStill(void);
EXPORT void SwitchFromMatrixToEuler(void);
EXPORT void StopClimbing(void);
EXPORT int IsSafeToSwitchToFollowWaypoints(void);
EXPORT void FlyAcrossRoom(void);
unsigned char padLizStart[0x4];