summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/d/actor/d_a_obj_eff.h62
1 files changed, 45 insertions, 17 deletions
diff --git a/include/d/actor/d_a_obj_eff.h b/include/d/actor/d_a_obj_eff.h
index f5186c1a..a10b3fa5 100644
--- a/include/d/actor/d_a_obj_eff.h
+++ b/include/d/actor/d_a_obj_eff.h
@@ -1,6 +1,7 @@
#ifndef D_A_OBJ_EFF_H
#define D_A_OBJ_EFF_H
+#include "d/d_a_obj.h"
#include "f_op/f_op_actor.h"
#include "f_op/f_op_actor_mng.h"
#include "d/d_particle.h"
@@ -9,29 +10,40 @@
namespace daObjEff {
class Act_c : public fopAc_ac_c {
public:
+ typedef BOOL (Act_c::*Proc)();
+ typedef void (Act_c::*voidProc)();
+ typedef bool (Act_c::*HeapProc)();
+
+ enum Prm_e {
+ PRM_TYPE_W = 8,
+ PRM_TYPE_S = 0,
+ };
+
static void make_barrel_smoke(cXyz* pos) { fopAcM_create(PROC_Obj_Eff, NULL, pos); }
void make_land_smoke(cXyz*, float) {}
void make_pinecone_smoke(cXyz*) {}
void make_skull_smoke(cXyz*) {}
void make_stool_smoke(cXyz*) {}
void make_woodBox_smoke(cXyz*) {}
- void prm_get_type() const {}
+ int prm_get_type() const {
+ return daObj::PrmAbstract(this, PRM_TYPE_W, PRM_TYPE_S);
+ }
- void solidHeapCB(fopAc_ac_c*);
- void create_heap_barrel_smoke();
- void create_heap_stool_smoke();
- void create_heap_skull_smoke();
- void create_heap_land_smoke();
- void create_heap_pinecone_smoke();
- void create_heap_woodBox_smoke();
- void create_heap();
- void eff_set_barrel_smoke();
- void eff_set_stool_smoke();
- void eff_set_skull_smoke();
- void eff_set_land_smoke();
- void eff_set_pinecone_smoke();
- void eff_set_woodBox_smoke();
- void eff_set();
+ static BOOL solidHeapCB(fopAc_ac_c*);
+ bool create_heap_barrel_smoke();
+ bool create_heap_stool_smoke();
+ bool create_heap_skull_smoke();
+ bool create_heap_land_smoke();
+ bool create_heap_pinecone_smoke();
+ bool create_heap_woodBox_smoke();
+ bool create_heap();
+ BOOL eff_set_barrel_smoke();
+ BOOL eff_set_stool_smoke();
+ BOOL eff_set_skull_smoke();
+ BOOL eff_set_land_smoke();
+ BOOL eff_set_pinecone_smoke();
+ BOOL eff_set_woodBox_smoke();
+ BOOL eff_set();
cPhs_State _create();
void remove_barrel_smoke();
void remove_stool_smoke();
@@ -51,25 +63,35 @@ namespace daObjEff {
bool _execute();
public:
- /* Place member variables here */
+ /* 0x290 */ int mProcIndex;
+ /* 0x294 */ dPa_followEcallBack* mParticleCallback;
};
class BarrelSmokeCB : public dPa_smokeEcallBack {
public:
BarrelSmokeCB();
void execute(JPABaseEmitter*);
+ public:
+ /* 0x20 */ int field_0x20;
+ /* 0x24 */ static const GXColor original_color;
};
class StoolSmokeCB : public dPa_smokeEcallBack {
public:
StoolSmokeCB();
void execute(JPABaseEmitter*);
+ public:
+ /* 0x20 */ int field_0x20;
+ /* 0x24 */ static const GXColor original_color;
};
class SkullSmokeCB : public dPa_smokeEcallBack {
public:
SkullSmokeCB();
void execute(JPABaseEmitter*);
+ public:
+ /* 0x20 */ int field_0x20;
+ /* 0x24 */ static const GXColor original_color;
};
class LandSmokeCB : public dPa_smokeEcallBack {
@@ -81,12 +103,18 @@ namespace daObjEff {
public:
PineconeSmokeCB();
void execute(JPABaseEmitter*);
+ public:
+ /* 0x20 */ int field_0x20;
+ /* 0x24 */ static const GXColor original_color;
};
class WoodBoxSmokeCB : public dPa_smokeEcallBack {
public:
WoodBoxSmokeCB();
void execute(JPABaseEmitter*);
+ public:
+ /* 0x20 */ int field_0x20;
+ /* 0x24 */ static const GXColor original_color;
};
};