mirror of
https://github.com/krystalgamer/spidey-decomp.git
synced 2024-11-23 21:39:48 +00:00
CSuperDocOck::CSuperDocOck(int*, int) and SuperDocOck_CreateSuperDocOck
This commit is contained in:
parent
d52f363f81
commit
e260f3b49f
1
export.h
1
export.h
@ -10,6 +10,7 @@ static int * const dword_5FCCF4 = (int*)0x5FCCF4;
|
||||
static unsigned char * const submarinerDieRelated = (unsigned char*)0x0060CFC4;
|
||||
|
||||
static unsigned __int16 * const word_6B2478 = (unsigned __int16*)0x6B2478;
|
||||
static int * const gTimerRelated = (int*)0x006B4CA8;
|
||||
|
||||
static void print_if_false(unsigned char cry, char * message, ...) {
|
||||
if (cry) {
|
||||
|
2
ob.cpp
2
ob.cpp
@ -541,8 +541,6 @@ void CSuper::RunAnim(__int16 a2, int a3, int a4)
|
||||
this->field_142 = (unsigned __int16)v7 == (unsigned __int16)v8;
|
||||
}
|
||||
|
||||
static int * const gTimerRelated = (int*)0x006B4CA8;
|
||||
|
||||
// @NotOk
|
||||
// timerRelated needs to be fixed and call to print_if_false looks wrong
|
||||
void CBody::EveryFrame(void)
|
||||
|
60
superock.cpp
60
superock.cpp
@ -1,8 +1,66 @@
|
||||
#include "superock.h"
|
||||
#include "validate.h"
|
||||
|
||||
// @NotOk
|
||||
// globals
|
||||
CSuperDocOck::CSuperDocOck(int *a2, int a3)
|
||||
{
|
||||
this->field_32C = 0;
|
||||
this->field_330 = 0;
|
||||
this->field_334 = 0;
|
||||
|
||||
this->field_344 = reinterpret_cast<int>(
|
||||
this->SquirtAngles(reinterpret_cast<__int16*>(this->SquirtPos(a2))));
|
||||
|
||||
this->InitItem("superock");
|
||||
this->mFlags |= 0x480;
|
||||
this->mCBodyFlags &= 0xFFEF;
|
||||
this->field_3C = 0x557928;
|
||||
|
||||
this->field_E2 = 500;
|
||||
this->field_DC = 0;
|
||||
this->AttachTo(reinterpret_cast<CBody**>(0x56E9900));
|
||||
|
||||
this->field_38 = 309;
|
||||
this->field_1F4 = a3;
|
||||
this->field_DE = a3;
|
||||
|
||||
this->field_36C = 1024;
|
||||
this->field_374 = 0x10000;
|
||||
this->field_370 = 0x10000;
|
||||
this->field_3D8 = 4;
|
||||
this->field_31C.bothFlags = 1;
|
||||
this->field_21E = 100;
|
||||
|
||||
*reinterpret_cast<int*>(0x54E8D4) = 4096;
|
||||
*reinterpret_cast<int*>(0x60F774) = 0xFFFFFF;
|
||||
*reinterpret_cast<unsigned char*>(0x60F772) = 1;
|
||||
*reinterpret_cast<int*>(0x60F778) = *gTimerRelated;
|
||||
|
||||
this->field_194 = 0xFFFE0000;
|
||||
this->field_198 = 0x1FFF;
|
||||
}
|
||||
|
||||
// @Ok
|
||||
void SuperDocOck_CreateSuperDocOck(const unsigned int *stack, unsigned int *result)
|
||||
{
|
||||
int* v2 = reinterpret_cast<int*>(*stack);
|
||||
int v3 = static_cast<int>(stack[1]);
|
||||
|
||||
*result = reinterpret_cast<unsigned int>(new CSuperDocOck(v2, v3));
|
||||
}
|
||||
|
||||
|
||||
void validate_CSuperDocOck(void){
|
||||
VALIDATE_SIZE(CSuperDocOck, 0x414);
|
||||
}
|
||||
|
||||
VALIDATE(CSuperDocOck, field_32C, 0x32C);
|
||||
VALIDATE(CSuperDocOck, field_330, 0x330);
|
||||
VALIDATE(CSuperDocOck, field_334, 0x334);
|
||||
|
||||
VALIDATE(CSuperDocOck, field_344, 0x344);
|
||||
VALIDATE(CSuperDocOck, field_36C, 0x36C);
|
||||
VALIDATE(CSuperDocOck, field_370, 0x370);
|
||||
VALIDATE(CSuperDocOck, field_374, 0x374);
|
||||
VALIDATE(CSuperDocOck, field_3D8, 0x3D8);
|
||||
}
|
||||
|
27
superock.h
27
superock.h
@ -1,5 +1,8 @@
|
||||
#pragma once
|
||||
|
||||
#ifndef SUPEROCK_H
|
||||
#define SUPEROCK_H
|
||||
|
||||
#include "export.h"
|
||||
#include "baddy.h"
|
||||
|
||||
@ -7,8 +10,28 @@
|
||||
class CSuperDocOck : public CBaddy {
|
||||
|
||||
public:
|
||||
unsigned char fullPad[0x414-0x324];
|
||||
EXPORT CSuperDocOck(int*, int);
|
||||
unsigned char padTop[0x32C-0x324];
|
||||
|
||||
int field_32C;
|
||||
int field_330;
|
||||
int field_334;
|
||||
unsigned char padAfter334[0x344-0x334-4];
|
||||
|
||||
int field_344;
|
||||
unsigned char padAfter344[0x36C-0x344-4];
|
||||
|
||||
int field_36C;
|
||||
int field_370;
|
||||
int field_374;
|
||||
unsigned char padAfter374[0x3D8-0x374-4];
|
||||
|
||||
int field_3D8;
|
||||
|
||||
unsigned char padBottom[0x414-0x3D8-4];
|
||||
};
|
||||
|
||||
|
||||
void validate_CSuperDocOck(void);
|
||||
void validate_CSuperDocOck(void);
|
||||
EXPORT void SuperDocOck_CreateSuperDocOck(const unsigned int *stack, unsigned int *result);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user