diff --git a/DataSpec/DNAMP3/CHAR.cpp b/DataSpec/DNAMP3/CHAR.cpp index 2db5297db..4b7986b50 100644 --- a/DataSpec/DNAMP3/CHAR.cpp +++ b/DataSpec/DNAMP3/CHAR.cpp @@ -12,6 +12,7 @@ void CHAR::AnimationInfo::EVNT::SFXEvent::read(Athena::io::IStreamReader& reader unk1 = reader.readUint32Big(); unk2 = reader.readUint32Big(); unk3 = reader.readUint32Big(); + reader.enumerateBig(unk3Vals, unk3); extraType = reader.readUint32Big(); if (extraType == 1) extraFloat = reader.readFloatBig(); @@ -26,6 +27,7 @@ void CHAR::AnimationInfo::EVNT::SFXEvent::write(Athena::io::IStreamWriter& write writer.writeUint32Big(unk1); writer.writeUint32Big(unk2); writer.writeUint32Big(unk3); + writer.enumerateBig(unk3Vals); writer.writeUint32Big(extraType); if (extraType == 1) writer.writeFloatBig(extraFloat); @@ -40,6 +42,7 @@ void CHAR::AnimationInfo::EVNT::SFXEvent::fromYAML(Athena::io::YAMLDocReader& re unk1 = reader.readUint32("unk1"); unk2 = reader.readUint32("unk2"); unk3 = reader.readUint32("unk3"); + reader.enumerate("unk3Vals", unk3Vals, unk3); extraType = reader.readUint32("extraType"); if (extraType == 1) extraFloat = reader.readFloat("extraFloat"); @@ -52,6 +55,7 @@ void CHAR::AnimationInfo::EVNT::SFXEvent::toYAML(Athena::io::YAMLDocWriter& writ writer.writeUint32("unk1", unk1); writer.writeUint32("unk2", unk2); writer.writeUint32("unk3", unk3); + writer.enumerate("unk3Vals", unk3Vals); writer.writeUint32("extraType", extraType); if (extraType == 1) writer.writeFloat("extraFloat", extraFloat); diff --git a/DataSpec/DNAMP3/CHAR.hpp b/DataSpec/DNAMP3/CHAR.hpp index ff36f1c29..6df0f877a 100644 --- a/DataSpec/DNAMP3/CHAR.hpp +++ b/DataSpec/DNAMP3/CHAR.hpp @@ -72,7 +72,7 @@ struct CHAR : BigYAML struct EVNT : BigYAML { DECL_YAML - Value eventBinding; + Value eventIdx; String<-1> eventName; struct EventBase : BigYAML @@ -117,6 +117,7 @@ struct CHAR : BigYAML Value unk1; Value unk2; Value unk3; + std::vector unk3Vals; Value extraType; Value extraFloat; };