diff options
| author | LagoLunatic <LagoLunatic@users.noreply.github.com> | 2023-10-03 15:27:53 -0400 |
|---|---|---|
| committer | LagoLunatic <LagoLunatic@users.noreply.github.com> | 2023-10-03 15:27:53 -0400 |
| commit | 3ce4a6f3886aad2e6fb7b0f91c92bcf831787733 (patch) | |
| tree | 1d065f1cd9abead53fd165bd7446fb28a7e7d57f /src/d/d_particle.cpp | |
| parent | 7824fb54c08e9006bb8454e2c7f5f0c22b8b74ce (diff) | |
Improve d_particle destructors
Diffstat (limited to 'src/d/d_particle.cpp')
| -rw-r--r-- | src/d/d_particle.cpp | 178 |
1 files changed, 91 insertions, 87 deletions
diff --git a/src/d/d_particle.cpp b/src/d/d_particle.cpp index 4a7deed0..771d5916 100644 --- a/src/d/d_particle.cpp +++ b/src/d/d_particle.cpp @@ -3,7 +3,7 @@ // Translation Unit: d_particle.cpp // -#include "d_particle.h" +#include "d/d_particle.h" #include "dolphin/types.h" /* 8007A4D8-8007A514 .text __ct__18dPa_modelEmitter_cFv */ @@ -16,14 +16,16 @@ dPa_J3DmodelEmitter_c::dPa_J3DmodelEmitter_c(JPABaseEmitter*, J3DModelData*, dKy /* Nonmatching */ } -/* 8007A804-8007A84C .text __dt__18dPa_modelEmitter_cFv */ -dPa_modelEmitter_c::~dPa_modelEmitter_c() { - /* Nonmatching */ -} +// /* 8007A804-8007A84C .text __dt__18dPa_modelEmitter_cFv */ +// dPa_modelEmitter_c::~dPa_modelEmitter_c() { +// /* Nonmatching */ +// } /* 8007A84C-8007A8C8 .text __dt__21dPa_J3DmodelEmitter_cFv */ -dPa_J3DmodelEmitter_c::~dPa_J3DmodelEmitter_c() { - /* Nonmatching */ +dPa_J3DmodelEmitter_c::~dPa_J3DmodelEmitter_c() { + if (mpHeap) { + mDoExt_destroySolidHeap(mpHeap); + } } /* 8007A8C8-8007ADC4 .text draw__21dPa_J3DmodelEmitter_cFv */ @@ -43,7 +45,13 @@ dPa_J3Dmodel_c::dPa_J3Dmodel_c() { /* 8007AED8-8007AF64 .text __dt__18dPa_modelControl_cFv */ dPa_modelControl_c::~dPa_modelControl_c() { - /* Nonmatching */ + node_class* node = parent.mpHead; + while (node) { + node_class* nextNode = node->mpNextNode; + cLs_SingleCut(node); + // delete node; + node = nextNode; + } } /* 8007AF64-8007B074 .text newModel__18dPa_modelControl_cFP12J3DModelData */ @@ -86,10 +94,10 @@ dPa_smokeEcallBack::dPa_smokeEcallBack(unsigned char) { /* Nonmatching */ } -/* 8007B444-8007B4B0 .text __dt__19dPa_followEcallBackFv */ -dPa_followEcallBack::~dPa_followEcallBack() { - /* Nonmatching */ -} +// /* 8007B444-8007B4B0 .text __dt__19dPa_followEcallBackFv */ +// dPa_followEcallBack::~dPa_followEcallBack() { +// /* Nonmatching */ +// } /* 8007B4B0-8007B558 .text __ct__18dPa_smokeEcallBackFUcUcUcUc */ dPa_smokeEcallBack::dPa_smokeEcallBack(unsigned char, unsigned char, unsigned char, unsigned char) { @@ -106,15 +114,15 @@ void dPa_smokeEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signe /* Nonmatching */ } -/* 8007B698-8007B6F4 .text __dt__18dPa_smokePcallBackFv */ -dPa_smokePcallBack::~dPa_smokePcallBack() { - /* Nonmatching */ -} +// /* 8007B698-8007B6F4 .text __dt__18dPa_smokePcallBackFv */ +// dPa_smokePcallBack::~dPa_smokePcallBack() { +// /* Nonmatching */ +// } -/* 8007B6F4-8007B73C .text __dt__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>Fv */ -JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::~JPACallBackBase2() { - /* Nonmatching */ -} +// /* 8007B6F4-8007B73C .text __dt__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>Fv */ +// JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::~JPACallBackBase2() { +// /* Nonmatching */ +// } /* 8007B73C-8007B804 .text initiateLighting__FR11_GXColorS10R8_GXColorR8_GXColor */ void initiateLighting(_GXColorS10&, _GXColor&, _GXColor&) { @@ -158,13 +166,14 @@ void dPa_selectTexEcallBack::draw(JPABaseEmitter*) { /* 8007C3B0-8007C420 .text __ct__19dPa_simpleEcallBackFv */ dPa_simpleEcallBack::dPa_simpleEcallBack() { - /* Nonmatching */ + mpBaseEmitter = NULL; + mCount = 0; } -/* 8007C420-8007C45C .text __dt__16dPa_simpleData_cFv */ -dPa_simpleData_c::~dPa_simpleData_c() { - /* Nonmatching */ -} +// /* 8007C420-8007C45C .text __dt__16dPa_simpleData_cFv */ +// dPa_simpleData_c::~dPa_simpleData_c() { +// /* Nonmatching */ +// } /* 8007C45C-8007C460 .text __ct__16dPa_simpleData_cFv */ dPa_simpleData_c::dPa_simpleData_c() { @@ -176,10 +185,10 @@ void dPa_simpleEcallBack::executeAfter(JPABaseEmitter*) { /* Nonmatching */ } -/* 8007C618-8007C674 .text __dt__17dPa_windPcallBackFv */ -dPa_windPcallBack::~dPa_windPcallBack() { - /* Nonmatching */ -} +// /* 8007C618-8007C674 .text __dt__17dPa_windPcallBackFv */ +// dPa_windPcallBack::~dPa_windPcallBack() { +// /* Nonmatching */ +// } /* 8007C674-8007C6EC .text draw__19dPa_simpleEcallBackFP14JPABaseEmitter */ void dPa_simpleEcallBack::draw(JPABaseEmitter*) { @@ -211,10 +220,10 @@ dPa_control_c::dPa_control_c() { /* Nonmatching */ } -/* 8007C9A4-8007CA28 .text __dt__19dPa_simpleEcallBackFv */ -dPa_simpleEcallBack::~dPa_simpleEcallBack() { - /* Nonmatching */ -} +// /* 8007C9A4-8007CA28 .text __dt__19dPa_simpleEcallBackFv */ +// dPa_simpleEcallBack::~dPa_simpleEcallBack() { +// /* Nonmatching */ +// } /* 8007CA28-8007CA30 .text getRM_ID__13dPa_control_cFUs */ void dPa_control_c::getRM_ID(unsigned short) { @@ -277,7 +286,7 @@ void dPa_control_c::draw(JPADrawInfo*, unsigned char) { } /* 8007D1DC-8007D378 .text set__13dPa_control_cFUcUsPC4cXyzPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyz */ -void dPa_control_c::set(unsigned char, unsigned short, const cXyz*, const csXyz*, const cXyz*, unsigned char, dPa_levelEcallBack*, signed char, const _GXColor*, const _GXColor*, const cXyz*) { +JPABaseEmitter* dPa_control_c::set(unsigned char, unsigned short, const cXyz*, const csXyz*, const cXyz*, unsigned char, dPa_levelEcallBack*, signed char, const _GXColor*, const _GXColor*, const cXyz*) { /* Nonmatching */ } @@ -456,80 +465,80 @@ void dPa_trackEcallBack::draw(JPABaseEmitter*) { /* Nonmatching */ } -/* 8007F62C-8007F698 .text __dt__18dPa_trackEcallBackFv */ -dPa_trackEcallBack::~dPa_trackEcallBack() { - /* Nonmatching */ -} +// /* 8007F62C-8007F698 .text __dt__18dPa_trackEcallBackFv */ +// dPa_trackEcallBack::~dPa_trackEcallBack() { +// /* Nonmatching */ +// } -/* 8007F698-8007F704 .text __dt__22dPa_bombSmokeEcallBackFv */ -dPa_bombSmokeEcallBack::~dPa_bombSmokeEcallBack() { - /* Nonmatching */ -} +// /* 8007F698-8007F704 .text __dt__22dPa_bombSmokeEcallBackFv */ +// dPa_bombSmokeEcallBack::~dPa_bombSmokeEcallBack() { +// /* Nonmatching */ +// } /* 8007F704-8007F708 .text setup__22dPa_bombSmokeEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */ void dPa_bombSmokeEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) { /* Nonmatching */ } -/* 8007F708-8007F764 .text __dt__19dPa_kageroEcallBackFv */ -dPa_kageroEcallBack::~dPa_kageroEcallBack() { - /* Nonmatching */ -} +// /* 8007F708-8007F764 .text __dt__19dPa_kageroEcallBackFv */ +// dPa_kageroEcallBack::~dPa_kageroEcallBack() { +// /* Nonmatching */ +// } -/* 8007F764-8007F7D0 .text __dt__20dPa_stripesEcallBackFv */ -dPa_stripesEcallBack::~dPa_stripesEcallBack() { - /* Nonmatching */ -} +// /* 8007F764-8007F7D0 .text __dt__20dPa_stripesEcallBackFv */ +// dPa_stripesEcallBack::~dPa_stripesEcallBack() { +// /* Nonmatching */ +// } /* 8007F7D0-8007F7D4 .text setup__20dPa_stripesEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */ void dPa_stripesEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) { /* Nonmatching */ } -/* 8007F7D4-8007F840 .text __dt__22dPa_cutTurnEcallBack_cFv */ -dPa_cutTurnEcallBack_c::~dPa_cutTurnEcallBack_c() { - /* Nonmatching */ -} +// /* 8007F7D4-8007F840 .text __dt__22dPa_cutTurnEcallBack_cFv */ +// dPa_cutTurnEcallBack_c::~dPa_cutTurnEcallBack_c() { +// /* Nonmatching */ +// } -/* 8007F840-8007F8AC .text __dt__19dPa_splashEcallBackFv */ -dPa_splashEcallBack::~dPa_splashEcallBack() { - /* Nonmatching */ -} +// /* 8007F840-8007F8AC .text __dt__19dPa_splashEcallBackFv */ +// dPa_splashEcallBack::~dPa_splashEcallBack() { +// /* Nonmatching */ +// } -/* 8007F8AC-8007F940 .text __dt__17dPa_waveEcallBackFv */ -dPa_waveEcallBack::~dPa_waveEcallBack() { - /* Nonmatching */ -} +// /* 8007F8AC-8007F940 .text __dt__17dPa_waveEcallBackFv */ +// dPa_waveEcallBack::~dPa_waveEcallBack() { +// /* Nonmatching */ +// } -/* 8007F940-8007F99C .text __dt__19dPa_ripplePcallBackFv */ -dPa_ripplePcallBack::~dPa_ripplePcallBack() { - /* Nonmatching */ -} +// /* 8007F940-8007F99C .text __dt__19dPa_ripplePcallBackFv */ +// dPa_ripplePcallBack::~dPa_ripplePcallBack() { +// /* Nonmatching */ +// } /* 8007F99C-8007F9A0 .text init__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>FP14JPABaseEmitterP15JPABaseParticle */ void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::init(JPABaseEmitter*, JPABaseParticle*) { /* Nonmatching */ } -/* 8007F9A0-8007FA0C .text __dt__25dPa_singleRippleEcallBackFv */ -dPa_singleRippleEcallBack::~dPa_singleRippleEcallBack() { - /* Nonmatching */ -} +// /* 8007F9A0-8007FA0C .text __dt__25dPa_singleRippleEcallBackFv */ +// dPa_singleRippleEcallBack::~dPa_singleRippleEcallBack() { +// /* Nonmatching */ +// } -/* 8007FA0C-8007FA78 .text __dt__19dPa_rippleEcallBackFv */ -dPa_rippleEcallBack::~dPa_rippleEcallBack() { - /* Nonmatching */ -} +// /* 8007FA0C-8007FA78 .text __dt__19dPa_rippleEcallBackFv */ +// dPa_rippleEcallBack::~dPa_rippleEcallBack() { +// /* Nonmatching */ +// } /* 8007FA78-8007FA7C .text draw__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>FP14JPABaseEmitterP15JPABaseParticle */ void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::draw(JPABaseEmitter*, JPABaseParticle*) { /* Nonmatching */ } -/* 8007FA7C-8007FAE8 .text __dt__22dPa_selectTexEcallBackFv */ -dPa_selectTexEcallBack::~dPa_selectTexEcallBack() { - /* Nonmatching */ -} +// /* 8007FA7C-8007FAE8 .text __dt__22dPa_selectTexEcallBackFv */ +// dPa_selectTexEcallBack::~dPa_selectTexEcallBack() { +// /* Nonmatching */ +// } /* 8007FAE8-8007FAEC .text setup__22dPa_selectTexEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */ void dPa_selectTexEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) { @@ -541,11 +550,6 @@ void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::execute(JPABaseEmitter /* Nonmatching */ } -/* 8007FAF0-8007FB0C .text cLib_calcTimer<Ul>__FPUl */ -void cLib_calcTimer<unsigned long>(unsigned long*) { - /* Nonmatching */ -} - /* 8007FF78-8007FFA8 .text draw__21dPa_setColorEcallBackFP14JPABaseEmitter */ void dPa_setColorEcallBack::draw(JPABaseEmitter*) { /* Nonmatching */ @@ -556,8 +560,8 @@ void dPa_setColorEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, si /* Nonmatching */ } -/* 8007FFAC-80080018 .text __dt__21dPa_setColorEcallBackFv */ -dPa_setColorEcallBack::~dPa_setColorEcallBack() { - /* Nonmatching */ -} +// /* 8007FFAC-80080018 .text __dt__21dPa_setColorEcallBackFv */ +// dPa_setColorEcallBack::~dPa_setColorEcallBack() { +// /* Nonmatching */ +// } |
