diff --git a/config/SOUE01/rels/d_t_gate_to_groundNP/symbols.txt b/config/SOUE01/rels/d_t_gate_to_groundNP/symbols.txt index 00eb2edf..49256b1d 100644 --- a/config/SOUE01/rels/d_t_gate_to_groundNP/symbols.txt +++ b/config/SOUE01/rels/d_t_gate_to_groundNP/symbols.txt @@ -10,7 +10,7 @@ draw__17dTgGateToGround_cFv = .text:0x000002F0; // type:function size:0x8 __dt__17dTgGateToGround_cFv = .text:0x00000300; // type:function size:0x70 _ctors = .ctors:0x00000000; // type:label scope:global _dtors = .dtors:0x00000000; // type:label scope:global -@20562 = .rodata:0x00000000; // type:object size:0x4 data:float scope:local +@20562 = .rodata:0x00000000; // type:object size:0x4 scope:local data:float g_profile_GATE2GND_TAG = .data:0x00000000; // type:object size:0x10 @20583 = .data:0x00000010; // type:object size:0xC scope:local __vt__17dTgGateToGround_c = .data:0x0000001C; // type:object size:0x74 diff --git a/include/d/t/d_t_shutter_fence_forbiddance.h b/include/d/t/d_t_shutter_fence_forbiddance.h index fed5dab1..5b4dd9b3 100644 --- a/include/d/t/d_t_shutter_fence_forbiddance.h +++ b/include/d/t/d_t_shutter_fence_forbiddance.h @@ -1,13 +1,16 @@ #ifndef D_T_SHUTTER_FENCE_FORBIDDANCE_H #define D_T_SHUTTER_FENCE_FORBIDDANCE_H -#include "d/a/d_a_base.h" +#include "d/t/d_tg.h" -class dTgShutterFenceForbiddance_c : public dAcBase_c { +class dTgShutterFenceForbiddance_c : public dTg_c { public: dTgShutterFenceForbiddance_c(); virtual ~dTgShutterFenceForbiddance_c(); + virtual int create() override; + virtual int actorExecute() override; + private: }; diff --git a/src/REL/d/t/d_t_shutter_fence_forbiddance.cpp b/src/REL/d/t/d_t_shutter_fence_forbiddance.cpp index c85cbf98..71569519 100644 --- a/src/REL/d/t/d_t_shutter_fence_forbiddance.cpp +++ b/src/REL/d/t/d_t_shutter_fence_forbiddance.cpp @@ -1,8 +1,28 @@ #include "d/t/d_t_shutter_fence_forbiddance.h" +#include "common.h" +#include "d/a/d_a_base.h" +#include "f/f_base.h" + SPECIAL_ACTOR_PROFILE( TAG_SHUTTER_FENCE_FORBIDDANCE, dTgShutterFenceForbiddance_c, fProfile::TAG_SHUTTER_FENCE_FORBIDDANCE, 0x2A4, 0, 4 ); -dTgShutterFenceForbiddance_c::dTgShutterFenceForbiddance_c() {} +static dTgShutterFenceForbiddance_c *FIRST_PTR; + +dTgShutterFenceForbiddance_c::dTgShutterFenceForbiddance_c() { + if (!FIRST_PTR) { + FIRST_PTR = this; + } +} dTgShutterFenceForbiddance_c::~dTgShutterFenceForbiddance_c() {} + +int dTgShutterFenceForbiddance_c::create() { + return SUCCEEDED + ((reinterpret_cast(FIRST_PTR) - reinterpret_cast(this) | + reinterpret_cast(this) - reinterpret_cast(FIRST_PTR)) >> + 31); +} + +int dTgShutterFenceForbiddance_c::actorExecute() { + return SUCCEEDED; +}