diff --git a/Source/Contents/Effects/ViolentQuakeEffect.cpp b/Source/Contents/Effects/ViolentQuakeEffect.cpp index eb21e942..e50ec46b 100644 --- a/Source/Contents/Effects/ViolentQuakeEffect.cpp +++ b/Source/Contents/Effects/ViolentQuakeEffect.cpp @@ -3,14 +3,34 @@ #include "Client/Mode/CGameMode.h" #include "Client/Mode/ModeMgr.h" #include "Contents/Camera/Camera.h" +#include "Contents/Effects/EffectMemoryMgr.h" #include "Contents/Effects/Particle.h" #include "Utility/Math/AffineMatrix.h" +#include "Utility/Text/FormatString.h" + +#include +#include +#include // OFFSET: 0x0072F4E0 // FUNCTION: fn_07529 CViolentQuakeEffect::CViolentQuakeEffect() : CEffect(-1) { } +// OFFSET: 0x0072F640 + +// OFFSET: 0x0072FBA0 +// FUNCTION: fn_07532 +void CViolentQuakeEffect::Close() { + for (std::vector::iterator it = this->emitters.begin(); it != this->emitters.end(); ++it) { + FreeParticle(*it); + } + + this->emitters.clear(); +} + +// OFFSET: 0x0072FBE0 + // OFFSET: 0x0072FD00 // FUNCTION: fn_07534 bool CViolentQuakeEffect::Slot06() { diff --git a/Source/Contents/Effects/ViolentQuakeEffect.h b/Source/Contents/Effects/ViolentQuakeEffect.h index 8d28d48b..c727b718 100644 --- a/Source/Contents/Effects/ViolentQuakeEffect.h +++ b/Source/Contents/Effects/ViolentQuakeEffect.h @@ -12,10 +12,14 @@ class CViolentQuakeEffect : public CEffect { public: CViolentQuakeEffect(); + void Slot01() override; void Slot03() override; void Slot04() override; + void Close() override; bool Slot06() override; + void InitAllBloom(); + /* 00CC */ std::vector emitters; };