mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-11 14:38:38 -04:00
d_a_tag_so 100% (#694)
* d_a_tag_so 100% Small one, nothing to comment on * PR changes made Reverted variable names, better use of inlines * small fix, removed extra semi
This commit is contained in:
+1
-1
@@ -1504,7 +1504,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_syan"),
|
||||
ActorRel(NonMatching, "d_a_tag_md_cb"),
|
||||
ActorRel(NonMatching, "d_a_tag_mk"),
|
||||
ActorRel(NonMatching, "d_a_tag_so"),
|
||||
ActorRel(Matching, "d_a_tag_so"),
|
||||
ActorRel(NonMatching, "d_a_tornado"),
|
||||
ActorRel(NonMatching, "d_a_warpf"),
|
||||
ActorRel(NonMatching, "d_a_wind_tag"),
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define D_A_TAG_SO_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daTag_So_c : public fopAc_ac_c {
|
||||
public:
|
||||
@@ -18,15 +19,23 @@ public:
|
||||
bool _delete();
|
||||
|
||||
public:
|
||||
/* Place member variables here */
|
||||
/* 0x290 */ u8 m290;
|
||||
/* 0x291 */ u8 m291[0x293-0x291];
|
||||
/* 0x294 */ float mRadius;
|
||||
/* 0x298 */ u8 m298;
|
||||
/* 0x299 */ u8 m299[0x2A2 - 0x299];
|
||||
};
|
||||
|
||||
class daTag_So_HIO_c {
|
||||
public:
|
||||
daTag_So_HIO_c();
|
||||
virtual ~daTag_So_HIO_c(){}
|
||||
|
||||
public:
|
||||
/* Place member variables here */
|
||||
/* 0x00 */ //vtable
|
||||
/* 0x04 */ s8 mNo;
|
||||
/* 0x05 */ u8 m05;
|
||||
/* 0x06 */ u8 m06[0x0F-0x06];
|
||||
};
|
||||
|
||||
#endif /* D_A_TAG_SO_H */
|
||||
|
||||
+43
-17
@@ -4,66 +4,92 @@
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_tag_so.h"
|
||||
#include "d/d_lib.h"
|
||||
#include "d/d_procname.h"
|
||||
|
||||
/* 000000EC-0000010C .text __ct__14daTag_So_HIO_cFv */
|
||||
daTag_So_HIO_c::daTag_So_HIO_c() {
|
||||
/* Nonmatching */
|
||||
mNo = -1;
|
||||
m05 = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
static daTag_So_HIO_c l_HIO;
|
||||
|
||||
/* 0000010C-00000114 .text _execute__10daTag_So_cFv */
|
||||
bool daTag_So_c::_execute() {
|
||||
/* Nonmatching */
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 00000114-0000018C .text debugDraw__10daTag_So_cFv */
|
||||
void daTag_So_c::debugDraw() {
|
||||
/* Nonmatching */
|
||||
void daTag_So_c::debugDraw() {
|
||||
cXyz actorPos = current.pos;
|
||||
actorPos.y += 20.0f;
|
||||
if (m298 == 1)
|
||||
dLib_debugDrawFan(actorPos, shape_angle.y, 0x3500, mRadius, (GXColor){0xFF, 0x00, 0x00, 0x80});
|
||||
return;
|
||||
}
|
||||
|
||||
/* 0000018C-000001C4 .text _draw__10daTag_So_cFv */
|
||||
bool daTag_So_c::_draw() {
|
||||
/* Nonmatching */
|
||||
if(l_HIO.m05)
|
||||
debugDraw();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 000001C4-00000224 .text getArg__10daTag_So_cFv */
|
||||
void daTag_So_c::getArg() {
|
||||
/* Nonmatching */
|
||||
s32 param;
|
||||
s32 paramRadius;
|
||||
|
||||
param = fopAcM_GetParam(this);
|
||||
m290 = fopAcM_GetParamBit(param, 0, 8);
|
||||
paramRadius = fopAcM_GetParamBit(param, 8, 8);
|
||||
m298 = fopAcM_GetParamBit(param, 16, 8);
|
||||
if (paramRadius == 0xff) {
|
||||
mRadius = 1600.0f;
|
||||
}
|
||||
else {
|
||||
mRadius = paramRadius * 100;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
/* 00000224-0000027C .text _create__10daTag_So_cFv */
|
||||
s32 daTag_So_c::_create() {
|
||||
/* Nonmatching */
|
||||
fopAcM_SetupActor(this, daTag_So_c);
|
||||
getArg();
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
/* 0000027C-00000284 .text _delete__10daTag_So_cFv */
|
||||
bool daTag_So_c::_delete() {
|
||||
/* Nonmatching */
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 00000284-000002A4 .text daTag_SoCreate__FPv */
|
||||
static s32 daTag_SoCreate(void*) {
|
||||
/* Nonmatching */
|
||||
static s32 daTag_SoCreate(void* i_this) {
|
||||
return ((daTag_So_c*)i_this)->_create();
|
||||
}
|
||||
|
||||
/* 000002A4-000002C8 .text daTag_SoDelete__FPv */
|
||||
static BOOL daTag_SoDelete(void*) {
|
||||
/* Nonmatching */
|
||||
static BOOL daTag_SoDelete(void* i_this) {
|
||||
return ((daTag_So_c*)i_this)->_delete();
|
||||
}
|
||||
|
||||
/* 000002C8-000002EC .text daTag_SoExecute__FPv */
|
||||
static BOOL daTag_SoExecute(void*) {
|
||||
/* Nonmatching */
|
||||
static BOOL daTag_SoExecute(void* i_this) {
|
||||
return ((daTag_So_c*)i_this)->_execute();
|
||||
}
|
||||
|
||||
/* 000002EC-00000310 .text daTag_SoDraw__FPv */
|
||||
static BOOL daTag_SoDraw(void*) {
|
||||
/* Nonmatching */
|
||||
static BOOL daTag_SoDraw(void* i_this) {
|
||||
return ((daTag_So_c*)i_this)->_draw();;
|
||||
}
|
||||
|
||||
/* 00000310-00000318 .text daTag_SoIsDelete__FPv */
|
||||
static BOOL daTag_SoIsDelete(void*) {
|
||||
/* Nonmatching */
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static actor_method_class daTag_SoMethodTable = {
|
||||
|
||||
Reference in New Issue
Block a user