mirror of
https://github.com/krystalgamer/spidey-decomp.git
synced 2024-12-18 02:06:51 +00:00
119 lines
2.8 KiB
C++
119 lines
2.8 KiB
C++
#pragma once
|
|
|
|
#ifndef THUG_H
|
|
#define THUG_H
|
|
|
|
#include "export.h"
|
|
#include "baddy.h"
|
|
#include "mem.h"
|
|
#include "m3dutils.h"
|
|
#include "bit2.h"
|
|
|
|
class CThug : public CBaddy {
|
|
public:
|
|
|
|
EXPORT CThug(i32*, i32);
|
|
EXPORT virtual ~CThug();
|
|
|
|
EXPORT void ClearAttackFlags(void);
|
|
EXPORT void HelpOutBuddy(CMessage*);
|
|
EXPORT void RunToWhereTheActionIs(CVector*);
|
|
EXPORT void PlayHitWallSound(void);
|
|
EXPORT void StandStill(void);
|
|
EXPORT void DieAfterFlyingAcrossRoom(void);
|
|
EXPORT void RunAppropriateHitAnim(void);
|
|
EXPORT void StopShooting(void);
|
|
EXPORT i32 TryAddingCollidePointToPath(CVector*);
|
|
EXPORT void SetHitDirectionFlag(CVector*);
|
|
EXPORT void GetReadyToShootHostage(CMessage*);
|
|
EXPORT void CheckFallBack(void);
|
|
EXPORT i32 GetLaunched(CVector*, i32, i32, i32);
|
|
EXPORT u8 TugImpulse(CVector*, CVector*, CVector*);
|
|
EXPORT void LookConfused(void);
|
|
EXPORT void Acknowledge(void);
|
|
EXPORT void StrikeUpConversation(void);
|
|
EXPORT void Guard(void);
|
|
EXPORT void CycleOrContinueAnim(i32, i32, i32, i32);
|
|
EXPORT i32 MonitorSpitPlease(void);
|
|
EXPORT void PlaySounds(void);
|
|
EXPORT i32 CanAck(i32, i32, i32, CThug*);
|
|
EXPORT i32 WallHitCheck(CVector*, CVector*, i32);
|
|
EXPORT i32 SpideyAnimUppercut(void);
|
|
EXPORT void SetAttacker(void);
|
|
EXPORT i32 AdjustPosPlaySound(i32);
|
|
EXPORT void WarnOtherThugs(void);
|
|
EXPORT void CheckToShoot(i32, i32);
|
|
EXPORT i32 DrawBarrelFlash(CVector*, CVector *, SLineInfo *, u8, u8, u8);
|
|
EXPORT i32 SetUpLaser(CGPolyLine**, CVector*, CVector*);
|
|
EXPORT i32 ShouldIShootPlayer(void);
|
|
EXPORT void Caution(void);
|
|
EXPORT i32 DetermineFightState(void);
|
|
EXPORT void LookForPlayer(void);
|
|
EXPORT void BackpedalPlease(void);
|
|
EXPORT void TakeHit(void);
|
|
|
|
|
|
EXPORT virtual u8 Grab(CVector*);
|
|
EXPORT virtual void SetParamByIndex(i32, i32);
|
|
EXPORT virtual void CreateCombatImpactEffect(CVector*, i32);
|
|
EXPORT virtual void SetThugType(int);
|
|
|
|
|
|
u8 padTop[0x330-0x324];
|
|
|
|
i32 field_330;
|
|
u8 padAfter330[0x33C-0x330-4];
|
|
|
|
i32 field_33C;
|
|
u8 padAfter33C[0x354-0x33C-4];
|
|
|
|
SHandle mHandle;
|
|
SHandle mHandleTwo;
|
|
u8 padAfter354[0x370-0x35C-sizeof(SHandle)];
|
|
|
|
i32 field_370;
|
|
i32 field_374;
|
|
i32 field_378;
|
|
i32 field_37C;
|
|
i32 field_380;
|
|
i32 field_384;
|
|
i32 field_388;
|
|
i32 field_38C;
|
|
u8 padAfter38C[0x394 - 0x38C - 4];
|
|
|
|
i32 field_394;
|
|
i32 field_398;
|
|
i32 field_39C;
|
|
|
|
CGPolyLine *field_3A0;
|
|
CVector* field_3A4;
|
|
u8 padAfter3A4[0x3B0-0x3A4-4];
|
|
|
|
i32 field_3B0;
|
|
u8 padAfter3B0[0x3B8-0x3B0-4];
|
|
|
|
i32 field_3B8;
|
|
|
|
u8 field_3BC;
|
|
u8 field_3BD;
|
|
u8 padBottom[0x3C0 - 0x3BD - 1];
|
|
};
|
|
|
|
class CThugPing : public CSimpleAnim
|
|
{
|
|
public:
|
|
EXPORT void Move(void);
|
|
EXPORT void SetPosition(void);
|
|
|
|
unsigned char padTop[8];
|
|
SHandle field_70;
|
|
SHook field_78;
|
|
};
|
|
|
|
void validate_CThug(void);
|
|
void validate_CThugPing(void);
|
|
|
|
EXPORT void Thug_CreateTHug(const unsigned int *stack, unsigned int *result);
|
|
|
|
#endif
|