spidey-decomp/venom.h

110 lines
1.9 KiB
C
Raw Normal View History

2024-03-09 10:38:43 +00:00
#pragma once
2024-05-28 17:27:17 +00:00
#ifndef VENOM_H
#define VENOM_H
2024-03-09 10:38:43 +00:00
#include "export.h"
#include "baddy.h"
class CVenom : public CBaddy {
public:
2024-06-30 12:31:17 +00:00
EXPORT CVenom(i32*, i32);
EXPORT void Shouldnt_DoPhysics_Be_Virtual(void);
EXPORT void DoPhysics(void);
2024-06-30 12:31:17 +00:00
EXPORT i32* KillCommandBlock(i32*);
2024-06-03 15:31:44 +00:00
EXPORT void KillAllCommandBlocks(void);
2024-06-30 12:31:17 +00:00
EXPORT u8 TugImpulse(CVector *, CVector *, CVector *);
2024-06-30 12:38:33 +00:00
EXPORT void PlayNextFootstepSFX(void);
2024-06-30 12:48:16 +00:00
EXPORT void GetTargetPosFromNode(CVector *, i32);
2024-06-30 17:32:03 +00:00
EXPORT void Lookaround(void);
2024-06-30 17:46:38 +00:00
EXPORT void TugWeb(void);
2024-06-30 22:02:40 +00:00
EXPORT void AdjustWaterModel(void);
2024-06-30 22:15:25 +00:00
EXPORT void PulseL6A4Node(bool);
EXPORT void VenomDie(void);
u8 venomStartPad[0x18-0xC];
i32 field_330;
u8 padAfter330[4];
2024-06-30 12:31:17 +00:00
2024-06-30 17:57:24 +00:00
i32 field_338;
2024-06-30 12:31:17 +00:00
u8 field_33C;
u8 field_33D;
2024-06-30 17:57:24 +00:00
SHandle field_340;
i32 field_348;
u8 venomPadAfter348[0x358 - 0x348 - 4];
2024-06-30 12:31:17 +00:00
i32 field_358;
i32* field_35C;
u8 venomPadAfter35C[0x37C-0x35C-4];
i32 field_37C;
i32 field_380;
i32 field_384;
u8 venomPadAfter384[0x14];
i32 field_39C;
i32 field_3A0;
i32 field_3A4;
i32 field_3A8;
2024-03-09 10:38:43 +00:00
2024-06-30 12:31:17 +00:00
u8 venomPadAFter3A8[0x3C];
i32 field_3E8;
i32 field_3EC;
i32 field_3F0;
u8 venomPadAfter3F0[0xC];
i32 field_400;
i32 field_404;
i32 field_408;
i32 field_40C;
i32 field_410;
i32 field_414;
i32 field_418;
i32 field_41C;
i32 field_420;
u8 venomPadAfter420[0x30 - 0x24];
i32 field_430;
2024-03-09 11:27:42 +00:00
CQuadBit *field_434;
2024-06-30 12:31:17 +00:00
u8 venomPadAfter434[0x20-4];
2024-06-30 12:31:17 +00:00
i32 field_454;
i32 field_458;
i32 field_45C;
i32 field_460;
i32 field_464;
2024-05-21 18:09:54 +00:00
// @TODO venom has two secret virtual fucnctions
2024-03-09 10:38:43 +00:00
};
2024-05-28 17:27:17 +00:00
class CVenomWrap : public CNonRenderedBit
{
public:
EXPORT void Die(void);
2024-06-30 12:31:17 +00:00
u8 fullPad[0x20];
};
class CVenomElectrified : public CNonRenderedBit
{
public:
EXPORT CVenomElectrified(CSuper*);
SHandle field_3C;
u8 padBottom[4];
2024-05-28 17:27:17 +00:00
};
2024-03-09 10:38:43 +00:00
2024-05-17 15:43:51 +00:00
void validate_CVenom(void);
2024-05-28 17:27:17 +00:00
void validate_CVenomWrap(void);
2024-06-30 12:31:17 +00:00
void validate_CVenomElectrified(void);
2024-05-17 15:43:51 +00:00
EXPORT void Venom_CreateVenom(const unsigned int *stack, unsigned int *result);
2024-05-28 17:27:17 +00:00
#endif