Merge branch 'lioncash-override'

This commit is contained in:
Phillip Stephens 2019-08-09 23:02:52 -07:00
commit 9d5b21fd63
101 changed files with 1230 additions and 1150 deletions

View File

@ -44,13 +44,13 @@ struct GlyphMP1 : IGlyph {
Value<atInt32> m_baseline; Value<atInt32> m_baseline;
Value<atInt32> m_kerningIndex; Value<atInt32> m_kerningIndex;
atInt32 leftPadding() const { return m_leftPadding; } atInt32 leftPadding() const override { return m_leftPadding; }
atInt32 advance() const { return m_advance; } atInt32 advance() const override { return m_advance; }
atInt32 rightPadding() const { return m_rightPadding; } atInt32 rightPadding() const override { return m_rightPadding; }
atInt32 width() const { return m_width; } atInt32 width() const override { return m_width; }
atInt32 height() const { return m_height; } atInt32 height() const override { return m_height; }
atInt32 baseline() const { return m_baseline; } atInt32 baseline() const override { return m_baseline; }
atInt32 kerningIndex() const { return m_kerningIndex; } atInt32 kerningIndex() const override { return m_kerningIndex; }
}; };
struct GlyphMP2 : IGlyph { struct GlyphMP2 : IGlyph {
@ -65,14 +65,14 @@ struct GlyphMP2 : IGlyph {
Value<atInt8> m_baseline; Value<atInt8> m_baseline;
Value<atInt16> m_kerningIndex; Value<atInt16> m_kerningIndex;
atInt32 layer() const { return m_layer; } atInt32 layer() const override { return m_layer; }
atInt32 leftPadding() const { return m_leftPadding; } atInt32 leftPadding() const override { return m_leftPadding; }
atInt32 advance() const { return m_advance; } atInt32 advance() const override { return m_advance; }
atInt32 rightPadding() const { return m_rightPadding; } atInt32 rightPadding() const override { return m_rightPadding; }
atInt32 width() const { return m_width; } atInt32 width() const override { return m_width; }
atInt32 height() const { return m_height; } atInt32 height() const override { return m_height; }
atInt32 baseline() const { return m_baseline; } atInt32 baseline() const override { return m_baseline; }
atInt32 kerningIndex() const { return m_kerningIndex; } atInt32 kerningIndex() const override { return m_kerningIndex; }
}; };
struct KerningInfo : BigDNA { struct KerningInfo : BigDNA {

View File

@ -25,10 +25,10 @@ struct MAPA : BigDNA {
Value<atUint32> moCount = 0; Value<atUint32> moCount = 0;
Value<atUint32> vtxCount = 0; Value<atUint32> vtxCount = 0;
Value<atUint32> surfCount = 0; Value<atUint32> surfCount = 0;
atUint32 visMode() const { return mapVisMode; } atUint32 visMode() const override { return mapVisMode; }
atUint32 mappableObjectCount() const { return moCount; } atUint32 mappableObjectCount() const override { return moCount; }
atUint32 vertexCount() const { return vtxCount; } atUint32 vertexCount() const override { return vtxCount; }
atUint32 surfaceCount() const { return surfCount; } atUint32 surfaceCount() const override { return surfCount; }
}; };
struct HeaderMP2 : IMAPAHeader { struct HeaderMP2 : IMAPAHeader {
@ -43,10 +43,10 @@ struct MAPA : BigDNA {
Value<atUint32> moCount = 0; Value<atUint32> moCount = 0;
Value<atUint32> vtxCount = 0; Value<atUint32> vtxCount = 0;
Value<atUint32> surfCount = 0; Value<atUint32> surfCount = 0;
atUint32 visMode() const { return mapVisMode; } atUint32 visMode() const override { return mapVisMode; }
atUint32 mappableObjectCount() const { return moCount; } atUint32 mappableObjectCount() const override { return moCount; }
atUint32 vertexCount() const { return vtxCount; } atUint32 vertexCount() const override { return vtxCount; }
atUint32 surfaceCount() const { return surfCount; } atUint32 surfaceCount() const override { return surfCount; }
}; };
struct HeaderMP3 : IMAPAHeader { struct HeaderMP3 : IMAPAHeader {
@ -65,10 +65,10 @@ struct MAPA : BigDNA {
Value<atUint32> internalNameLength = 0; Value<atUint32> internalNameLength = 0;
Value<atUint32> unknown7 = 0; Value<atUint32> unknown7 = 0;
String<AT_DNA_COUNT(internalNameLength)> internalName; String<AT_DNA_COUNT(internalNameLength)> internalName;
atUint32 visMode() const { return mapVisMode; } atUint32 visMode() const override { return mapVisMode; }
atUint32 mappableObjectCount() const { return moCount; } atUint32 mappableObjectCount() const override { return moCount; }
atUint32 vertexCount() const { return vtxCount; } atUint32 vertexCount() const override { return vtxCount; }
atUint32 surfaceCount() const { return surfCount; } atUint32 surfaceCount() const override { return surfCount; }
}; };
std::unique_ptr<IMAPAHeader> header; std::unique_ptr<IMAPAHeader> header;

View File

@ -25,7 +25,7 @@ public:
if (m_pos >= m_sz) if (m_pos >= m_sz)
LogDNACommon.report(logvisor::Fatal, fmt("PAK stream cursor overrun")); LogDNACommon.report(logvisor::Fatal, fmt("PAK stream cursor overrun"));
} }
void seek(atInt64 pos, athena::SeekOrigin origin) { void seek(atInt64 pos, athena::SeekOrigin origin) override {
if (origin == athena::Begin) if (origin == athena::Begin)
m_pos = pos; m_pos = pos;
else if (origin == athena::Current) else if (origin == athena::Current)
@ -35,10 +35,10 @@ public:
if (m_pos > m_sz) if (m_pos > m_sz)
LogDNACommon.report(logvisor::Fatal, fmt("PAK stream cursor overrun")); LogDNACommon.report(logvisor::Fatal, fmt("PAK stream cursor overrun"));
} }
atUint64 position() const { return m_pos; } atUint64 position() const override { return m_pos; }
atUint64 length() const { return m_sz; } atUint64 length() const override { return m_sz; }
const atUint8* data() const { return m_buf.get(); } const atUint8* data() const { return m_buf.get(); }
atUint64 readUBytesToBuf(void* buf, atUint64 len) { atUint64 readUBytesToBuf(void* buf, atUint64 len) override {
atUint64 bufEnd = m_pos + len; atUint64 bufEnd = m_pos + len;
if (bufEnd > m_sz) if (bufEnd > m_sz)
len -= bufEnd - m_sz; len -= bufEnd - m_sz;
@ -172,7 +172,7 @@ public:
using PAKRouterBase::getWorking; using PAKRouterBase::getWorking;
hecl::ProjectPath getWorking(const EntryType* entry, const ResExtractor<BRIDGETYPE>& extractor) const; hecl::ProjectPath getWorking(const EntryType* entry, const ResExtractor<BRIDGETYPE>& extractor) const;
hecl::ProjectPath getWorking(const EntryType* entry) const; hecl::ProjectPath getWorking(const EntryType* entry) const;
hecl::ProjectPath getWorking(const IDType& id, bool silenceWarnings = false) const; hecl::ProjectPath getWorking(const IDType& id, bool silenceWarnings = false) const override;
hecl::ProjectPath getCooked(const EntryType* entry) const; hecl::ProjectPath getCooked(const EntryType* entry) const;
hecl::ProjectPath getCooked(const IDType& id, bool silenceWarnings = false) const; hecl::ProjectPath getCooked(const IDType& id, bool silenceWarnings = false) const;

View File

@ -7,9 +7,9 @@ extern logvisor::Module LogModule;
struct IElement : BigDNAVYaml { struct IElement : BigDNAVYaml {
Delete _d; Delete _d;
virtual ~IElement() = default; ~IElement() override = default;
virtual const char* ClassID() const = 0; virtual const char* ClassID() const = 0;
const char* DNATypeV() const { return ClassID(); } const char* DNATypeV() const override { return ClassID(); }
}; };
struct IRealElement : IElement { struct IRealElement : IElement {
@ -79,20 +79,20 @@ struct BoolHelper : IElement {
value = val; value = val;
return *this; return *this;
} }
const char* ClassID() const { return "BoolHelper"; } const char* ClassID() const override { return "BoolHelper"; }
}; };
struct RELifetimeTween : IRealElement { struct RELifetimeTween : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "LFTW"; } const char* ClassID() const override { return "LFTW"; }
}; };
struct REConstant : IRealElement { struct REConstant : IRealElement {
AT_DECL_EXPLICIT_DNA_YAML AT_DECL_EXPLICIT_DNA_YAML
Value<float> val; Value<float> val;
const char* ClassID() const { return "CNST"; } const char* ClassID() const override { return "CNST"; }
}; };
struct RETimeChain : IRealElement { struct RETimeChain : IRealElement {
@ -100,14 +100,14 @@ struct RETimeChain : IRealElement {
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
IntElementFactory thresholdFrame; IntElementFactory thresholdFrame;
const char* ClassID() const { return "CHAN"; } const char* ClassID() const override { return "CHAN"; }
}; };
struct REAdd : IRealElement { struct REAdd : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "ADD_"; } const char* ClassID() const override { return "ADD_"; }
}; };
struct REClamp : IRealElement { struct REClamp : IRealElement {
@ -115,7 +115,7 @@ struct REClamp : IRealElement {
RealElementFactory min; RealElementFactory min;
RealElementFactory max; RealElementFactory max;
RealElementFactory val; RealElementFactory val;
const char* ClassID() const { return "CLMP"; } const char* ClassID() const override { return "CLMP"; }
}; };
struct REKeyframeEmitter : IRealElement { struct REKeyframeEmitter : IRealElement {
@ -128,28 +128,28 @@ struct REKeyframeEmitter : IRealElement {
Value<atUint32> loopStart; Value<atUint32> loopStart;
Value<atUint32> count; Value<atUint32> count;
Vector<float, AT_DNA_COUNT(count)> keys; Vector<float, AT_DNA_COUNT(count)> keys;
const char* ClassID() const { return percentageTween ? "KEYP" : "KEYE"; } const char* ClassID() const override { return percentageTween ? "KEYP" : "KEYE"; }
}; };
struct REInitialRandom : IRealElement { struct REInitialRandom : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "IRND"; } const char* ClassID() const override { return "IRND"; }
}; };
struct RERandom : IRealElement { struct RERandom : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "RAND"; } const char* ClassID() const override { return "RAND"; }
}; };
struct REMultiply : IRealElement { struct REMultiply : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "MULT"; } const char* ClassID() const override { return "MULT"; }
}; };
struct REPulse : IRealElement { struct REPulse : IRealElement {
@ -158,19 +158,19 @@ struct REPulse : IRealElement {
IntElementFactory bDuration; IntElementFactory bDuration;
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "PULS"; } const char* ClassID() const override { return "PULS"; }
}; };
struct RETimeScale : IRealElement { struct RETimeScale : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory dv; RealElementFactory dv;
const char* ClassID() const { return "SCAL"; } const char* ClassID() const override { return "SCAL"; }
}; };
struct RELifetimePercent : IRealElement { struct RELifetimePercent : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory percent; RealElementFactory percent;
const char* ClassID() const { return "RLPT"; } const char* ClassID() const override { return "RLPT"; }
}; };
struct RESineWave : IRealElement { struct RESineWave : IRealElement {
@ -178,14 +178,14 @@ struct RESineWave : IRealElement {
RealElementFactory frequency; RealElementFactory frequency;
RealElementFactory amplitude; RealElementFactory amplitude;
RealElementFactory phase; RealElementFactory phase;
const char* ClassID() const { return "SINE"; } const char* ClassID() const override { return "SINE"; }
}; };
struct REInitialSwitch : IRealElement { struct REInitialSwitch : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "ISWT"; } const char* ClassID() const override { return "ISWT"; }
}; };
struct RECompareLessThan : IRealElement { struct RECompareLessThan : IRealElement {
@ -194,7 +194,7 @@ struct RECompareLessThan : IRealElement {
RealElementFactory cb; RealElementFactory cb;
RealElementFactory pass; RealElementFactory pass;
RealElementFactory fail; RealElementFactory fail;
const char* ClassID() const { return "CLTN"; } const char* ClassID() const override { return "CLTN"; }
}; };
struct RECompareEquals : IRealElement { struct RECompareEquals : IRealElement {
@ -203,101 +203,101 @@ struct RECompareEquals : IRealElement {
RealElementFactory cb; RealElementFactory cb;
RealElementFactory pass; RealElementFactory pass;
RealElementFactory fail; RealElementFactory fail;
const char* ClassID() const { return "CEQL"; } const char* ClassID() const override { return "CEQL"; }
}; };
struct REParticleAdvanceParam1 : IRealElement { struct REParticleAdvanceParam1 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP1"; } const char* ClassID() const override { return "PAP1"; }
}; };
struct REParticleAdvanceParam2 : IRealElement { struct REParticleAdvanceParam2 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP2"; } const char* ClassID() const override { return "PAP2"; }
}; };
struct REParticleAdvanceParam3 : IRealElement { struct REParticleAdvanceParam3 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP3"; } const char* ClassID() const override { return "PAP3"; }
}; };
struct REParticleAdvanceParam4 : IRealElement { struct REParticleAdvanceParam4 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP4"; } const char* ClassID() const override { return "PAP4"; }
}; };
struct REParticleAdvanceParam5 : IRealElement { struct REParticleAdvanceParam5 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP5"; } const char* ClassID() const override { return "PAP5"; }
}; };
struct REParticleAdvanceParam6 : IRealElement { struct REParticleAdvanceParam6 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP6"; } const char* ClassID() const override { return "PAP6"; }
}; };
struct REParticleAdvanceParam7 : IRealElement { struct REParticleAdvanceParam7 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP7"; } const char* ClassID() const override { return "PAP7"; }
}; };
struct REParticleAdvanceParam8 : IRealElement { struct REParticleAdvanceParam8 : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PAP8"; } const char* ClassID() const override { return "PAP8"; }
}; };
struct REParticleSizeOrLineLength : IRealElement { struct REParticleSizeOrLineLength : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PSLL"; } const char* ClassID() const override { return "PSLL"; }
}; };
struct REParticleRotationOrLineWidth : IRealElement { struct REParticleRotationOrLineWidth : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PRLW"; } const char* ClassID() const override { return "PRLW"; }
}; };
struct RESubtract : IRealElement { struct RESubtract : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "SUB_"; } const char* ClassID() const override { return "SUB_"; }
}; };
struct REVectorMagnitude : IRealElement { struct REVectorMagnitude : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory vec; VectorElementFactory vec;
const char* ClassID() const { return "VMAG"; } const char* ClassID() const override { return "VMAG"; }
}; };
struct REVectorXToReal : IRealElement { struct REVectorXToReal : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory vec; VectorElementFactory vec;
const char* ClassID() const { return "VXTR"; } const char* ClassID() const override { return "VXTR"; }
}; };
struct REVectorYToReal : IRealElement { struct REVectorYToReal : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory vec; VectorElementFactory vec;
const char* ClassID() const { return "VYTR"; } const char* ClassID() const override { return "VYTR"; }
}; };
struct REVectorZToReal : IRealElement { struct REVectorZToReal : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory vec; VectorElementFactory vec;
const char* ClassID() const { return "VZTR"; } const char* ClassID() const override { return "VZTR"; }
}; };
struct RECEXT : IRealElement { struct RECEXT : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory index; IntElementFactory index;
const char* ClassID() const { return "CEXT"; } const char* ClassID() const override { return "CEXT"; }
}; };
struct REIntTimesReal : IRealElement { struct REIntTimesReal : IRealElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory a; IntElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "ITRL"; } const char* ClassID() const override { return "ITRL"; }
}; };
struct IEKeyframeEmitter : IIntElement { struct IEKeyframeEmitter : IIntElement {
@ -310,14 +310,14 @@ struct IEKeyframeEmitter : IIntElement {
Value<atUint32> loopStart; Value<atUint32> loopStart;
Value<atUint32> count; Value<atUint32> count;
Vector<atUint32, AT_DNA_COUNT(count)> keys; Vector<atUint32, AT_DNA_COUNT(count)> keys;
const char* ClassID() const { return percentageTween ? "KEYP" : "KEYE"; } const char* ClassID() const override { return percentageTween ? "KEYP" : "KEYE"; }
}; };
struct IEDeath : IIntElement { struct IEDeath : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory passthrough; IntElementFactory passthrough;
IntElementFactory thresholdFrame; IntElementFactory thresholdFrame;
const char* ClassID() const { return "DETH"; } const char* ClassID() const override { return "DETH"; }
}; };
struct IEClamp : IIntElement { struct IEClamp : IIntElement {
@ -325,7 +325,7 @@ struct IEClamp : IIntElement {
IntElementFactory min; IntElementFactory min;
IntElementFactory max; IntElementFactory max;
IntElementFactory val; IntElementFactory val;
const char* ClassID() const { return "CLMP"; } const char* ClassID() const override { return "CLMP"; }
}; };
struct IETimeChain : IIntElement { struct IETimeChain : IIntElement {
@ -333,39 +333,39 @@ struct IETimeChain : IIntElement {
IntElementFactory a; IntElementFactory a;
IntElementFactory b; IntElementFactory b;
IntElementFactory thresholdFrame; IntElementFactory thresholdFrame;
const char* ClassID() const { return "CHAN"; } const char* ClassID() const override { return "CHAN"; }
}; };
struct IEAdd : IIntElement { struct IEAdd : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory a; IntElementFactory a;
IntElementFactory b; IntElementFactory b;
const char* ClassID() const { return "ADD_"; } const char* ClassID() const override { return "ADD_"; }
}; };
struct IEConstant : IIntElement { struct IEConstant : IIntElement {
AT_DECL_EXPLICIT_DNA_YAML AT_DECL_EXPLICIT_DNA_YAML
Value<atUint32> val; Value<atUint32> val;
const char* ClassID() const { return "CNST"; } const char* ClassID() const override { return "CNST"; }
}; };
struct IEImpulse : IIntElement { struct IEImpulse : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory val; IntElementFactory val;
const char* ClassID() const { return "IMPL"; } const char* ClassID() const override { return "IMPL"; }
}; };
struct IELifetimePercent : IIntElement { struct IELifetimePercent : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory percent; IntElementFactory percent;
const char* ClassID() const { return "ILPT"; } const char* ClassID() const override { return "ILPT"; }
}; };
struct IEInitialRandom : IIntElement { struct IEInitialRandom : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory a; IntElementFactory a;
IntElementFactory b; IntElementFactory b;
const char* ClassID() const { return "IRND"; } const char* ClassID() const override { return "IRND"; }
}; };
struct IEPulse : IIntElement { struct IEPulse : IIntElement {
@ -374,14 +374,14 @@ struct IEPulse : IIntElement {
IntElementFactory bDuration; IntElementFactory bDuration;
IntElementFactory a; IntElementFactory a;
IntElementFactory b; IntElementFactory b;
const char* ClassID() const { return "PULS"; } const char* ClassID() const override { return "PULS"; }
}; };
struct IEMultiply : IIntElement { struct IEMultiply : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory a; IntElementFactory a;
IntElementFactory b; IntElementFactory b;
const char* ClassID() const { return "MULT"; } const char* ClassID() const override { return "MULT"; }
}; };
struct IESampleAndHold : IIntElement { struct IESampleAndHold : IIntElement {
@ -389,46 +389,46 @@ struct IESampleAndHold : IIntElement {
IntElementFactory val; IntElementFactory val;
IntElementFactory waitMin; IntElementFactory waitMin;
IntElementFactory waitMax; IntElementFactory waitMax;
const char* ClassID() const { return "SPAH"; } const char* ClassID() const override { return "SPAH"; }
}; };
struct IERandom : IIntElement { struct IERandom : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory a; IntElementFactory a;
IntElementFactory b; IntElementFactory b;
const char* ClassID() const { return "RAND"; } const char* ClassID() const override { return "RAND"; }
}; };
struct IETimeScale : IIntElement { struct IETimeScale : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory dv; RealElementFactory dv;
const char* ClassID() const { return "TSCL"; } const char* ClassID() const override { return "TSCL"; }
}; };
struct IEGTCP : IIntElement { struct IEGTCP : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "GTCP"; } const char* ClassID() const override { return "GTCP"; }
}; };
struct IEModulo : IIntElement { struct IEModulo : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory a; IntElementFactory a;
IntElementFactory b; IntElementFactory b;
const char* ClassID() const { return "MODU"; } const char* ClassID() const override { return "MODU"; }
}; };
struct IESubtract : IIntElement { struct IESubtract : IIntElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
IntElementFactory direction; IntElementFactory direction;
IntElementFactory baseRadius; IntElementFactory baseRadius;
const char* ClassID() const { return "SUB_"; } const char* ClassID() const override { return "SUB_"; }
}; };
struct VECone : IVectorElement { struct VECone : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory a; VectorElementFactory a;
RealElementFactory b; RealElementFactory b;
const char* ClassID() const { return "CONE"; } const char* ClassID() const override { return "CONE"; }
}; };
struct VETimeChain : IVectorElement { struct VETimeChain : IVectorElement {
@ -436,7 +436,7 @@ struct VETimeChain : IVectorElement {
VectorElementFactory a; VectorElementFactory a;
VectorElementFactory b; VectorElementFactory b;
IntElementFactory thresholdFrame; IntElementFactory thresholdFrame;
const char* ClassID() const { return "CHAN"; } const char* ClassID() const override { return "CHAN"; }
}; };
struct VEAngleCone : IVectorElement { struct VEAngleCone : IVectorElement {
@ -446,14 +446,14 @@ struct VEAngleCone : IVectorElement {
RealElementFactory angleXRange; RealElementFactory angleXRange;
RealElementFactory angleYRange; RealElementFactory angleYRange;
RealElementFactory magnitude; RealElementFactory magnitude;
const char* ClassID() const { return "ANGC"; } const char* ClassID() const override { return "ANGC"; }
}; };
struct VEAdd : IVectorElement { struct VEAdd : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory a; VectorElementFactory a;
VectorElementFactory b; VectorElementFactory b;
const char* ClassID() const { return "ADD_"; } const char* ClassID() const override { return "ADD_"; }
}; };
struct VECircleCluster : IVectorElement { struct VECircleCluster : IVectorElement {
@ -462,13 +462,13 @@ struct VECircleCluster : IVectorElement {
VectorElementFactory circleNormal; VectorElementFactory circleNormal;
IntElementFactory cycleFrames; IntElementFactory cycleFrames;
RealElementFactory randomFactor; RealElementFactory randomFactor;
const char* ClassID() const { return "CCLU"; } const char* ClassID() const override { return "CCLU"; }
}; };
struct VEConstant : IVectorElement { struct VEConstant : IVectorElement {
AT_DECL_EXPLICIT_DNA_YAML AT_DECL_EXPLICIT_DNA_YAML
RealElementFactory comps[3]; RealElementFactory comps[3];
const char* ClassID() const { return "CNST"; } const char* ClassID() const override { return "CNST"; }
}; };
struct VECircle : IVectorElement { struct VECircle : IVectorElement {
@ -478,7 +478,7 @@ struct VECircle : IVectorElement {
RealElementFactory angleConstant; RealElementFactory angleConstant;
RealElementFactory angleLinear; RealElementFactory angleLinear;
RealElementFactory circleRadius; RealElementFactory circleRadius;
const char* ClassID() const { return "CIRC"; } const char* ClassID() const override { return "CIRC"; }
}; };
struct VEKeyframeEmitter : IVectorElement { struct VEKeyframeEmitter : IVectorElement {
@ -491,20 +491,20 @@ struct VEKeyframeEmitter : IVectorElement {
Value<atUint32> loopStart; Value<atUint32> loopStart;
Value<atUint32> count; Value<atUint32> count;
Vector<atVec3f, AT_DNA_COUNT(count)> keys; Vector<atVec3f, AT_DNA_COUNT(count)> keys;
const char* ClassID() const { return percentageTween ? "KEYP" : "KEYE"; } const char* ClassID() const override { return percentageTween ? "KEYP" : "KEYE"; }
}; };
struct VEMultiply : IVectorElement { struct VEMultiply : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory a; VectorElementFactory a;
VectorElementFactory b; VectorElementFactory b;
const char* ClassID() const { return "MULT"; } const char* ClassID() const override { return "MULT"; }
}; };
struct VERealToVector : IVectorElement { struct VERealToVector : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory a; RealElementFactory a;
const char* ClassID() const { return "RTOV"; } const char* ClassID() const override { return "RTOV"; }
}; };
struct VEPulse : IVectorElement { struct VEPulse : IVectorElement {
@ -513,23 +513,23 @@ struct VEPulse : IVectorElement {
IntElementFactory bDuration; IntElementFactory bDuration;
VectorElementFactory a; VectorElementFactory a;
VectorElementFactory b; VectorElementFactory b;
const char* ClassID() const { return "PULS"; } const char* ClassID() const override { return "PULS"; }
}; };
struct VEParticleVelocity : IVectorElement { struct VEParticleVelocity : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PVEL"; } const char* ClassID() const override { return "PVEL"; }
}; };
struct VESPOS : IVectorElement { struct VESPOS : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory a; VectorElementFactory a;
const char* ClassID() const { return "SPOS"; } const char* ClassID() const override { return "SPOS"; }
}; };
struct VEPLCO : IVectorElement { struct VEPLCO : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PLCO"; } const char* ClassID() const override { return "PLCO"; }
}; };
struct VEPLOC : IVectorElement { struct VEPLOC : IVectorElement {
@ -539,12 +539,12 @@ struct VEPLOC : IVectorElement {
struct VEPSOR : IVectorElement { struct VEPSOR : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PSOR"; } const char* ClassID() const override { return "PSOR"; }
}; };
struct VEPSOF : IVectorElement { struct VEPSOF : IVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
const char* ClassID() const { return "PSOF"; } const char* ClassID() const override { return "PSOF"; }
}; };
struct CEKeyframeEmitter : IColorElement { struct CEKeyframeEmitter : IColorElement {
@ -557,13 +557,13 @@ struct CEKeyframeEmitter : IColorElement {
Value<atUint32> loopStart; Value<atUint32> loopStart;
Value<atUint32> count; Value<atUint32> count;
Vector<atVec4f, AT_DNA_COUNT(count)> keys; Vector<atVec4f, AT_DNA_COUNT(count)> keys;
const char* ClassID() const { return percentageTween ? "KEYP" : "KEYE"; } const char* ClassID() const override { return percentageTween ? "KEYP" : "KEYE"; }
}; };
struct CEConstant : IColorElement { struct CEConstant : IColorElement {
AT_DECL_EXPLICIT_DNA_YAML AT_DECL_EXPLICIT_DNA_YAML
RealElementFactory comps[4]; RealElementFactory comps[4];
const char* ClassID() const { return "CNST"; } const char* ClassID() const override { return "CNST"; }
}; };
struct CETimeChain : IColorElement { struct CETimeChain : IColorElement {
@ -571,7 +571,7 @@ struct CETimeChain : IColorElement {
ColorElementFactory a; ColorElementFactory a;
ColorElementFactory b; ColorElementFactory b;
IntElementFactory thresholdFrame; IntElementFactory thresholdFrame;
const char* ClassID() const { return "CHAN"; } const char* ClassID() const override { return "CHAN"; }
}; };
struct CEFadeEnd : IColorElement { struct CEFadeEnd : IColorElement {
@ -580,7 +580,7 @@ struct CEFadeEnd : IColorElement {
ColorElementFactory b; ColorElementFactory b;
RealElementFactory startFrame; RealElementFactory startFrame;
RealElementFactory endFrame; RealElementFactory endFrame;
const char* ClassID() const { return "CFDE"; } const char* ClassID() const override { return "CFDE"; }
}; };
struct CEFade : IColorElement { struct CEFade : IColorElement {
@ -588,7 +588,7 @@ struct CEFade : IColorElement {
ColorElementFactory a; ColorElementFactory a;
ColorElementFactory b; ColorElementFactory b;
RealElementFactory endFrame; RealElementFactory endFrame;
const char* ClassID() const { return "FADE"; } const char* ClassID() const override { return "FADE"; }
}; };
struct CEPulse : IColorElement { struct CEPulse : IColorElement {
@ -597,7 +597,7 @@ struct CEPulse : IColorElement {
IntElementFactory bDuration; IntElementFactory bDuration;
ColorElementFactory a; ColorElementFactory a;
ColorElementFactory b; ColorElementFactory b;
const char* ClassID() const { return "PULS"; } const char* ClassID() const override { return "PULS"; }
}; };
struct MVEImplosion : IModVectorElement { struct MVEImplosion : IModVectorElement {
@ -607,7 +607,7 @@ struct MVEImplosion : IModVectorElement {
RealElementFactory maxRadius; RealElementFactory maxRadius;
RealElementFactory minRadius; RealElementFactory minRadius;
BoolHelper enableMinRadius; BoolHelper enableMinRadius;
const char* ClassID() const { return "IMPL"; } const char* ClassID() const override { return "IMPL"; }
}; };
struct MVEExponentialImplosion : IModVectorElement { struct MVEExponentialImplosion : IModVectorElement {
@ -617,7 +617,7 @@ struct MVEExponentialImplosion : IModVectorElement {
RealElementFactory maxRadius; RealElementFactory maxRadius;
RealElementFactory minRadius; RealElementFactory minRadius;
BoolHelper enableMinRadius; BoolHelper enableMinRadius;
const char* ClassID() const { return "EMPL"; } const char* ClassID() const override { return "EMPL"; }
}; };
struct MVETimeChain : IModVectorElement { struct MVETimeChain : IModVectorElement {
@ -625,7 +625,7 @@ struct MVETimeChain : IModVectorElement {
ModVectorElementFactory a; ModVectorElementFactory a;
ModVectorElementFactory b; ModVectorElementFactory b;
IntElementFactory thresholdFrame; IntElementFactory thresholdFrame;
const char* ClassID() const { return "CHAN"; } const char* ClassID() const override { return "CHAN"; }
}; };
struct MVEBounce : IModVectorElement { struct MVEBounce : IModVectorElement {
@ -635,13 +635,13 @@ struct MVEBounce : IModVectorElement {
RealElementFactory friction; RealElementFactory friction;
RealElementFactory restitution; RealElementFactory restitution;
BoolHelper dieOnPenetrate; BoolHelper dieOnPenetrate;
const char* ClassID() const { return "BNCE"; } const char* ClassID() const override { return "BNCE"; }
}; };
struct MVEConstant : IModVectorElement { struct MVEConstant : IModVectorElement {
AT_DECL_EXPLICIT_DNA_YAML AT_DECL_EXPLICIT_DNA_YAML
RealElementFactory comps[3]; RealElementFactory comps[3];
const char* ClassID() const { return "CNST"; } const char* ClassID() const override { return "CNST"; }
}; };
struct MVEGravity : IModVectorElement { struct MVEGravity : IModVectorElement {
@ -654,13 +654,13 @@ struct MVEExplode : IModVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
RealElementFactory impulseMagnitude; RealElementFactory impulseMagnitude;
RealElementFactory falloffFactor; RealElementFactory falloffFactor;
const char* ClassID() const { return "EXPL"; } const char* ClassID() const override { return "EXPL"; }
}; };
struct MVESetPosition : IModVectorElement { struct MVESetPosition : IModVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory position; VectorElementFactory position;
const char* ClassID() const { return "SPOS"; } const char* ClassID() const override { return "SPOS"; }
}; };
struct MVELinearImplosion : IModVectorElement { struct MVELinearImplosion : IModVectorElement {
@ -670,7 +670,7 @@ struct MVELinearImplosion : IModVectorElement {
RealElementFactory maxRadius; RealElementFactory maxRadius;
RealElementFactory minRadius; RealElementFactory minRadius;
BoolHelper enableMinRadius; BoolHelper enableMinRadius;
const char* ClassID() const { return "LMPL"; } const char* ClassID() const override { return "LMPL"; }
}; };
struct MVEPulse : IModVectorElement { struct MVEPulse : IModVectorElement {
@ -679,14 +679,14 @@ struct MVEPulse : IModVectorElement {
IntElementFactory bDuration; IntElementFactory bDuration;
ModVectorElementFactory a; ModVectorElementFactory a;
ModVectorElementFactory b; ModVectorElementFactory b;
const char* ClassID() const { return "PULS"; } const char* ClassID() const override { return "PULS"; }
}; };
struct MVEWind : IModVectorElement { struct MVEWind : IModVectorElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory windVelocity; VectorElementFactory windVelocity;
RealElementFactory factor; RealElementFactory factor;
const char* ClassID() const { return "WIND"; } const char* ClassID() const override { return "WIND"; }
}; };
struct MVESwirl : IModVectorElement { struct MVESwirl : IModVectorElement {
@ -695,14 +695,14 @@ struct MVESwirl : IModVectorElement {
VectorElementFactory curveBinormal; VectorElementFactory curveBinormal;
RealElementFactory filterGain; RealElementFactory filterGain;
RealElementFactory tangentialVelocity; RealElementFactory tangentialVelocity;
const char* ClassID() const { return "SWRL"; } const char* ClassID() const override { return "SWRL"; }
}; };
struct EESimpleEmitter : IEmitterElement { struct EESimpleEmitter : IEmitterElement {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
VectorElementFactory position; VectorElementFactory position;
VectorElementFactory velocity; VectorElementFactory velocity;
const char* ClassID() const { return "SEMR"; } const char* ClassID() const override { return "SEMR"; }
}; };
struct VESphere : IEmitterElement { struct VESphere : IEmitterElement {
@ -710,7 +710,7 @@ struct VESphere : IEmitterElement {
VectorElementFactory sphereOrigin; VectorElementFactory sphereOrigin;
RealElementFactory sphereRadius; RealElementFactory sphereRadius;
RealElementFactory magnitude; RealElementFactory magnitude;
const char* ClassID() const { return "SPHE"; } const char* ClassID() const override { return "SPHE"; }
}; };
struct VEAngleSphere : IEmitterElement { struct VEAngleSphere : IEmitterElement {
@ -722,12 +722,12 @@ struct VEAngleSphere : IEmitterElement {
RealElementFactory angleYBias; RealElementFactory angleYBias;
RealElementFactory angleXRange; RealElementFactory angleXRange;
RealElementFactory angleYRange; RealElementFactory angleYRange;
const char* ClassID() const { return "ASPH"; } const char* ClassID() const override { return "ASPH"; }
}; };
struct EESimpleEmitterTR : EESimpleEmitter { struct EESimpleEmitterTR : EESimpleEmitter {
AT_DECL_EXPLICIT_DNA_YAML AT_DECL_EXPLICIT_DNA_YAML
const char* ClassID() const { return "SETR"; } const char* ClassID() const override { return "SETR"; }
}; };
template <class IDType> template <class IDType>
@ -735,7 +735,7 @@ struct UVEConstant : IUVElement {
AT_DECL_EXPLICIT_DNA_YAML AT_DECL_EXPLICIT_DNA_YAML
AT_SUBDECL_DNA AT_SUBDECL_DNA
CastIDToZero<IDType> tex; CastIDToZero<IDType> tex;
const char* ClassID() const { return "CNST"; } const char* ClassID() const override { return "CNST"; }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut) const {
g_curSpec->flattenDependencies(tex, pathsOut); g_curSpec->flattenDependencies(tex, pathsOut);
@ -753,7 +753,7 @@ struct UVEAnimTexture : IUVElement {
IntElementFactory strideH; IntElementFactory strideH;
IntElementFactory cycleFrames; IntElementFactory cycleFrames;
Value<bool> loop = false; Value<bool> loop = false;
const char* ClassID() const { return "ATEX"; } const char* ClassID() const override { return "ATEX"; }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut) const {
g_curSpec->flattenDependencies(tex, pathsOut); g_curSpec->flattenDependencies(tex, pathsOut);

View File

@ -9,7 +9,7 @@
namespace DataSpec { namespace DataSpec {
struct ISTRG : BigDNAVYaml { struct ISTRG : BigDNAVYaml {
virtual ~ISTRG() = default; ~ISTRG() override = default;
virtual size_t count() const = 0; virtual size_t count() const = 0;
virtual std::string getUTF8(const FourCC& lang, size_t idx) const = 0; virtual std::string getUTF8(const FourCC& lang, size_t idx) const = 0;

View File

@ -156,9 +156,11 @@ struct ANCS : BigDNA {
Value<atUint32> unk2; Value<atUint32> unk2;
void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter, void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter,
std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out); std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) override;
bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) { return func(*this); } bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) override {
return func(*this);
}
}; };
struct MetaAnimBlend : IMetaAnim { struct MetaAnimBlend : IMetaAnim {
MetaAnimBlend() : IMetaAnim(Type::Blend, "Blend") {} MetaAnimBlend() : IMetaAnim(Type::Blend, "Blend") {}
@ -170,12 +172,12 @@ struct ANCS : BigDNA {
Value<atUint8> unk; Value<atUint8> unk;
void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter, void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter,
std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) { std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) override {
animA.m_anim->gatherPrimitives(pakRouter, out); animA.m_anim->gatherPrimitives(pakRouter, out);
animB.m_anim->gatherPrimitives(pakRouter, out); animB.m_anim->gatherPrimitives(pakRouter, out);
} }
bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) { bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) override {
if (!animA.m_anim->enumeratePrimitives(func)) if (!animA.m_anim->enumeratePrimitives(func))
return false; return false;
if (!animB.m_anim->enumeratePrimitives(func)) if (!animB.m_anim->enumeratePrimitives(func))
@ -193,12 +195,12 @@ struct ANCS : BigDNA {
Value<atUint8> unk; Value<atUint8> unk;
void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter, void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter,
std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) { std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) override {
animA.m_anim->gatherPrimitives(pakRouter, out); animA.m_anim->gatherPrimitives(pakRouter, out);
animB.m_anim->gatherPrimitives(pakRouter, out); animB.m_anim->gatherPrimitives(pakRouter, out);
} }
bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) { bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) override {
if (!animA.m_anim->enumeratePrimitives(func)) if (!animA.m_anim->enumeratePrimitives(func))
return false; return false;
if (!animB.m_anim->enumeratePrimitives(func)) if (!animB.m_anim->enumeratePrimitives(func))
@ -219,12 +221,12 @@ struct ANCS : BigDNA {
Vector<Child, AT_DNA_COUNT(animCount)> children; Vector<Child, AT_DNA_COUNT(animCount)> children;
void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter, void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter,
std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) { std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) override {
for (const auto& child : children) for (const auto& child : children)
child.anim.m_anim->gatherPrimitives(pakRouter, out); child.anim.m_anim->gatherPrimitives(pakRouter, out);
} }
bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) { bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) override {
for (auto& child : children) for (auto& child : children)
if (!child.anim.m_anim->enumeratePrimitives(func)) if (!child.anim.m_anim->enumeratePrimitives(func))
return false; return false;
@ -239,12 +241,12 @@ struct ANCS : BigDNA {
Vector<MetaAnimFactory, AT_DNA_COUNT(animCount)> children; Vector<MetaAnimFactory, AT_DNA_COUNT(animCount)> children;
void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter, void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter,
std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) { std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) override {
for (const auto& child : children) for (const auto& child : children)
child.m_anim->gatherPrimitives(pakRouter, out); child.m_anim->gatherPrimitives(pakRouter, out);
} }
bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) { bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) override {
for (auto& child : children) for (auto& child : children)
if (!child.m_anim->enumeratePrimitives(func)) if (!child.m_anim->enumeratePrimitives(func))
return false; return false;
@ -285,11 +287,11 @@ struct ANCS : BigDNA {
MetaAnimFactory anim; MetaAnimFactory anim;
void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter, void gatherPrimitives(PAKRouter<PAKBridge>* pakRouter,
std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) { std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID32>>& out) override {
anim.m_anim->gatherPrimitives(pakRouter, out); anim.m_anim->gatherPrimitives(pakRouter, out);
} }
bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) { bool enumeratePrimitives(const std::function<bool(MetaAnimPrimitive& prim)>& func) override {
return anim.m_anim->enumeratePrimitives(func); return anim.m_anim->enumeratePrimitives(func);
} }
}; };

View File

@ -46,19 +46,19 @@ struct FRME : BigDNA {
struct BWIGInfo : IWidgetInfo { struct BWIGInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::BWIG"; } const char* DNATypeV() const override { return "FRME::BWIG"; }
FourCC fourcc() const { return FOURCC('BWIG'); } FourCC fourcc() const override { return FOURCC('BWIG'); }
}; };
struct HWIGInfo : IWidgetInfo { struct HWIGInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::HWIG"; } const char* DNATypeV() const override { return "FRME::HWIG"; }
FourCC fourcc() const { return FOURCC('HWIG'); } FourCC fourcc() const override { return FOURCC('HWIG'); }
}; };
struct CAMRInfo : IWidgetInfo { struct CAMRInfo : IWidgetInfo {
AT_DECL_EXPLICIT_DNA AT_DECL_EXPLICIT_DNA
const char* DNATypeV() const { return "FRME::CAMR"; } const char* DNATypeV() const override { return "FRME::CAMR"; }
enum class ProjectionType { Perspective, Orthographic }; enum class ProjectionType { Perspective, Orthographic };
Value<ProjectionType> projectionType; Value<ProjectionType> projectionType;
@ -91,24 +91,24 @@ struct FRME : BigDNA {
}; };
std::unique_ptr<IProjection> projection; std::unique_ptr<IProjection> projection;
FourCC fourcc() const { return FOURCC('CAMR'); } FourCC fourcc() const override { return FOURCC('CAMR'); }
}; };
struct MODLInfo : IWidgetInfo { struct MODLInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::MODL"; } const char* DNATypeV() const override { return "FRME::MODL"; }
UniqueID32 model; UniqueID32 model;
enum class BlendMode { Unknown0, Unknown1, Unknown2, Additive }; enum class BlendMode { Unknown0, Unknown1, Unknown2, Additive };
Value<atUint32> blendMode; Value<atUint32> blendMode;
Value<atUint32> lightMask; Value<atUint32> lightMask;
FourCC fourcc() const { return FOURCC('MODL'); } FourCC fourcc() const override { return FOURCC('MODL'); }
}; };
struct LITEInfo : IWidgetInfo { struct LITEInfo : IWidgetInfo {
AT_DECL_EXPLICIT_DNA AT_DECL_EXPLICIT_DNA
const char* DNATypeV() const { return "FRME::LITE"; } const char* DNATypeV() const override { return "FRME::LITE"; }
enum class ELightType : atUint32 { enum class ELightType : atUint32 {
Spot = 0, Spot = 0,
Point = 1, Point = 1,
@ -127,40 +127,40 @@ struct FRME : BigDNA {
Value<atUint32> loadedIdx; Value<atUint32> loadedIdx;
Value<float> cutoff; /* Spot only */ Value<float> cutoff; /* Spot only */
FourCC fourcc() const { return FOURCC('LITE'); } FourCC fourcc() const override { return FOURCC('LITE'); }
}; };
struct ENRGInfo : IWidgetInfo { struct ENRGInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::ENRG"; } const char* DNATypeV() const override { return "FRME::ENRG"; }
UniqueID32 texture; UniqueID32 texture;
FourCC fourcc() const { return FOURCC('ENRG'); } FourCC fourcc() const override { return FOURCC('ENRG'); }
}; };
struct METRInfo : IWidgetInfo { struct METRInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::METR"; } const char* DNATypeV() const override { return "FRME::METR"; }
Value<bool> unk1; Value<bool> unk1;
Value<bool> noRoundUp; Value<bool> noRoundUp;
Value<atUint32> maxCapacity; Value<atUint32> maxCapacity;
Value<atUint32> workerCount; Value<atUint32> workerCount;
FourCC fourcc() const { return FOURCC('METR'); } FourCC fourcc() const override { return FOURCC('METR'); }
}; };
struct GRUPInfo : IWidgetInfo { struct GRUPInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::GRUP"; } const char* DNATypeV() const override { return "FRME::GRUP"; }
Value<atInt16> defaultWorker; Value<atInt16> defaultWorker;
Value<bool> unk3; Value<bool> unk3;
FourCC fourcc() const { return FOURCC('GRUP'); } FourCC fourcc() const override { return FOURCC('GRUP'); }
}; };
struct TBGPInfo : IWidgetInfo { struct TBGPInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::TBGP"; } const char* DNATypeV() const override { return "FRME::TBGP"; }
Value<atUint16> elementCount; Value<atUint16> elementCount;
Value<atUint16> unk2; Value<atUint16> unk2;
Value<atUint32> unkEnum; Value<atUint32> unkEnum;
@ -177,32 +177,32 @@ struct FRME : BigDNA {
Value<atUint16> unk10; Value<atUint16> unk10;
Value<atUint16> unk11; Value<atUint16> unk11;
FourCC fourcc() const { return FOURCC('TBGP'); } FourCC fourcc() const override { return FOURCC('TBGP'); }
}; };
struct SLGPInfo : IWidgetInfo { struct SLGPInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::SLGP"; } const char* DNATypeV() const override { return "FRME::SLGP"; }
Value<float> min; Value<float> min;
Value<float> max; Value<float> max;
Value<float> cur; Value<float> cur;
Value<float> increment; Value<float> increment;
FourCC fourcc() const { return FOURCC('SLGP'); } FourCC fourcc() const override { return FOURCC('SLGP'); }
}; };
struct PANEInfo : IWidgetInfo { struct PANEInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::PANE"; } const char* DNATypeV() const override { return "FRME::PANE"; }
Value<float> xDim; Value<float> xDim;
Value<float> zDim; Value<float> zDim;
Value<atVec3f> scaleCenter; Value<atVec3f> scaleCenter;
FourCC fourcc() const { return FOURCC('PANE'); } FourCC fourcc() const override { return FOURCC('PANE'); }
}; };
struct TXPNInfo : IWidgetInfo { struct TXPNInfo : IWidgetInfo {
const char* DNATypeV() const { return "FRME::TXPN"; } const char* DNATypeV() const override { return "FRME::TXPN"; }
enum class Justification : atUint32 { enum class Justification : atUint32 {
Left = 0, Left = 0,
Center, Center,
@ -249,12 +249,12 @@ struct FRME : BigDNA {
UniqueID32 jpnFont; UniqueID32 jpnFont;
Value<atInt32> jpnPointScale[2] = {}; Value<atInt32> jpnPointScale[2] = {};
FourCC fourcc() const { return FOURCC('TXPN'); } FourCC fourcc() const override { return FOURCC('TXPN'); }
}; };
struct IMGPInfo : IWidgetInfo { struct IMGPInfo : IWidgetInfo {
AT_DECL_DNA AT_DECL_DNA
const char* DNATypeV() const { return "FRME::IMGP"; } const char* DNATypeV() const override { return "FRME::IMGP"; }
UniqueID32 texture; UniqueID32 texture;
Value<atUint32> unk1; Value<atUint32> unk1;
Value<atUint32> unk2; Value<atUint32> unk2;
@ -263,7 +263,7 @@ struct FRME : BigDNA {
Value<atUint32> uvCoordCount; Value<atUint32> uvCoordCount;
Vector<atVec2f, AT_DNA_COUNT(uvCoordCount)> uvCoords; Vector<atVec2f, AT_DNA_COUNT(uvCoordCount)> uvCoords;
FourCC fourcc() const { return FOURCC('IMGP'); } FourCC fourcc() const override { return FOURCC('IMGP'); }
}; };
}; };

View File

@ -14,9 +14,9 @@ struct STRG : ISTRG {
std::vector<std::pair<FourCC, std::vector<std::u16string>>> langs; std::vector<std::pair<FourCC, std::vector<std::u16string>>> langs;
std::unordered_map<FourCC, std::vector<std::u16string>*> langMap; std::unordered_map<FourCC, std::vector<std::u16string>*> langMap;
int32_t lookupIdx(std::string_view name) const { return -1; } int32_t lookupIdx(std::string_view name) const override { return -1; }
size_t count() const { size_t count() const override {
size_t retval = 0; size_t retval = 0;
for (const auto& item : langs) { for (const auto& item : langs) {
size_t sz = item.second.size(); size_t sz = item.second.size();
@ -25,19 +25,19 @@ struct STRG : ISTRG {
} }
return retval; return retval;
} }
std::string getUTF8(const FourCC& lang, size_t idx) const { std::string getUTF8(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
return hecl::Char16ToUTF8(search->second->at(idx)); return hecl::Char16ToUTF8(search->second->at(idx));
return std::string(); return std::string();
} }
std::u16string getUTF16(const FourCC& lang, size_t idx) const { std::u16string getUTF16(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
return search->second->at(idx); return search->second->at(idx);
return std::u16string(); return std::u16string();
} }
hecl::SystemString getSystemString(const FourCC& lang, size_t idx) const { hecl::SystemString getSystemString(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
#if HECL_UCS2 #if HECL_UCS2
@ -71,7 +71,7 @@ struct STRG : ISTRG {
return true; return true;
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut) const; void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut) const override;
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -32,11 +32,11 @@ struct Actor : IScriptObject {
Value<bool> scaleAdvancementDelta; Value<bool> scaleAdvancementDelta;
Value<bool> materialFlag54; Value<bool> materialFlag54;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (model.isValid()) { if (model.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
ent->name = name + "_model"; ent->name = name + "_model";
@ -45,14 +45,15 @@ struct Actor : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const; zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const override;
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -24,11 +24,11 @@ struct ActorContraption : IScriptObject {
DamageInfo damageInfo; DamageInfo damageInfo;
Value<bool> active; // needs verification Value<bool> active; // needs verification
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle.isValid()) { if (particle.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
ent->name = name + "_part"; ent->name = name + "_part";
@ -37,12 +37,13 @@ struct ActorContraption : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -25,20 +25,21 @@ struct AmbientAI : IScriptObject {
Value<atInt32> impactAnim; Value<atInt32> impactAnim;
Value<bool> active; Value<bool> active;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
animationParameters.nameANCS(pakRouter, name + "_animp"); animationParameters.nameANCS(pakRouter, name + "_animp");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -20,7 +20,8 @@ struct AreaAttributes : IScriptObject {
UniqueID32 skybox; UniqueID32 skybox;
Value<atUint32> phazonType; Value<atUint32> phazonType;
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(skybox, pathsOut); g_curSpec->flattenDependencies(skybox, pathsOut);
} }
}; };

View File

@ -23,11 +23,11 @@ struct AtomicAlpha : IScriptObject {
Value<bool> invisible; Value<bool> invisible;
Value<bool> applyBeamAttraction; Value<bool> applyBeamAttraction;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc.isValid()) { if (wpsc.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
ent->name = name + "_wpsc"; ent->name = name + "_wpsc";
@ -40,13 +40,14 @@ struct AtomicAlpha : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc, pathsOut); g_curSpec->flattenDependencies(wpsc, pathsOut);
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -30,11 +30,11 @@ struct AtomicBeta : IScriptObject {
Value<atUint32> unknown9; Value<atUint32> unknown9;
Value<float> unknown10; Value<float> unknown10;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (elsc.isValid()) { if (elsc.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
ent->name = name + "_elsc"; ent->name = name + "_elsc";
@ -51,7 +51,8 @@ struct AtomicBeta : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(elsc, pathsOut); g_curSpec->flattenDependencies(elsc, pathsOut);
g_curSpec->flattenDependencies(wpsc, pathsOut); g_curSpec->flattenDependencies(wpsc, pathsOut);
g_curSpec->flattenDependencies(part, pathsOut); g_curSpec->flattenDependencies(part, pathsOut);
@ -59,6 +60,6 @@ struct AtomicBeta : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -42,7 +42,7 @@ struct Babygoth : IScriptObject {
Value<atUint32> flamePlayerHitSfx; Value<atUint32> flamePlayerHitSfx;
UniqueID32 flamePlayerIceTxtr; UniqueID32 flamePlayerIceTxtr;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter); UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter);
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
@ -54,7 +54,7 @@ struct Babygoth : IScriptObject {
} }
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (fireballWeapon.isValid()) { if (fireballWeapon.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(fireballWeapon); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(fireballWeapon);
ent->name = name + "_wpsc1"; ent->name = name + "_wpsc1";
@ -103,7 +103,8 @@ struct Babygoth : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(fireballWeapon, pathsOut); g_curSpec->flattenDependencies(fireballWeapon, pathsOut);
g_curSpec->flattenDependencies(fireBreathWeapon, pathsOut); g_curSpec->flattenDependencies(fireBreathWeapon, pathsOut);
g_curSpec->flattenDependencies(fireBreathRes, pathsOut); g_curSpec->flattenDependencies(fireBreathRes, pathsOut);
@ -119,6 +120,6 @@ struct Babygoth : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -25,11 +25,11 @@ struct Beetle : IScriptObject {
Value<float> initialAttackDelay; Value<float> initialAttackDelay;
Value<float> retreatTime; Value<float> retreatTime;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (tailModel.isValid()) { if (tailModel.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(tailModel); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(tailModel);
ent->name = name + "_tailModel"; ent->name = name + "_tailModel";
@ -38,12 +38,13 @@ struct Beetle : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(tailModel, pathsOut); g_curSpec->flattenDependencies(tailModel, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -27,11 +27,11 @@ struct BloodFlower : IScriptObject {
UniqueID32 particle5; UniqueID32 particle5;
Value<atUint32> unknown2; Value<atUint32> unknown2;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc1.isValid()) { if (wpsc1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
ent->name = name + "_wpsc1"; ent->name = name + "_wpsc1";
@ -64,7 +64,8 @@ struct BloodFlower : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc1, pathsOut); g_curSpec->flattenDependencies(wpsc1, pathsOut);
g_curSpec->flattenDependencies(wpsc2, pathsOut); g_curSpec->flattenDependencies(wpsc2, pathsOut);
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
@ -76,6 +77,6 @@ struct BloodFlower : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -22,11 +22,11 @@ struct Burrower : IScriptObject {
Value<atUint32> unknown; // always FF Value<atUint32> unknown; // always FF
UniqueID32 particle4; UniqueID32 particle4;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc.isValid()) { if (wpsc.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
ent->name = name + "_wpsc"; ent->name = name + "_wpsc";
@ -51,7 +51,8 @@ struct Burrower : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc, pathsOut); g_curSpec->flattenDependencies(wpsc, pathsOut);
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
@ -61,6 +62,6 @@ struct Burrower : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -19,14 +19,15 @@ struct CameraFilterKeyframe : IScriptObject {
Value<float> timeOut; Value<float> timeOut;
UniqueID32 texture; UniqueID32 texture;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (texture.isValid()) { if (texture.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
ent->name = name + "_texture"; ent->name = name + "_texture";
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(texture, pathsOut); g_curSpec->flattenDependencies(texture, pathsOut);
} }
}; };

View File

@ -40,11 +40,11 @@ struct ChozoGhost : IScriptObject {
Value<atUint32> unknown12; Value<atUint32> unknown12;
Value<atUint32> unknown13; Value<atUint32> unknown13;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc1.isValid()) { if (wpsc1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
ent->name = name + "_wpsc1"; ent->name = name + "_wpsc1";
@ -61,7 +61,8 @@ struct ChozoGhost : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc1, pathsOut); g_curSpec->flattenDependencies(wpsc1, pathsOut);
g_curSpec->flattenDependencies(wpsc2, pathsOut); g_curSpec->flattenDependencies(wpsc2, pathsOut);
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
@ -69,6 +70,6 @@ struct ChozoGhost : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -21,7 +21,7 @@ struct DamageableTrigger : IScriptObject {
Value<bool> active; Value<bool> active;
VisorParameters visorParameters; VisorParameters visorParameters;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (patternTex1.isValid()) { if (patternTex1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternTex1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternTex1);
ent->name = name + "_patternTex1"; ent->name = name + "_patternTex1";
@ -36,13 +36,14 @@ struct DamageableTrigger : IScriptObject {
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(patternTex1, pathsOut); g_curSpec->flattenDependencies(patternTex1, pathsOut);
g_curSpec->flattenDependencies(patternTex2, pathsOut); g_curSpec->flattenDependencies(patternTex2, pathsOut);
g_curSpec->flattenDependencies(colorTex, pathsOut); g_curSpec->flattenDependencies(colorTex, pathsOut);
} }
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const { zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const override {
zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f; zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f;
zeus::CVector3f loc(location); zeus::CVector3f loc(location);
return zeus::CAABox(loc - halfExtent, loc + halfExtent); return zeus::CAABox(loc - halfExtent, loc + halfExtent);

View File

@ -27,7 +27,7 @@ struct Debris : IScriptObject {
Value<bool> b1; Value<bool> b1;
Value<bool> active; Value<bool> active;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (model.isValid()) { if (model.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
ent->name = name + "_model"; ent->name = name + "_model";
@ -39,12 +39,13 @@ struct Debris : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -48,7 +48,7 @@ struct DebrisExtended : IScriptObject {
Value<bool> noBounce; Value<bool> noBounce;
Value<bool> active; Value<bool> active;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (model.isValid()) { if (model.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
ent->name = name + "_model"; ent->name = name + "_model";
@ -68,7 +68,8 @@ struct DebrisExtended : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
@ -76,6 +77,6 @@ struct DebrisExtended : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -23,22 +23,23 @@ struct DoorArea : IScriptObject {
Value<float> animationLength; Value<float> animationLength;
Value<bool> isMorphballDoor; Value<bool> isMorphballDoor;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
animationParameters.nameANCS(pakRouter, name + "_animp"); animationParameters.nameANCS(pakRouter, name + "_animp");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const; zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const override;
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -54,11 +54,11 @@ struct Drone : IScriptObject {
Value<atUint32> sound; // verification needed Value<atUint32> sound; // verification needed
Value<bool> unknown30; Value<bool> unknown30;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (crsc.isValid()) { if (crsc.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(crsc); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(crsc);
ent->name = name + "_crsc"; ent->name = name + "_crsc";
@ -72,7 +72,8 @@ struct Drone : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(crsc, pathsOut); g_curSpec->flattenDependencies(crsc, pathsOut);
flareDefinition1.depIDs(pathsOut); flareDefinition1.depIDs(pathsOut);
flareDefinition2.depIDs(pathsOut); flareDefinition2.depIDs(pathsOut);
@ -83,6 +84,6 @@ struct Drone : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -33,7 +33,7 @@ struct Effect : IScriptObject {
Value<bool> dieWhenSystemsDone; Value<bool> dieWhenSystemsDone;
LightParameters lightParameters; LightParameters lightParameters;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (part.isValid()) { if (part.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part);
ent->name = name + "_part"; ent->name = name + "_part";
@ -44,7 +44,8 @@ struct Effect : IScriptObject {
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(part, pathsOut); g_curSpec->flattenDependencies(part, pathsOut);
g_curSpec->flattenDependencies(elsc, pathsOut); g_curSpec->flattenDependencies(elsc, pathsOut);
} }

View File

@ -21,14 +21,15 @@ struct ElectroMagneticPulse : IScriptObject {
Value<float> unknown8; Value<float> unknown8;
UniqueID32 particle; UniqueID32 particle;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle.isValid()) { if (particle.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
ent->name = name + "_part"; ent->name = name + "_part";
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
} }
}; };

View File

@ -51,12 +51,12 @@ struct ElitePirate : IScriptObject {
Value<bool> unknown17; Value<bool> unknown17;
Value<bool> unknown18; Value<bool> unknown18;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle1.isValid()) { if (particle1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
ent->name = name + "_part1"; ent->name = name + "_part1";
@ -99,7 +99,8 @@ struct ElitePirate : IScriptObject {
animationParameters.nameANCS(pakRouter, name + "_animp"); animationParameters.nameANCS(pakRouter, name + "_animp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
@ -115,7 +116,7 @@ struct ElitePirate : IScriptObject {
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { void gatherScans(std::vector<Scan>& scansOut) const override {
actorParameters1.scanIDs(scansOut); actorParameters1.scanIDs(scansOut);
actorParameters2.scanIDs(scansOut); actorParameters2.scanIDs(scansOut);
} }

View File

@ -29,11 +29,11 @@ struct EnergyBall : IScriptObject {
DamageInfo damageInfo2; DamageInfo damageInfo2;
Value<float> unknown6; Value<float> unknown6;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (texture.isValid()) { if (texture.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
ent->name = name + "_texture"; ent->name = name + "_texture";
@ -54,7 +54,8 @@ struct EnergyBall : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(texture, pathsOut); g_curSpec->flattenDependencies(texture, pathsOut);
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
@ -63,6 +64,6 @@ struct EnergyBall : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -30,11 +30,11 @@ struct Eyeball : IScriptObject {
Value<atUint32> beamSfx; Value<atUint32> beamSfx;
Value<bool> attackDisabled; Value<bool> attackDisabled;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc.isValid()) { if (wpsc.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
ent->name = name + "_wpsc"; ent->name = name + "_wpsc";
@ -59,7 +59,8 @@ struct Eyeball : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc, pathsOut); g_curSpec->flattenDependencies(wpsc, pathsOut);
g_curSpec->flattenDependencies(beamContactFxId, pathsOut); g_curSpec->flattenDependencies(beamContactFxId, pathsOut);
g_curSpec->flattenDependencies(beamPulseFxId, pathsOut); g_curSpec->flattenDependencies(beamPulseFxId, pathsOut);
@ -69,6 +70,6 @@ struct Eyeball : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -18,20 +18,21 @@ struct FireFlea : IScriptObject {
Value<bool> unknown2; Value<bool> unknown2;
Value<float> unknown3; Value<float> unknown3;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -45,7 +45,7 @@ struct FishCloud : IScriptObject {
Value<bool> repelFromThreats; Value<bool> repelFromThreats;
Value<bool> hotInThermal; Value<bool> hotInThermal;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (model.isValid()) { if (model.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
ent->name = name + "_model"; ent->name = name + "_model";
@ -69,7 +69,8 @@ struct FishCloud : IScriptObject {
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
g_curSpec->flattenDependencies(deathParticle1, pathsOut); g_curSpec->flattenDependencies(deathParticle1, pathsOut);

View File

@ -32,12 +32,12 @@ struct Flaahgra : IScriptObject {
AnimationParameters animationParameters; AnimationParameters animationParameters;
UniqueID32 dependencyGroup; UniqueID32 dependencyGroup;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc1.isValid()) { if (wpsc1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
ent->name = name + "_wpsc1"; ent->name = name + "_wpsc1";
@ -60,7 +60,8 @@ struct Flaahgra : IScriptObject {
animationParameters.nameANCS(pakRouter, name + "_animp"); animationParameters.nameANCS(pakRouter, name + "_animp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc1, pathsOut); g_curSpec->flattenDependencies(wpsc1, pathsOut);
g_curSpec->flattenDependencies(wpsc2, pathsOut); g_curSpec->flattenDependencies(wpsc2, pathsOut);
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
@ -71,7 +72,7 @@ struct Flaahgra : IScriptObject {
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { void gatherScans(std::vector<Scan>& scansOut) const override {
actorParameters1.scanIDs(scansOut); actorParameters1.scanIDs(scansOut);
actorParameters2.scanIDs(scansOut); actorParameters2.scanIDs(scansOut);
} }

View File

@ -15,20 +15,21 @@ struct FlaahgraTentacle : IScriptObject {
PatternedInfo patternedInfo; PatternedInfo patternedInfo;
ActorParameters actorParameters; ActorParameters actorParameters;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -19,20 +19,21 @@ struct FlickerBat : IScriptObject {
Value<bool> startsHidden; Value<bool> startsHidden;
Value<bool> enableLineOfSight; Value<bool> enableLineOfSight;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -45,11 +45,11 @@ struct FlyingPirate : IScriptObject {
Value<float> unknown19; Value<float> unknown19;
Value<float> unknown20; Value<float> unknown20;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc1.isValid()) { if (wpsc1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
ent->name = name + "_wpsc1"; ent->name = name + "_wpsc1";
@ -82,7 +82,8 @@ struct FlyingPirate : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc1, pathsOut); g_curSpec->flattenDependencies(wpsc1, pathsOut);
g_curSpec->flattenDependencies(wpsc2, pathsOut); g_curSpec->flattenDependencies(wpsc2, pathsOut);
g_curSpec->flattenDependencies(wpsc3, pathsOut); g_curSpec->flattenDependencies(wpsc3, pathsOut);
@ -94,6 +95,6 @@ struct FlyingPirate : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -25,20 +25,21 @@ struct Geemer : IScriptObject {
Value<atUint32> getUpSfx; Value<atUint32> getUpSfx;
Value<atUint32> crouchSfx; Value<atUint32> crouchSfx;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -57,11 +57,11 @@ struct GunTurret : IScriptObject {
Value<float> frenzyDuration; Value<float> frenzyDuration;
Value<bool> scriptedStartOnly; Value<bool> scriptedStartOnly;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (projectileRes.isValid()) { if (projectileRes.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(projectileRes); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(projectileRes);
ent->name = name + "_projectileRes"; ent->name = name + "_projectileRes";
@ -102,7 +102,8 @@ struct GunTurret : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(projectileRes, pathsOut); g_curSpec->flattenDependencies(projectileRes, pathsOut);
g_curSpec->flattenDependencies(idleLightRes, pathsOut); g_curSpec->flattenDependencies(idleLightRes, pathsOut);
g_curSpec->flattenDependencies(deactivateLightRes, pathsOut); g_curSpec->flattenDependencies(deactivateLightRes, pathsOut);
@ -116,6 +117,6 @@ struct GunTurret : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -15,14 +15,15 @@ struct HUDMemo : IScriptObject {
UniqueID32 message; UniqueID32 message;
Value<bool> active; Value<bool> active;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (message.isValid()) { if (message.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(message); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(message);
ent->name = name + "_message"; ent->name = name + "_message";
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(message, pathsOut); g_curSpec->flattenDependencies(message, pathsOut);
} }
}; };

View File

@ -34,7 +34,7 @@ struct IScriptObject : BigDNAVYaml {
Value<atUint32> connectionCount; Value<atUint32> connectionCount;
Vector<Connection, AT_DNA_COUNT(connectionCount)> connections; Vector<Connection, AT_DNA_COUNT(connectionCount)> connections;
Value<atUint32> propertyCount; Value<atUint32> propertyCount;
virtual ~IScriptObject() = default; ~IScriptObject() override = default;
virtual void addCMDLRigPairs(PAKRouter<PAKBridge>&, CharacterAssociations<UniqueID32>& charAssoc) const {} virtual void addCMDLRigPairs(PAKRouter<PAKBridge>&, CharacterAssociations<UniqueID32>& charAssoc) const {}
virtual void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {} virtual void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {}

View File

@ -46,11 +46,11 @@ struct IceSheegoth : IScriptObject {
Value<bool> unknown12; Value<bool> unknown12;
Value<bool> unknown13; Value<bool> unknown13;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc1.isValid()) { if (wpsc1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
ent->name = name + "_wpsc1"; ent->name = name + "_wpsc1";
@ -95,7 +95,8 @@ struct IceSheegoth : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc1, pathsOut); g_curSpec->flattenDependencies(wpsc1, pathsOut);
g_curSpec->flattenDependencies(wpsc2, pathsOut); g_curSpec->flattenDependencies(wpsc2, pathsOut);
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
@ -110,6 +111,6 @@ struct IceSheegoth : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -25,22 +25,23 @@ struct IceZoomer : IScriptObject {
DamageVulnerability damageVulnerabilty; DamageVulnerability damageVulnerabilty;
Value<float> unknown9; Value<float> unknown9;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
g_curSpec->flattenDependencies(modelRes, pathsOut); g_curSpec->flattenDependencies(modelRes, pathsOut);
g_curSpec->flattenDependencies(skinRes, pathsOut); g_curSpec->flattenDependencies(skinRes, pathsOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -29,20 +29,21 @@ struct JellyZap : IScriptObject {
Value<float> unknown12; Value<float> unknown12;
Value<bool> unknown13; Value<bool> unknown13;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -40,7 +40,7 @@ struct Magdolite : IScriptObject {
Value<float> unknown8; Value<float> unknown8;
Value<float> unknown9; Value<float> unknown9;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter); UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter);
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
@ -52,7 +52,7 @@ struct Magdolite : IScriptObject {
} }
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (cmdlHeadless.isValid()) { if (cmdlHeadless.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlHeadless); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlHeadless);
ent->name = name + "_emodel"; ent->name = name + "_emodel";
@ -69,7 +69,8 @@ struct Magdolite : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(cmdlHeadless, pathsOut); g_curSpec->flattenDependencies(cmdlHeadless, pathsOut);
g_curSpec->flattenDependencies(cskrHeadless, pathsOut); g_curSpec->flattenDependencies(cskrHeadless, pathsOut);
g_curSpec->flattenDependencies(magdoliteParameters.particle, pathsOut); g_curSpec->flattenDependencies(magdoliteParameters.particle, pathsOut);
@ -77,6 +78,6 @@ struct Magdolite : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -21,20 +21,21 @@ struct MetareeAlpha : IScriptObject {
Value<float> delay; Value<float> delay;
Value<float> unknown5; // Appears to be unused Value<float> unknown5; // Appears to be unused
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -29,11 +29,11 @@ struct MetroidAlpha : IScriptObject {
AnimationParameters animationParameters4; AnimationParameters animationParameters4;
Value<bool> unknown8; Value<bool> unknown8;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
animationParameters1.nameANCS(pakRouter, name + "_animp1"); animationParameters1.nameANCS(pakRouter, name + "_animp1");
@ -42,7 +42,8 @@ struct MetroidAlpha : IScriptObject {
animationParameters4.nameANCS(pakRouter, name + "_animp4"); animationParameters4.nameANCS(pakRouter, name + "_animp4");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
animationParameters1.depANCS(pathsOut); animationParameters1.depANCS(pathsOut);
@ -51,6 +52,6 @@ struct MetroidAlpha : IScriptObject {
animationParameters4.depANCS(pathsOut); animationParameters4.depANCS(pathsOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -32,11 +32,11 @@ struct MetroidBeta : IScriptObject {
UniqueID32 particle4; UniqueID32 particle4;
Value<bool> unknown10; Value<bool> unknown10;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle1.isValid()) { if (particle1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
ent->name = name + "_part1"; ent->name = name + "_part1";
@ -61,7 +61,8 @@ struct MetroidBeta : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
g_curSpec->flattenDependencies(particle3, pathsOut); g_curSpec->flattenDependencies(particle3, pathsOut);
@ -71,6 +72,6 @@ struct MetroidBeta : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -285,19 +285,20 @@ struct MetroidPrimeStage1 : IScriptObject {
void scanIDs(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void scanIDs(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
} massivePrimeStruct; } massivePrimeStruct;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
massivePrimeStruct.actorParameters.addCMDLRigPairs(pakRouter, charAssoc, massivePrimeStruct.actorParameters.addCMDLRigPairs(pakRouter, charAssoc,
massivePrimeStruct.patternedInfo.animationParameters); massivePrimeStruct.patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
massivePrimeStruct.nameIDs(pakRouter, name + "_massiveStruct"); massivePrimeStruct.nameIDs(pakRouter, name + "_massiveStruct");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
massivePrimeStruct.depIDs(pathsOut, lazyOut); massivePrimeStruct.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { massivePrimeStruct.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { massivePrimeStruct.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -20,11 +20,11 @@ struct MetroidPrimeStage2 : IScriptObject {
Value<atUint32> unknown; Value<atUint32> unknown;
UniqueID32 particle2; UniqueID32 particle2;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle1.isValid()) { if (particle1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
ent->name = name + "_part1"; ent->name = name + "_part1";
@ -41,7 +41,8 @@ struct MetroidPrimeStage2 : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
g_curSpec->flattenDependencies(elsc, pathsOut); g_curSpec->flattenDependencies(elsc, pathsOut);
@ -49,6 +50,6 @@ struct MetroidPrimeStage2 : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -15,14 +15,15 @@ struct Midi : IScriptObject {
Value<float> fadeOutTime; Value<float> fadeOutTime;
Value<atUint32> volume; Value<atUint32> volume;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (song.isValid()) { if (song.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(song); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(song);
ent->name = name + "_song"; ent->name = name + "_song";
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
// Dedicated PAK for this // Dedicated PAK for this
// g_curSpec->flattenDependencies(song, pathsOut); // g_curSpec->flattenDependencies(song, pathsOut);
} }

View File

@ -22,11 +22,11 @@ struct NewIntroBoss : IScriptObject {
UniqueID32 beamTextureId; UniqueID32 beamTextureId;
UniqueID32 beamGlowTextureId; UniqueID32 beamGlowTextureId;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (beamContactFxId.isValid()) { if (beamContactFxId.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(beamContactFxId); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(beamContactFxId);
ent->name = name + "_beamContactFxId"; ent->name = name + "_beamContactFxId";
@ -47,7 +47,8 @@ struct NewIntroBoss : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(weaponDesc, pathsOut); g_curSpec->flattenDependencies(weaponDesc, pathsOut);
g_curSpec->flattenDependencies(beamContactFxId, pathsOut); g_curSpec->flattenDependencies(beamContactFxId, pathsOut);
g_curSpec->flattenDependencies(beamPulseFxId, pathsOut); g_curSpec->flattenDependencies(beamPulseFxId, pathsOut);
@ -57,6 +58,6 @@ struct NewIntroBoss : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -27,21 +27,22 @@ struct Oculus : IScriptObject {
/* Trilogy addition */ /* Trilogy addition */
Value<float> unknown8; Value<float> unknown8;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -54,7 +54,7 @@ struct OmegaPirate : IScriptObject {
UniqueID32 cskrPhazonVeins; UniqueID32 cskrPhazonVeins;
UniqueID32 cinfPhazonVeins; UniqueID32 cinfPhazonVeins;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
if (cmdlPhazonVeins.isValid() && cskrPhazonVeins.isValid() && cinfPhazonVeins.isValid()) { if (cmdlPhazonVeins.isValid() && cskrPhazonVeins.isValid() && cinfPhazonVeins.isValid()) {
@ -69,7 +69,7 @@ struct OmegaPirate : IScriptObject {
} }
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle1.isValid()) { if (particle1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
ent->name = name + "_part1"; ent->name = name + "_part1";
@ -124,7 +124,8 @@ struct OmegaPirate : IScriptObject {
animationParameters.nameANCS(pakRouter, name + "_animp"); animationParameters.nameANCS(pakRouter, name + "_animp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
g_curSpec->flattenDependencies(particle3, pathsOut); g_curSpec->flattenDependencies(particle3, pathsOut);
@ -143,7 +144,7 @@ struct OmegaPirate : IScriptObject {
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { void gatherScans(std::vector<Scan>& scansOut) const override {
actorParameters1.scanIDs(scansOut); actorParameters1.scanIDs(scansOut);
actorParameters2.scanIDs(scansOut); actorParameters2.scanIDs(scansOut);
} }

View File

@ -34,20 +34,21 @@ struct Parasite : IScriptObject {
Value<float> playerObstructionMinDist; Value<float> playerObstructionMinDist;
Value<bool> disableMove; Value<bool> disableMove;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -18,11 +18,11 @@ struct PhazonHealingNodule : IScriptObject {
UniqueID32 elsc; UniqueID32 elsc;
String<-1> unknown2; String<-1> unknown2;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (elsc.isValid()) { if (elsc.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
ent->name = name + "_elsc"; ent->name = name + "_elsc";
@ -31,12 +31,13 @@ struct PhazonHealingNodule : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(elsc, pathsOut); g_curSpec->flattenDependencies(elsc, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -27,7 +27,7 @@ struct PhazonPool : IScriptObject {
Value<bool> unknown8; Value<bool> unknown8;
Value<float> unknown9; Value<float> unknown9;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle1.isValid()) { if (particle1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
ent->name = name + "_part1"; ent->name = name + "_part1";
@ -46,7 +46,8 @@ struct PhazonPool : IScriptObject {
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle1, pathsOut); g_curSpec->flattenDependencies(particle1, pathsOut);
g_curSpec->flattenDependencies(particle2, pathsOut); g_curSpec->flattenDependencies(particle2, pathsOut);
g_curSpec->flattenDependencies(model1, pathsOut); g_curSpec->flattenDependencies(model1, pathsOut);

View File

@ -28,11 +28,11 @@ struct Pickup : IScriptObject {
Value<float> startDelay; Value<float> startDelay;
UniqueID32 pickupParticle; UniqueID32 pickupParticle;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (pickupParticle.isValid()) { if (pickupParticle.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(pickupParticle); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(pickupParticle);
ent->name = name + "_part"; ent->name = name + "_part";
@ -45,14 +45,15 @@ struct Pickup : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(pickupParticle, pathsOut); g_curSpec->flattenDependencies(pickupParticle, pathsOut);
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -28,11 +28,11 @@ struct Platform : IScriptObject {
Value<atUint32> maxRainSplashes; Value<atUint32> maxRainSplashes;
Value<atUint32> rainGenRate; Value<atUint32> rainGenRate;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (dcln.isValid()) { if (dcln.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln);
ent->name = name + "_dcln"; ent->name = name + "_dcln";
@ -45,15 +45,16 @@ struct Platform : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(dcln, pathsOut); g_curSpec->flattenDependencies(dcln, pathsOut);
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const; zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const override;
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -28,11 +28,11 @@ struct PlayerActor : IScriptObject {
PropertyFlags playerParameters; PropertyFlags playerParameters;
Value<atUint32> beamId; Value<atUint32> beamId;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (model.isValid()) { if (model.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
ent->name = name + "_model"; ent->name = name + "_model";
@ -41,13 +41,14 @@ struct PlayerActor : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
animationParameters.depANCSAll(lazyOut); animationParameters.depANCSAll(lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -15,12 +15,15 @@ struct PointOfInterest : IScriptObject {
ScannableParameters scannableParameters; ScannableParameters scannableParameters;
Value<float> pointSize; Value<float> pointSize;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { scannableParameters.nameIDs(pakRouter, name + "_scanp"); } void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
scannableParameters.nameIDs(pakRouter, name + "_scanp");
}
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
scannableParameters.depIDs(lazyOut); scannableParameters.depIDs(lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { scannableParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { scannableParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -25,11 +25,11 @@ struct PuddleSpore : IScriptObject {
UniqueID32 wpsc; UniqueID32 wpsc;
DamageInfo damageInfo; DamageInfo damageInfo;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle.isValid()) { if (particle.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
ent->name = name + "_part"; ent->name = name + "_part";
@ -42,13 +42,14 @@ struct PuddleSpore : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
g_curSpec->flattenDependencies(wpsc, pathsOut); g_curSpec->flattenDependencies(wpsc, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -26,11 +26,11 @@ struct PuddleToadGamma : IScriptObject {
DamageInfo damageInfo2; DamageInfo damageInfo2;
UniqueID32 dcln; UniqueID32 dcln;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (dcln.isValid()) { if (dcln.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln);
ent->name = name + "_dcln"; ent->name = name + "_dcln";
@ -39,12 +39,13 @@ struct PuddleToadGamma : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(dcln, pathsOut); g_curSpec->flattenDependencies(dcln, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -25,11 +25,11 @@ struct Puffer : IScriptObject {
DamageInfo damageInfo2; DamageInfo damageInfo2;
Value<atUint32> unknown6; Value<atUint32> unknown6;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle.isValid()) { if (particle.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
ent->name = name + "_part"; ent->name = name + "_part";
@ -42,13 +42,14 @@ struct Puffer : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
g_curSpec->flattenDependencies(texture, pathsOut); g_curSpec->flattenDependencies(texture, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -120,11 +120,11 @@ struct Ridley : IScriptObject {
/* Trilogy addition */ /* Trilogy addition */
DamageInfo damageInfo9; DamageInfo damageInfo9;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle.isValid()) { if (particle.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
ent->name = name + "_part"; ent->name = name + "_part";
@ -202,7 +202,8 @@ struct Ridley : IScriptObject {
ridleyStruct1.nameIDs(pakRouter, name + "_ridley1"); ridleyStruct1.nameIDs(pakRouter, name + "_ridley1");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
g_curSpec->flattenDependencies(model1, pathsOut); g_curSpec->flattenDependencies(model1, pathsOut);
g_curSpec->flattenDependencies(model2, pathsOut); g_curSpec->flattenDependencies(model2, pathsOut);
@ -226,6 +227,6 @@ struct Ridley : IScriptObject {
ridleyStruct1.depIDs(pathsOut); ridleyStruct1.depIDs(pathsOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -17,20 +17,21 @@ struct Ripper : IScriptObject {
ActorParameters actorParameters; ActorParameters actorParameters;
GrappleParameters grappleParameters; GrappleParameters grappleParameters;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -16,7 +16,7 @@ struct ScriptBeam : IScriptObject {
BeamInfo beamInfo; BeamInfo beamInfo;
DamageInfo damageInfo; DamageInfo damageInfo;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (wpsc.isValid()) { if (wpsc.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
ent->name = name + "_wpsc"; ent->name = name + "_wpsc";
@ -24,7 +24,8 @@ struct ScriptBeam : IScriptObject {
beamInfo.nameIDs(pakRouter, name + "_beamInfo"); beamInfo.nameIDs(pakRouter, name + "_beamInfo");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(wpsc, pathsOut); g_curSpec->flattenDependencies(wpsc, pathsOut);
beamInfo.depIDs(pathsOut); beamInfo.depIDs(pathsOut);
} }

View File

@ -23,11 +23,11 @@ struct Seedling : IScriptObject {
Value<float> unknown5; Value<float> unknown5;
Value<float> unknown6; Value<float> unknown6;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (unknown1.isValid()) { if (unknown1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown1);
ent->name = name + "_unk1"; ent->name = name + "_unk1";
@ -40,13 +40,14 @@ struct Seedling : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(unknown1, pathsOut); g_curSpec->flattenDependencies(unknown1, pathsOut);
g_curSpec->flattenDependencies(unknown2, pathsOut); g_curSpec->flattenDependencies(unknown2, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -34,20 +34,21 @@ struct SnakeWeedSwarm : IScriptObject {
Value<atUint32> unknown18; Value<atUint32> unknown18;
Value<atUint32> unknown19; Value<atUint32> unknown19;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
animationParameters.nameANCS(pakRouter, name + "_animp"); animationParameters.nameANCS(pakRouter, name + "_animp");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
animationParameters.depANCS(pathsOut); animationParameters.depANCS(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -64,11 +64,11 @@ struct SpacePirate : IScriptObject {
Value<float> unknown19; Value<float> unknown19;
Value<float> AvoidDistance; Value<float> AvoidDistance;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (Projectile.isValid()) { if (Projectile.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(Projectile); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(Projectile);
ent->name = name + "_Projectile"; ent->name = name + "_Projectile";
@ -81,13 +81,14 @@ struct SpacePirate : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(Projectile, pathsOut); g_curSpec->flattenDependencies(Projectile, pathsOut);
g_curSpec->flattenDependencies(KneelAttackShot, pathsOut); g_curSpec->flattenDependencies(KneelAttackShot, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -20,20 +20,21 @@ struct SpankWeed : IScriptObject {
Value<float> maxSightRange; Value<float> maxSightRange;
Value<float> hideTime; Value<float> hideTime;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -22,14 +22,15 @@ struct Steam : IScriptObject {
Value<float> unknown7; Value<float> unknown7;
Value<bool> unknown8; Value<bool> unknown8;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (texture.isValid()) { if (texture.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
ent->name = name + "_texture"; ent->name = name + "_texture";
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(texture, lazyOut); g_curSpec->flattenDependencies(texture, lazyOut);
} }
}; };

View File

@ -33,11 +33,11 @@ struct Thardus : IScriptObject {
Value<atUint32> unknown11; Value<atUint32> unknown11;
Value<atUint32> unknown12; Value<atUint32> unknown12;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (models[0].isValid()) { if (models[0].isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(models[0]); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(models[0]);
ent->name = name + "_model1"; ent->name = name + "_model1";
@ -146,7 +146,8 @@ struct Thardus : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
for (int i = 0; i < 14; ++i) for (int i = 0; i < 14; ++i)
g_curSpec->flattenDependencies(models[i], pathsOut); g_curSpec->flattenDependencies(models[i], pathsOut);
for (int i = 0; i < 3; ++i) for (int i = 0; i < 3; ++i)
@ -160,6 +161,6 @@ struct Thardus : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -20,11 +20,11 @@ struct ThardusRockProjectile : IScriptObject {
UniqueID32 model; UniqueID32 model;
UniqueID32 stateMachine; UniqueID32 stateMachine;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (model.isValid()) { if (model.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
ent->name = name + "_model"; ent->name = name + "_model";
@ -37,13 +37,14 @@ struct ThardusRockProjectile : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(model, pathsOut); g_curSpec->flattenDependencies(model, pathsOut);
g_curSpec->flattenDependencies(stateMachine, pathsOut); g_curSpec->flattenDependencies(stateMachine, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -18,7 +18,7 @@ struct Trigger : IScriptObject {
Value<bool> deactivateOnEntered; Value<bool> deactivateOnEntered;
Value<bool> deactivateOnExited; Value<bool> deactivateOnExited;
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const { zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const override {
zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f; zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f;
zeus::CVector3f loc(location); zeus::CVector3f loc(location);
return zeus::CAABox(loc - halfExtent, loc + halfExtent); return zeus::CAABox(loc - halfExtent, loc + halfExtent);

View File

@ -19,20 +19,21 @@ struct Tryclops : IScriptObject {
Value<float> unknown3; Value<float> unknown3;
Value<float> unknown4; Value<float> unknown4;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
patternedInfo.nameIDs(pakRouter, name + "_patterned"); patternedInfo.nameIDs(pakRouter, name + "_patterned");
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -19,7 +19,7 @@ struct VisorFlare : IScriptObject {
Value<atUint32> unknown7; Value<atUint32> unknown7;
FlareDefinition flareDefinitions[5]; FlareDefinition flareDefinitions[5];
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
flareDefinitions[0].nameIDs(pakRouter, name + "_flare1"); flareDefinitions[0].nameIDs(pakRouter, name + "_flare1");
flareDefinitions[1].nameIDs(pakRouter, name + "_flare2"); flareDefinitions[1].nameIDs(pakRouter, name + "_flare2");
flareDefinitions[2].nameIDs(pakRouter, name + "_flare3"); flareDefinitions[2].nameIDs(pakRouter, name + "_flare3");
@ -27,7 +27,8 @@ struct VisorFlare : IScriptObject {
flareDefinitions[4].nameIDs(pakRouter, name + "_flare5"); flareDefinitions[4].nameIDs(pakRouter, name + "_flare5");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
for (int i = 0; i < 5; ++i) for (int i = 0; i < 5; ++i)
flareDefinitions[i].depIDs(pathsOut); flareDefinitions[i].depIDs(pathsOut);
} }

View File

@ -20,7 +20,7 @@ struct VisorGoo : IScriptObject {
Value<atUint32> sfx; Value<atUint32> sfx;
Value<bool> skipAngleTest; Value<bool> skipAngleTest;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (particle.isValid()) { if (particle.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
ent->name = name + "_part"; ent->name = name + "_part";
@ -31,7 +31,8 @@ struct VisorGoo : IScriptObject {
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(particle, pathsOut);
g_curSpec->flattenDependencies(electric, pathsOut); g_curSpec->flattenDependencies(electric, pathsOut);
} }

View File

@ -48,11 +48,11 @@ struct WallCrawlerSwarm : IScriptObject {
Value<atUint32> launchSfx; Value<atUint32> launchSfx;
Value<atUint32> scatterSfx; Value<atUint32> scatterSfx;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (part1.isValid()) { if (part1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part1);
ent->name = name + "_part1"; ent->name = name + "_part1";
@ -73,7 +73,8 @@ struct WallCrawlerSwarm : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(part1, pathsOut); g_curSpec->flattenDependencies(part1, pathsOut);
g_curSpec->flattenDependencies(part2, pathsOut); g_curSpec->flattenDependencies(part2, pathsOut);
g_curSpec->flattenDependencies(part3, pathsOut); g_curSpec->flattenDependencies(part3, pathsOut);
@ -82,6 +83,6 @@ struct WallCrawlerSwarm : IScriptObject {
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -22,11 +22,11 @@ struct Warwasp : IScriptObject {
UniqueID32 projectileVisorParticle; UniqueID32 projectileVisorParticle;
Value<atUint32> projectileVisorSfx; Value<atUint32> projectileVisorSfx;
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const { void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const override {
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters); actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
} }
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (projectileWeapon.isValid()) { if (projectileWeapon.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(projectileWeapon); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(projectileWeapon);
ent->name = name + "_wpsc"; ent->name = name + "_wpsc";
@ -39,13 +39,14 @@ struct Warwasp : IScriptObject {
actorParameters.nameIDs(pakRouter, name + "_actp"); actorParameters.nameIDs(pakRouter, name + "_actp");
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(projectileWeapon, pathsOut); g_curSpec->flattenDependencies(projectileWeapon, pathsOut);
g_curSpec->flattenDependencies(projectileVisorParticle, pathsOut); g_curSpec->flattenDependencies(projectileVisorParticle, pathsOut);
patternedInfo.depIDs(pathsOut); patternedInfo.depIDs(pathsOut);
actorParameters.depIDs(pathsOut, lazyOut); actorParameters.depIDs(pathsOut, lazyOut);
} }
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); } void gatherScans(std::vector<Scan>& scansOut) const override { actorParameters.scanIDs(scansOut); }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -88,7 +88,7 @@ struct Water : IScriptObject {
struct UnusedBitset : BigDNA{AT_DECL_EXPLICIT_DNA} unusedBitset; struct UnusedBitset : BigDNA{AT_DECL_EXPLICIT_DNA} unusedBitset;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (patternMap1.isValid()) { if (patternMap1.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternMap1); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternMap1);
ent->name = name + "_patternMap1"; ent->name = name + "_patternMap1";
@ -139,7 +139,8 @@ struct Water : IScriptObject {
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(patternMap1, pathsOut); g_curSpec->flattenDependencies(patternMap1, pathsOut);
g_curSpec->flattenDependencies(patternMap2, pathsOut); g_curSpec->flattenDependencies(patternMap2, pathsOut);
g_curSpec->flattenDependencies(colorMap, pathsOut); g_curSpec->flattenDependencies(colorMap, pathsOut);
@ -154,7 +155,7 @@ struct Water : IScriptObject {
g_curSpec->flattenDependencies(unmorphVisorRunoffParticle, pathsOut); g_curSpec->flattenDependencies(unmorphVisorRunoffParticle, pathsOut);
} }
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const { zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const override {
zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f; zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f;
zeus::CVector3f loc(location); zeus::CVector3f loc(location);
return zeus::CAABox(loc - halfExtent, loc + halfExtent); return zeus::CAABox(loc - halfExtent, loc + halfExtent);

View File

@ -38,7 +38,7 @@ struct WorldTeleporter : IScriptObject {
Value<float> unknown15; Value<float> unknown15;
Value<float> unknown16; Value<float> unknown16;
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { void nameIDs(PAKRouter<PAKBridge>& pakRouter) const override {
if (platformModel.isValid()) { if (platformModel.isValid()) {
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(platformModel); PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(platformModel);
ent->name = name + "_model1"; ent->name = name + "_model1";
@ -53,7 +53,8 @@ struct WorldTeleporter : IScriptObject {
} }
} }
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const { void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
std::vector<hecl::ProjectPath>& lazyOut) const override {
g_curSpec->flattenDependencies(platformModel, pathsOut); g_curSpec->flattenDependencies(platformModel, pathsOut);
g_curSpec->flattenDependencies(backgroundModel, pathsOut); g_curSpec->flattenDependencies(backgroundModel, pathsOut);
g_curSpec->flattenDependencies(strg, pathsOut); g_curSpec->flattenDependencies(strg, pathsOut);

View File

@ -77,60 +77,60 @@ struct CTweakAutoMapper final : public ITweakAutoMapper {
CTweakAutoMapper() = default; CTweakAutoMapper() = default;
CTweakAutoMapper(athena::io::IStreamReader& r) { this->read(r); } CTweakAutoMapper(athena::io::IStreamReader& r) { this->read(r); }
bool GetShowOneMiniMapArea() const { return x4_24_showOneMiniMapArea; } bool GetShowOneMiniMapArea() const override { return x4_24_showOneMiniMapArea; }
bool GetScaleMoveSpeedWithCamDist() const { return x4_26_scaleMoveSpeedWithCamDist; } bool GetScaleMoveSpeedWithCamDist() const override { return x4_26_scaleMoveSpeedWithCamDist; }
float GetCamDist() const { return x8_camDist; } float GetCamDist() const override { return x8_camDist; }
float GetMinCamDist() const { return xc_minCamDist; } float GetMinCamDist() const override { return xc_minCamDist; }
float GetMaxCamDist() const { return x10_maxCamDist; } float GetMaxCamDist() const override { return x10_maxCamDist; }
float GetMinCamRotateX() const { return x14_minCamRotateX; } float GetMinCamRotateX() const override { return x14_minCamRotateX; }
float GetMaxCamRotateX() const { return x18_maxCamRotateX; } float GetMaxCamRotateX() const override { return x18_maxCamRotateX; }
float GetCamAngle() const { return x1c_camAngle; } float GetCamAngle() const override { return x1c_camAngle; }
const zeus::CColor& GetAutomapperWidgetColor() const { return x24_automapperWidgetColor; } const zeus::CColor& GetAutomapperWidgetColor() const override { return x24_automapperWidgetColor; }
float GetMiniCamDist() const { return x28_miniCamDist; } float GetMiniCamDist() const override { return x28_miniCamDist; }
float GetMiniCamXAngle() const { return x2c_miniCamXAngle; } float GetMiniCamXAngle() const override { return x2c_miniCamXAngle; }
float GetMiniCamAngle() const { return x30_miniCamAngle; } float GetMiniCamAngle() const override { return x30_miniCamAngle; }
const zeus::CColor& GetAutomapperWidgetMiniColor() const { return x38_automapperWidgetMiniColor; } const zeus::CColor& GetAutomapperWidgetMiniColor() const override { return x38_automapperWidgetMiniColor; }
const zeus::CColor& GetSurfaceVisitedColor() const { return x3c_surfColorVisited; } const zeus::CColor& GetSurfaceVisitedColor() const override { return x3c_surfColorVisited; }
const zeus::CColor& GetOutlineVisitedColor() const { return x40_outlineColorVisited; } const zeus::CColor& GetOutlineVisitedColor() const override { return x40_outlineColorVisited; }
const zeus::CColor& GetSurfaceUnvisitedColor() const { return x44_surfColorUnvisited; } const zeus::CColor& GetSurfaceUnvisitedColor() const override { return x44_surfColorUnvisited; }
const zeus::CColor& GetOutlineUnvisitedColor() const { return x48_outlineColorUnvisited; } const zeus::CColor& GetOutlineUnvisitedColor() const override { return x48_outlineColorUnvisited; }
const zeus::CColor& GetSurfaceSelectVisitedColor() const { return x4c_surfaceSelectColorVisited; } const zeus::CColor& GetSurfaceSelectVisitedColor() const override { return x4c_surfaceSelectColorVisited; }
const zeus::CColor& GetOutlineSelectVisitedColor() const { return x50_outlineSelectColorVisited; } const zeus::CColor& GetOutlineSelectVisitedColor() const override { return x50_outlineSelectColorVisited; }
float GetMapSurfaceNormColorLinear() const { return x54_mapSurfaceNormColorLinear; } float GetMapSurfaceNormColorLinear() const override { return x54_mapSurfaceNormColorLinear; }
float GetMapSurfaceNormColorConstant() const { return x58_mapSurfaceNormColorConstant; } float GetMapSurfaceNormColorConstant() const override { return x58_mapSurfaceNormColorConstant; }
float GetOpenMapScreenTime() const { return x64_openMapScreenTime; } float GetOpenMapScreenTime() const override { return x64_openMapScreenTime; }
float GetCloseMapScreenTime() const { return x68_closeMapScreenTime; } float GetCloseMapScreenTime() const override { return x68_closeMapScreenTime; }
float GetHintPanTime() const { return x6c_hintPanTime; } float GetHintPanTime() const override { return x6c_hintPanTime; }
float GetCamZoomUnitsPerFrame() const { return x70_zoomUnitsPerFrame; } float GetCamZoomUnitsPerFrame() const override { return x70_zoomUnitsPerFrame; }
float GetCamRotateDegreesPerFrame() const { return x74_rotateDegPerFrame; } float GetCamRotateDegreesPerFrame() const override { return x74_rotateDegPerFrame; }
float GetBaseMapScreenCameraMoveSpeed() const { return x78_baseMapScreenCameraMoveSpeed; } float GetBaseMapScreenCameraMoveSpeed() const override { return x78_baseMapScreenCameraMoveSpeed; }
const zeus::CColor& GetSurfaceSelectUnvisitedColor() const { return x7c_surfaceSelectColorUnvisited; } const zeus::CColor& GetSurfaceSelectUnvisitedColor() const override { return x7c_surfaceSelectColorUnvisited; }
const zeus::CColor& GetOutlineSelectUnvisitedColor() const { return x80_outlineSelectColorUnvisited; } const zeus::CColor& GetOutlineSelectUnvisitedColor() const override { return x80_outlineSelectColorUnvisited; }
float GetMiniAlphaSurfaceVisited() const { return x84_miniAlphaSurfaceVisited; } float GetMiniAlphaSurfaceVisited() const override { return x84_miniAlphaSurfaceVisited; }
float GetAlphaSurfaceVisited() const { return x88_alphaSurfaceVisited; } float GetAlphaSurfaceVisited() const override { return x88_alphaSurfaceVisited; }
float GetMiniAlphaOutlineVisited() const { return x8c_miniAlphaOutlineVisited; } float GetMiniAlphaOutlineVisited() const override { return x8c_miniAlphaOutlineVisited; }
float GetAlphaOutlineVisited() const { return x90_alphaOutlineVisited; } float GetAlphaOutlineVisited() const override { return x90_alphaOutlineVisited; }
float GetMiniAlphaSurfaceUnvisited() const { return x94_miniAlphaSurfaceUnvisited; } float GetMiniAlphaSurfaceUnvisited() const override { return x94_miniAlphaSurfaceUnvisited; }
float GetAlphaSurfaceUnvisited() const { return x98_alphaSurfaceUnvisited; } float GetAlphaSurfaceUnvisited() const override { return x98_alphaSurfaceUnvisited; }
float GetMiniAlphaOutlineUnvisited() const { return x9c_miniAlphaOutlineUnvisited; } float GetMiniAlphaOutlineUnvisited() const override { return x9c_miniAlphaOutlineUnvisited; }
float GetAlphaOutlineUnvisited() const { return xa0_alphaOutlineUnvisited; } float GetAlphaOutlineUnvisited() const override { return xa0_alphaOutlineUnvisited; }
const zeus::CVector3f& GetDoorCenter() const { return xa4_doorCenter; } const zeus::CVector3f& GetDoorCenter() const override { return xa4_doorCenter; }
float GetMiniMapViewportWidth() const { return xb8_miniMapViewportWidth; } float GetMiniMapViewportWidth() const override { return xb8_miniMapViewportWidth; }
float GetMiniMapViewportHeight() const { return xbc_miniMapViewportHeight; } float GetMiniMapViewportHeight() const override { return xbc_miniMapViewportHeight; }
float GetMiniMapCamDistScale() const { return xc0_miniMapCamDistScale; } float GetMiniMapCamDistScale() const override { return xc0_miniMapCamDistScale; }
float GetMapPlaneScaleX() const { return xc4_mapPlaneScaleX; } float GetMapPlaneScaleX() const override { return xc4_mapPlaneScaleX; }
float GetMapPlaneScaleZ() const { return xc8_mapPlaneScaleZ; } float GetMapPlaneScaleZ() const override { return xc8_mapPlaneScaleZ; }
float GetUniverseCamDist() const { return xd0_universeCamDist; } float GetUniverseCamDist() const override { return xd0_universeCamDist; }
float GetMinUniverseCamDist() const { return xd4_minUniverseCamDist; } float GetMinUniverseCamDist() const override { return xd4_minUniverseCamDist; }
float GetMaxUniverseCamDist() const { return xd8_maxUniverseCamDist; } float GetMaxUniverseCamDist() const override { return xd8_maxUniverseCamDist; }
float GetSwitchToFromUniverseTime() const { return xdc_switchToFromUniverseTime; } float GetSwitchToFromUniverseTime() const override { return xdc_switchToFromUniverseTime; }
float GetCamPanUnitsPerFrame() const { return xe0_camPanUnitsPerFrame; } float GetCamPanUnitsPerFrame() const override { return xe0_camPanUnitsPerFrame; }
float GetAutomapperScaleX() const { return xe4_automapperScaleX; } float GetAutomapperScaleX() const override { return xe4_automapperScaleX; }
float GetAutomapperScaleZ() const { return xe8_automapperScaleZ; } float GetAutomapperScaleZ() const override { return xe8_automapperScaleZ; }
float GetCamVerticalOffset() const { return xec_camVerticalOffset; } float GetCamVerticalOffset() const override { return xec_camVerticalOffset; }
const zeus::CColor& GetMiniMapSamusModColor() const { return xf0_miniMapSamusModColor; } const zeus::CColor& GetMiniMapSamusModColor() const override { return xf0_miniMapSamusModColor; }
const zeus::CColor& GetAreaFlashPulseColor() const { return xf4_areaFlashPulseColor; } const zeus::CColor& GetAreaFlashPulseColor() const override { return xf4_areaFlashPulseColor; }
const zeus::CColor& GetDoorColor(int idx) const { return x104_doorColors[idx]; } const zeus::CColor& GetDoorColor(int idx) const override { return x104_doorColors[idx]; }
const zeus::CColor& GetOpenDoorColor() const { return x11c_openDoorColor; } const zeus::CColor& GetOpenDoorColor() const override { return x11c_openDoorColor; }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -127,66 +127,70 @@ struct CTweakBall final : public ITweakBall {
x1ec_maxLeanAngle = zeus::degToRad(x1ec_maxLeanAngle); x1ec_maxLeanAngle = zeus::degToRad(x1ec_maxLeanAngle);
} }
float GetMaxBallTranslationAcceleration(int s) const { return x4_maxTranslationAcceleration[s]; } float GetMaxBallTranslationAcceleration(int s) const override { return x4_maxTranslationAcceleration[s]; }
float GetBallTranslationFriction(int s) const { return x24_translationFriction[s]; } float GetBallTranslationFriction(int s) const override { return x24_translationFriction[s]; }
float GetBallTranslationMaxSpeed(int s) const { return x44_translationMaxSpeed[s]; } float GetBallTranslationMaxSpeed(int s) const override { return x44_translationMaxSpeed[s]; }
float GetBallCameraElevation() const { return 2.736f; } float GetBallCameraElevation() const override { return 2.736f; }
float GetBallCameraAnglePerSecond() const { return x74_ballCameraAnglePerSecond; } float GetBallCameraAnglePerSecond() const override { return x74_ballCameraAnglePerSecond; }
const zeus::CVector3f& GetBallCameraOffset() const { return x78_ballCameraOffset; } const zeus::CVector3f& GetBallCameraOffset() const override { return x78_ballCameraOffset; }
float GetBallCameraMinSpeedDistance() const { return x84_ballCameraMinSpeedDistance; } float GetBallCameraMinSpeedDistance() const override { return x84_ballCameraMinSpeedDistance; }
float GetBallCameraMaxSpeedDistance() const { return x88_ballCameraMaxSpeedDistance; } float GetBallCameraMaxSpeedDistance() const override { return x88_ballCameraMaxSpeedDistance; }
float GetBallCameraBackwardsDistance() const { return x8c_ballCameraBackwardsDistance; } float GetBallCameraBackwardsDistance() const override { return x8c_ballCameraBackwardsDistance; }
float GetBallCameraSpringConstant() const { return x94_ballCameraSpringConstant; } float GetBallCameraSpringConstant() const override { return x94_ballCameraSpringConstant; }
float GetBallCameraSpringMax() const { return x98_ballCameraSpringMax; } float GetBallCameraSpringMax() const override { return x98_ballCameraSpringMax; }
float GetBallCameraSpringTardis() const { return x9c_ballCameraSpringTardis; } float GetBallCameraSpringTardis() const override { return x9c_ballCameraSpringTardis; }
float GetBallCameraCentroidSpringConstant() const { return xa0_ballCameraCentroidSpringConstant; } float GetBallCameraCentroidSpringConstant() const override { return xa0_ballCameraCentroidSpringConstant; }
float GetBallCameraCentroidSpringMax() const { return xa4_ballCameraCentroidSpringMax; } float GetBallCameraCentroidSpringMax() const override { return xa4_ballCameraCentroidSpringMax; }
float GetBallCameraCentroidSpringTardis() const { return xa8_ballCameraCentroidSpringTardis; } float GetBallCameraCentroidSpringTardis() const override { return xa8_ballCameraCentroidSpringTardis; }
float GetBallCameraCentroidDistanceSpringConstant() const { return xac_ballCameraCentroidDistanceSpringConstant; } float GetBallCameraCentroidDistanceSpringConstant() const override {
float GetBallCameraCentroidDistanceSpringMax() const { return xb0_ballCameraCentroidDistanceSpringMax; } return xac_ballCameraCentroidDistanceSpringConstant;
float GetBallCameraCentroidDistanceSpringTardis() const { return xb4_ballCameraCentroidDistanceSpringTardis; } }
float GetBallCameraLookAtSpringConstant() const { return xb8_ballCameraLookAtSpringConstant; } float GetBallCameraCentroidDistanceSpringMax() const override { return xb0_ballCameraCentroidDistanceSpringMax; }
float GetBallCameraLookAtSpringMax() const { return xbc_ballCameraLookAtSpringMax; } float GetBallCameraCentroidDistanceSpringTardis() const override {
float GetBallCameraLookAtSpringTardis() const { return xc0_ballCameraLookAtSpringTardis; } return xb4_ballCameraCentroidDistanceSpringTardis;
float GetBallForwardBrakingAcceleration(int s) const { return xc4_ballForwardBrakingAcceleration[s]; } }
float GetBallGravity() const { return xe4_ballGravity; } float GetBallCameraLookAtSpringConstant() const override { return xb8_ballCameraLookAtSpringConstant; }
float GetBallWaterGravity() const { return xe8_ballWaterGravity; } float GetBallCameraLookAtSpringMax() const override { return xbc_ballCameraLookAtSpringMax; }
float GetBallSlipFactor(int s) const { return x12c_ballSlipFactor[s]; } float GetBallCameraLookAtSpringTardis() const override { return xc0_ballCameraLookAtSpringTardis; }
float GetConservativeDoorCameraDistance() const { return x170_conservativeDoorCamDistance; } float GetBallForwardBrakingAcceleration(int s) const override { return xc4_ballForwardBrakingAcceleration[s]; }
float GetBallCameraChaseElevation() const { return x178_ballCameraChaseElevation; } float GetBallGravity() const override { return xe4_ballGravity; }
float GetBallCameraChaseDampenAngle() const { return x17c_ballCameraChaseDampenAngle; } float GetBallWaterGravity() const override { return xe8_ballWaterGravity; }
float GetBallCameraChaseDistance() const { return x180_ballCameraChaseDistance; } float GetBallSlipFactor(int s) const override { return x12c_ballSlipFactor[s]; }
float GetBallCameraChaseYawSpeed() const { return x184_ballCameraChaseYawSpeed; } float GetConservativeDoorCameraDistance() const override { return x170_conservativeDoorCamDistance; }
float GetBallCameraChaseAnglePerSecond() const { return x188_ballCameraChaseAnglePerSecond; } float GetBallCameraChaseElevation() const override { return x178_ballCameraChaseElevation; }
const zeus::CVector3f& GetBallCameraChaseLookAtOffset() const { return x18c_ballCameraChaseLookAtOffset; } float GetBallCameraChaseDampenAngle() const override { return x17c_ballCameraChaseDampenAngle; }
float GetBallCameraChaseSpringConstant() const { return x198_ballCameraChaseSpringConstant; } float GetBallCameraChaseDistance() const override { return x180_ballCameraChaseDistance; }
float GetBallCameraChaseSpringMax() const { return x19c_ballCameraChaseSpringMax; } float GetBallCameraChaseYawSpeed() const override { return x184_ballCameraChaseYawSpeed; }
float GetBallCameraChaseSpringTardis() const { return x1a0_ballCameraChaseSpringTardis; } float GetBallCameraChaseAnglePerSecond() const override { return x188_ballCameraChaseAnglePerSecond; }
float GetBallCameraBoostElevation() const { return x1a4_ballCameraBoostElevation; } const zeus::CVector3f& GetBallCameraChaseLookAtOffset() const override { return x18c_ballCameraChaseLookAtOffset; }
float GetBallCameraBoostDampenAngle() const { return x1a8_ballCameraBoostDampenAngle; } float GetBallCameraChaseSpringConstant() const override { return x198_ballCameraChaseSpringConstant; }
float GetBallCameraBoostDistance() const { return x1ac_ballCameraBoostDistance; } float GetBallCameraChaseSpringMax() const override { return x19c_ballCameraChaseSpringMax; }
float GetBallCameraBoostYawSpeed() const { return x1b0_ballCameraBoostYawSpeed; } float GetBallCameraChaseSpringTardis() const override { return x1a0_ballCameraChaseSpringTardis; }
float GetBallCameraBoostAnglePerSecond() const { return x1b4_ballCameraBoostAnglePerSecond; } float GetBallCameraBoostElevation() const override { return x1a4_ballCameraBoostElevation; }
const zeus::CVector3f& GetBallCameraBoostLookAtOffset() const { return x1b8_ballCameraBoostLookAtOffset; } float GetBallCameraBoostDampenAngle() const override { return x1a8_ballCameraBoostDampenAngle; }
float GetBallCameraBoostSpringConstant() const { return x1c4_ballCameraBoostSpringConstant; } float GetBallCameraBoostDistance() const override { return x1ac_ballCameraBoostDistance; }
float GetBallCameraBoostSpringMax() const { return x1c8_ballCameraBoostSpringMax; } float GetBallCameraBoostYawSpeed() const override { return x1b0_ballCameraBoostYawSpeed; }
float GetBallCameraBoostSpringTardis() const { return x1cc_ballCameraBoostSpringTardis; } float GetBallCameraBoostAnglePerSecond() const override { return x1b4_ballCameraBoostAnglePerSecond; }
float GetBallCameraControlDistance() const { return x1d0_ballCameraControlDistance; } const zeus::CVector3f& GetBallCameraBoostLookAtOffset() const override { return x1b8_ballCameraBoostLookAtOffset; }
float GetMinimumAlignmentSpeed() const { return x1dc_minimumAlignmentSpeed; } float GetBallCameraBoostSpringConstant() const override { return x1c4_ballCameraBoostSpringConstant; }
float GetTireness() const { return x1e0_tireness; } float GetBallCameraBoostSpringMax() const override { return x1c8_ballCameraBoostSpringMax; }
float GetMaxLeanAngle() const { return x1ec_maxLeanAngle; } float GetBallCameraBoostSpringTardis() const override { return x1cc_ballCameraBoostSpringTardis; }
float GetTireToMarbleThresholdSpeed() const { return x1f0_tireToMarbleThresholdSpeed; } float GetBallCameraControlDistance() const override { return x1d0_ballCameraControlDistance; }
float GetMarbleToTireThresholdSpeed() const { return x1f4_marbleToTireThresholdSpeed; } float GetMinimumAlignmentSpeed() const override { return x1dc_minimumAlignmentSpeed; }
float GetForceToLeanGain() const { return x1f8_forceToLeanGain; } float GetTireness() const override { return x1e0_tireness; }
float GetLeanTrackingGain() const { return x1fc_leanTrackingGain; } float GetMaxLeanAngle() const override { return x1ec_maxLeanAngle; }
float GetLeftStickDivisor() const { return x1e4_leftStickDivisor; } float GetTireToMarbleThresholdSpeed() const override { return x1f0_tireToMarbleThresholdSpeed; }
float GetRightStickDivisor() const { return x1e8_rightStickDivisor; } float GetMarbleToTireThresholdSpeed() const override { return x1f4_marbleToTireThresholdSpeed; }
float GetBallTouchRadius() const { return x204_ballTouchRadius; } float GetForceToLeanGain() const override { return x1f8_forceToLeanGain; }
float GetBoostBallDrainTime() const { return x20c_boostBallDrainTime; } float GetLeanTrackingGain() const override { return x1fc_leanTrackingGain; }
float GetBoostBallMaxChargeTime() const { return x210_boostBallMaxChargeTime; } float GetLeftStickDivisor() const override { return x1e4_leftStickDivisor; }
float GetBoostBallMinChargeTime() const { return x218_boostBallMinChargeTime; } float GetRightStickDivisor() const override { return x1e8_rightStickDivisor; }
float GetBoostBallMinRelativeSpeedForDamage() const { return x21c_boostBallMinRelativeSpeedForDamage; } float GetBallTouchRadius() const override { return x204_ballTouchRadius; }
float GetBoostBallChargeTimeTable(int i) const { float GetBoostBallDrainTime() const override { return x20c_boostBallDrainTime; }
float GetBoostBallMaxChargeTime() const override { return x210_boostBallMaxChargeTime; }
float GetBoostBallMinChargeTime() const override { return x218_boostBallMinChargeTime; }
float GetBoostBallMinRelativeSpeedForDamage() const override { return x21c_boostBallMinRelativeSpeedForDamage; }
float GetBoostBallChargeTimeTable(int i) const override {
switch (i) { switch (i) {
default: default:
case 0: case 0:
@ -197,7 +201,7 @@ struct CTweakBall final : public ITweakBall {
return x228_boostBallChargeTime2; return x228_boostBallChargeTime2;
} }
} }
float GetBoostBallIncrementalSpeedTable(int i) const { float GetBoostBallIncrementalSpeedTable(int i) const override {
switch (i) { switch (i) {
default: default:
case 0: case 0:

View File

@ -29,24 +29,24 @@ struct CTweakGame final : ITweakGame {
Value<float> x60_hardmodeDamageMult; Value<float> x60_hardmodeDamageMult;
Value<float> x64_hardmodeWeaponMult; Value<float> x64_hardmodeWeaponMult;
std::string_view GetWorldPrefix() const { return x4_worldPrefix; } std::string_view GetWorldPrefix() const override { return x4_worldPrefix; }
std::string_view GetDefaultRoom() const { return x14_defaultRoom; } std::string_view GetDefaultRoom() const { return x14_defaultRoom; }
bool GetSplashScreensDisabled() const { return x2b_splashScreensDisabled; } bool GetSplashScreensDisabled() const override { return x2b_splashScreensDisabled; }
float GetFirstPersonFOV() const { return x24_fov; } float GetFirstPersonFOV() const override { return x24_fov; }
float GetPressStartDelay() const { return x30_pressStartDelay; } float GetPressStartDelay() const override { return x30_pressStartDelay; }
float GetWavecapIntensityNormal() const { return x34_wavecapIntensityNormal; } float GetWavecapIntensityNormal() const override { return x34_wavecapIntensityNormal; }
float GetWavecapIntensityPoison() const { return x38_wavecapIntensityPoison; } float GetWavecapIntensityPoison() const override { return x38_wavecapIntensityPoison; }
float GetWavecapIntensityLava() const { return x3c_wavecapIntensityLava; } float GetWavecapIntensityLava() const override { return x3c_wavecapIntensityLava; }
float GetRippleIntensityNormal() const { return x40_rippleIntensityNormal; } float GetRippleIntensityNormal() const override { return x40_rippleIntensityNormal; }
float GetRippleIntensityPoison() const { return x44_rippleIntentityPoison; } float GetRippleIntensityPoison() const override { return x44_rippleIntentityPoison; }
float GetRippleIntensityLava() const { return x48_rippleIntensityLava; } float GetRippleIntensityLava() const override { return x48_rippleIntensityLava; }
float GetFluidEnvBumpScale() const { return x4c_fluidEnvBumpScale; } float GetFluidEnvBumpScale() const override { return x4c_fluidEnvBumpScale; }
float GetWaterFogDistanceBase() const { return x50_waterFogDistanceBase; } float GetWaterFogDistanceBase() const override { return x50_waterFogDistanceBase; }
float GetWaterFogDistanceRange() const { return x54_waterFogDistanceRange; } float GetWaterFogDistanceRange() const override { return x54_waterFogDistanceRange; }
float GetGravityWaterFogDistanceBase() const { return x58_gravityWaterFogDistanceBase; } float GetGravityWaterFogDistanceBase() const override { return x58_gravityWaterFogDistanceBase; }
float GetGravityWaterFogDistanceRange() const { return x5c_gravityWaterFogDistanceRange; } float GetGravityWaterFogDistanceRange() const override { return x5c_gravityWaterFogDistanceRange; }
float GetHardModeDamageMultiplier() const { return x60_hardmodeDamageMult; } float GetHardModeDamageMultiplier() const override { return x60_hardmodeDamageMult; }
float GetHardModeWeaponMultiplier() const { return x64_hardmodeWeaponMult; } float GetHardModeWeaponMultiplier() const override { return x64_hardmodeWeaponMult; }
CTweakGame() = default; CTweakGame() = default;
CTweakGame(athena::io::IStreamReader& in) { CTweakGame(athena::io::IStreamReader& in) {
this->read(in); this->read(in);
@ -55,6 +55,6 @@ struct CTweakGame final : ITweakGame {
#endif #endif
} }
void initCVars(hecl::CVarManager* mgr); void initCVars(hecl::CVarManager* mgr) override;
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -187,122 +187,122 @@ struct CTweakGui final : ITweakGui {
FixupValues(); FixupValues();
} }
float GetMapAlphaInterpolant() const { return x8_mapAlphaInterp; } float GetMapAlphaInterpolant() const override { return x8_mapAlphaInterp; }
float GetPauseBlurFactor() const { return xc_pauseBlurFactor; } float GetPauseBlurFactor() const override { return xc_pauseBlurFactor; }
float GetRadarXYRadius() const { return x10_radarXYRadius; } float GetRadarXYRadius() const override { return x10_radarXYRadius; }
float GetRadarZRadius() const { return x24_radarZRadius; } float GetRadarZRadius() const override { return x24_radarZRadius; }
float GetRadarZCloseRadius() const { return x28_radarZCloseRadius; } float GetRadarZCloseRadius() const override { return x28_radarZCloseRadius; }
float GetEnergyBarFilledSpeed() const { return x34_energyBarFilledSpeed; } float GetEnergyBarFilledSpeed() const override { return x34_energyBarFilledSpeed; }
float GetEnergyBarShadowSpeed() const { return x38_energyBarShadowSpeed; } float GetEnergyBarShadowSpeed() const override { return x38_energyBarShadowSpeed; }
float GetEnergyBarDrainDelay() const { return x3c_energyBarDrainDelay; } float GetEnergyBarDrainDelay() const override { return x3c_energyBarDrainDelay; }
bool GetEnergyBarAlwaysResetDelay() const { return x40_energyBarAlwaysResetDelay; } bool GetEnergyBarAlwaysResetDelay() const override { return x40_energyBarAlwaysResetDelay; }
float GetHudDamagePracticalsGainConstant() const { return x44_hudDamagePracticalsGainConstant; } float GetHudDamagePracticalsGainConstant() const override { return x44_hudDamagePracticalsGainConstant; }
float GetHudDamagePracticalsGainLinear() const { return x48_hudDamagePracticalsGainLinear; } float GetHudDamagePracticalsGainLinear() const override { return x48_hudDamagePracticalsGainLinear; }
float GetHudDamagePracticalsInitConstant() const { return x4c_hudDamagePracticalsInitConstant; } float GetHudDamagePracticalsInitConstant() const override { return x4c_hudDamagePracticalsInitConstant; }
float GetHudDamagePracticalsInitLinear() const { return x50_hudDamagePracticalsInitLinear; } float GetHudDamagePracticalsInitLinear() const override { return x50_hudDamagePracticalsInitLinear; }
float GetHudDamageLightSpotAngle() const { return x54_hudDamageLightSpotAngle; } float GetHudDamageLightSpotAngle() const override { return x54_hudDamageLightSpotAngle; }
float GetDamageLightAngleC() const { return x58_damageLightAngleC; } float GetDamageLightAngleC() const override { return x58_damageLightAngleC; }
float GetDamageLightAngleL() const { return x5c_damageLightAngleL; } float GetDamageLightAngleL() const override { return x5c_damageLightAngleL; }
float GetDamageLightAngleQ() const { return x60_damageLightAngleQ; } float GetDamageLightAngleQ() const override { return x60_damageLightAngleQ; }
atVec3f GetDamageLightPreTranslate() const { return x64_damageLightPreTranslate; } atVec3f GetDamageLightPreTranslate() const override { return x64_damageLightPreTranslate; }
atVec3f GetDamageLightCenterTranslate() const { return x70_damageLightCenterTranslate; } atVec3f GetDamageLightCenterTranslate() const override { return x70_damageLightCenterTranslate; }
float GetDamageLightXfXAngle() const { return x7c_damageLightXfXAngle; } float GetDamageLightXfXAngle() const override { return x7c_damageLightXfXAngle; }
float GetDamageLightXfZAngle() const { return x80_damageLightXfZAngle; } float GetDamageLightXfZAngle() const override { return x80_damageLightXfZAngle; }
float GetHudDecoShakeTranslateVelConstant() const { return x84_hudDecoShakeTranslateVelConstant; } float GetHudDecoShakeTranslateVelConstant() const override { return x84_hudDecoShakeTranslateVelConstant; }
float GetHudDecoShakeTranslateVelLinear() const { return x88_hudDecoShakeTranslateVelLinear; } float GetHudDecoShakeTranslateVelLinear() const override { return x88_hudDecoShakeTranslateVelLinear; }
float GetMaxDecoDamageShakeTranslate() const { return x8c_maxDecoDamageShakeTranslate; } float GetMaxDecoDamageShakeTranslate() const override { return x8c_maxDecoDamageShakeTranslate; }
float GetDecoDamageShakeDeceleration() const { return x90_decoDamageShakeDeceleration; } float GetDecoDamageShakeDeceleration() const override { return x90_decoDamageShakeDeceleration; }
float GetDecoShakeGainConstant() const { return x94_decoShakeGainConstant; } float GetDecoShakeGainConstant() const override { return x94_decoShakeGainConstant; }
float GetDecoShakeGainLinear() const { return x98_decoShakeGainLinear; } float GetDecoShakeGainLinear() const override { return x98_decoShakeGainLinear; }
float GetDecoShakeInitConstant() const { return x9c_decoShakeInitConstant; } float GetDecoShakeInitConstant() const override { return x9c_decoShakeInitConstant; }
float GetDecoShakeInitLinear() const { return xa0_decoShakeInitLinear; } float GetDecoShakeInitLinear() const override { return xa0_decoShakeInitLinear; }
float GetMaxDecoDamageShakeRotate() const { return xa4_maxDecoDamageShakeRotate; } float GetMaxDecoDamageShakeRotate() const override { return xa4_maxDecoDamageShakeRotate; }
atUint32 GetHudCamFovTweak() const { return xa8_hudCamFovTweak; } atUint32 GetHudCamFovTweak() const override { return xa8_hudCamFovTweak; }
atUint32 GetHudCamYTweak() const { return xac_hudCamYTweak; } atUint32 GetHudCamYTweak() const override { return xac_hudCamYTweak; }
atUint32 GetHudCamZTweak() const { return xb0_hudCamZTweak; } atUint32 GetHudCamZTweak() const override { return xb0_hudCamZTweak; }
float GetBeamVisorMenuAnimTime() const { return xc0_beamVisorMenuAnimTime; } float GetBeamVisorMenuAnimTime() const override { return xc0_beamVisorMenuAnimTime; }
float GetVisorBeamMenuItemActiveScale() const { return xc4_visorBeamMenuItemActiveScale; } float GetVisorBeamMenuItemActiveScale() const override { return xc4_visorBeamMenuItemActiveScale; }
float GetVisorBeamMenuItemInactiveScale() const { return xc8_visorBeamMenuItemInactiveScale; } float GetVisorBeamMenuItemInactiveScale() const override { return xc8_visorBeamMenuItemInactiveScale; }
float GetVisorBeamMenuItemTranslate() const { return xcc_visorBeamMenuItemTranslate; } float GetVisorBeamMenuItemTranslate() const override { return xcc_visorBeamMenuItemTranslate; }
float GetThreatRange() const { return xe4_threatRange; } float GetThreatRange() const override { return xe4_threatRange; }
float GetRadarScopeCoordRadius() const { return xe8_radarScopeCoordRadius; } float GetRadarScopeCoordRadius() const override { return xe8_radarScopeCoordRadius; }
float GetRadarPlayerPaintRadius() const { return xec_radarPlayerPaintRadius; } float GetRadarPlayerPaintRadius() const override { return xec_radarPlayerPaintRadius; }
float GetRadarEnemyPaintRadius() const { return xf0_radarEnemyPaintRadius; } float GetRadarEnemyPaintRadius() const override { return xf0_radarEnemyPaintRadius; }
float GetMissileArrowVisTime() const { return xf4_missileArrowVisTime; } float GetMissileArrowVisTime() const override { return xf4_missileArrowVisTime; }
EHudVisMode GetHudVisMode() const { return xf8_hudVisMode; } EHudVisMode GetHudVisMode() const override { return xf8_hudVisMode; }
EHelmetVisMode GetHelmetVisMode() const { return xfc_helmetVisMode; } EHelmetVisMode GetHelmetVisMode() const override { return xfc_helmetVisMode; }
atUint32 GetEnableAutoMapper() const { return x100_enableAutoMapper; } atUint32 GetEnableAutoMapper() const override { return x100_enableAutoMapper; }
atUint32 GetEnableTargetingManager() const { return x108_enableTargetingManager; } atUint32 GetEnableTargetingManager() const override { return x108_enableTargetingManager; }
atUint32 GetEnablePlayerVisor() const { return x10c_enablePlayerVisor; } atUint32 GetEnablePlayerVisor() const override { return x10c_enablePlayerVisor; }
float GetThreatWarningFraction() const { return x110_threatWarningFraction; } float GetThreatWarningFraction() const override { return x110_threatWarningFraction; }
float GetMissileWarningFraction() const { return x114_missileWarningFraction; } float GetMissileWarningFraction() const override { return x114_missileWarningFraction; }
float GetFreeLookFadeTime() const { return x118_freeLookFadeTime; } float GetFreeLookFadeTime() const override { return x118_freeLookFadeTime; }
float GetFreeLookSfxPitchScale() const { return x12c_freeLookSfxPitchScale; } float GetFreeLookSfxPitchScale() const override { return x12c_freeLookSfxPitchScale; }
bool GetNoAbsoluteFreeLookSfxPitch() const { return x130_noAbsoluteFreeLookSfxPitch; } bool GetNoAbsoluteFreeLookSfxPitch() const override { return x130_noAbsoluteFreeLookSfxPitch; }
float GetFaceReflectionOrthoWidth() const { return x13c_faceReflectionOrthoWidth; } float GetFaceReflectionOrthoWidth() const override { return x13c_faceReflectionOrthoWidth; }
float GetFaceReflectionOrthoHeight() const { return x140_faceReflectionOrthoHeight; } float GetFaceReflectionOrthoHeight() const override { return x140_faceReflectionOrthoHeight; }
float GetFaceReflectionDistance() const { return x144_faceReflectionDistance; } float GetFaceReflectionDistance() const override { return x144_faceReflectionDistance; }
float GetFaceReflectionHeight() const { return x148_faceReflectionHeight; } float GetFaceReflectionHeight() const override { return x148_faceReflectionHeight; }
float GetFaceReflectionAspect() const { return x14c_faceReflectionAspect; } float GetFaceReflectionAspect() const override { return x14c_faceReflectionAspect; }
float GetMissileWarningPulseTime() const { return x1a0_missileWarningPulseTime; } float GetMissileWarningPulseTime() const override { return x1a0_missileWarningPulseTime; }
float GetExplosionLightFalloffMultConstant() const { return x1a4_explosionLightFalloffMultConstant; } float GetExplosionLightFalloffMultConstant() const override { return x1a4_explosionLightFalloffMultConstant; }
float GetExplosionLightFalloffMultLinear() const { return x1a8_explosionLightFalloffMultLinear; } float GetExplosionLightFalloffMultLinear() const override { return x1a8_explosionLightFalloffMultLinear; }
float GetExplosionLightFalloffMultQuadratic() const { return x1ac_explosionLightFalloffMultQuadratic; } float GetExplosionLightFalloffMultQuadratic() const override { return x1ac_explosionLightFalloffMultQuadratic; }
float GetHudDamagePeakFactor() const { return x1b4_hudDamagePeakFactor; } float GetHudDamagePeakFactor() const override { return x1b4_hudDamagePeakFactor; }
float GetHudDamageFilterGainConstant() const { return x1b8_hudDamageFilterGainConstant; } float GetHudDamageFilterGainConstant() const override { return x1b8_hudDamageFilterGainConstant; }
float GetHudDamageFilterGainLinear() const { return x1bc_hudDamageFilterGainLinear; } float GetHudDamageFilterGainLinear() const override { return x1bc_hudDamageFilterGainLinear; }
float GetHudDamageFilterInitConstant() const { return x1c0_hudDamageFilterInitConstant; } float GetHudDamageFilterInitConstant() const override { return x1c0_hudDamageFilterInitConstant; }
float GetHudDamageFilterInitLinear() const { return x1c4_hudDamageFilterInitLinear; } float GetHudDamageFilterInitLinear() const override { return x1c4_hudDamageFilterInitLinear; }
float GetEnergyDrainModPeriod() const { return x1c8_energyDrainModPeriod; } float GetEnergyDrainModPeriod() const override { return x1c8_energyDrainModPeriod; }
bool GetEnergyDrainSinusoidalPulse() const { return x1cc_energyDrainSinusoidalPulse; } bool GetEnergyDrainSinusoidalPulse() const override { return x1cc_energyDrainSinusoidalPulse; }
bool GetEnergyDrainFilterAdditive() const { return x1cd_energyDrainFilterAdditive; } bool GetEnergyDrainFilterAdditive() const override { return x1cd_energyDrainFilterAdditive; }
float GetHudDamagePulseDuration() const { return x1d0_hudDamagePulseDuration; } float GetHudDamagePulseDuration() const override { return x1d0_hudDamagePulseDuration; }
float GetHudDamageColorGain() const { return x1d4_hudDamageColorGain; } float GetHudDamageColorGain() const override { return x1d4_hudDamageColorGain; }
float GetHudDecoShakeTranslateGain() const { return x1d8_hudDecoShakeTranslateGain; } float GetHudDecoShakeTranslateGain() const override { return x1d8_hudDecoShakeTranslateGain; }
float GetHudLagOffsetScale() const { return x1dc_hudLagOffsetScale; } float GetHudLagOffsetScale() const override { return x1dc_hudLagOffsetScale; }
float GetXrayBlurScaleLinear() const { return x204_xrayBlurScaleLinear; } float GetXrayBlurScaleLinear() const override { return x204_xrayBlurScaleLinear; }
float GetXrayBlurScaleQuadratic() const { return x208_xrayBlurScaleQuadratic; } float GetXrayBlurScaleQuadratic() const override { return x208_xrayBlurScaleQuadratic; }
float GetScanSidesAngle() const { return x210_scanSidesAngle; } float GetScanSidesAngle() const override { return x210_scanSidesAngle; }
float GetScanSidesXScale() const { return x214_scanSidesXScale; } float GetScanSidesXScale() const override { return x214_scanSidesXScale; }
float GetScanSidesPositionEnd() const { return x218_scanSidesPositionEnd; } float GetScanSidesPositionEnd() const override { return x218_scanSidesPositionEnd; }
float GetScanSidesDuration() const { return x220_scanSidesDuration; } float GetScanSidesDuration() const override { return x220_scanSidesDuration; }
float GetScanSidesStartTime() const { return x224_scanSidesStartTime; } float GetScanSidesStartTime() const override { return x224_scanSidesStartTime; }
float GetScanSidesEndTime() const { return x228_scanSidesEndTime; } float GetScanSidesEndTime() const override { return x228_scanSidesEndTime; }
float GetScanDataDotRadius() const { return x22c_scanDataDotRadius; } float GetScanDataDotRadius() const override { return x22c_scanDataDotRadius; }
float GetScanDataDotPosRandMagnitude() const { return x230_scanDataDotPosRandMag; } float GetScanDataDotPosRandMagnitude() const override { return x230_scanDataDotPosRandMag; }
float GetScanDataDotSeekDurationMin() const { return x234_scanDataDotSeekDurationMin; } float GetScanDataDotSeekDurationMin() const override { return x234_scanDataDotSeekDurationMin; }
float GetScanDataDotSeekDurationMax() const { return x238_scanDataDotSeekDurationMax; } float GetScanDataDotSeekDurationMax() const override { return x238_scanDataDotSeekDurationMax; }
float GetScanDataDotHoldDurationMin() const { return x23c_scanDataDotHoldDurationMin; } float GetScanDataDotHoldDurationMin() const override { return x23c_scanDataDotHoldDurationMin; }
float GetScanDataDotHoldDurationMax() const { return x240_scanDataDotHoldDurationMax; } float GetScanDataDotHoldDurationMax() const override { return x240_scanDataDotHoldDurationMax; }
float GetScanAppearanceDuration() const { return x244_scanAppearanceDuration; } float GetScanAppearanceDuration() const override { return x244_scanAppearanceDuration; }
float GetScanPaneFlashFactor() const { return x248_scanPaneFlashFactor; } float GetScanPaneFlashFactor() const override { return x248_scanPaneFlashFactor; }
float GetScanPaneFadeInTime() const { return x24c_scanPaneFadeInTime; } float GetScanPaneFadeInTime() const override { return x24c_scanPaneFadeInTime; }
float GetScanPaneFadeOutTime() const { return x250_scanPaneFadeOutTime; } float GetScanPaneFadeOutTime() const override { return x250_scanPaneFadeOutTime; }
float GetBallViewportYReduction() const { return x254_ballViewportYReduction; } float GetBallViewportYReduction() const override { return x254_ballViewportYReduction; }
float GetScanWindowIdleWidth() const { return x258_scanWindowIdleW; } float GetScanWindowIdleWidth() const override { return x258_scanWindowIdleW; }
float GetScanWindowIdleHeight() const { return x25c_scanWindowIdleH; } float GetScanWindowIdleHeight() const override { return x25c_scanWindowIdleH; }
float GetScanWindowActiveWidth() const { return x260_scanWindowActiveW; } float GetScanWindowActiveWidth() const override { return x260_scanWindowActiveW; }
float GetScanWindowActiveHeight() const { return x264_scanWindowActiveH; } float GetScanWindowActiveHeight() const override { return x264_scanWindowActiveH; }
float GetScanWindowMagnification() const { return x268_scanWindowMagnification; } float GetScanWindowMagnification() const override { return x268_scanWindowMagnification; }
float GetScanWindowScanningAspect() const { return x26c_scanWindowScanningAspect; } float GetScanWindowScanningAspect() const override { return x26c_scanWindowScanningAspect; }
float GetScanSidesPositionStart() const { return x270_scanSidesPositionStart; } float GetScanSidesPositionStart() const override { return x270_scanSidesPositionStart; }
bool GetShowAutomapperInMorphball() const { return x274_showAutomapperInMorphball; } bool GetShowAutomapperInMorphball() const override { return x274_showAutomapperInMorphball; }
bool GetLatchArticleText() const { return x275_latchArticleText; } bool GetLatchArticleText() const override { return x275_latchArticleText; }
float GetWorldTransManagerCharsPerSfx() const { return x278_wtMgrCharsPerSfx; } float GetWorldTransManagerCharsPerSfx() const override { return x278_wtMgrCharsPerSfx; }
atUint32 GetXRayFogMode() const { return x27c_xrayFogMode; } atUint32 GetXRayFogMode() const override { return x27c_xrayFogMode; }
float GetXRayFogNearZ() const { return x280_xrayFogNearZ; } float GetXRayFogNearZ() const override { return x280_xrayFogNearZ; }
float GetXRayFogFarZ() const { return x284_xrayFogFarZ; } float GetXRayFogFarZ() const override { return x284_xrayFogFarZ; }
const zeus::CColor& GetXRayFogColor() const { return x288_xrayFogColor; } const zeus::CColor& GetXRayFogColor() const override { return x288_xrayFogColor; }
float GetThermalVisorLevel() const { return x28c_thermalVisorLevel; } float GetThermalVisorLevel() const override { return x28c_thermalVisorLevel; }
const zeus::CColor& GetThermalVisorColor() const { return x290_thermalVisorColor; } const zeus::CColor& GetThermalVisorColor() const override { return x290_thermalVisorColor; }
const zeus::CColor& GetVisorHudLightAdd(int v) const { return x294_hudLightAddPerVisor[v]; } const zeus::CColor& GetVisorHudLightAdd(int v) const override { return x294_hudLightAddPerVisor[v]; }
const zeus::CColor& GetVisorHudLightMultiply(int v) const { return x2a4_hudLightMultiplyPerVisor[v]; } const zeus::CColor& GetVisorHudLightMultiply(int v) const override { return x2a4_hudLightMultiplyPerVisor[v]; }
const zeus::CColor& GetHudReflectivityLightColor() const { return x2b4_hudReflectivityLightColor; } const zeus::CColor& GetHudReflectivityLightColor() const override { return x2b4_hudReflectivityLightColor; }
float GetHudLightAttMulConstant() const { return x2b8_hudLightAttMulConstant; } float GetHudLightAttMulConstant() const override { return x2b8_hudLightAttMulConstant; }
float GetHudLightAttMulLinear() const { return x2bc_hudLightAttMulLinear; } float GetHudLightAttMulLinear() const override { return x2bc_hudLightAttMulLinear; }
float GetHudLightAttMulQuadratic() const { return x2c0_hudLightAttMulQuadratic; } float GetHudLightAttMulQuadratic() const override { return x2c0_hudLightAttMulQuadratic; }
float GetScanSpeed(int idx) const { float GetScanSpeed(int idx) const override {
if (idx < 0 || size_t(idx) >= x2c4_scanSpeeds.size()) if (idx < 0 || size_t(idx) >= x2c4_scanSpeeds.size())
return 0.f; return 0.f;
return x2c4_scanSpeeds[idx]; return x2c4_scanSpeeds[idx];

View File

@ -134,92 +134,92 @@ struct CTweakGuiColors final : public ITweakGuiColors {
CTweakGuiColors() = default; CTweakGuiColors() = default;
CTweakGuiColors(athena::io::IStreamReader& r) { this->read(r); } CTweakGuiColors(athena::io::IStreamReader& r) { this->read(r); }
const zeus::CColor& GetPauseBlurFilterColor() const { return x4_pauseBlurFilterColor; } const zeus::CColor& GetPauseBlurFilterColor() const override { return x4_pauseBlurFilterColor; }
const zeus::CColor& GetRadarStuffColor() const { return x8_radarStuffColor; } const zeus::CColor& GetRadarStuffColor() const override { return x8_radarStuffColor; }
const zeus::CColor& GetRadarPlayerPaintColor() const { return xc_radarPlayerPaintColor; } const zeus::CColor& GetRadarPlayerPaintColor() const override { return xc_radarPlayerPaintColor; }
const zeus::CColor& GetRadarEnemyPaintColor() const { return x10_radarEnemyPaintColor; } const zeus::CColor& GetRadarEnemyPaintColor() const override { return x10_radarEnemyPaintColor; }
const zeus::CColor& GetHudMessageFill() const { return x14_hudMessageFill; } const zeus::CColor& GetHudMessageFill() const override { return x14_hudMessageFill; }
const zeus::CColor& GetHudMessageOutline() const { return x18_hudMessageOutline; } const zeus::CColor& GetHudMessageOutline() const override { return x18_hudMessageOutline; }
const zeus::CColor& GetHudFrameColor() const { return x1c_hudFrameColor; } const zeus::CColor& GetHudFrameColor() const override { return x1c_hudFrameColor; }
const zeus::CColor& GetMissileIconColorActive() const { return x28_missileIconColorActive; } const zeus::CColor& GetMissileIconColorActive() const override { return x28_missileIconColorActive; }
const zeus::CColor& GetVisorBeamMenuItemActive() const { return x2c_visorBeamMenuItemActive; } const zeus::CColor& GetVisorBeamMenuItemActive() const override { return x2c_visorBeamMenuItemActive; }
const zeus::CColor& GetVisorBeamMenuItemInactive() const { return x30_visorBeamMenuColorInactive; } const zeus::CColor& GetVisorBeamMenuItemInactive() const override { return x30_visorBeamMenuColorInactive; }
const zeus::CColor& GetEnergyBarFilledLowEnergy() const { return x34_energyBarFilledLowEnergy; } const zeus::CColor& GetEnergyBarFilledLowEnergy() const override { return x34_energyBarFilledLowEnergy; }
const zeus::CColor& GetEnergyBarShadowLowEnergy() const { return x38_energyBarShadowLowEnergy; } const zeus::CColor& GetEnergyBarShadowLowEnergy() const override { return x38_energyBarShadowLowEnergy; }
const zeus::CColor& GetEnergyBarEmptyLowEnergy() const { return x3c_energyBarEmptyLowEnergy; } const zeus::CColor& GetEnergyBarEmptyLowEnergy() const override { return x3c_energyBarEmptyLowEnergy; }
const zeus::CColor& GetHudDamageLightColor() const { return x40_hudDamageLightColor; } const zeus::CColor& GetHudDamageLightColor() const override { return x40_hudDamageLightColor; }
const zeus::CColor& GetVisorMenuTextFont() const { return x4c_visorMenuTextFont; } const zeus::CColor& GetVisorMenuTextFont() const override { return x4c_visorMenuTextFont; }
const zeus::CColor& GetVisorMenuTextOutline() const { return x50_visorMenuTextOutline; } const zeus::CColor& GetVisorMenuTextOutline() const override { return x50_visorMenuTextOutline; }
const zeus::CColor& GetBeamMenuTextFont() const { return x54_beamMenuTextFont; } const zeus::CColor& GetBeamMenuTextFont() const override { return x54_beamMenuTextFont; }
const zeus::CColor& GetBeamMenuTextOutline() const { return x58_beamMenuTextOutline; } const zeus::CColor& GetBeamMenuTextOutline() const override { return x58_beamMenuTextOutline; }
const zeus::CColor& GetEnergyWarningFont() const { return x5c_energyWarningFont; } const zeus::CColor& GetEnergyWarningFont() const override { return x5c_energyWarningFont; }
const zeus::CColor& GetThreatWarningFont() const { return x60_threatWarningFont; } const zeus::CColor& GetThreatWarningFont() const override { return x60_threatWarningFont; }
const zeus::CColor& GetMissileWarningFont() const { return x64_missileWarningFont; } const zeus::CColor& GetMissileWarningFont() const override { return x64_missileWarningFont; }
const zeus::CColor& GetThreatBarFilled() const { return x68_threatBarFilled; } const zeus::CColor& GetThreatBarFilled() const override { return x68_threatBarFilled; }
const zeus::CColor& GetThreatBarShadow() const { return x6c_threatBarShadow; } const zeus::CColor& GetThreatBarShadow() const override { return x6c_threatBarShadow; }
const zeus::CColor& GetThreatBarEmpty() const { return x70_threatBarEmpty; } const zeus::CColor& GetThreatBarEmpty() const override { return x70_threatBarEmpty; }
const zeus::CColor& GetMissileBarFilled() const { return x74_missileBarFilled; } const zeus::CColor& GetMissileBarFilled() const override { return x74_missileBarFilled; }
const zeus::CColor& GetMissileBarShadow() const { return x78_missileBarShadow; } const zeus::CColor& GetMissileBarShadow() const override { return x78_missileBarShadow; }
const zeus::CColor& GetMissileBarEmpty() const { return x7c_missileBarEmpty; } const zeus::CColor& GetMissileBarEmpty() const override { return x7c_missileBarEmpty; }
const zeus::CColor& GetThreatIconColor() const { return x80_threatIconColor; } const zeus::CColor& GetThreatIconColor() const override { return x80_threatIconColor; }
const zeus::CColor& GetTickDecoColor() const { return x88_tickDecoColor; } const zeus::CColor& GetTickDecoColor() const override { return x88_tickDecoColor; }
const zeus::CColor& GetHelmetLightColor() const { return x8c_helmetLightColor; } const zeus::CColor& GetHelmetLightColor() const override { return x8c_helmetLightColor; }
const zeus::CColor& GetThreatIconSafeColor() const { return x90_threatIconSafeColor; } const zeus::CColor& GetThreatIconSafeColor() const override { return x90_threatIconSafeColor; }
const zeus::CColor& GetMissileIconColorInactive() const { return x94_missileIconColorInactive; } const zeus::CColor& GetMissileIconColorInactive() const override { return x94_missileIconColorInactive; }
const zeus::CColor& GetMissileIconColorChargedCanAlt() const { return x98_missileIconColorChargedCanAlt; } const zeus::CColor& GetMissileIconColorChargedCanAlt() const override { return x98_missileIconColorChargedCanAlt; }
const zeus::CColor& GetMissileIconColorChargedNoAlt() const { return x9c_missileIconColorChargedNoAlt; } const zeus::CColor& GetMissileIconColorChargedNoAlt() const override { return x9c_missileIconColorChargedNoAlt; }
const zeus::CColor& GetMissileIconColorDepleteAlt() const { return xa0_missileIconColorDepleteAlt; } const zeus::CColor& GetMissileIconColorDepleteAlt() const override { return xa0_missileIconColorDepleteAlt; }
const zeus::CColor& GetVisorBeamMenuLozColor() const { return xb0_visorBeamMenuLozColor; } const zeus::CColor& GetVisorBeamMenuLozColor() const override { return xb0_visorBeamMenuLozColor; }
const zeus::CColor& GetEnergyWarningOutline() const { return xb4_energyWarningOutline; } const zeus::CColor& GetEnergyWarningOutline() const override { return xb4_energyWarningOutline; }
const zeus::CColor& GetThreatWarningOutline() const { return xb8_threatWarningOutline; } const zeus::CColor& GetThreatWarningOutline() const override { return xb8_threatWarningOutline; }
const zeus::CColor& GetMissileWarningOutline() const { return xbc_missileWarningOutline; } const zeus::CColor& GetMissileWarningOutline() const override { return xbc_missileWarningOutline; }
const zeus::CColor& GetDamageAmbientColor() const { return xc4_damageAmbientColor; } const zeus::CColor& GetDamageAmbientColor() const override { return xc4_damageAmbientColor; }
const zeus::CColor& GetScanFrameInactiveColor() const { return xc8_scanFrameInactiveColor; } const zeus::CColor& GetScanFrameInactiveColor() const override { return xc8_scanFrameInactiveColor; }
const zeus::CColor& GetScanFrameActiveColor() const { return xcc_scanFrameActiveColor; } const zeus::CColor& GetScanFrameActiveColor() const override { return xcc_scanFrameActiveColor; }
const zeus::CColor& GetScanFrameImpulseColor() const { return xd0_scanFrameImpulseColor; } const zeus::CColor& GetScanFrameImpulseColor() const override { return xd0_scanFrameImpulseColor; }
const zeus::CColor& GetScanVisorHudLightMultiply() const { return xd4_scanVisorHudLightMultiply; } const zeus::CColor& GetScanVisorHudLightMultiply() const override { return xd4_scanVisorHudLightMultiply; }
const zeus::CColor& GetScanVisorScreenDimColor() const { return xd8_scanVisorScreenDimColor; } const zeus::CColor& GetScanVisorScreenDimColor() const override { return xd8_scanVisorScreenDimColor; }
const zeus::CColor& GetThermalVisorHudLightMultiply() const { return xdc_thermalVisorHudLightMultiply; } const zeus::CColor& GetThermalVisorHudLightMultiply() const override { return xdc_thermalVisorHudLightMultiply; }
const zeus::CColor& GetEnergyDrainFilterColor() const { return xe0_energyDrainFilterColor; } const zeus::CColor& GetEnergyDrainFilterColor() const override { return xe0_energyDrainFilterColor; }
const zeus::CColor& GetDamageAmbientPulseColor() const { return xe4_damageAmbientPulseColor; } const zeus::CColor& GetDamageAmbientPulseColor() const override { return xe4_damageAmbientPulseColor; }
const zeus::CColor& GetEnergyBarFlashColor() const { return xe8_energyBarFlashColor; } const zeus::CColor& GetEnergyBarFlashColor() const override { return xe8_energyBarFlashColor; }
const zeus::CColor& GetXRayEnergyDecoColor() const { return x100_xrayEnergyDecoColor; } const zeus::CColor& GetXRayEnergyDecoColor() const override { return x100_xrayEnergyDecoColor; }
const zeus::CColor& GetScanDataDotColor() const { return x138_scanDataDotColor; } const zeus::CColor& GetScanDataDotColor() const override { return x138_scanDataDotColor; }
const zeus::CColor& GetPowerBombDigitAvailableFont() const { return x13c_powerBombDigitAvailableFont; } const zeus::CColor& GetPowerBombDigitAvailableFont() const override { return x13c_powerBombDigitAvailableFont; }
const zeus::CColor& GetPowerBombDigitAvailableOutline() const { return x140_powerBombDigitAvailableOutline; } const zeus::CColor& GetPowerBombDigitAvailableOutline() const override { return x140_powerBombDigitAvailableOutline; }
const zeus::CColor& GetBallBombFilledColor() const { return x148_ballBombFilled; } const zeus::CColor& GetBallBombFilledColor() const override { return x148_ballBombFilled; }
const zeus::CColor& GetBallBombEmptyColor() const { return x14c_ballBombEmpty; } const zeus::CColor& GetBallBombEmptyColor() const override { return x14c_ballBombEmpty; }
const zeus::CColor& GetPowerBombIconAvailableColor() const { return x150_powerBombIconAvailable; } const zeus::CColor& GetPowerBombIconAvailableColor() const override { return x150_powerBombIconAvailable; }
const zeus::CColor& GetBallBombEnergyColor() const { return x158_ballEnergyDeco; } const zeus::CColor& GetBallBombEnergyColor() const override { return x158_ballEnergyDeco; }
const zeus::CColor& GetBallBombDecoColor() const { return x15c_ballBombDeco; } const zeus::CColor& GetBallBombDecoColor() const override { return x15c_ballBombDeco; }
const zeus::CColor& GetPowerBombDigitDelpetedFont() const { return x160_powerBombDigitDepletedFont; } const zeus::CColor& GetPowerBombDigitDelpetedFont() const override { return x160_powerBombDigitDepletedFont; }
const zeus::CColor& GetPowerBombDigitDelpetedOutline() const { return x164_powerBombDigitDepletedOutline; } const zeus::CColor& GetPowerBombDigitDelpetedOutline() const override { return x164_powerBombDigitDepletedOutline; }
const zeus::CColor& GetPowerBombIconDepletedColor() const { return x168_powerBombIconUnavailable; } const zeus::CColor& GetPowerBombIconDepletedColor() const override { return x168_powerBombIconUnavailable; }
const zeus::CColor& GetScanDisplayImagePaneColor() const { return x174_scanDisplayImagePaneColor; } const zeus::CColor& GetScanDisplayImagePaneColor() const override { return x174_scanDisplayImagePaneColor; }
const zeus::CColor& GetThreatIconWarningColor() const { return x17c_threatIconWarningColor; } const zeus::CColor& GetThreatIconWarningColor() const override { return x17c_threatIconWarningColor; }
const zeus::CColor& GetHudCounterFill() const { return x180_hudCounterFill; } const zeus::CColor& GetHudCounterFill() const override { return x180_hudCounterFill; }
const zeus::CColor& GetHudCounterOutline() const { return x184_hudCounterOutline; } const zeus::CColor& GetHudCounterOutline() const override { return x184_hudCounterOutline; }
const zeus::CColor& GetScanIconCriticalColor() const { return x188_scanIconCriticalColor; } const zeus::CColor& GetScanIconCriticalColor() const override { return x188_scanIconCriticalColor; }
const zeus::CColor& GetScanIconCriticalDimColor() const { return x18c_scanIconCriticalDimColor; } const zeus::CColor& GetScanIconCriticalDimColor() const override { return x18c_scanIconCriticalDimColor; }
const zeus::CColor& GetScanIconNoncriticalColor() const { return x190_scanIconNoncriticalColor; } const zeus::CColor& GetScanIconNoncriticalColor() const override { return x190_scanIconNoncriticalColor; }
const zeus::CColor& GetScanIconNoncriticalDimColor() const { return x194_scanIconNoncriticalDimColor; } const zeus::CColor& GetScanIconNoncriticalDimColor() const override { return x194_scanIconNoncriticalDimColor; }
const zeus::CColor& GetScanReticuleColor() const { return x198_scanReticuleColor; } const zeus::CColor& GetScanReticuleColor() const override { return x198_scanReticuleColor; }
const zeus::CColor& GetThreatDigitsFont() const { return x19c_threatDigitsFont; } const zeus::CColor& GetThreatDigitsFont() const override { return x19c_threatDigitsFont; }
const zeus::CColor& GetThreatDigitsOutline() const { return x1a0_threatDigitsOutline; } const zeus::CColor& GetThreatDigitsOutline() const override { return x1a0_threatDigitsOutline; }
const zeus::CColor& GetMissileDigitsFont() const { return x1a4_missileDigitsFont; } const zeus::CColor& GetMissileDigitsFont() const override { return x1a4_missileDigitsFont; }
const zeus::CColor& GetMissileDigitsOutline() const { return x1a8_missileDigitsOutline; } const zeus::CColor& GetMissileDigitsOutline() const override { return x1a8_missileDigitsOutline; }
const zeus::CColor& GetThermalDecoColor() const { return x1ac_thermalDecoColor; } const zeus::CColor& GetThermalDecoColor() const override { return x1ac_thermalDecoColor; }
const zeus::CColor& GetThermalOutlinesColor() const { return x1b0_thermalOutlinesColor; } const zeus::CColor& GetThermalOutlinesColor() const override { return x1b0_thermalOutlinesColor; }
const zeus::CColor& GetThermalLockColor() const { return x1b8_thermalLockColor; } const zeus::CColor& GetThermalLockColor() const override { return x1b8_thermalLockColor; }
const zeus::CColor& GetPauseItemAmberColor() const { return x1bc_pauseItemAmber; } const zeus::CColor& GetPauseItemAmberColor() const override { return x1bc_pauseItemAmber; }
const zeus::CColor& GetPauseItemBlueColor() const { return x1c0_pauseItemBlue; } const zeus::CColor& GetPauseItemBlueColor() const override { return x1c0_pauseItemBlue; }
VisorEnergyInitColors GetVisorEnergyInitColors(int idx) const { VisorEnergyInitColors GetVisorEnergyInitColors(int idx) const override {
const PerVisorColors& colors = x1c4_perVisorColors[idx]; const PerVisorColors& colors = x1c4_perVisorColors[idx];
return {colors.xc_energyTankFilled, colors.x10_energyTankEmpty, colors.x14_energyDigitsFont, return {colors.xc_energyTankFilled, colors.x10_energyTankEmpty, colors.x14_energyDigitsFont,
colors.x18_energyDigitsOutline}; colors.x18_energyDigitsOutline};
} }
VisorEnergyBarColors GetVisorEnergyBarColors(int idx) const { VisorEnergyBarColors GetVisorEnergyBarColors(int idx) const override {
const PerVisorColors& colors = x1c4_perVisorColors[idx]; const PerVisorColors& colors = x1c4_perVisorColors[idx];
return {colors.x0_energyBarFilled, colors.x4_energyBarEmpty, colors.x8_energyBarShadow}; return {colors.x0_energyBarFilled, colors.x4_energyBarEmpty, colors.x8_energyBarShadow};
} }

View File

@ -58,32 +58,32 @@ struct CTweakGunRes final : ITweakGunRes {
String<-1> m_grappleMuzzle; String<-1> m_grappleMuzzle;
String<-1> m_grappleSwoosh; String<-1> m_grappleSwoosh;
const std::string& GetGunMotion() const { return m_gunMotion; } const std::string& GetGunMotion() const override { return m_gunMotion; }
const std::string& GetGrappleArm() const { return m_grappleArm; } const std::string& GetGrappleArm() const override { return m_grappleArm; }
const std::string& GetRightHand() const { return m_rightHand; } const std::string& GetRightHand() const override { return m_rightHand; }
const std::string& GetPowerBeam() const { return m_powerBeam; } const std::string& GetPowerBeam() const override { return m_powerBeam; }
const std::string& GetIceBeam() const { return m_iceBeam; } const std::string& GetIceBeam() const override { return m_iceBeam; }
const std::string& GetWaveBeam() const { return m_waveBeam; } const std::string& GetWaveBeam() const override { return m_waveBeam; }
const std::string& GetPlasmaBeam() const { return m_plasmaBeam; } const std::string& GetPlasmaBeam() const override { return m_plasmaBeam; }
const std::string& GetPhazonBeam() const { return m_phazonBeam; } const std::string& GetPhazonBeam() const override { return m_phazonBeam; }
const std::string& GetHoloTransition() const { return m_holoTransition; } const std::string& GetHoloTransition() const override { return m_holoTransition; }
const std::string& GetBombSet() const { return m_bombSet; } const std::string& GetBombSet() const override { return m_bombSet; }
const std::string& GetBombExplode() const { return m_bombExplode; } const std::string& GetBombExplode() const override { return m_bombExplode; }
const std::string& GetPowerBombExplode() const { return m_powerBombExplode; } const std::string& GetPowerBombExplode() const override { return m_powerBombExplode; }
const std::string& GetWeapon(size_t idx, bool ball) const { return (&m_powerBeamWp)[idx * 2 + ball]; } const std::string& GetWeapon(size_t idx, bool ball) const override { return (&m_powerBeamWp)[idx * 2 + ball]; }
const std::string& GetMuzzleParticle(size_t idx) const { return (&m_powerMuzzle)[idx]; } const std::string& GetMuzzleParticle(size_t idx) const override { return (&m_powerMuzzle)[idx]; }
const std::string& GetChargeParticle(size_t idx) const { return (&m_powerCharge)[idx]; } const std::string& GetChargeParticle(size_t idx) const override { return (&m_powerCharge)[idx]; }
const std::string& GetAuxMuzzleParticle(size_t idx) const { return (&m_powerAuxMuzzle)[idx]; } const std::string& GetAuxMuzzleParticle(size_t idx) const override { return (&m_powerAuxMuzzle)[idx]; }
const std::string& GetGrappleSegmentParticle() const { return m_grappleSegment; } const std::string& GetGrappleSegmentParticle() const override { return m_grappleSegment; }
const std::string& GetGrappleClawParticle() const { return m_grappleClaw; } const std::string& GetGrappleClawParticle() const override { return m_grappleClaw; }
const std::string& GetGrappleHitParticle() const { return m_grappleHit; } const std::string& GetGrappleHitParticle() const override { return m_grappleHit; }
const std::string& GetGrappleMuzzleParticle() const { return m_grappleMuzzle; } const std::string& GetGrappleMuzzleParticle() const override { return m_grappleMuzzle; }
const std::string& GetGrappleSwooshParticle() const { return m_grappleSwoosh; } const std::string& GetGrappleSwooshParticle() const override { return m_grappleSwoosh; }
CTweakGunRes() = default; CTweakGunRes() = default;
CTweakGunRes(athena::io::IStreamReader& in) { read(in); } CTweakGunRes(athena::io::IStreamReader& in) { read(in); }

View File

@ -170,139 +170,139 @@ struct CTweakPlayer final : ITweakPlayer {
Value<float> x300_variaDamageReduction; Value<float> x300_variaDamageReduction;
Value<float> x304_gravityDamageReduction; Value<float> x304_gravityDamageReduction;
Value<float> x308_phazonDamageReduction; Value<float> x308_phazonDamageReduction;
float GetMaxTranslationalAcceleration(int s) const { return x4_maxTranslationalAcceleration[s]; } float GetMaxTranslationalAcceleration(int s) const override { return x4_maxTranslationalAcceleration[s]; }
float GetMaxRotationalAcceleration(int s) const { return x24_maxRotationalAcceleration[s]; } float GetMaxRotationalAcceleration(int s) const override { return x24_maxRotationalAcceleration[s]; }
float GetPlayerTranslationFriction(int s) const { return x44_translationFriction[s]; } float GetPlayerTranslationFriction(int s) const override { return x44_translationFriction[s]; }
float GetPlayerRotationFriction(int s) const { return x64_rotationFriction[s]; } float GetPlayerRotationFriction(int s) const override { return x64_rotationFriction[s]; }
float GetPlayerRotationMaxSpeed(int s) const { return x84_rotationMaxSpeed[s]; } float GetPlayerRotationMaxSpeed(int s) const override { return x84_rotationMaxSpeed[s]; }
float GetPlayerTranslationMaxSpeed(int s) const { return xa4_translationMaxSpeed[s]; } float GetPlayerTranslationMaxSpeed(int s) const override { return xa4_translationMaxSpeed[s]; }
float GetNormalGravAccel() const { return xc4_normalGravAccel; } float GetNormalGravAccel() const override { return xc4_normalGravAccel; }
float GetFluidGravAccel() const { return xc8_fluidGravAccel; } float GetFluidGravAccel() const override { return xc8_fluidGravAccel; }
float GetVerticalJumpAccel() const { return xcc_verticalJumpAccel; } float GetVerticalJumpAccel() const override { return xcc_verticalJumpAccel; }
float GetHorizontalJumpAccel() const { return xd0_horizontalJumpAccel; } float GetHorizontalJumpAccel() const override { return xd0_horizontalJumpAccel; }
float GetVerticalDoubleJumpAccel() const { return xd4_verticalDoubleJumpAccel; } float GetVerticalDoubleJumpAccel() const override { return xd4_verticalDoubleJumpAccel; }
float GetHorizontalDoubleJumpAccel() const { return xd8_horizontalDoubleJumpAccel; } float GetHorizontalDoubleJumpAccel() const override { return xd8_horizontalDoubleJumpAccel; }
float GetWaterJumpFactor() const { return xdc_waterJumpFactor; } float GetWaterJumpFactor() const override { return xdc_waterJumpFactor; }
float GetWaterBallJumpFactor() const { return xe0_waterBallJumpFactor; } float GetWaterBallJumpFactor() const override { return xe0_waterBallJumpFactor; }
float GetLavaJumpFactor() const { return xe4_lavaJumpFactor; } float GetLavaJumpFactor() const override { return xe4_lavaJumpFactor; }
float GetLavaBallJumpFactor() const { return xe8_lavaBallJumpFactor; } float GetLavaBallJumpFactor() const override { return xe8_lavaBallJumpFactor; }
float GetPhazonJumpFactor() const { return xec_phazonJumpFactor; } float GetPhazonJumpFactor() const override { return xec_phazonJumpFactor; }
float GetPhazonBallJumpFactor() const { return xf0_phazonBallJumpFactor; } float GetPhazonBallJumpFactor() const override { return xf0_phazonBallJumpFactor; }
float GetAllowedJumpTime() const { return xf4_allowedJumpTime; } float GetAllowedJumpTime() const override { return xf4_allowedJumpTime; }
float GetAllowedDoubleJumpTime() const { return xf8_allowedDoubleJumpTime; } float GetAllowedDoubleJumpTime() const override { return xf8_allowedDoubleJumpTime; }
float GetMinDoubleJumpWindow() const { return xfc_minDoubleJumpWindow; } float GetMinDoubleJumpWindow() const override { return xfc_minDoubleJumpWindow; }
float GetMaxDoubleJumpWindow() const { return x100_maxDoubleJumpWindow; } float GetMaxDoubleJumpWindow() const override { return x100_maxDoubleJumpWindow; }
float GetMinJumpTime() const { return x108_minJumpTime; } float GetMinJumpTime() const override { return x108_minJumpTime; }
float GetMinDoubleJumpTime() const { return x10c_minDoubleJumpTime; } float GetMinDoubleJumpTime() const override { return x10c_minDoubleJumpTime; }
float GetAllowedLedgeTime() const { return x110_allowedLedgeTime; } float GetAllowedLedgeTime() const override { return x110_allowedLedgeTime; }
float GetDoubleJumpImpulse() const { return x114_doubleJumpImpulse; } float GetDoubleJumpImpulse() const override { return x114_doubleJumpImpulse; }
float GetBackwardsForceMultiplier() const { return x118_backwardsForceMultiplier; } float GetBackwardsForceMultiplier() const override { return x118_backwardsForceMultiplier; }
float GetBombJumpRadius() const { return x11c_bombJumpRadius; } float GetBombJumpRadius() const override { return x11c_bombJumpRadius; }
float GetBombJumpHeight() const { return x120_bombJumpHeight; } float GetBombJumpHeight() const override { return x120_bombJumpHeight; }
float GetEyeOffset() const { return x124_eyeOffset; } float GetEyeOffset() const override { return x124_eyeOffset; }
float GetTurnSpeedMultiplier() const { return x128_turnSpeedMultiplier; } float GetTurnSpeedMultiplier() const override { return x128_turnSpeedMultiplier; }
float GetFreeLookTurnSpeedMultiplier() const { return x12c_freeLookTurnSpeedMultiplier; } float GetFreeLookTurnSpeedMultiplier() const override { return x12c_freeLookTurnSpeedMultiplier; }
float GetFreeLookSpeed() const { return x138_freeLookSpeed; } float GetFreeLookSpeed() const override { return x138_freeLookSpeed; }
float GetFreeLookSnapSpeed() const { return x13c_freeLookSnapSpeed; } float GetFreeLookSnapSpeed() const override { return x13c_freeLookSnapSpeed; }
float GetFreeLookCenteredThresholdAngle() const { return x144_freeLookCenteredThresholdAngle; } float GetFreeLookCenteredThresholdAngle() const override { return x144_freeLookCenteredThresholdAngle; }
float GetFreeLookCenteredTime() const { return x148_freeLookCenteredTime; } float GetFreeLookCenteredTime() const override { return x148_freeLookCenteredTime; }
float GetOrbitModeTimer() const { return x180_orbitModeTimer; } float GetOrbitModeTimer() const override { return x180_orbitModeTimer; }
float GetOrbitUpperAngle() const { return x188_orbitUpperAngle; } float GetOrbitUpperAngle() const override { return x188_orbitUpperAngle; }
float GetOrbitLowerAngle() const { return x18c_orbitLowerAngle; } float GetOrbitLowerAngle() const override { return x18c_orbitLowerAngle; }
float GetOrbitHorizAngle() const { return x190_orbitHorizAngle; } float GetOrbitHorizAngle() const override { return x190_orbitHorizAngle; }
float GetOrbitMaxTargetDistance() const { return x19c_orbitMaxTargetDistance; } float GetOrbitMaxTargetDistance() const override { return x19c_orbitMaxTargetDistance; }
float GetOrbitMaxLockDistance() const { return x1a0_orbitMaxLockDistance; } float GetOrbitMaxLockDistance() const override { return x1a0_orbitMaxLockDistance; }
float GetOrbitDistanceThreshold() const { return x1a4_orbitDistanceThreshold; } float GetOrbitDistanceThreshold() const override { return x1a4_orbitDistanceThreshold; }
uint32_t GetOrbitScreenBoxHalfExtentX(int zone) const { return x1a8_orbitScreenBoxHalfExtentX[zone]; } uint32_t GetOrbitScreenBoxHalfExtentX(int zone) const override { return x1a8_orbitScreenBoxHalfExtentX[zone]; }
uint32_t GetOrbitScreenBoxHalfExtentY(int zone) const { return x1b0_orbitScreenBoxHalfExtentY[zone]; } uint32_t GetOrbitScreenBoxHalfExtentY(int zone) const override { return x1b0_orbitScreenBoxHalfExtentY[zone]; }
uint32_t GetOrbitScreenBoxCenterX(int zone) const { return x1b8_orbitScreenBoxCenterX[zone]; } uint32_t GetOrbitScreenBoxCenterX(int zone) const override { return x1b8_orbitScreenBoxCenterX[zone]; }
uint32_t GetOrbitScreenBoxCenterY(int zone) const { return x1c0_orbitScreenBoxCenterY[zone]; } uint32_t GetOrbitScreenBoxCenterY(int zone) const override { return x1c0_orbitScreenBoxCenterY[zone]; }
uint32_t GetOrbitZoneIdealX(int zone) const { return x1c8_orbitZoneIdealX[zone]; } uint32_t GetOrbitZoneIdealX(int zone) const override { return x1c8_orbitZoneIdealX[zone]; }
uint32_t GetOrbitZoneIdealY(int zone) const { return x1d0_orbitZoneIdealY[zone]; } uint32_t GetOrbitZoneIdealY(int zone) const override { return x1d0_orbitZoneIdealY[zone]; }
float GetOrbitNearX() const { return x1d8_orbitNearX; } float GetOrbitNearX() const override { return x1d8_orbitNearX; }
float GetOrbitNearZ() const { return x1dc_orbitNearZ; } float GetOrbitNearZ() const override { return x1dc_orbitNearZ; }
float GetOrbitFixedOffsetZDiff() const { return x1e8_orbitFixedOffsetZDiff; } float GetOrbitFixedOffsetZDiff() const override { return x1e8_orbitFixedOffsetZDiff; }
float GetOrbitZRange() const { return x1ec_orbitZRange; } float GetOrbitZRange() const override { return x1ec_orbitZRange; }
bool GetDashEnabled() const { return x200_24_dashEnabled; } bool GetDashEnabled() const override { return x200_24_dashEnabled; }
bool GetDashOnButtonRelease() const { return x200_25_dashOnButtonRelease; } bool GetDashOnButtonRelease() const override { return x200_25_dashOnButtonRelease; }
float GetDashButtonHoldCancelTime() const { return x204_dashButtonHoldCancelTime; } float GetDashButtonHoldCancelTime() const override { return x204_dashButtonHoldCancelTime; }
float GetDashStrafeInputThreshold() const { return x208_dashStrafeInputThreshold; } float GetDashStrafeInputThreshold() const override { return x208_dashStrafeInputThreshold; }
float GetSidewaysDoubleJumpImpulse() const { return x20c_sidewaysDoubleJumpImpulse; } float GetSidewaysDoubleJumpImpulse() const override { return x20c_sidewaysDoubleJumpImpulse; }
float GetSidewaysVerticalDoubleJumpAccel() const { return x210_sidewaysVerticalDoubleJumpAccel; } float GetSidewaysVerticalDoubleJumpAccel() const override { return x210_sidewaysVerticalDoubleJumpAccel; }
float GetSidewaysHorizontalDoubleJumpAccel() const { return x214_sidewaysHorizontalDoubleJumpAccel; } float GetSidewaysHorizontalDoubleJumpAccel() const override { return x214_sidewaysHorizontalDoubleJumpAccel; }
float GetScanningRange() const { return x218_scanningRange; } float GetScanningRange() const override { return x218_scanningRange; }
bool GetScanRetention() const { return x21c_24_scanRetention; } bool GetScanRetention() const override { return x21c_24_scanRetention; }
bool GetScanFreezesGame() const { return x21c_25_scanFreezesGame; } bool GetScanFreezesGame() const override { return x21c_25_scanFreezesGame; }
bool GetOrbitWhileScanning() const { return x21c_26_orbitWhileScanning; } bool GetOrbitWhileScanning() const override { return x21c_26_orbitWhileScanning; }
float GetScanMaxTargetDistance() const { return x220_scanMaxTargetDistance; } float GetScanMaxTargetDistance() const override { return x220_scanMaxTargetDistance; }
float GetScanMaxLockDistance() const { return x224_scanMaxLockDistance; } float GetScanMaxLockDistance() const override { return x224_scanMaxLockDistance; }
bool GetMoveDuringFreeLook() const { return x228_27_moveDuringFreeLook; } bool GetMoveDuringFreeLook() const override { return x228_27_moveDuringFreeLook; }
bool GetHoldButtonsForFreeLook() const { return x228_28_holdButtonsForFreeLook; } bool GetHoldButtonsForFreeLook() const override { return x228_28_holdButtonsForFreeLook; }
bool GetTwoButtonsForFreeLook() const { return x228_29_twoButtonsForFreeLook; } bool GetTwoButtonsForFreeLook() const override { return x228_29_twoButtonsForFreeLook; }
bool GetAimWhenOrbitingPoint() const { return x229_25_aimWhenOrbitingPoint; } bool GetAimWhenOrbitingPoint() const override { return x229_25_aimWhenOrbitingPoint; }
bool GetStayInFreeLookWhileFiring() const { return x229_26_stayInFreeLookWhileFiring; } bool GetStayInFreeLookWhileFiring() const override { return x229_26_stayInFreeLookWhileFiring; }
bool GetOrbitFixedOffset() const { return x229_29_orbitFixedOffset; } bool GetOrbitFixedOffset() const override { return x229_29_orbitFixedOffset; }
bool GetGunButtonTogglesHolster() const { return x229_30_gunButtonTogglesHolster; } bool GetGunButtonTogglesHolster() const override { return x229_30_gunButtonTogglesHolster; }
bool GetGunNotFiringHolstersGun() const { return x229_31_gunNotFiringHolstersGun; } bool GetGunNotFiringHolstersGun() const override { return x229_31_gunNotFiringHolstersGun; }
bool GetFallingDoubleJump() const { return x22a_24_fallingDoubleJump; } bool GetFallingDoubleJump() const override { return x22a_24_fallingDoubleJump; }
bool GetImpulseDoubleJump() const { return x22a_25_impulseDoubleJump; } bool GetImpulseDoubleJump() const override { return x22a_25_impulseDoubleJump; }
bool GetFiringCancelsCameraPitch() const { return x22a_26_firingCancelsCameraPitch; } bool GetFiringCancelsCameraPitch() const override { return x22a_26_firingCancelsCameraPitch; }
bool GetAssistedAimingIgnoreHorizontal() const { return x22a_27_assistedAimingIgnoreHorizontal; } bool GetAssistedAimingIgnoreHorizontal() const override { return x22a_27_assistedAimingIgnoreHorizontal; }
bool GetAssistedAimingIgnoreVertical() const { return x22a_28_assistedAimingIgnoreVertical; } bool GetAssistedAimingIgnoreVertical() const override { return x22a_28_assistedAimingIgnoreVertical; }
float GetAimMaxDistance() const { return x234_aimMaxDistance; } float GetAimMaxDistance() const override { return x234_aimMaxDistance; }
float GetAimThresholdDistance() const { return x24c_aimThresholdDistance; } float GetAimThresholdDistance() const override { return x24c_aimThresholdDistance; }
float GetAimBoxWidth() const { return x258_aimBoxWidth; } float GetAimBoxWidth() const override { return x258_aimBoxWidth; }
float GetAimBoxHeight() const { return x25c_aimBoxHeight; } float GetAimBoxHeight() const override { return x25c_aimBoxHeight; }
float GetAimTargetTimer() const { return x260_aimTargetTimer; } float GetAimTargetTimer() const override { return x260_aimTargetTimer; }
float GetAimAssistHorizontalAngle() const { return x264_aimAssistHorizontalAngle; } float GetAimAssistHorizontalAngle() const override { return x264_aimAssistHorizontalAngle; }
float GetAimAssistVerticalAngle() const { return x268_aimAssistVerticalAngle; } float GetAimAssistVerticalAngle() const override { return x268_aimAssistVerticalAngle; }
float GetPlayerHeight() const { return x26c_playerHeight; } float GetPlayerHeight() const override { return x26c_playerHeight; }
float GetPlayerXYHalfExtent() const { return x270_playerXYHalfExtent; } float GetPlayerXYHalfExtent() const override { return x270_playerXYHalfExtent; }
float GetStepUpHeight() const { return x274_stepUpHeight; } float GetStepUpHeight() const override { return x274_stepUpHeight; }
float GetStepDownHeight() const { return x278_stepDownHeight; } float GetStepDownHeight() const override { return x278_stepDownHeight; }
float GetPlayerBallHalfExtent() const { return x27c_playerBallHalfExtent; } float GetPlayerBallHalfExtent() const override { return x27c_playerBallHalfExtent; }
float GetOrbitDistanceMax() const { return x2a0_orbitDistanceMax; } float GetOrbitDistanceMax() const override { return x2a0_orbitDistanceMax; }
float GetGrappleSwingLength() const { return x2a4_grappleSwingLength; } float GetGrappleSwingLength() const override { return x2a4_grappleSwingLength; }
float GetGrappleSwingPeriod() const { return x2a8_grappleSwingPeriod; } float GetGrappleSwingPeriod() const override { return x2a8_grappleSwingPeriod; }
float GetGrapplePullSpeedMin() const { return x2ac_grapplePullSpeedMin; } float GetGrapplePullSpeedMin() const override { return x2ac_grapplePullSpeedMin; }
float GetMaxGrappleLockedTurnAlignDistance() const { return x2b4_maxGrappleLockedTurnAlignDistance; } float GetMaxGrappleLockedTurnAlignDistance() const override { return x2b4_maxGrappleLockedTurnAlignDistance; }
float GetGrapplePullSpeedProportion() const { return x2b8_grapplePullSpeedProportion; } float GetGrapplePullSpeedProportion() const override { return x2b8_grapplePullSpeedProportion; }
float GetGrapplePullSpeedMax() const { return x2bc_grapplePullSpeedMax; } float GetGrapplePullSpeedMax() const override { return x2bc_grapplePullSpeedMax; }
float GetGrappleLookCenterSpeed() const { return x2c0_grappleLookCenterSpeed; } float GetGrappleLookCenterSpeed() const override { return x2c0_grappleLookCenterSpeed; }
float GetMaxGrappleTurnSpeed() const { return x2c4_maxGrappleTurnSpeed; } float GetMaxGrappleTurnSpeed() const override { return x2c4_maxGrappleTurnSpeed; }
float GetGrappleJumpForce() const { return x2c8_grappleJumpForce; } float GetGrappleJumpForce() const override { return x2c8_grappleJumpForce; }
float GetGrappleReleaseTime() const { return x2cc_grappleReleaseTime; } float GetGrappleReleaseTime() const override { return x2cc_grappleReleaseTime; }
uint32_t GetGrappleJumpMode() const { return x2d0_grappleJumpMode; } uint32_t GetGrappleJumpMode() const override { return x2d0_grappleJumpMode; }
bool GetOrbitReleaseBreaksGrapple() const { return x2d4_orbitReleaseBreaksGrapple; } bool GetOrbitReleaseBreaksGrapple() const override { return x2d4_orbitReleaseBreaksGrapple; }
bool GetInvertGrappleTurn() const { return x2d5_invertGrappleTurn; } bool GetInvertGrappleTurn() const override { return x2d5_invertGrappleTurn; }
float GetGrappleBeamSpeed() const { return x2d8_grappleBeamSpeed; } float GetGrappleBeamSpeed() const override { return x2d8_grappleBeamSpeed; }
float GetGrappleBeamXWaveAmplitude() const { return x2dc_grappleBeamXWaveAmplitude; } float GetGrappleBeamXWaveAmplitude() const override { return x2dc_grappleBeamXWaveAmplitude; }
float GetGrappleBeamZWaveAmplitude() const { return x2e0_grappleBeamZWaveAmplitude; } float GetGrappleBeamZWaveAmplitude() const override { return x2e0_grappleBeamZWaveAmplitude; }
float GetGrappleBeamAnglePhaseDelta() const { return x2e4_grappleBeamAnglePhaseDelta; } float GetGrappleBeamAnglePhaseDelta() const override { return x2e4_grappleBeamAnglePhaseDelta; }
float GetHorizontalFreeLookAngleVel() const { return x130_horizontalFreeLookAngleVel; } float GetHorizontalFreeLookAngleVel() const override { return x130_horizontalFreeLookAngleVel; }
float GetVerticalFreeLookAngleVel() const { return x134_verticalFreeLookAngleVel; } float GetVerticalFreeLookAngleVel() const override { return x134_verticalFreeLookAngleVel; }
float GetOrbitCameraSpeed() const { return x184_orbitCameraSpeed; } float GetOrbitCameraSpeed() const override { return x184_orbitCameraSpeed; }
float GetOrbitPreventionTime() const { return x1fc_orbitPreventionTime; } float GetOrbitPreventionTime() const override { return x1fc_orbitPreventionTime; }
bool GetFreeLookTurnsPlayer() const { return x228_24_freelookTurnsPlayer; } bool GetFreeLookTurnsPlayer() const override { return x228_24_freelookTurnsPlayer; }
float GetJumpCameraPitchDownStart() const { return x288_jumpCameraPitchDownStart; } float GetJumpCameraPitchDownStart() const override { return x288_jumpCameraPitchDownStart; }
float GetJumpCameraPitchDownFull() const { return x28c_jumpCameraPitchDownFull; } float GetJumpCameraPitchDownFull() const override { return x28c_jumpCameraPitchDownFull; }
float GetJumpCameraPitchDownAngle() const { return x290_jumpCameraPitchDownAngle; } float GetJumpCameraPitchDownAngle() const override { return x290_jumpCameraPitchDownAngle; }
float GetFallCameraPitchDownStart() const { return x294_fallCameraPitchDownStart; } float GetFallCameraPitchDownStart() const override { return x294_fallCameraPitchDownStart; }
float GetFallCameraPitchDownFull() const { return x298_fallCameraPitchDownFull; } float GetFallCameraPitchDownFull() const override { return x298_fallCameraPitchDownFull; }
float GetFallCameraPitchDownAngle() const { return x29c_fallCameraPitchDownAngle; } float GetFallCameraPitchDownAngle() const override { return x29c_fallCameraPitchDownAngle; }
float GetFirstPersonCameraSpeed() const { return x280_firstPersonCameraSpeed; } float GetFirstPersonCameraSpeed() const override { return x280_firstPersonCameraSpeed; }
float GetGrappleCameraSpeed() const { return x2b0_grappleCameraSpeed; } float GetGrappleCameraSpeed() const override { return x2b0_grappleCameraSpeed; }
float GetFreeLookDampenFactor() const { return x14c_freeLookDampenFactor; } float GetFreeLookDampenFactor() const override { return x14c_freeLookDampenFactor; }
float GetLeftLogicalThreshold() const { return x150_leftDiv; } float GetLeftLogicalThreshold() const override { return x150_leftDiv; }
float GetRightLogicalThreshold() const { return x154_rightDiv; } float GetRightLogicalThreshold() const override { return x154_rightDiv; }
float GetOrbitMinDistance(int type) const { return x158_orbitMinDistance[type]; } float GetOrbitMinDistance(int type) const override { return x158_orbitMinDistance[type]; }
float GetOrbitNormalDistance(int type) const { return x164_orbitNormalDistance[type]; } float GetOrbitNormalDistance(int type) const override { return x164_orbitNormalDistance[type]; }
float GetOrbitMaxDistance(int type) const { return x170_orbitMaxDistance[type]; } float GetOrbitMaxDistance(int type) const override { return x170_orbitMaxDistance[type]; }
float GetFrozenTimeout() const { return x2f8_frozenTimeout; } float GetFrozenTimeout() const override { return x2f8_frozenTimeout; }
uint32_t GetIceBreakJumpCount() const { return x2fc_iceBreakJumpCount; } uint32_t GetIceBreakJumpCount() const override { return x2fc_iceBreakJumpCount; }
float GetVariaDamageReduction() const { return x300_variaDamageReduction; } float GetVariaDamageReduction() const override { return x300_variaDamageReduction; }
float GetGravityDamageReduction() const { return x304_gravityDamageReduction; } float GetGravityDamageReduction() const override { return x304_gravityDamageReduction; }
float GetPhazonDamageReduction() const { return x308_phazonDamageReduction; } float GetPhazonDamageReduction() const override { return x308_phazonDamageReduction; }
CTweakPlayer() = default; CTweakPlayer() = default;
CTweakPlayer(athena::io::IStreamReader& reader) { CTweakPlayer(athena::io::IStreamReader& reader) {
read(reader); read(reader);

View File

@ -7,7 +7,7 @@ namespace DataSpec::DNAMP1 {
struct CTweakPlayerControl final : ITweakPlayerControl { struct CTweakPlayerControl final : ITweakPlayerControl {
AT_DECL_DNA_YAML AT_DECL_DNA_YAML
Vector<atUint32, AT_DNA_COUNT(67)> m_mappings; Vector<atUint32, AT_DNA_COUNT(67)> m_mappings;
atUint32 GetMapping(atUint32 command) const { return m_mappings[command]; } atUint32 GetMapping(atUint32 command) const override { return m_mappings[command]; }
CTweakPlayerControl() = default; CTweakPlayerControl() = default;
CTweakPlayerControl(athena::io::IStreamReader& reader) { this->read(reader); } CTweakPlayerControl(athena::io::IStreamReader& reader) { this->read(reader); }
}; };

View File

@ -40,27 +40,27 @@ struct CTweakPlayerGun final : ITweakPlayerGun {
x44_fixedVerticalAim = zeus::degToRad(x44_fixedVerticalAim); x44_fixedVerticalAim = zeus::degToRad(x44_fixedVerticalAim);
} }
float GetUpLookAngle() const { return x4_upLookAngle; } float GetUpLookAngle() const override { return x4_upLookAngle; }
float GetDownLookAngle() const { return x8_downLookAngle; } float GetDownLookAngle() const override { return x8_downLookAngle; }
float GetVerticalSpread() const { return xc_verticalSpread; } float GetVerticalSpread() const override { return xc_verticalSpread; }
float GetHorizontalSpread() const { return x10_horizontalSpread; } float GetHorizontalSpread() const override { return x10_horizontalSpread; }
float GetHighVerticalSpread() const { return x14_highVerticalSpread; } float GetHighVerticalSpread() const override { return x14_highVerticalSpread; }
float GetHighHorizontalSpread() const { return x18_highHorizontalSpread; } float GetHighHorizontalSpread() const override { return x18_highHorizontalSpread; }
float GetLowVerticalSpread() const { return x1c_lowVerticalSpread; } float GetLowVerticalSpread() const override { return x1c_lowVerticalSpread; }
float GetLowHorizontalSpread() const { return x20_lowHorizontalSpread; } float GetLowHorizontalSpread() const override { return x20_lowHorizontalSpread; }
float GetAimVerticalSpeed() const { return x24_aimVerticalSpeed; } float GetAimVerticalSpeed() const override { return x24_aimVerticalSpeed; }
float GetAimHorizontalSpeed() const { return x28_aimHorizontalSpeed; } float GetAimHorizontalSpeed() const override { return x28_aimHorizontalSpeed; }
float GetBombFuseTime() const { return x2c_bombFuseTime; } float GetBombFuseTime() const override { return x2c_bombFuseTime; }
float GetBombDropDelayTime() const { return x30_bombDropDelayTime; } float GetBombDropDelayTime() const override { return x30_bombDropDelayTime; }
float GetHoloHoldTime() const { return x34_holoHoldTime; } float GetHoloHoldTime() const override { return x34_holoHoldTime; }
float GetGunTransformTime() const { return x38_gunTransformTime; } float GetGunTransformTime() const override { return x38_gunTransformTime; }
float GetGunHolsterTime() const { return x3c_gunHolsterTime; } float GetGunHolsterTime() const override { return x3c_gunHolsterTime; }
float GetGunNotFiringTime() const { return x40_gunNotFiringTime; } float GetGunNotFiringTime() const override { return x40_gunNotFiringTime; }
float GetFixedVerticalAim() const { return x44_fixedVerticalAim; } float GetFixedVerticalAim() const override { return x44_fixedVerticalAim; }
float GetGunExtendDistance() const { return x48_gunExtendDistance; } float GetGunExtendDistance() const override { return x48_gunExtendDistance; }
const zeus::CVector3f& GetGunPosition() const { return x4c_gunPosition; } const zeus::CVector3f& GetGunPosition() const override { return x4c_gunPosition; }
const zeus::CVector3f& GetGrapplingArmPosition() const { return x64_grapplingArmPosition; } const zeus::CVector3f& GetGrapplingArmPosition() const override { return x64_grapplingArmPosition; }
float GetRichochetDamage(atUint32 type) const { float GetRichochetDamage(atUint32 type) const override {
switch (type) { switch (type) {
case 0: // Power case 0: // Power
return x280_ricochetData[0]; return x280_ricochetData[0];
@ -88,7 +88,7 @@ struct CTweakPlayerGun final : ITweakPlayerGun {
} }
} }
const SWeaponInfo& GetBeamInfo(atInt32 beam) const { const SWeaponInfo& GetBeamInfo(atInt32 beam) const override {
if (beam < 0 || beam > 5) if (beam < 0 || beam > 5)
return xa8_beams[0]; return xa8_beams[0];
return xa8_beams[beam]; return xa8_beams[beam];
@ -100,8 +100,8 @@ struct CTweakPlayerGun final : ITweakPlayerGun {
return x1f0_combos[beam]; return x1f0_combos[beam];
} }
const SShotParam& GetBombInfo() const { return x70_bomb; } const SShotParam& GetBombInfo() const override { return x70_bomb; }
const SShotParam& GetPowerBombInfo() const { return x8c_powerBomb; } const SShotParam& GetPowerBombInfo() const override { return x8c_powerBomb; }
const SShotParam& GetMissileInfo() const { return x1d4_missile; } const SShotParam& GetMissileInfo() const { return x1d4_missile; }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -67,32 +67,32 @@ struct CTweakPlayerRes final : ITweakPlayerRes {
Value<float> m_cinematicMoveOutofIntoPlayerDistance; Value<float> m_cinematicMoveOutofIntoPlayerDistance;
std::string_view _GetSaveStationIcon() const { return m_saveStationIcon; } std::string_view _GetSaveStationIcon() const override { return m_saveStationIcon; }
std::string_view _GetMissileStationIcon() const { return m_missileStationIcon; } std::string_view _GetMissileStationIcon() const override { return m_missileStationIcon; }
std::string_view _GetElevatorIcon() const { return m_elevatorIcon; } std::string_view _GetElevatorIcon() const override { return m_elevatorIcon; }
std::string_view _GetMinesBreakFirstTopIcon() const { return m_minesBreakFirstTopIcon; } std::string_view _GetMinesBreakFirstTopIcon() const override { return m_minesBreakFirstTopIcon; }
std::string_view _GetMinesBreakFirstBottomIcon() const { return m_minesBreakFirstBottomIcon; } std::string_view _GetMinesBreakFirstBottomIcon() const override { return m_minesBreakFirstBottomIcon; }
std::string_view _GetMinesBreakSecondTopIcon() const { return m_minesBreakSecondTopIcon; } std::string_view _GetMinesBreakSecondTopIcon() const override { return m_minesBreakSecondTopIcon; }
std::string_view _GetMinesBreakSecondBottomIcon() const { return m_minesBreakSecondBottomIcon; } std::string_view _GetMinesBreakSecondBottomIcon() const override { return m_minesBreakSecondBottomIcon; }
std::string_view _GetLStick(size_t idx) const { return (&m_lStickN)[idx]; } std::string_view _GetLStick(size_t idx) const override { return (&m_lStickN)[idx]; }
std::string_view _GetCStick(size_t idx) const { return (&m_cStickN)[idx]; } std::string_view _GetCStick(size_t idx) const override { return (&m_cStickN)[idx]; }
std::string_view _GetLTrigger(size_t idx) const { return (&m_lTriggerOut)[idx]; } std::string_view _GetLTrigger(size_t idx) const override { return (&m_lTriggerOut)[idx]; }
std::string_view _GetRTrigger(size_t idx) const { return (&m_rTriggerOut)[idx]; } std::string_view _GetRTrigger(size_t idx) const override { return (&m_rTriggerOut)[idx]; }
std::string_view _GetStartButton(size_t idx) const { return (&m_startButtonOut)[idx]; } std::string_view _GetStartButton(size_t idx) const override { return (&m_startButtonOut)[idx]; }
std::string_view _GetAButton(size_t idx) const { return (&m_aButtonOut)[idx]; } std::string_view _GetAButton(size_t idx) const override { return (&m_aButtonOut)[idx]; }
std::string_view _GetBButton(size_t idx) const { return (&m_bButtonOut)[idx]; } std::string_view _GetBButton(size_t idx) const override { return (&m_bButtonOut)[idx]; }
std::string_view _GetXButton(size_t idx) const { return (&m_xButtonOut)[idx]; } std::string_view _GetXButton(size_t idx) const override { return (&m_xButtonOut)[idx]; }
std::string_view _GetYButton(size_t idx) const { return (&m_yButtonOut)[idx]; } std::string_view _GetYButton(size_t idx) const override { return (&m_yButtonOut)[idx]; }
std::string_view _GetBallTransitionsANCS() const { return m_ballTransitionsANCS; } std::string_view _GetBallTransitionsANCS() const override { return m_ballTransitionsANCS; }
std::string_view _GetBallTransitionBeamRes(size_t idx) const { return (&m_ballTransitionsPower)[idx]; } std::string_view _GetBallTransitionBeamRes(size_t idx) const override { return (&m_ballTransitionsPower)[idx]; }
std::string_view _GetBeamCineModel(size_t idx) const { return (&m_cinePower)[idx]; } std::string_view _GetBeamCineModel(size_t idx) const override { return (&m_cinePower)[idx]; }
float _GetCinematicMoveOutofIntoPlayerDistance() const { return m_cinematicMoveOutofIntoPlayerDistance; } float _GetCinematicMoveOutofIntoPlayerDistance() const override { return m_cinematicMoveOutofIntoPlayerDistance; }
CTweakPlayerRes() = default; CTweakPlayerRes() = default;
CTweakPlayerRes(athena::io::IStreamReader& in) { read(in); } CTweakPlayerRes(athena::io::IStreamReader& in) { read(in); }

View File

@ -28,11 +28,11 @@ struct CTweakSlideShow final : ITweakSlideShow {
CTweakSlideShow() = default; CTweakSlideShow() = default;
CTweakSlideShow(athena::io::IStreamReader& in) { read(in); } CTweakSlideShow(athena::io::IStreamReader& in) { read(in); }
std::string_view GetFont() const { return x14_fontAssetName; } std::string_view GetFont() const override { return x14_fontAssetName; }
const zeus::CColor& GetFontColor() const { return x24_fontColor; } const zeus::CColor& GetFontColor() const override { return x24_fontColor; }
const zeus::CColor& GetOutlineColor() const { return x28_outlineColor; } const zeus::CColor& GetOutlineColor() const override { return x28_outlineColor; }
float GetScanPercentInterval() const { return x2c_scanPercentInterval; } float GetScanPercentInterval() const override { return x2c_scanPercentInterval; }
float GetX54() const { return x54_; } float GetX54() const override { return x54_; }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -147,93 +147,93 @@ struct CTweakTargeting final : public ITweakTargeting {
x108_chargeGaugeAngles[i] = zeus::degToRad(x108_chargeGaugeAngles[i]); x108_chargeGaugeAngles[i] = zeus::degToRad(x108_chargeGaugeAngles[i]);
} }
atUint32 GetTargetRadiusMode() const { return x4_targetRadiusMode; } atUint32 GetTargetRadiusMode() const override { return x4_targetRadiusMode; }
float GetCurrLockOnExitDuration() const { return x8_currLockOnExitDuration; } float GetCurrLockOnExitDuration() const override { return x8_currLockOnExitDuration; }
float GetCurrLockOnEnterDuration() const { return xc_currLockOnEnterDuration; } float GetCurrLockOnEnterDuration() const override { return xc_currLockOnEnterDuration; }
float GetCurrLockOnSwitchDuration() const { return x10_currLockOnSwitchDuration; } float GetCurrLockOnSwitchDuration() const override { return x10_currLockOnSwitchDuration; }
float GetLockConfirmScale() const { return x14_lockConfirmScale; } float GetLockConfirmScale() const override { return x14_lockConfirmScale; }
float GetNextLockOnEnterDuration() const { return x18_nextLockOnEnterDuration; } float GetNextLockOnEnterDuration() const override { return x18_nextLockOnEnterDuration; }
float GetNextLockOnExitDuration() const { return x1c_nextLockOnExitDuration; } float GetNextLockOnExitDuration() const override { return x1c_nextLockOnExitDuration; }
float GetNextLockOnSwitchDuration() const { return x20_nextLockOnSwitchDuration; } float GetNextLockOnSwitchDuration() const override { return x20_nextLockOnSwitchDuration; }
float GetSeekerScale() const { return x24_seekerScale; } float GetSeekerScale() const override { return x24_seekerScale; }
float GetSeekerAngleSpeed() const { return x28_seekerAngleSpeed; } float GetSeekerAngleSpeed() const override { return x28_seekerAngleSpeed; }
float GetXRayRetAngleSpeed() const { return x2c_xrayRetAngleSpeed; } float GetXRayRetAngleSpeed() const override { return x2c_xrayRetAngleSpeed; }
float GetOrbitPointZOffset() const { return x50_orbitPointZOffset; } float GetOrbitPointZOffset() const override { return x50_orbitPointZOffset; }
float GetOrbitPointInTime() const { return x54_orbitPointInTime; } float GetOrbitPointInTime() const override { return x54_orbitPointInTime; }
float GetOrbitPointOutTime() const { return x58_orbitPointOutTime; } float GetOrbitPointOutTime() const override { return x58_orbitPointOutTime; }
const zeus::CColor& GetThermalReticuleColor() const { return xb0_thermalReticuleColor; } const zeus::CColor& GetThermalReticuleColor() const override { return xb0_thermalReticuleColor; }
float GetTargetFlowerScale() const { return xb4_targetFlowerScale; } float GetTargetFlowerScale() const override { return xb4_targetFlowerScale; }
const zeus::CColor& GetTargetFlowerColor() const { return xb8_targetFlowerColor; } const zeus::CColor& GetTargetFlowerColor() const override { return xb8_targetFlowerColor; }
float GetMissileBracketDuration() const { return xbc_missileBracketDuration; } float GetMissileBracketDuration() const override { return xbc_missileBracketDuration; }
float GetMissileBracketScaleStart() const { return xc0_missileBracketScaleStart; } float GetMissileBracketScaleStart() const override { return xc0_missileBracketScaleStart; }
float GetMissileBracketScaleEnd() const { return xc4_missileBracketScaleEnd; } float GetMissileBracketScaleEnd() const override { return xc4_missileBracketScaleEnd; }
float GetMissileBracketScaleDuration() const { return xc8_missileBracketScaleDuration; } float GetMissileBracketScaleDuration() const override { return xc8_missileBracketScaleDuration; }
const zeus::CColor& GetMissileBracketColor() const { return xcc_missileBracketColor; } const zeus::CColor& GetMissileBracketColor() const override { return xcc_missileBracketColor; }
float GetChargeGaugeOvershootOffset() const { return xe8_chargeGaugeOvershootOffset; } float GetChargeGaugeOvershootOffset() const override { return xe8_chargeGaugeOvershootOffset; }
float GetChargeGaugeOvershootDuration() const { return xec_chargeGaugeOvershootDuration; } float GetChargeGaugeOvershootDuration() const override { return xec_chargeGaugeOvershootDuration; }
float GetOuterBeamSquaresScale() const { return xf0_outerBeamSquaresScale; } float GetOuterBeamSquaresScale() const override { return xf0_outerBeamSquaresScale; }
const zeus::CColor& GetOuterBeamSquareColor() const { return xf4_outerBeamSquareColor; } const zeus::CColor& GetOuterBeamSquareColor() const override { return xf4_outerBeamSquareColor; }
float GetLockonDuration() const { return xd0_LockonDuration; } float GetLockonDuration() const override { return xd0_LockonDuration; }
float GetInnerBeamScale() const { return xd4_innerBeamScale; } float GetInnerBeamScale() const override { return xd4_innerBeamScale; }
const zeus::CColor& GetInnerBeamColorPower() const { return xd8_innerBeamColorPower; } const zeus::CColor& GetInnerBeamColorPower() const override { return xd8_innerBeamColorPower; }
const zeus::CColor& GetInnerBeamColorIce() const { return xdc_innerBeamColorIce; } const zeus::CColor& GetInnerBeamColorIce() const override { return xdc_innerBeamColorIce; }
const zeus::CColor& GetInnerBeamColorWave() const { return xe0_innerBeamColorWave; } const zeus::CColor& GetInnerBeamColorWave() const override { return xe0_innerBeamColorWave; }
const zeus::CColor& GetInnerBeamColorPlasma() const { return xe4_innerBeamColorPlasma; } const zeus::CColor& GetInnerBeamColorPlasma() const override { return xe4_innerBeamColorPlasma; }
const float* GetOuterBeamSquareAngles(int i) const { return xf8_outerBeamSquareAngles[i].floats.data(); } const float* GetOuterBeamSquareAngles(int i) const override { return xf8_outerBeamSquareAngles[i].floats.data(); }
float GetChargeGaugeAngle(int i) const { return x108_chargeGaugeAngles[i]; } float GetChargeGaugeAngle(int i) const override { return x108_chargeGaugeAngles[i]; }
float GetChargeGaugeScale() const { return x118_chargeGaugeScale; } float GetChargeGaugeScale() const override { return x118_chargeGaugeScale; }
const zeus::CColor& GetChargeGaugeNonFullColor() const { return x11c_chargeGaugeNonFullColor; } const zeus::CColor& GetChargeGaugeNonFullColor() const override { return x11c_chargeGaugeNonFullColor; }
atUint32 GetChargeTickCount() const { return x120_chargeTickCount; } atUint32 GetChargeTickCount() const override { return x120_chargeTickCount; }
float GetChargeTickAnglePitch() const { return x124_chargeTickAnglePitch; } float GetChargeTickAnglePitch() const override { return x124_chargeTickAnglePitch; }
float GetLockFireScale() const { return x128_lockFireScale; } float GetLockFireScale() const override { return x128_lockFireScale; }
float GetLockFireDuration() const { return x12c_lockFireDuration; } float GetLockFireDuration() const override { return x12c_lockFireDuration; }
const zeus::CColor& GetLockFireColor() const { return x130_lockFireColor; } const zeus::CColor& GetLockFireColor() const override { return x130_lockFireColor; }
float GetLockDaggerScaleStart() const { return x134_lockDaggerScaleStart; } float GetLockDaggerScaleStart() const override { return x134_lockDaggerScaleStart; }
float GetLockDaggerScaleEnd() const { return x138_lockDaggerScaleEnd; } float GetLockDaggerScaleEnd() const override { return x138_lockDaggerScaleEnd; }
const zeus::CColor& GetLockDaggerColor() const { return x13c_lockDaggerColor; } const zeus::CColor& GetLockDaggerColor() const override { return x13c_lockDaggerColor; }
float GetLockDaggerAngle0() const { return x140_lockDaggerAngle0; } float GetLockDaggerAngle0() const override { return x140_lockDaggerAngle0; }
float GetLockDaggerAngle1() const { return x144_lockDaggerAngle1; } float GetLockDaggerAngle1() const override { return x144_lockDaggerAngle1; }
float GetLockDaggerAngle2() const { return x148_lockDaggerAngle2; } float GetLockDaggerAngle2() const override { return x148_lockDaggerAngle2; }
const zeus::CColor& GetLockConfirmColor() const { return x14c_lockConfirmColor; } const zeus::CColor& GetLockConfirmColor() const override { return x14c_lockConfirmColor; }
const zeus::CColor& GetSeekerColor() const { return x150_seekerColor; } const zeus::CColor& GetSeekerColor() const override { return x150_seekerColor; }
float GetLockConfirmClampMin() const { return x154_lockConfirmClampMin; } float GetLockConfirmClampMin() const override { return x154_lockConfirmClampMin; }
float GetLockConfirmClampMax() const { return x158_lockConfirmClampMax; } float GetLockConfirmClampMax() const override { return x158_lockConfirmClampMax; }
float GetTargetFlowerClampMin() const { return x15c_targetFlowerClampMin; } float GetTargetFlowerClampMin() const override { return x15c_targetFlowerClampMin; }
float GetTargetFlowerClampMax() const { return x160_targetFlowerClampMax; } float GetTargetFlowerClampMax() const override { return x160_targetFlowerClampMax; }
float GetSeekerClampMin() const { return x164_seekerClampMin; } float GetSeekerClampMin() const override { return x164_seekerClampMin; }
float GetSeekerClampMax() const { return x168_seekerClampMax; } float GetSeekerClampMax() const override { return x168_seekerClampMax; }
float GetMissileBracketClampMin() const { return x16c_missileBracketClampMin; } float GetMissileBracketClampMin() const override { return x16c_missileBracketClampMin; }
float GetMissileBracketClampMax() const { return x170_missileBracketClampMax; } float GetMissileBracketClampMax() const override { return x170_missileBracketClampMax; }
float GetInnerBeamClampMin() const { return x174_innerBeamClampMin; } float GetInnerBeamClampMin() const override { return x174_innerBeamClampMin; }
float GetInnerBeamClampMax() const { return x178_innerBeamClampMax; } float GetInnerBeamClampMax() const override { return x178_innerBeamClampMax; }
float GetChargeGaugeClampMin() const { return x17c_chargeGaugeClampMin; } float GetChargeGaugeClampMin() const override { return x17c_chargeGaugeClampMin; }
float GetChargeGaugeClampMax() const { return x180_chargeGaugeClampMax; } float GetChargeGaugeClampMax() const override { return x180_chargeGaugeClampMax; }
float GetLockFireClampMin() const { return x184_lockFireClampMin; } float GetLockFireClampMin() const override { return x184_lockFireClampMin; }
float GetLockFireClampMax() const { return x188_lockFireClampMax; } float GetLockFireClampMax() const override { return x188_lockFireClampMax; }
float GetLockDaggerClampMin() const { return x18c_lockDaggerClampMin; } float GetLockDaggerClampMin() const override { return x18c_lockDaggerClampMin; }
float GetLockDaggerClampMax() const { return x190_lockDaggerClampMax; } float GetLockDaggerClampMax() const override { return x190_lockDaggerClampMax; }
float GetGrappleSelectScale() const { return x194_grappleSelectScale; } float GetGrappleSelectScale() const override { return x194_grappleSelectScale; }
float GetGrappleScale() const { return x198_grappleScale; } float GetGrappleScale() const override { return x198_grappleScale; }
float GetGrappleClampMin() const { return x19c_grappleClampMin; } float GetGrappleClampMin() const override { return x19c_grappleClampMin; }
float GetGrappleClampMax() const { return x1a0_grappleClampMax; } float GetGrappleClampMax() const override { return x1a0_grappleClampMax; }
const zeus::CColor& GetGrapplePointSelectColor() const { return x1a4_grapplePointSelectColor; } const zeus::CColor& GetGrapplePointSelectColor() const override { return x1a4_grapplePointSelectColor; }
const zeus::CColor& GetGrapplePointColor() const { return x1a8_grapplePointColor; } const zeus::CColor& GetGrapplePointColor() const override { return x1a8_grapplePointColor; }
const zeus::CColor& GetLockedGrapplePointSelectColor() const { return x1ac_lockedGrapplePointSelectColor; } const zeus::CColor& GetLockedGrapplePointSelectColor() const override { return x1ac_lockedGrapplePointSelectColor; }
float GetGrappleMinClampScale() const { return x1b0_grappleMinClampScale; } float GetGrappleMinClampScale() const override { return x1b0_grappleMinClampScale; }
const zeus::CColor& GetChargeGaugePulseColorHigh() const { return x1b4_chargeGaugePulseColorHigh; } const zeus::CColor& GetChargeGaugePulseColorHigh() const override { return x1b4_chargeGaugePulseColorHigh; }
float GetFullChargeFadeDuration() const { return x1b8_fullChargeFadeDuration; } float GetFullChargeFadeDuration() const override { return x1b8_fullChargeFadeDuration; }
const zeus::CColor& GetOrbitPointColor() const { return x1bc_orbitPointColor; } const zeus::CColor& GetOrbitPointColor() const override { return x1bc_orbitPointColor; }
const zeus::CColor& GetCrosshairsColor() const { return x1c0_crosshairsColor; } const zeus::CColor& GetCrosshairsColor() const override { return x1c0_crosshairsColor; }
float GetCrosshairsScaleDuration() const { return x1c4_crosshairsScaleDur; } float GetCrosshairsScaleDuration() const override { return x1c4_crosshairsScaleDur; }
bool DrawOrbitPoint() const { return x1c8_drawOrbitPoint; } bool DrawOrbitPoint() const override { return x1c8_drawOrbitPoint; }
const zeus::CColor& GetChargeGaugePulseColorLow() const { return x1cc_chargeGaugePulseColorLow; } const zeus::CColor& GetChargeGaugePulseColorLow() const override { return x1cc_chargeGaugePulseColorLow; }
float GetChargeGaugePulsePeriod() const { return x1d0_chargeGaugePulsePeriod; } float GetChargeGaugePulsePeriod() const override { return x1d0_chargeGaugePulsePeriod; }
float GetReticuleClampMin() const { return x20c_reticuleClampMin; } float GetReticuleClampMin() const override { return x20c_reticuleClampMin; }
float GetReticuleClampMax() const { return x210_reticuleClampMax; } float GetReticuleClampMax() const override { return x210_reticuleClampMax; }
const zeus::CColor& GetXRayRetRingColor() const { return x214_xrayRetRingColor; } const zeus::CColor& GetXRayRetRingColor() const override { return x214_xrayRetRingColor; }
float GetReticuleScale() const { return x218_reticuleScale; } float GetReticuleScale() const override { return x218_reticuleScale; }
float GetScanTargetClampMin() const { return x21c_scanTargetClampMin; } float GetScanTargetClampMin() const override { return x21c_scanTargetClampMin; }
float GetScanTargetClampMax() const { return x220_scanTargetClampMax; } float GetScanTargetClampMax() const override { return x220_scanTargetClampMax; }
float GetAngularLagSpeed() const { return x224_angularLagSpeed; } float GetAngularLagSpeed() const override { return x224_angularLagSpeed; }
}; };
} // namespace DataSpec::DNAMP1 } // namespace DataSpec::DNAMP1

View File

@ -42,10 +42,10 @@ struct MREA {
public: public:
StreamReader(athena::io::IStreamReader& source, atUint32 blkCount); StreamReader(athena::io::IStreamReader& source, atUint32 blkCount);
void seek(atInt64 diff, athena::SeekOrigin whence); void seek(atInt64 diff, athena::SeekOrigin whence) override;
atUint64 position() const { return m_pos; } atUint64 position() const override { return m_pos; }
atUint64 length() const { return m_totalDecompLen; } atUint64 length() const override { return m_totalDecompLen; }
atUint64 readUBytesToBuf(void* buf, atUint64 len); atUint64 readUBytesToBuf(void* buf, atUint64 len) override;
void writeDecompInfos(athena::io::IStreamWriter& writer) const; void writeDecompInfos(athena::io::IStreamWriter& writer) const;
}; };

View File

@ -14,14 +14,14 @@ struct STRG : ISTRG {
std::unordered_map<FourCC, std::vector<std::u16string>*> langMap; std::unordered_map<FourCC, std::vector<std::u16string>*> langMap;
std::map<std::string, int32_t> names; std::map<std::string, int32_t> names;
int32_t lookupIdx(std::string_view name) const { int32_t lookupIdx(std::string_view name) const override {
auto search = names.find(name.data()); auto search = names.find(name.data());
if (search == names.end()) if (search == names.end())
return -1; return -1;
return search->second; return search->second;
} }
size_t count() const { size_t count() const override {
size_t retval = 0; size_t retval = 0;
for (const auto& item : langs) { for (const auto& item : langs) {
size_t sz = item.second.size(); size_t sz = item.second.size();
@ -30,19 +30,19 @@ struct STRG : ISTRG {
} }
return retval; return retval;
} }
std::string getUTF8(const FourCC& lang, size_t idx) const { std::string getUTF8(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
return hecl::Char16ToUTF8(search->second->at(idx)); return hecl::Char16ToUTF8(search->second->at(idx));
return std::string(); return std::string();
} }
std::u16string getUTF16(const FourCC& lang, size_t idx) const { std::u16string getUTF16(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
return search->second->at(idx); return search->second->at(idx);
return std::u16string(); return std::u16string();
} }
hecl::SystemString getSystemString(const FourCC& lang, size_t idx) const { hecl::SystemString getSystemString(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
#if HECL_UCS2 #if HECL_UCS2

View File

@ -135,7 +135,7 @@ struct CHAR : BigDNA {
Value<float> unk1; Value<float> unk1;
Value<atUint32> unk2; Value<atUint32> unk2;
void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) { void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) override {
out[animIdx] = {animName, animId, UniqueID64(), false}; out[animIdx] = {animName, animId, UniqueID64(), false};
} }
}; };
@ -148,7 +148,7 @@ struct CHAR : BigDNA {
Value<float> unkFloat; Value<float> unkFloat;
Value<atUint8> unk; Value<atUint8> unk;
void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) { void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) override {
animA.m_anim->gatherPrimitives(out); animA.m_anim->gatherPrimitives(out);
animB.m_anim->gatherPrimitives(out); animB.m_anim->gatherPrimitives(out);
} }
@ -162,7 +162,7 @@ struct CHAR : BigDNA {
Value<float> unkFloat; Value<float> unkFloat;
Value<atUint8> unk; Value<atUint8> unk;
void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) { void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) override {
animA.m_anim->gatherPrimitives(out); animA.m_anim->gatherPrimitives(out);
animB.m_anim->gatherPrimitives(out); animB.m_anim->gatherPrimitives(out);
} }
@ -179,7 +179,7 @@ struct CHAR : BigDNA {
}; };
Vector<Child, AT_DNA_COUNT(animCount)> children; Vector<Child, AT_DNA_COUNT(animCount)> children;
void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) { void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) override {
for (const auto& child : children) for (const auto& child : children)
child.anim.m_anim->gatherPrimitives(out); child.anim.m_anim->gatherPrimitives(out);
} }
@ -191,7 +191,7 @@ struct CHAR : BigDNA {
Value<atUint32> animCount; Value<atUint32> animCount;
Vector<MetaAnimFactory, AT_DNA_COUNT(animCount)> children; Vector<MetaAnimFactory, AT_DNA_COUNT(animCount)> children;
void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) { void gatherPrimitives(std::map<atUint32, DNAANCS::AnimationResInfo<UniqueID64>>& out) override {
for (const auto& child : children) for (const auto& child : children)
child.m_anim->gatherPrimitives(out); child.m_anim->gatherPrimitives(out);
} }

View File

@ -113,7 +113,7 @@ struct MaterialSet : BigDNA {
void constructNode(hecl::blender::PyOutStream& out, const PAKRouter<PAKBridge>& pakRouter, void constructNode(hecl::blender::PyOutStream& out, const PAKRouter<PAKBridge>& pakRouter,
const PAK::Entry& entry, const Material::ISection* prevSection, unsigned idx, const PAK::Entry& entry, const Material::ISection* prevSection, unsigned idx,
unsigned& texMapIdx, unsigned& texMtxIdx, unsigned& kColorIdx) const; unsigned& texMapIdx, unsigned& texMtxIdx, unsigned& kColorIdx) const override;
}; };
struct SectionCLR : ISection { struct SectionCLR : ISection {
SectionCLR() : ISection(ISection::Type::CLR) {} SectionCLR() : ISection(ISection::Type::CLR) {}
@ -128,7 +128,7 @@ struct MaterialSet : BigDNA {
void constructNode(hecl::blender::PyOutStream& out, const PAKRouter<PAKBridge>& pakRouter, void constructNode(hecl::blender::PyOutStream& out, const PAKRouter<PAKBridge>& pakRouter,
const PAK::Entry& entry, const Material::ISection* prevSection, unsigned idx, const PAK::Entry& entry, const Material::ISection* prevSection, unsigned idx,
unsigned& texMapIdx, unsigned& texMtxIdx, unsigned& kColorIdx) const; unsigned& texMapIdx, unsigned& texMtxIdx, unsigned& kColorIdx) const override;
}; };
struct SectionINT : ISection { struct SectionINT : ISection {
SectionINT() : ISection(ISection::Type::INT) {} SectionINT() : ISection(ISection::Type::INT) {}
@ -149,7 +149,7 @@ struct MaterialSet : BigDNA {
void constructNode(hecl::blender::PyOutStream& out, const PAKRouter<PAKBridge>& pakRouter, void constructNode(hecl::blender::PyOutStream& out, const PAKRouter<PAKBridge>& pakRouter,
const PAK::Entry& entry, const Material::ISection* prevSection, unsigned idx, const PAK::Entry& entry, const Material::ISection* prevSection, unsigned idx,
unsigned& texMapIdx, unsigned& texMtxIdx, unsigned& kColorIdx) const; unsigned& texMapIdx, unsigned& texMtxIdx, unsigned& kColorIdx) const override;
}; };
struct SectionFactory : BigDNA { struct SectionFactory : BigDNA {
AT_DECL_EXPLICIT_DNA AT_DECL_EXPLICIT_DNA

View File

@ -14,14 +14,14 @@ struct STRG : ISTRG {
std::unordered_map<DNAFourCC, std::vector<std::string>*> langMap; std::unordered_map<DNAFourCC, std::vector<std::string>*> langMap;
std::map<std::string, int32_t> names; std::map<std::string, int32_t> names;
int32_t lookupIdx(std::string_view name) const { int32_t lookupIdx(std::string_view name) const override {
auto search = names.find(name.data()); auto search = names.find(name.data());
if (search == names.end()) if (search == names.end())
return -1; return -1;
return search->second; return search->second;
} }
size_t count() const { size_t count() const override {
size_t retval = 0; size_t retval = 0;
for (const auto& item : langs) { for (const auto& item : langs) {
size_t sz = item.second.size(); size_t sz = item.second.size();
@ -30,19 +30,19 @@ struct STRG : ISTRG {
} }
return retval; return retval;
} }
std::string getUTF8(const FourCC& lang, size_t idx) const { std::string getUTF8(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
return search->second->at(idx); return search->second->at(idx);
return std::string(); return std::string();
} }
std::u16string getUTF16(const FourCC& lang, size_t idx) const { std::u16string getUTF16(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
return hecl::UTF8ToChar16(search->second->at(idx)); return hecl::UTF8ToChar16(search->second->at(idx));
return std::u16string(); return std::u16string();
} }
hecl::SystemString getSystemString(const FourCC& lang, size_t idx) const { hecl::SystemString getSystemString(const FourCC& lang, size_t idx) const override {
auto search = langMap.find(lang); auto search = langMap.find(lang);
if (search != langMap.end()) if (search != langMap.end())
#if HECL_UCS2 #if HECL_UCS2

View File

@ -196,7 +196,7 @@ struct TextureCache {
}; };
struct SpecMP1 : SpecBase { struct SpecMP1 : SpecBase {
bool checkStandaloneID(const char* id) const { return !memcmp(id, "GM8", 3); } bool checkStandaloneID(const char* id) const override { return !memcmp(id, "GM8", 3); }
std::vector<const nod::Node*> m_nonPaks; std::vector<const nod::Node*> m_nonPaks;
std::vector<DNAMP1::PAKBridge> m_paks; std::vector<DNAMP1::PAKBridge> m_paks;
@ -212,7 +212,7 @@ struct SpecMP1 : SpecBase {
std::unordered_map<hecl::Hash, hecl::blender::Matrix4f> m_mreaPathToXF; std::unordered_map<hecl::Hash, hecl::blender::Matrix4f> m_mreaPathToXF;
void setThreadProject() { void setThreadProject() override {
SpecBase::setThreadProject(); SpecBase::setThreadProject();
UniqueIDBridge::SetIDRestorer(&m_idRestorer); UniqueIDBridge::SetIDRestorer(&m_idRestorer);
} }
@ -292,7 +292,7 @@ struct SpecMP1 : SpecBase {
} }
bool checkFromStandaloneDisc(nod::DiscBase& disc, const hecl::SystemString& regstr, bool checkFromStandaloneDisc(nod::DiscBase& disc, const hecl::SystemString& regstr,
const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) { const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) override {
nod::IPartition* partition = disc.getDataPartition(); nod::IPartition* partition = disc.getDataPartition();
m_dolBuf = partition->getDOLBuf(); m_dolBuf = partition->getDOLBuf();
const char* buildInfo = (char*)memmem(m_dolBuf.get(), partition->getDOLSize(), "MetroidBuildInfo", 16) + 19; const char* buildInfo = (char*)memmem(m_dolBuf.get(), partition->getDOLSize(), "MetroidBuildInfo", 16) + 19;
@ -319,7 +319,7 @@ struct SpecMP1 : SpecBase {
} }
bool checkFromTrilogyDisc(nod::DiscBase& disc, const hecl::SystemString& regstr, bool checkFromTrilogyDisc(nod::DiscBase& disc, const hecl::SystemString& regstr,
const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) { const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) override {
std::vector<hecl::SystemString> mp1args; std::vector<hecl::SystemString> mp1args;
bool doExtract = false; bool doExtract = false;
if (args.size()) { if (args.size()) {
@ -378,7 +378,7 @@ struct SpecMP1 : SpecBase {
return true; return true;
} }
bool extractFromDisc(nod::DiscBase& disc, bool force, const hecl::MultiProgressPrinter& progress) { bool extractFromDisc(nod::DiscBase& disc, bool force, const hecl::MultiProgressPrinter& progress) override {
m_project.enableDataSpecs({_SYS_STR("MP1-PC")}); m_project.enableDataSpecs({_SYS_STR("MP1-PC")});
nod::ExtractionContext ctx = {force, nullptr}; nod::ExtractionContext ctx = {force, nullptr};
@ -459,17 +459,17 @@ struct SpecMP1 : SpecBase {
return true; return true;
} }
const hecl::Database::DataSpecEntry& getOriginalSpec() const { return SpecEntMP1; } const hecl::Database::DataSpecEntry& getOriginalSpec() const override { return SpecEntMP1; }
const hecl::Database::DataSpecEntry& getUnmodifiedSpec() const { return SpecEntMP1ORIG; } const hecl::Database::DataSpecEntry& getUnmodifiedSpec() const override { return SpecEntMP1ORIG; }
hecl::ProjectPath getWorking(class UniqueID32& id) { return m_pakRouter.getWorking(id); } hecl::ProjectPath getWorking(class UniqueID32& id) override { return m_pakRouter.getWorking(id); }
bool checkPathPrefix(const hecl::ProjectPath& path) const { bool checkPathPrefix(const hecl::ProjectPath& path) const override {
return path.getRelativePath().compare(0, 4, _SYS_STR("MP1/")) == 0; return path.getRelativePath().compare(0, 4, _SYS_STR("MP1/")) == 0;
} }
bool validateYAMLDNAType(athena::io::IStreamReader& fp) const { bool validateYAMLDNAType(athena::io::IStreamReader& fp) const override {
athena::io::YAMLDocReader reader; athena::io::YAMLDocReader reader;
yaml_parser_set_input(reader.getParser(), (yaml_read_handler_t*)athena::io::YAMLAthenaReader, &fp); yaml_parser_set_input(reader.getParser(), (yaml_read_handler_t*)athena::io::YAMLAthenaReader, &fp);
return reader.ClassTypeOperation([](const char* classType) { return reader.ClassTypeOperation([](const char* classType) {
@ -543,7 +543,7 @@ struct SpecMP1 : SpecBase {
}); });
} }
urde::SObjectTag buildTagFromPath(const hecl::ProjectPath& path) const { urde::SObjectTag buildTagFromPath(const hecl::ProjectPath& path) const override {
if (hecl::StringUtils::EndsWith(path.getAuxInfo(), _SYS_STR(".CINF"))) if (hecl::StringUtils::EndsWith(path.getAuxInfo(), _SYS_STR(".CINF")))
return {SBIG('CINF'), path.hash().val32()}; return {SBIG('CINF'), path.hash().val32()};
else if (hecl::StringUtils::EndsWith(path.getAuxInfo(), _SYS_STR(".CSKR"))) else if (hecl::StringUtils::EndsWith(path.getAuxInfo(), _SYS_STR(".CSKR")))
@ -708,7 +708,7 @@ struct SpecMP1 : SpecBase {
return {}; return {};
} }
void getTagListForFile(const char* pakName, std::vector<urde::SObjectTag>& out) const { void getTagListForFile(const char* pakName, std::vector<urde::SObjectTag>& out) const override {
std::string pathPrefix("MP1/"); std::string pathPrefix("MP1/");
pathPrefix += pakName; pathPrefix += pakName;
pathPrefix += '/'; pathPrefix += '/';
@ -720,7 +720,7 @@ struct SpecMP1 : SpecBase {
} }
void cookMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
Mesh mesh = ds.compileMesh(fast ? hecl::HMDLTopology::Triangles : hecl::HMDLTopology::TriStrips, m_pc ? 16 : -1); Mesh mesh = ds.compileMesh(fast ? hecl::HMDLTopology::Triangles : hecl::HMDLTopology::TriStrips, m_pc ? 16 : -1);
if (m_pc) if (m_pc)
@ -730,21 +730,21 @@ struct SpecMP1 : SpecBase {
} }
void cookColMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookColMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
std::vector<ColMesh> mesh = ds.compileColMeshes(); std::vector<ColMesh> mesh = ds.compileColMeshes();
ds.close(); ds.close();
DNAMP1::DCLN::Cook(out, mesh); DNAMP1::DCLN::Cook(out, mesh);
} }
void cookPathMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookPathMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
PathMesh mesh = ds.compilePathMesh(); PathMesh mesh = ds.compilePathMesh();
ds.close(); ds.close();
DNAMP1::PATH::Cook(out, in, mesh, btok); DNAMP1::PATH::Cook(out, in, mesh, btok);
} }
void cookActor(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookActor(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
if (hecl::StringUtils::EndsWith(in.getAuxInfo(), _SYS_STR(".CINF"))) { if (hecl::StringUtils::EndsWith(in.getAuxInfo(), _SYS_STR(".CINF"))) {
Actor actor = ds.compileActorCharacterOnly(); Actor actor = ds.compileActorCharacterOnly();
DNAMP1::ANCS::CookCINF(out, in, actor); DNAMP1::ANCS::CookCINF(out, in, actor);
@ -796,7 +796,7 @@ struct SpecMP1 : SpecBase {
} }
void cookArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
std::vector<std::string> meshes = ds.getMeshList(); std::vector<std::string> meshes = ds.getMeshList();
std::vector<Mesh> meshCompiles; std::vector<Mesh> meshCompiles;
meshCompiles.reserve(meshes.size()); meshCompiles.reserve(meshes.size());
@ -832,7 +832,7 @@ struct SpecMP1 : SpecBase {
} }
void cookWorld(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookWorld(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
if (hecl::StringUtils::EndsWith(in.getAuxInfo(), _SYS_STR("MAPW"))) { if (hecl::StringUtils::EndsWith(in.getAuxInfo(), _SYS_STR("MAPW"))) {
hecl::blender::World world = ds.compileWorld(); hecl::blender::World world = ds.compileWorld();
ds.close(); ds.close();
@ -849,7 +849,7 @@ struct SpecMP1 : SpecBase {
} }
void cookGuiFrame(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, void cookGuiFrame(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
auto data = ds.compileGuiFrame(0); auto data = ds.compileGuiFrame(0);
athena::io::MemoryReader r(data.data(), data.size()); athena::io::MemoryReader r(data.data(), data.size());
DNAMP1::FRME frme; DNAMP1::FRME frme;
@ -859,7 +859,7 @@ struct SpecMP1 : SpecBase {
} }
void cookYAML(const hecl::ProjectPath& out, const hecl::ProjectPath& in, athena::io::IStreamReader& fin, void cookYAML(const hecl::ProjectPath& out, const hecl::ProjectPath& in, athena::io::IStreamReader& fin,
FCookProgress progress) { FCookProgress progress) override {
athena::io::YAMLDocReader reader; athena::io::YAMLDocReader reader;
if (reader.parse(&fin)) { if (reader.parse(&fin)) {
std::string classStr = reader.readString("DNAType"); std::string classStr = reader.readString("DNAType");
@ -992,7 +992,7 @@ struct SpecMP1 : SpecBase {
progress(_SYS_STR("Done")); progress(_SYS_STR("Done"));
} }
void flattenDependenciesYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut) { void flattenDependenciesYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut) override {
athena::io::YAMLDocReader reader; athena::io::YAMLDocReader reader;
if (reader.parse(&fin)) { if (reader.parse(&fin)) {
std::string classStr = reader.readString("DNAType"); std::string classStr = reader.readString("DNAType");
@ -1045,7 +1045,7 @@ struct SpecMP1 : SpecBase {
} }
void flattenDependenciesANCSYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut, void flattenDependenciesANCSYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut,
int charIdx) { int charIdx) override {
athena::io::YAMLDocReader reader; athena::io::YAMLDocReader reader;
if (reader.parse(&fin)) { if (reader.parse(&fin)) {
std::string classStr = reader.readString("DNAType"); std::string classStr = reader.readString("DNAType");
@ -1073,7 +1073,8 @@ struct SpecMP1 : SpecBase {
void buildWorldPakList(const hecl::ProjectPath& worldPath, const hecl::ProjectPath& worldPathCooked, void buildWorldPakList(const hecl::ProjectPath& worldPath, const hecl::ProjectPath& worldPathCooked,
hecl::blender::Token& btok, athena::io::FileWriter& w, std::vector<urde::SObjectTag>& listOut, hecl::blender::Token& btok, athena::io::FileWriter& w, std::vector<urde::SObjectTag>& listOut,
atUint64& resTableOffset, std::unordered_map<urde::CAssetId, std::vector<uint8_t>>& mlvlData) { atUint64& resTableOffset,
std::unordered_map<urde::CAssetId, std::vector<uint8_t>>& mlvlData) override {
DNAMP1::MLVL mlvl; DNAMP1::MLVL mlvl;
{ {
athena::io::FileReader r(worldPathCooked.getAbsolutePath()); athena::io::FileReader r(worldPathCooked.getAbsolutePath());
@ -1231,7 +1232,7 @@ struct SpecMP1 : SpecBase {
} }
void buildPakList(hecl::blender::Token& btok, athena::io::FileWriter& w, const std::vector<urde::SObjectTag>& list, void buildPakList(hecl::blender::Token& btok, athena::io::FileWriter& w, const std::vector<urde::SObjectTag>& list,
const std::vector<std::pair<urde::SObjectTag, std::string>>& nameList, atUint64& resTableOffset) { const std::vector<std::pair<urde::SObjectTag, std::string>>& nameList, atUint64& resTableOffset) override {
w.writeUint32Big(m_pc ? 0x80030005 : 0x00030005); w.writeUint32Big(m_pc ? 0x80030005 : 0x00030005);
w.writeUint32Big(0); w.writeUint32Big(0);
@ -1259,7 +1260,7 @@ struct SpecMP1 : SpecBase {
} }
void writePakFileIndex(athena::io::FileWriter& w, const std::vector<urde::SObjectTag>& tags, void writePakFileIndex(athena::io::FileWriter& w, const std::vector<urde::SObjectTag>& tags,
const std::vector<std::tuple<size_t, size_t, bool>>& index, atUint64 resTableOffset) { const std::vector<std::tuple<size_t, size_t, bool>>& index, atUint64 resTableOffset) override {
w.seek(resTableOffset, athena::Begin); w.seek(resTableOffset, athena::Begin);
auto it = tags.begin(); auto it = tags.begin();
@ -1276,7 +1277,7 @@ struct SpecMP1 : SpecBase {
} }
std::pair<std::unique_ptr<uint8_t[]>, size_t> compressPakData(const urde::SObjectTag& tag, const uint8_t* data, std::pair<std::unique_ptr<uint8_t[]>, size_t> compressPakData(const urde::SObjectTag& tag, const uint8_t* data,
size_t len) { size_t len) override {
bool doCompress = false; bool doCompress = false;
switch (tag.type.toUint32()) { switch (tag.type.toUint32()) {
case SBIG('TXTR'): case SBIG('TXTR'):
@ -1309,18 +1310,18 @@ struct SpecMP1 : SpecBase {
return ret; return ret;
}; };
void cookAudioGroup(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) { void cookAudioGroup(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) override {
DNAMP1::AGSC::Cook(in, out); DNAMP1::AGSC::Cook(in, out);
progress(_SYS_STR("Done")); progress(_SYS_STR("Done"));
} }
void cookSong(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) { void cookSong(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) override {
DNAMP1::CSNG::Cook(in, out); DNAMP1::CSNG::Cook(in, out);
progress(_SYS_STR("Done")); progress(_SYS_STR("Done"));
} }
void cookMapArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, void cookMapArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
hecl::blender::MapArea mapa = ds.compileMapArea(); hecl::blender::MapArea mapa = ds.compileMapArea();
ds.close(); ds.close();
DNAMP1::MAPA::Cook(mapa, out); DNAMP1::MAPA::Cook(mapa, out);
@ -1328,7 +1329,7 @@ struct SpecMP1 : SpecBase {
} }
void cookMapUniverse(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, void cookMapUniverse(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
hecl::blender::MapUniverse mapu = ds.compileMapUniverse(); hecl::blender::MapUniverse mapu = ds.compileMapUniverse();
ds.close(); ds.close();
DNAMAPU::MAPU::Cook(mapu, out); DNAMAPU::MAPU::Cook(mapu, out);

View File

@ -100,7 +100,7 @@ struct OriginalIDs {
}; };
struct SpecMP2 : SpecBase { struct SpecMP2 : SpecBase {
bool checkStandaloneID(const char* id) const { bool checkStandaloneID(const char* id) const override {
if (!memcmp(id, "G2M", 3)) if (!memcmp(id, "G2M", 3))
return true; return true;
return false; return false;
@ -115,7 +115,7 @@ struct SpecMP2 : SpecBase {
PAKRouter<DNAMP2::PAKBridge> m_pakRouter; PAKRouter<DNAMP2::PAKBridge> m_pakRouter;
IDRestorer<UniqueID32> m_idRestorer; IDRestorer<UniqueID32> m_idRestorer;
void setThreadProject() { void setThreadProject() override {
SpecBase::setThreadProject(); SpecBase::setThreadProject();
UniqueIDBridge::SetIDRestorer(&m_idRestorer); UniqueIDBridge::SetIDRestorer(&m_idRestorer);
} }
@ -194,7 +194,7 @@ struct SpecMP2 : SpecBase {
} }
bool checkFromStandaloneDisc(nod::DiscBase& disc, const hecl::SystemString& regstr, bool checkFromStandaloneDisc(nod::DiscBase& disc, const hecl::SystemString& regstr,
const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) { const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) override {
nod::IPartition* partition = disc.getDataPartition(); nod::IPartition* partition = disc.getDataPartition();
std::unique_ptr<uint8_t[]> dolBuf = partition->getDOLBuf(); std::unique_ptr<uint8_t[]> dolBuf = partition->getDOLBuf();
const char* buildInfo = (char*)memmem(dolBuf.get(), partition->getDOLSize(), "MetroidBuildInfo", 16) + 19; const char* buildInfo = (char*)memmem(dolBuf.get(), partition->getDOLSize(), "MetroidBuildInfo", 16) + 19;
@ -218,7 +218,7 @@ struct SpecMP2 : SpecBase {
} }
bool checkFromTrilogyDisc(nod::DiscBase& disc, const hecl::SystemString& regstr, bool checkFromTrilogyDisc(nod::DiscBase& disc, const hecl::SystemString& regstr,
const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) { const std::vector<hecl::SystemString>& args, std::vector<ExtractReport>& reps) override {
std::vector<hecl::SystemString> mp2args; std::vector<hecl::SystemString> mp2args;
bool doExtract = false; bool doExtract = false;
if (args.size()) { if (args.size()) {
@ -277,7 +277,7 @@ struct SpecMP2 : SpecBase {
return true; return true;
} }
bool extractFromDisc(nod::DiscBase& disc, bool force, const hecl::MultiProgressPrinter& progress) { bool extractFromDisc(nod::DiscBase& disc, bool force, const hecl::MultiProgressPrinter& progress) override {
nod::ExtractionContext ctx = {force, nullptr}; nod::ExtractionContext ctx = {force, nullptr};
m_workPath.makeDir(); m_workPath.makeDir();
@ -335,17 +335,17 @@ struct SpecMP2 : SpecBase {
return true; return true;
} }
const hecl::Database::DataSpecEntry& getOriginalSpec() const { return SpecEntMP2; } const hecl::Database::DataSpecEntry& getOriginalSpec() const override { return SpecEntMP2; }
const hecl::Database::DataSpecEntry& getUnmodifiedSpec() const { return SpecEntMP2ORIG; } const hecl::Database::DataSpecEntry& getUnmodifiedSpec() const override { return SpecEntMP2ORIG; }
hecl::ProjectPath getWorking(class UniqueID32& id) { return m_pakRouter.getWorking(id); } hecl::ProjectPath getWorking(class UniqueID32& id) override { return m_pakRouter.getWorking(id); }
bool checkPathPrefix(const hecl::ProjectPath& path) const { bool checkPathPrefix(const hecl::ProjectPath& path) const override {
return path.getRelativePath().compare(0, 4, _SYS_STR("MP2/")) == 0; return path.getRelativePath().compare(0, 4, _SYS_STR("MP2/")) == 0;
} }
bool validateYAMLDNAType(athena::io::IStreamReader& fp) const { bool validateYAMLDNAType(athena::io::IStreamReader& fp) const override {
athena::io::YAMLDocReader reader; athena::io::YAMLDocReader reader;
yaml_parser_set_input(reader.getParser(), (yaml_read_handler_t*)athena::io::YAMLAthenaReader, &fp); yaml_parser_set_input(reader.getParser(), (yaml_read_handler_t*)athena::io::YAMLAthenaReader, &fp);
return reader.ClassTypeOperation([](const char* classType) { return reader.ClassTypeOperation([](const char* classType) {
@ -359,49 +359,49 @@ struct SpecMP2 : SpecBase {
}); });
} }
urde::SObjectTag buildTagFromPath(const hecl::ProjectPath& path) const { return {}; } urde::SObjectTag buildTagFromPath(const hecl::ProjectPath& path) const override { return {}; }
void cookMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) {} hecl::blender::Token& btok, FCookProgress progress) override {}
void cookColMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookColMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) {} hecl::blender::Token& btok, FCookProgress progress) override {}
void cookPathMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookPathMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) {} hecl::blender::Token& btok, FCookProgress progress) override {}
void cookActor(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookActor(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) {} hecl::blender::Token& btok, FCookProgress progress) override {}
void cookArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) {} hecl::blender::Token& btok, FCookProgress progress) override {}
void cookWorld(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast, void cookWorld(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, bool fast,
hecl::blender::Token& btok, FCookProgress progress) {} hecl::blender::Token& btok, FCookProgress progress) override {}
void cookGuiFrame(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, void cookGuiFrame(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds,
hecl::blender::Token& btok, FCookProgress progress) {} hecl::blender::Token& btok, FCookProgress progress) override {}
void cookYAML(const hecl::ProjectPath& out, const hecl::ProjectPath& in, athena::io::IStreamReader& fin, void cookYAML(const hecl::ProjectPath& out, const hecl::ProjectPath& in, athena::io::IStreamReader& fin,
FCookProgress progress) {} FCookProgress progress) override {}
void flattenDependenciesYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut) {} void flattenDependenciesYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut) override {}
void flattenDependenciesANCSYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut, void flattenDependenciesANCSYAML(athena::io::IStreamReader& fin, std::vector<hecl::ProjectPath>& pathsOut,
int charIdx) {} int charIdx) override {}
void cookAudioGroup(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) { void cookAudioGroup(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) override {
DNAMP2::AGSC::Cook(in, out); DNAMP2::AGSC::Cook(in, out);
progress(_SYS_STR("Done")); progress(_SYS_STR("Done"));
} }
void cookSong(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) { void cookSong(const hecl::ProjectPath& out, const hecl::ProjectPath& in, FCookProgress progress) override {
DNAMP1::CSNG::Cook(in, out); DNAMP1::CSNG::Cook(in, out);
progress(_SYS_STR("Done")); progress(_SYS_STR("Done"));
} }
void cookMapArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, void cookMapArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
hecl::blender::MapArea mapa = ds.compileMapArea(); hecl::blender::MapArea mapa = ds.compileMapArea();
ds.close(); ds.close();
DNAMP2::MAPA::Cook(mapa, out); DNAMP2::MAPA::Cook(mapa, out);
@ -409,7 +409,7 @@ struct SpecMP2 : SpecBase {
} }
void cookMapUniverse(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds, void cookMapUniverse(const hecl::ProjectPath& out, const hecl::ProjectPath& in, BlendStream& ds,
hecl::blender::Token& btok, FCookProgress progress) { hecl::blender::Token& btok, FCookProgress progress) override {
hecl::blender::MapUniverse mapu = ds.compileMapUniverse(); hecl::blender::MapUniverse mapu = ds.compileMapUniverse();
ds.close(); ds.close();
DNAMAPU::MAPU::Cook(mapu, out); DNAMAPU::MAPU::Cook(mapu, out);

Some files were not shown because too many files have changed in this diff Show More