mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-08 16:24:55 +00:00
New code style refactor
This commit is contained in:
@@ -4,17 +4,14 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct AIJumpPoint : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
Value<float> unknown1;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct AIJumpPoint : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
Value<float> unknown1;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -3,20 +3,17 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
struct AIKeyframe : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
Value<float> unknown6;
|
||||
struct AIKeyframe : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
Value<float> unknown6;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -1,37 +1,31 @@
|
||||
#include "Actor.hpp"
|
||||
#include "hecl/Blender/Connection.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
zeus::CAABox Actor::getVISIAABB(hecl::blender::Token& btok) const
|
||||
{
|
||||
hecl::blender::Connection& conn = btok.getBlenderConnection();
|
||||
zeus::CAABox aabbOut;
|
||||
zeus::CAABox Actor::getVISIAABB(hecl::blender::Token& btok) const {
|
||||
hecl::blender::Connection& conn = btok.getBlenderConnection();
|
||||
zeus::CAABox aabbOut;
|
||||
|
||||
if (model)
|
||||
{
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(model);
|
||||
conn.openBlend(path);
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
else if (animationParameters.animationCharacterSet)
|
||||
{
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(
|
||||
animationParameters.animationCharacterSet);
|
||||
conn.openBlend(path.getWithExtension(_SYS_STR(".blend"), true));
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
if (model) {
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(model);
|
||||
conn.openBlend(path);
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
} else if (animationParameters.animationCharacterSet) {
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(animationParameters.animationCharacterSet);
|
||||
conn.openBlend(path.getWithExtension(_SYS_STR(".blend"), true));
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
|
||||
if (aabbOut.min.x() > aabbOut.max.x())
|
||||
return {};
|
||||
if (aabbOut.min.x() > aabbOut.max.x())
|
||||
return {};
|
||||
|
||||
zeus::CTransform xf = ConvertEditorEulerToTransform4f(scale, orientation, location);
|
||||
return aabbOut.getTransformedAABox(xf);
|
||||
zeus::CTransform xf = ConvertEditorEulerToTransform4f(scale, orientation, location);
|
||||
return aabbOut.getTransformedAABox(xf);
|
||||
}
|
||||
|
||||
}
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -3,67 +3,56 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Actor : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name SO_NAME_SPECPROP();
|
||||
Value<atVec3f> location SO_LOCATION_SPECPROP();
|
||||
Value<atVec3f> orientation SO_ORIENTATION_SPECPROP();
|
||||
Value<atVec3f> scale SO_SCALE_SPECPROP();
|
||||
Value<atVec3f> collisionExtent SO_COLLISION_EXTENT_SPECPROP();
|
||||
Value<atVec3f> collisionOffset SO_COLLISION_OFFSET_SPECPROP();
|
||||
Value<float> mass;
|
||||
Value<float> zMomentum;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> looping;
|
||||
Value<bool> snow;
|
||||
Value<bool> solid;
|
||||
Value<bool> cameraPassthrough;
|
||||
Value<bool> active;
|
||||
Value<atUint32> shaderIdx;
|
||||
Value<float> xrayAlpha;
|
||||
Value<bool> noThermalHotZ;
|
||||
Value<bool> castsShadow;
|
||||
Value<bool> scaleAdvancementDelta;
|
||||
Value<bool> materialFlag54;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Actor : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name SO_NAME_SPECPROP();
|
||||
Value<atVec3f> location SO_LOCATION_SPECPROP();
|
||||
Value<atVec3f> orientation SO_ORIENTATION_SPECPROP();
|
||||
Value<atVec3f> scale SO_SCALE_SPECPROP();
|
||||
Value<atVec3f> collisionExtent SO_COLLISION_EXTENT_SPECPROP();
|
||||
Value<atVec3f> collisionOffset SO_COLLISION_OFFSET_SPECPROP();
|
||||
Value<float> mass;
|
||||
Value<float> zMomentum;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> looping;
|
||||
Value<bool> snow;
|
||||
Value<bool> solid;
|
||||
Value<bool> cameraPassthrough;
|
||||
Value<bool> active;
|
||||
Value<atUint32> shaderIdx;
|
||||
Value<float> xrayAlpha;
|
||||
Value<bool> noThermalHotZ;
|
||||
Value<bool> castsShadow;
|
||||
Value<bool> scaleAdvancementDelta;
|
||||
Value<bool> materialFlag54;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const;
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,56 +4,45 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ActorContraption : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> unknown1;
|
||||
Value<atVec3f> scanOffset;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo;
|
||||
Value<bool> active; // needs verification
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ActorContraption : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> unknown1;
|
||||
Value<atVec3f> scanOffset;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo;
|
||||
Value<bool> active; // needs verification
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,19 +4,16 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ActorKeyframe : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> animationId;
|
||||
Value<bool> looping;
|
||||
Value<float> lifetime;
|
||||
Value<bool> active;
|
||||
Value<atUint32> fadeOut;
|
||||
Value<float> totalPlayback;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ActorKeyframe : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> animationId;
|
||||
Value<bool> looping;
|
||||
Value<float> lifetime;
|
||||
Value<bool> active;
|
||||
Value<atUint32> fadeOut;
|
||||
Value<float> totalPlayback;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,18 +4,15 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ActorRotate : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> rotationOffset;
|
||||
Value<float> timeScale;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ActorRotate : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> rotationOffset;
|
||||
Value<float> timeScale;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> active;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,51 +4,41 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct AmbientAI : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> collisionExtent;
|
||||
Value<atVec3f> collisionOffset;
|
||||
Value<float> mass;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> alertRange;
|
||||
Value<float> impactRange;
|
||||
Value<atInt32> alertAnim;
|
||||
Value<atInt32> impactAnim;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct AmbientAI : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> collisionExtent;
|
||||
Value<atVec3f> collisionOffset;
|
||||
Value<float> mass;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> alertRange;
|
||||
Value<float> impactRange;
|
||||
Value<atInt32> alertAnim;
|
||||
Value<atInt32> impactAnim;
|
||||
Value<bool> active;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,34 +4,24 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct AreaAttributes : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
enum class EWeatherType : atUint32
|
||||
{
|
||||
None,
|
||||
Snow,
|
||||
Rain
|
||||
};
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct AreaAttributes : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
enum class EWeatherType : atUint32 { None, Snow, Rain };
|
||||
|
||||
Value<atUint32> unknown1;
|
||||
Value<bool> skyboxEnabled;
|
||||
Value<EWeatherType> weather;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
UniqueID32 skybox;
|
||||
Value<atUint32> unknown6;
|
||||
Value<atUint32> unknown1;
|
||||
Value<bool> skyboxEnabled;
|
||||
Value<EWeatherType> weather;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
UniqueID32 skybox;
|
||||
Value<atUint32> unknown6;
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(skybox, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(skybox, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,61 +4,49 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct AtomicAlpha : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 wpsc;
|
||||
UniqueID32 model;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct AtomicAlpha : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 wpsc;
|
||||
UniqueID32 model;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,74 +4,61 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct AtomicBeta : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 elsc;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 part;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
Value<atUint32> unknown9;
|
||||
Value<float> unknown10;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct AtomicBeta : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 elsc;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 part;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
Value<atUint32> unknown9;
|
||||
Value<float> unknown10;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (wpsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (part)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (wpsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (part) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(part, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(part, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,144 +4,121 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Babygoth : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 wpsc2;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo3;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
UniqueID32 cmdlShelless;
|
||||
UniqueID32 cskrShelless;
|
||||
Value<float> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
Value<atUint32> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
UniqueID32 texture;
|
||||
Value<atUint32> unknown11;
|
||||
UniqueID32 particle6;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Babygoth : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 wpsc2;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo3;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
UniqueID32 cmdlShelless;
|
||||
UniqueID32 cskrShelless;
|
||||
Value<float> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
Value<atUint32> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
UniqueID32 texture;
|
||||
Value<atUint32> unknown11;
|
||||
UniqueID32 particle6;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter);
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter);
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
|
||||
if (cmdlShelless && cskrShelless)
|
||||
{
|
||||
charAssoc.m_cmdlRigs[cmdlShelless] = std::make_pair(cskrShelless, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrShelless] = std::make_pair(
|
||||
patternedInfo.animationParameters.animationCharacterSet, "ATTACH.SHELLESS.CSKR");
|
||||
charAssoc.addAttachmentRig(patternedInfo.animationParameters.animationCharacterSet,
|
||||
{}, cmdlShelless, "SHELLESS");
|
||||
}
|
||||
if (cmdlShelless && cskrShelless) {
|
||||
charAssoc.m_cmdlRigs[cmdlShelless] = std::make_pair(cskrShelless, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrShelless] =
|
||||
std::make_pair(patternedInfo.animationParameters.animationCharacterSet, "ATTACH.SHELLESS.CSKR");
|
||||
charAssoc.addAttachmentRig(patternedInfo.animationParameters.animationCharacterSet, {}, cmdlShelless, "SHELLESS");
|
||||
}
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (cmdlShelless)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlShelless);
|
||||
ent->name = name + "_emodel";
|
||||
}
|
||||
if (cskrShelless)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cskrShelless);
|
||||
ent->name = name + "_eskin";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (texture)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_tex";
|
||||
}
|
||||
if (particle6)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (cmdlShelless) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlShelless);
|
||||
ent->name = name + "_emodel";
|
||||
}
|
||||
if (cskrShelless) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cskrShelless);
|
||||
ent->name = name + "_eskin";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (texture) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_tex";
|
||||
}
|
||||
if (particle6) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(cmdlShelless, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrShelless, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(cmdlShelless, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrShelless, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,21 +4,18 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct BallTrigger : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<atVec3f> unknown5;
|
||||
Value<bool> unknown6;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct BallTrigger : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<atVec3f> unknown5;
|
||||
Value<bool> unknown6;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,57 +4,46 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Beetle : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo;
|
||||
Value<atVec3f> unknown2;
|
||||
Value<float> unknown3;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
UniqueID32 model;
|
||||
Value<atUint32> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Beetle : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo;
|
||||
Value<atVec3f> unknown2;
|
||||
Value<float> unknown3;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
UniqueID32 model;
|
||||
Value<atUint32> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,95 +4,78 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct BloodFlower : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 wpsc1;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
DamageInfo damageInfo3;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 particle5;
|
||||
Value<atUint32> unknown2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct BloodFlower : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 wpsc1;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
DamageInfo damageInfo3;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 particle5;
|
||||
Value<atUint32> unknown2;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,78 +4,63 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Burrower : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle3;
|
||||
Value<atUint32> unknown; // always FF
|
||||
UniqueID32 particle4;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Burrower : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle3;
|
||||
Value<atUint32> unknown; // always FF
|
||||
UniqueID32 particle4;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,27 +4,24 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Camera : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
Value<float> shotDuration;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
Value<bool> unknown6;
|
||||
Value<bool> unknown7;
|
||||
Value<bool> disableInput;
|
||||
Value<bool> unknown9;
|
||||
Value<float> fov;
|
||||
Value<bool> unknown11;
|
||||
Value<bool> unknown12;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Camera : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
Value<float> shotDuration;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
Value<bool> unknown6;
|
||||
Value<bool> unknown7;
|
||||
Value<bool> disableInput;
|
||||
Value<bool> unknown9;
|
||||
Value<float> fov;
|
||||
Value<bool> unknown11;
|
||||
Value<bool> unknown12;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,19 +4,16 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CameraBlurKeyframe : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atUint32> btype;
|
||||
Value<float> amount;
|
||||
Value<atUint32> unk;
|
||||
Value<float> timeIn;
|
||||
Value<float> timeOut;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CameraBlurKeyframe : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atUint32> btype;
|
||||
Value<float> amount;
|
||||
Value<atUint32> unk;
|
||||
Value<float> timeIn;
|
||||
Value<float> timeOut;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,37 +4,30 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CameraFilterKeyframe : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atUint32> ftype;
|
||||
Value<atUint32> shape;
|
||||
Value<atUint32> filterIdx;
|
||||
Value<atUint32> unk;
|
||||
DNAColor color;
|
||||
Value<float> timeIn;
|
||||
Value<float> timeOut;
|
||||
UniqueID32 texture;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CameraFilterKeyframe : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atUint32> ftype;
|
||||
Value<atUint32> shape;
|
||||
Value<atUint32> filterIdx;
|
||||
Value<atUint32> unk;
|
||||
DNAColor color;
|
||||
Value<float> timeIn;
|
||||
Value<float> timeOut;
|
||||
UniqueID32 texture;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (texture)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (texture) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,66 +4,60 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CameraHint : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CameraHint : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
Value<atUint32> priority;
|
||||
Value<atUint32> behaviour;
|
||||
struct CameraHintParameters : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> calculateCamPos; // 0x1
|
||||
Value<bool> chaseAllowed; // 0x2
|
||||
Value<bool> boostAllowed; // 0x4
|
||||
Value<bool> obscureAvoidance; // 0x8
|
||||
Value<bool> volumeCollider; // 0x10
|
||||
Value<bool> applyImmediately; // 0x20
|
||||
Value<bool> lookAtBall; // 0x40
|
||||
Value<bool> hintDistanceSelection; // 0x80
|
||||
Value<bool> hintDistanceSelfPos; // 0x100
|
||||
Value<bool> controlInterpolation; // 0x200
|
||||
Value<bool> sinusoidalInterpolation; // 0x400
|
||||
Value<bool> sinusoidalInterpolationHintless; // 0x800
|
||||
Value<bool> clampVelocity; // 0x1000
|
||||
Value<bool> skipCinematic; // 0x2000
|
||||
Value<bool> noElevationInterp; // 0x4000
|
||||
Value<bool> directElevation; // 0x8000
|
||||
Value<bool> overrideLookDir; // 0x10000
|
||||
Value<bool> noElevationVelClamp; // 0x20000
|
||||
Value<bool> calculateTransformFromPrevCam; // 0x40000
|
||||
Value<bool> noSpline; // 0x80000
|
||||
Value<bool> unknown21; // 0x100000
|
||||
Value<bool> unknown22; // 0x200000
|
||||
} cameraHintParameters;
|
||||
|
||||
struct BoolFloat : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<bool> active;
|
||||
Value<atUint32> priority;
|
||||
Value<atUint32> behaviour;
|
||||
struct CameraHintParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> calculateCamPos; // 0x1
|
||||
Value<bool> chaseAllowed; // 0x2
|
||||
Value<bool> boostAllowed; // 0x4
|
||||
Value<bool> obscureAvoidance; // 0x8
|
||||
Value<bool> volumeCollider; // 0x10
|
||||
Value<bool> applyImmediately; // 0x20
|
||||
Value<bool> lookAtBall; // 0x40
|
||||
Value<bool> hintDistanceSelection; // 0x80
|
||||
Value<bool> hintDistanceSelfPos; // 0x100
|
||||
Value<bool> controlInterpolation; // 0x200
|
||||
Value<bool> sinusoidalInterpolation; // 0x400
|
||||
Value<bool> sinusoidalInterpolationHintless; // 0x800
|
||||
Value<bool> clampVelocity; // 0x1000
|
||||
Value<bool> skipCinematic; // 0x2000
|
||||
Value<bool> noElevationInterp; // 0x4000
|
||||
Value<bool> directElevation; // 0x8000
|
||||
Value<bool> overrideLookDir; // 0x10000
|
||||
Value<bool> noElevationVelClamp; // 0x20000
|
||||
Value<bool> calculateTransformFromPrevCam; // 0x40000
|
||||
Value<bool> noSpline; // 0x80000
|
||||
Value<bool> unknown21; // 0x100000
|
||||
Value<bool> unknown22; // 0x200000
|
||||
} cameraHintParameters;
|
||||
|
||||
struct BoolFloat : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<bool> active;
|
||||
Value<float> value;
|
||||
} minDist, maxDist, backwardsDist; // 0x400000, 0x800000, 0x1000000
|
||||
struct BoolVec3f : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<bool> active;
|
||||
Value<atVec3f> value;
|
||||
} lookAtOffset, chaseLookAtOffset; // 0x2000000, 0x4000000
|
||||
Value<atVec3f> ballToCam;
|
||||
BoolFloat fov, attitudeRange, azimuthRange, anglePerSecond; // 0x8000000, 0x10000000, 0x20000000, 0x40000000
|
||||
Value<float> clampVelRange;
|
||||
Value<float> clampRotRange;
|
||||
BoolFloat elevation; // 0x80000000
|
||||
Value<float> interpolateTime;
|
||||
Value<float> clampVelTime;
|
||||
Value<float> controlInterpDur;
|
||||
Value<float> value;
|
||||
} minDist, maxDist, backwardsDist; // 0x400000, 0x800000, 0x1000000
|
||||
struct BoolVec3f : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<bool> active;
|
||||
Value<atVec3f> value;
|
||||
} lookAtOffset, chaseLookAtOffset; // 0x2000000, 0x4000000
|
||||
Value<atVec3f> ballToCam;
|
||||
BoolFloat fov, attitudeRange, azimuthRange, anglePerSecond; // 0x8000000, 0x10000000, 0x20000000, 0x40000000
|
||||
Value<float> clampVelRange;
|
||||
Value<float> clampRotRange;
|
||||
BoolFloat elevation; // 0x80000000
|
||||
Value<float> interpolateTime;
|
||||
Value<float> clampVelTime;
|
||||
Value<float> controlInterpDur;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,19 +4,16 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CameraHintTrigger : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> unknown3;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CameraHintTrigger : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> unknown3;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,20 +4,17 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CameraPitchVolume : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CameraPitchVolume : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,21 +4,18 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CameraShaker : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<float> xMag;
|
||||
Value<float> xB;
|
||||
Value<float> yMag;
|
||||
Value<float> yB;
|
||||
Value<float> zMag;
|
||||
Value<float> zB;
|
||||
Value<float> duration;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CameraShaker : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<float> xMag;
|
||||
Value<float> xB;
|
||||
Value<float> yMag;
|
||||
Value<float> yB;
|
||||
Value<float> zMag;
|
||||
Value<float> zB;
|
||||
Value<float> duration;
|
||||
Value<bool> active;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,18 +4,15 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CameraWaypoint : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CameraWaypoint : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,84 +4,71 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ChozoGhost : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo2;
|
||||
BehaveChance BehaveChance1;
|
||||
BehaveChance BehaveChance2;
|
||||
BehaveChance BehaveChance3;
|
||||
Value<atUint32> sound1;
|
||||
Value<float> unknown5;
|
||||
Value<atUint32> sound2;
|
||||
Value<atUint32> sound3;
|
||||
Value<atUint32> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle;
|
||||
Value<atUint32> soundId4;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<atUint32> unknown12;
|
||||
Value<atUint32> unknown13;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ChozoGhost : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo2;
|
||||
BehaveChance BehaveChance1;
|
||||
BehaveChance BehaveChance2;
|
||||
BehaveChance BehaveChance3;
|
||||
Value<atUint32> sound1;
|
||||
Value<float> unknown5;
|
||||
Value<atUint32> sound2;
|
||||
Value<atUint32> sound3;
|
||||
Value<atUint32> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle;
|
||||
Value<atUint32> soundId4;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<atUint32> unknown12;
|
||||
Value<atUint32> unknown13;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,24 +4,21 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ColorModulate : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec4f> colorA;
|
||||
Value<atVec4f> colorB;
|
||||
Value<atUint32> blendMode;
|
||||
Value<float> timeA2B;
|
||||
Value<float> timeB2A;
|
||||
Value<bool> doReverse;
|
||||
Value<bool> resetTargetWhenDone;
|
||||
Value<bool> depthCompare;
|
||||
Value<bool> depthUpdate;
|
||||
Value<bool> depthBackwards;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ColorModulate : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec4f> colorA;
|
||||
Value<atVec4f> colorB;
|
||||
Value<atUint32> blendMode;
|
||||
Value<float> timeA2B;
|
||||
Value<float> timeB2A;
|
||||
Value<bool> doReverse;
|
||||
Value<bool> resetTargetWhenDone;
|
||||
Value<bool> depthCompare;
|
||||
Value<bool> depthUpdate;
|
||||
Value<bool> depthBackwards;
|
||||
Value<bool> active;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,16 +4,13 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ControllerAction : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atUint32> command;
|
||||
Value<bool> deactivateOnClose;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ControllerAction : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atUint32> command;
|
||||
Value<bool> deactivateOnClose;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,17 +4,14 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Counter : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> startValue; // needs verification
|
||||
Value<atUint32> maxValue;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Counter : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> startValue; // needs verification
|
||||
Value<atUint32> maxValue;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,21 +4,18 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct CoverPoint : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct CoverPoint : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,58 +4,48 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct DamageableTrigger : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<atUint32> faceFlag;
|
||||
UniqueID32 patternTex1;
|
||||
UniqueID32 patternTex2;
|
||||
UniqueID32 colorTex;
|
||||
Value<bool> lockOn;
|
||||
Value<bool> active;
|
||||
VisorParameters visorParameters;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct DamageableTrigger : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<atUint32> faceFlag;
|
||||
UniqueID32 patternTex1;
|
||||
UniqueID32 patternTex2;
|
||||
UniqueID32 colorTex;
|
||||
Value<bool> lockOn;
|
||||
Value<bool> active;
|
||||
VisorParameters visorParameters;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (patternTex1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternTex1);
|
||||
ent->name = name + "_patternTex1";
|
||||
}
|
||||
if (patternTex2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternTex2);
|
||||
ent->name = name + "_patternTex2";
|
||||
}
|
||||
if (colorTex)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(colorTex);
|
||||
ent->name = name + "_colorTex";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (patternTex1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternTex1);
|
||||
ent->name = name + "_patternTex1";
|
||||
}
|
||||
if (patternTex2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(patternTex2);
|
||||
ent->name = name + "_patternTex2";
|
||||
}
|
||||
if (colorTex) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(colorTex);
|
||||
ent->name = name + "_colorTex";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(patternTex1, pathsOut);
|
||||
g_curSpec->flattenDependencies(patternTex2, pathsOut);
|
||||
g_curSpec->flattenDependencies(colorTex, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(patternTex1, pathsOut);
|
||||
g_curSpec->flattenDependencies(patternTex2, pathsOut);
|
||||
g_curSpec->flattenDependencies(colorTex, pathsOut);
|
||||
}
|
||||
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const
|
||||
{
|
||||
zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f;
|
||||
zeus::CVector3f loc(location);
|
||||
return zeus::CAABox(loc - halfExtent, loc + halfExtent);
|
||||
}
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const {
|
||||
zeus::CVector3f halfExtent = zeus::CVector3f(volume) / 2.f;
|
||||
zeus::CVector3f loc(location);
|
||||
return zeus::CAABox(loc - halfExtent, loc + halfExtent);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,58 +4,47 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Debris : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<float> zImpulse;
|
||||
Value<atVec3f> velocity;
|
||||
DNAColor endsColor;
|
||||
Value<float> mass;
|
||||
Value<float> restitution;
|
||||
Value<float> duration;
|
||||
Value<atUint32> scaleType;
|
||||
Value<bool> randomAngImpulse;
|
||||
UniqueID32 model;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle;
|
||||
Value<atVec3f> particleScale;
|
||||
Value<bool> b1;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Debris : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<float> zImpulse;
|
||||
Value<atVec3f> velocity;
|
||||
DNAColor endsColor;
|
||||
Value<float> mass;
|
||||
Value<float> restitution;
|
||||
Value<float> duration;
|
||||
Value<atUint32> scaleType;
|
||||
Value<bool> randomAngImpulse;
|
||||
UniqueID32 model;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle;
|
||||
Value<atVec3f> particleScale;
|
||||
Value<bool> b1;
|
||||
Value<bool> active;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,91 +4,78 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct DebrisExtended : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<float> linConeAngle;
|
||||
Value<float> linMinMag;
|
||||
Value<float> linMaxMag;
|
||||
Value<float> angMinMag;
|
||||
Value<float> angMaxMag;
|
||||
Value<float> minDuration;
|
||||
Value<float> maxDuration;
|
||||
Value<float> colorInT;
|
||||
Value<float> colorOutT;
|
||||
DNAColor color;
|
||||
DNAColor endsColor;
|
||||
Value<float> scaleOutT;
|
||||
Value<atVec3f> endScale;
|
||||
Value<float> restitution;
|
||||
Value<float> downwardSpeed;
|
||||
Value<atVec3f> localOffset;
|
||||
UniqueID32 model;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
Value<atVec3f> particle1Scale;
|
||||
Value<bool> particle1GlobalTranslation;
|
||||
Value<bool> deferDeleteTillParticle1Done;
|
||||
Value<atUint32> particle1Or;
|
||||
UniqueID32 particle2;
|
||||
Value<atVec3f> particle2Scale;
|
||||
Value<bool> particle2GlobalTranslation;
|
||||
Value<bool> deferDeleteTillParticle2Done;
|
||||
Value<atUint32> particle2Or;
|
||||
UniqueID32 particle3;
|
||||
Value<atVec3f> particle3Scale;
|
||||
Value<atUint32> particle3Or;
|
||||
Value<bool> solid;
|
||||
Value<bool> dieOnProjectile;
|
||||
Value<bool> noBounce;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct DebrisExtended : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<float> linConeAngle;
|
||||
Value<float> linMinMag;
|
||||
Value<float> linMaxMag;
|
||||
Value<float> angMinMag;
|
||||
Value<float> angMaxMag;
|
||||
Value<float> minDuration;
|
||||
Value<float> maxDuration;
|
||||
Value<float> colorInT;
|
||||
Value<float> colorOutT;
|
||||
DNAColor color;
|
||||
DNAColor endsColor;
|
||||
Value<float> scaleOutT;
|
||||
Value<atVec3f> endScale;
|
||||
Value<float> restitution;
|
||||
Value<float> downwardSpeed;
|
||||
Value<atVec3f> localOffset;
|
||||
UniqueID32 model;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
Value<atVec3f> particle1Scale;
|
||||
Value<bool> particle1GlobalTranslation;
|
||||
Value<bool> deferDeleteTillParticle1Done;
|
||||
Value<atUint32> particle1Or;
|
||||
UniqueID32 particle2;
|
||||
Value<atVec3f> particle2Scale;
|
||||
Value<bool> particle2GlobalTranslation;
|
||||
Value<bool> deferDeleteTillParticle2Done;
|
||||
Value<atUint32> particle2Or;
|
||||
UniqueID32 particle3;
|
||||
Value<atVec3f> particle3Scale;
|
||||
Value<atUint32> particle3Or;
|
||||
Value<bool> solid;
|
||||
Value<bool> dieOnProjectile;
|
||||
Value<bool> noBounce;
|
||||
Value<bool> active;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,16 +4,13 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct DebugCameraWaypoint : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atUint32> unknown1;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct DebugCameraWaypoint : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atUint32> unknown1;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,20 +4,17 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct DistanceFog : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> fogMode;
|
||||
Value<atVec4f> fogColor; // CColor
|
||||
Value<atVec2f> range;
|
||||
Value<float> colorDelta;
|
||||
Value<atVec2f> rangeDelta;
|
||||
Value<bool> expl;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct DistanceFog : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> fogMode;
|
||||
Value<atVec4f> fogColor; // CColor
|
||||
Value<atVec2f> range;
|
||||
Value<float> colorDelta;
|
||||
Value<atVec2f> rangeDelta;
|
||||
Value<bool> expl;
|
||||
Value<bool> active;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,19 +4,16 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Dock : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
Value<atUint32> dock;
|
||||
Value<atUint32> room;
|
||||
Value<bool> loadConnected;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Dock : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
Value<atUint32> dock;
|
||||
Value<atUint32> room;
|
||||
Value<bool> loadConnected;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,15 +4,12 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct DockAreaChange : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<bool> unknown2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct DockAreaChange : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<bool> unknown2;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -1,29 +1,25 @@
|
||||
#include "DoorArea.hpp"
|
||||
#include "hecl/Blender/Connection.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
zeus::CAABox DoorArea::getVISIAABB(hecl::blender::Token& btok) const
|
||||
{
|
||||
hecl::blender::Connection& conn = btok.getBlenderConnection();
|
||||
zeus::CAABox aabbOut;
|
||||
zeus::CAABox DoorArea::getVISIAABB(hecl::blender::Token& btok) const {
|
||||
hecl::blender::Connection& conn = btok.getBlenderConnection();
|
||||
zeus::CAABox aabbOut;
|
||||
|
||||
if (animationParameters.animationCharacterSet)
|
||||
{
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(
|
||||
animationParameters.animationCharacterSet);
|
||||
conn.openBlend(path.getWithExtension(_SYS_STR(".blend"), true));
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
if (animationParameters.animationCharacterSet) {
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(animationParameters.animationCharacterSet);
|
||||
conn.openBlend(path.getWithExtension(_SYS_STR(".blend"), true));
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
|
||||
if (aabbOut.min.x() > aabbOut.max.x())
|
||||
return {};
|
||||
if (aabbOut.min.x() > aabbOut.max.x())
|
||||
return {};
|
||||
|
||||
zeus::CTransform xf = ConvertEditorEulerToTransform4f(scale, orientation, location);
|
||||
return aabbOut.getTransformedAABox(xf);
|
||||
zeus::CTransform xf = ConvertEditorEulerToTransform4f(scale, orientation, location);
|
||||
return aabbOut.getTransformedAABox(xf);
|
||||
}
|
||||
|
||||
}
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,51 +4,41 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct DoorArea : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<atVec3f> orbitPos;
|
||||
Value<atVec3f> collisionExtent;
|
||||
Value<atVec3f> collisionOffset;
|
||||
Value<bool> active;
|
||||
Value<bool> open;
|
||||
Value<bool> projectilesCollide;
|
||||
Value<float> animationLength;
|
||||
Value<bool> isMorphballDoor;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct DoorArea : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<atVec3f> orbitPos;
|
||||
Value<atVec3f> collisionExtent;
|
||||
Value<atVec3f> collisionOffset;
|
||||
Value<bool> active;
|
||||
Value<bool> open;
|
||||
Value<bool> projectilesCollide;
|
||||
Value<float> animationLength;
|
||||
Value<bool> isMorphballDoor;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const;
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,96 +4,85 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Drone : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<float> unknown2;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo1;
|
||||
Value<atUint32> unknown3;
|
||||
DamageInfo damageInfo2;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
FlareDefinition flareDefinition1;
|
||||
FlareDefinition flareDefinition2;
|
||||
FlareDefinition flareDefinition3;
|
||||
FlareDefinition flareDefinition4;
|
||||
FlareDefinition flareDefinition5;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<float> unknown16;
|
||||
Value<float> unknown17;
|
||||
Value<float> unknown18;
|
||||
Value<float> unknown19;
|
||||
Value<float> unknown20;
|
||||
Value<float> unknown21;
|
||||
Value<float> unknown22;
|
||||
Value<float> unknown23;
|
||||
Value<float> unknown24;
|
||||
Value<float> unknown25;
|
||||
UniqueID32 crsc;
|
||||
Value<float> unknon26;
|
||||
Value<float> unknon27;
|
||||
Value<float> unknon28;
|
||||
Value<float> unknon29;
|
||||
Value<atUint32> sound; // verification needed
|
||||
Value<bool> unknown30;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Drone : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<float> unknown2;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo1;
|
||||
Value<atUint32> unknown3;
|
||||
DamageInfo damageInfo2;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
FlareDefinition flareDefinition1;
|
||||
FlareDefinition flareDefinition2;
|
||||
FlareDefinition flareDefinition3;
|
||||
FlareDefinition flareDefinition4;
|
||||
FlareDefinition flareDefinition5;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<float> unknown16;
|
||||
Value<float> unknown17;
|
||||
Value<float> unknown18;
|
||||
Value<float> unknown19;
|
||||
Value<float> unknown20;
|
||||
Value<float> unknown21;
|
||||
Value<float> unknown22;
|
||||
Value<float> unknown23;
|
||||
Value<float> unknown24;
|
||||
Value<float> unknown25;
|
||||
UniqueID32 crsc;
|
||||
Value<float> unknon26;
|
||||
Value<float> unknon27;
|
||||
Value<float> unknon28;
|
||||
Value<float> unknon29;
|
||||
Value<atUint32> sound; // verification needed
|
||||
Value<bool> unknown30;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (crsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(crsc);
|
||||
ent->name = name + "_crsc";
|
||||
}
|
||||
flareDefinition1.nameIDs(pakRouter, name + "_flare1");
|
||||
flareDefinition2.nameIDs(pakRouter, name + "_flare2");
|
||||
flareDefinition3.nameIDs(pakRouter, name + "_flare3");
|
||||
flareDefinition4.nameIDs(pakRouter, name + "_flare4");
|
||||
flareDefinition5.nameIDs(pakRouter, name + "_flare5");
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (crsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(crsc);
|
||||
ent->name = name + "_crsc";
|
||||
}
|
||||
flareDefinition1.nameIDs(pakRouter, name + "_flare1");
|
||||
flareDefinition2.nameIDs(pakRouter, name + "_flare2");
|
||||
flareDefinition3.nameIDs(pakRouter, name + "_flare3");
|
||||
flareDefinition4.nameIDs(pakRouter, name + "_flare4");
|
||||
flareDefinition5.nameIDs(pakRouter, name + "_flare5");
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(crsc, pathsOut);
|
||||
flareDefinition1.depIDs(pathsOut);
|
||||
flareDefinition2.depIDs(pathsOut);
|
||||
flareDefinition3.depIDs(pathsOut);
|
||||
flareDefinition4.depIDs(pathsOut);
|
||||
flareDefinition5.depIDs(pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(crsc, pathsOut);
|
||||
flareDefinition1.depIDs(pathsOut);
|
||||
flareDefinition2.depIDs(pathsOut);
|
||||
flareDefinition3.depIDs(pathsOut);
|
||||
flareDefinition4.depIDs(pathsOut);
|
||||
flareDefinition5.depIDs(pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,57 +4,49 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Effect : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
UniqueID32 part;
|
||||
UniqueID32 elsc;
|
||||
Value<bool> hotInThermal;
|
||||
Value<bool> noTimerUnlessAreaOccluded;
|
||||
Value<bool> rebuildSystemsOnActivate;
|
||||
Value<bool> active;
|
||||
Value<bool> useRateInverseCamDist;
|
||||
Value<float> rateInverseCamDist;
|
||||
Value<float> rateInverseCamDistRate;
|
||||
Value<float> duration;
|
||||
Value<float> durationResetWhileVisible;
|
||||
Value<bool> useRateCamDistRange;
|
||||
Value<float> rateCamDistRangeMin;
|
||||
Value<float> rateCamDistRangeMax;
|
||||
Value<float> rateCamDistRangeFarRate;
|
||||
Value<bool> combatVisorVisible;
|
||||
Value<bool> thermalVisorVisible;
|
||||
Value<bool> xrayVisorVisible;
|
||||
Value<bool> dieWhenSystemsDone;
|
||||
LightParameters lightParameters;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Effect : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
UniqueID32 part;
|
||||
UniqueID32 elsc;
|
||||
Value<bool> hotInThermal;
|
||||
Value<bool> noTimerUnlessAreaOccluded;
|
||||
Value<bool> rebuildSystemsOnActivate;
|
||||
Value<bool> active;
|
||||
Value<bool> useRateInverseCamDist;
|
||||
Value<float> rateInverseCamDist;
|
||||
Value<float> rateInverseCamDistRate;
|
||||
Value<float> duration;
|
||||
Value<float> durationResetWhileVisible;
|
||||
Value<bool> useRateCamDistRange;
|
||||
Value<float> rateCamDistRangeMin;
|
||||
Value<float> rateCamDistRangeMax;
|
||||
Value<float> rateCamDistRangeFarRate;
|
||||
Value<bool> combatVisorVisible;
|
||||
Value<bool> thermalVisorVisible;
|
||||
Value<bool> xrayVisorVisible;
|
||||
Value<bool> dieWhenSystemsDone;
|
||||
LightParameters lightParameters;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (part)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (part) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(part);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(part, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(part, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,39 +4,32 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ElectroMagneticPulse : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
UniqueID32 particle;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ElectroMagneticPulse : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
UniqueID32 particle;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,137 +4,120 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct ElitePirate : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters1;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
UniqueID32 particle1;
|
||||
Value<atUint32> soundID1;
|
||||
ActorParameters actorParameters2;
|
||||
AnimationParameters animationParameters;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> soundID2;
|
||||
UniqueID32 model;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 particle6;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atUint32> soundID3;
|
||||
Value<atUint32> soundID4;
|
||||
UniqueID32 particle7;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> soundID5;
|
||||
Value<bool> unknown17;
|
||||
Value<bool> unknown18;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct ElitePirate : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters1;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
UniqueID32 particle1;
|
||||
Value<atUint32> soundID1;
|
||||
ActorParameters actorParameters2;
|
||||
AnimationParameters animationParameters;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> soundID2;
|
||||
UniqueID32 model;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 particle6;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atUint32> soundID3;
|
||||
Value<atUint32> soundID4;
|
||||
UniqueID32 particle7;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> soundID5;
|
||||
Value<bool> unknown17;
|
||||
Value<bool> unknown18;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (particle6)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters1.nameIDs(pakRouter, name + "_actp1");
|
||||
actorParameters2.nameIDs(pakRouter, name + "_actp2");
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (particle6) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters1.nameIDs(pakRouter, name + "_actp1");
|
||||
actorParameters2.nameIDs(pakRouter, name + "_actp2");
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters1.depIDs(pathsOut, lazyOut);
|
||||
actorParameters2.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters1.depIDs(pathsOut, lazyOut);
|
||||
actorParameters2.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters1.scanIDs(scansOut);
|
||||
actorParameters2.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const {
|
||||
actorParameters1.scanIDs(scansOut);
|
||||
actorParameters2.scanIDs(scansOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,79 +4,65 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct EnergyBall : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<atUint32> unknown1;
|
||||
Value<float> unknown2;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown3;
|
||||
UniqueID32 texture;
|
||||
Value<atUint32> soundID1;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> soundID2;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
UniqueID32 particle2;
|
||||
DamageInfo damageInfo2;
|
||||
Value<float> unknown6;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct EnergyBall : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<atUint32> unknown1;
|
||||
Value<float> unknown2;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown3;
|
||||
UniqueID32 texture;
|
||||
Value<atUint32> soundID1;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> soundID2;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
UniqueID32 particle2;
|
||||
DamageInfo damageInfo2;
|
||||
Value<float> unknown6;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (texture)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (texture) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,16 +4,13 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct EnvFxDensityController : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct EnvFxDensityController : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,86 +4,71 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Eyeball : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atUint32> unknown5; // always ff
|
||||
Value<atUint32> unknown6; // always ff
|
||||
Value<atUint32> unknown7; // always ff
|
||||
Value<atUint32> unknown8;
|
||||
Value<bool> unknown9;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Eyeball : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atUint32> unknown5; // always ff
|
||||
Value<atUint32> unknown6; // always ff
|
||||
Value<atUint32> unknown7; // always ff
|
||||
Value<atUint32> unknown8;
|
||||
Value<bool> unknown9;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,44 +4,34 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct FireFlea : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<float> unknown3;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct FireFlea : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<float> unknown3;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,89 +4,78 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct FishCloud : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atVec4f> unknown17; // CColor
|
||||
Value<bool> unknown18;
|
||||
Value<float> unknown19;
|
||||
UniqueID32 deathParticle1;
|
||||
Value<atUint32> deathParticle1Frames;
|
||||
UniqueID32 deathParticle2;
|
||||
Value<atUint32> deathParticle2Frames;
|
||||
UniqueID32 deathParticle3;
|
||||
Value<atUint32> deathParticle3Frames;
|
||||
UniqueID32 deathParticle4;
|
||||
Value<atUint32> deathParticle4Frames;
|
||||
Value<atUint32> deathSFX;
|
||||
Value<bool> unknown29;
|
||||
Value<bool> unknown30;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct FishCloud : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> volume;
|
||||
Value<bool> unknown1;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atVec4f> unknown17; // CColor
|
||||
Value<bool> unknown18;
|
||||
Value<float> unknown19;
|
||||
UniqueID32 deathParticle1;
|
||||
Value<atUint32> deathParticle1Frames;
|
||||
UniqueID32 deathParticle2;
|
||||
Value<atUint32> deathParticle2Frames;
|
||||
UniqueID32 deathParticle3;
|
||||
Value<atUint32> deathParticle3Frames;
|
||||
UniqueID32 deathParticle4;
|
||||
Value<atUint32> deathParticle4Frames;
|
||||
Value<atUint32> deathSFX;
|
||||
Value<bool> unknown29;
|
||||
Value<bool> unknown30;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
if (deathParticle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle1);
|
||||
ent->name = name + "_deathParticle1";
|
||||
}
|
||||
if (deathParticle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle2);
|
||||
ent->name = name + "_deathParticle2";
|
||||
}
|
||||
if (deathParticle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle3);
|
||||
ent->name = name + "_deathParticle3";
|
||||
}
|
||||
if (deathParticle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle4);
|
||||
ent->name = name + "_deathParticle4";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
if (deathParticle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle1);
|
||||
ent->name = name + "_deathParticle1";
|
||||
}
|
||||
if (deathParticle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle2);
|
||||
ent->name = name + "_deathParticle2";
|
||||
}
|
||||
if (deathParticle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle3);
|
||||
ent->name = name + "_deathParticle3";
|
||||
}
|
||||
if (deathParticle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(deathParticle4);
|
||||
ent->name = name + "_deathParticle4";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle4, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(deathParticle4, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,19 +4,16 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct FishCloudModifier : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> position;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct FishCloudModifier : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> position;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,88 +4,76 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Flaahgra : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters1;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo3;
|
||||
ActorParameters actorParameters2;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
AnimationParameters animationParameters;
|
||||
UniqueID32 dependencyGroup;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Flaahgra : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters1;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo3;
|
||||
ActorParameters actorParameters2;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
AnimationParameters animationParameters;
|
||||
UniqueID32 dependencyGroup;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (dependencyGroup)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dependencyGroup);
|
||||
ent->name = name + "_dgrp";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters1.nameIDs(pakRouter, name + "_actp1");
|
||||
actorParameters2.nameIDs(pakRouter, name + "_actp2");
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (dependencyGroup) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dependencyGroup);
|
||||
ent->name = name + "_dgrp";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters1.nameIDs(pakRouter, name + "_actp1");
|
||||
actorParameters2.nameIDs(pakRouter, name + "_actp2");
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(dependencyGroup, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters1.depIDs(pathsOut, lazyOut);
|
||||
actorParameters2.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(dependencyGroup, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters1.depIDs(pathsOut, lazyOut);
|
||||
actorParameters2.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters1.scanIDs(scansOut);
|
||||
actorParameters2.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const {
|
||||
actorParameters1.scanIDs(scansOut);
|
||||
actorParameters2.scanIDs(scansOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,41 +4,31 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct FlaahgraTentacle : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct FlaahgraTentacle : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,45 +4,35 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct FlickerBat : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct FlickerBat : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,113 +4,96 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct FlyingPirate : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
Value<atUint32> unknown4;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 wpsc3;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo3;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<atUint32> unknown11;
|
||||
Value<atUint32> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atUint32> unknown17;
|
||||
Value<float> unknown18;
|
||||
Value<float> unknown19;
|
||||
Value<float> unknown20;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct FlyingPirate : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
Value<atUint32> unknown4;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 wpsc3;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo3;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<atUint32> unknown11;
|
||||
Value<atUint32> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atUint32> unknown17;
|
||||
Value<float> unknown18;
|
||||
Value<float> unknown19;
|
||||
Value<float> unknown20;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (wpsc3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc3);
|
||||
ent->name = name + "_wpsc3";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (wpsc3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc3);
|
||||
ent->name = name + "_wpsc3";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,19 +4,16 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct FogVolume : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atVec4f> unkonwn3;
|
||||
Value<bool> unknown4;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct FogVolume : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> volume;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atVec4f> unkonwn3;
|
||||
Value<bool> unknown4;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,51 +4,41 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Geemer : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
Value<atUint32> unknown9;
|
||||
Value<atUint32> unknown10;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Geemer : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
Value<atUint32> unknown9;
|
||||
Value<atUint32> unknown10;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,20 +4,17 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Generator : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> spawnCount;
|
||||
Value<bool> noReuseFollowers;
|
||||
Value<bool> noInheritXf;
|
||||
Value<atVec3f> offset;
|
||||
Value<bool> active;
|
||||
Value<float> minScale;
|
||||
Value<float> maxScale;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Generator : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> spawnCount;
|
||||
Value<bool> noReuseFollowers;
|
||||
Value<bool> noInheritXf;
|
||||
Value<atVec3f> offset;
|
||||
Value<bool> active;
|
||||
Value<float> minScale;
|
||||
Value<float> maxScale;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,17 +4,14 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct GrapplePoint : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
GrappleParameters grappleParameters;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct GrapplePoint : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
GrappleParameters grappleParameters;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,137 +4,118 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct GunTurret : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> unknown2;
|
||||
Value<atVec3f> scanOffset;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<float> unknown16;
|
||||
Value<bool> unknown17;
|
||||
UniqueID32 unknown18;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 particle6;
|
||||
UniqueID32 particle7;
|
||||
Value<atUint32> unknown19;
|
||||
Value<atUint32> unknown20;
|
||||
Value<atUint32> unknown21;
|
||||
Value<atUint32> unknown22;
|
||||
Value<atUint32> unknown23;
|
||||
Value<atUint32> unknown24;
|
||||
UniqueID32 model;
|
||||
Value<float> unknown25;
|
||||
Value<atUint32> unknown26;
|
||||
Value<atUint32> unknown27;
|
||||
Value<atUint32> unknown28;
|
||||
Value<float> unknown29;
|
||||
Value<bool> unknown30;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct GunTurret : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> unknown2;
|
||||
Value<atVec3f> scanOffset;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<float> unknown16;
|
||||
Value<bool> unknown17;
|
||||
UniqueID32 unknown18;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 particle6;
|
||||
UniqueID32 particle7;
|
||||
Value<atUint32> unknown19;
|
||||
Value<atUint32> unknown20;
|
||||
Value<atUint32> unknown21;
|
||||
Value<atUint32> unknown22;
|
||||
Value<atUint32> unknown23;
|
||||
Value<atUint32> unknown24;
|
||||
UniqueID32 model;
|
||||
Value<float> unknown25;
|
||||
Value<atUint32> unknown26;
|
||||
Value<atUint32> unknown27;
|
||||
Value<atUint32> unknown28;
|
||||
Value<float> unknown29;
|
||||
Value<bool> unknown30;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (unknown18)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown18);
|
||||
ent->name = name + "_unknown18";
|
||||
}
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (particle6)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (unknown18) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown18);
|
||||
ent->name = name + "_unknown18";
|
||||
}
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (particle6) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(unknown18, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(unknown18, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,33 +4,26 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct HUDMemo : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<float> firstMessageTimer;
|
||||
Value<bool> unknown1;
|
||||
Value<atUint32> memoType;
|
||||
UniqueID32 message;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct HUDMemo : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<float> firstMessageTimer;
|
||||
Value<bool> unknown1;
|
||||
Value<atUint32> memoType;
|
||||
UniqueID32 message;
|
||||
Value<bool> active;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (message)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(message);
|
||||
ent->name = name + "_message";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (message) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(message);
|
||||
ent->name = name + "_message";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(message, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(message, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -1,141 +1,174 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "ScriptTypes.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace priv
|
||||
{
|
||||
static const ScriptObjectSpec ActorEnt = {0x00, []() -> IScriptObject* {return new struct Actor();}};
|
||||
static const ScriptObjectSpec WaypointEnt = {0x02, []() -> IScriptObject* {return new struct Waypoint();}};
|
||||
static const ScriptObjectSpec DoorAreaEnt = {0x03, []() -> IScriptObject* {return new struct DoorArea();}};
|
||||
static const ScriptObjectSpec TriggerEnt = {0x04, []() -> IScriptObject* {return new struct Trigger(); }};
|
||||
static const ScriptObjectSpec TimerEnt = {0x05, []() -> IScriptObject* {return new struct Timer(); }};
|
||||
static const ScriptObjectSpec CounterEnt = {0x06, []() -> IScriptObject* {return new struct Counter(); }};
|
||||
static const ScriptObjectSpec EffectEnt = {0x07, []() -> IScriptObject* {return new struct Effect(); }};
|
||||
static const ScriptObjectSpec PlatformEnt = {0x08, []() -> IScriptObject* {return new struct Platform(); }};
|
||||
static const ScriptObjectSpec SoundEnt = {0x09, []() -> IScriptObject* {return new struct Sound(); }};
|
||||
static const ScriptObjectSpec GeneratorEnt = {0x0A, []() -> IScriptObject* {return new struct Generator();}};
|
||||
static const ScriptObjectSpec DockEnt = {0x0B, []() -> IScriptObject* {return new struct Dock(); }};
|
||||
static const ScriptObjectSpec CameraEnt = {0x0C, []() -> IScriptObject* {return new struct Camera(); }};
|
||||
static const ScriptObjectSpec CameraWaypointEnt = {0x0D, []() -> IScriptObject* {return new struct CameraWaypoint(); }};
|
||||
static const ScriptObjectSpec NewIntroBossEnt = {0x0E, []() -> IScriptObject* {return new struct NewIntroBoss(); }};
|
||||
static const ScriptObjectSpec SpawnPointEnt = {0x0F, []() -> IScriptObject* {return new struct SpawnPoint(); }};
|
||||
static const ScriptObjectSpec CameraHintEnt = {0x10, []() -> IScriptObject* {return new struct CameraHint(); }};
|
||||
static const ScriptObjectSpec PickupEnt = {0x11, []() -> IScriptObject* {return new struct Pickup(); }};
|
||||
static const ScriptObjectSpec MemoryRelayEnt = {0x13, []() -> IScriptObject* {return new struct MemoryRelay(); }};
|
||||
static const ScriptObjectSpec RandomRelayEnt = {0x14, []() -> IScriptObject* {return new struct RandomRelay(); }};
|
||||
static const ScriptObjectSpec RelayEnt = {0x15, []() -> IScriptObject* {return new struct Relay(); }};
|
||||
static const ScriptObjectSpec BeetleEnt = {0x16, []() -> IScriptObject* {return new struct Beetle(); }};
|
||||
static const ScriptObjectSpec HUDMemoEnt = {0x17, []() -> IScriptObject* {return new struct HUDMemo(); }};
|
||||
static const ScriptObjectSpec CameraFilterKeyframeEnt = {0x18, []() -> IScriptObject* {return new struct CameraFilterKeyframe(); }};
|
||||
static const ScriptObjectSpec CameraBlurKeyframeEnt = {0x19, []() -> IScriptObject* {return new struct CameraBlurKeyframe(); }};
|
||||
static const ScriptObjectSpec DamageableTriggerEnt = {0x1A, []() -> IScriptObject* {return new struct DamageableTrigger(); }};
|
||||
static const ScriptObjectSpec DebrisEnt = {0x1B, []() -> IScriptObject* {return new struct Debris(); }};
|
||||
static const ScriptObjectSpec CameraShakerEnt = {0x1C, []() -> IScriptObject* {return new struct CameraShaker(); }};
|
||||
static const ScriptObjectSpec ActorKeyframeEnt = {0x1D, []() -> IScriptObject* {return new struct ActorKeyframe(); }};
|
||||
static const ScriptObjectSpec WaterEnt = {0x20, []() -> IScriptObject* {return new struct Water(); }};
|
||||
static const ScriptObjectSpec WarwaspEnt = {0x21, []() -> IScriptObject* {return new struct Warwasp(); }};
|
||||
static const ScriptObjectSpec SpacePirateEnt = {0x24, []() -> IScriptObject* {return new struct SpacePirate(); }};
|
||||
static const ScriptObjectSpec FlyingPirateEnt = {0x25, []() -> IScriptObject* {return new struct FlyingPirate(); }};
|
||||
static const ScriptObjectSpec ElitePirateEnt = {0x26, []() -> IScriptObject* {return new struct ElitePirate(); }};
|
||||
static const ScriptObjectSpec MetroidBetaEnt = {0x27, []() -> IScriptObject* {return new struct MetroidBeta(); }};
|
||||
static const ScriptObjectSpec ChozoGhostEnt = {0x28, []() -> IScriptObject* {return new struct ChozoGhost(); }};
|
||||
static const ScriptObjectSpec CoverPointEnt = {0x2A, []() -> IScriptObject* {return new struct CoverPoint(); }};
|
||||
static const ScriptObjectSpec SpiderBallWaypointEnt = {0x2C, []() -> IScriptObject* {return new struct SpiderBallWaypoint(); }};
|
||||
static const ScriptObjectSpec BloodFlowerEnt = {0x2D, []() -> IScriptObject* {return new struct BloodFlower(); }};
|
||||
static const ScriptObjectSpec FlickerBatEnt = {0x2E, []() -> IScriptObject* {return new struct FlickerBat(); }};
|
||||
static const ScriptObjectSpec PathCameraEnt = {0x2F, []() -> IScriptObject* {return new struct PathCamera(); }};
|
||||
static const ScriptObjectSpec GrapplePointEnt = {0x30, []() -> IScriptObject* {return new struct GrapplePoint(); }};
|
||||
static const ScriptObjectSpec PuddleSporeEnt = {0x31, []() -> IScriptObject* {return new struct PuddleSpore(); }};
|
||||
static const ScriptObjectSpec DebugCameraWaypointEnt = {0x32, []() -> IScriptObject* {return new struct DebugCameraWaypoint(); }};
|
||||
static const ScriptObjectSpec SpiderBallAttractionSurfaceEnt = {0x33, []() -> IScriptObject* {return new struct SpiderBallAttractionSurface(); }};
|
||||
static const ScriptObjectSpec PuddleToadGammaEnt = {0x34, []() -> IScriptObject* {return new struct PuddleToadGamma(); }};
|
||||
static const ScriptObjectSpec DistanceFogEnt = {0x35, []() -> IScriptObject* {return new struct DistanceFog(); }};
|
||||
static const ScriptObjectSpec FireFleaEnt = {0x36, []() -> IScriptObject* {return new struct FireFlea(); }};
|
||||
static const ScriptObjectSpec MetareeAlphaEnt = {0x37, []() -> IScriptObject* {return new struct MetareeAlpha(); }};
|
||||
static const ScriptObjectSpec DockAreaChangeEnt = {0x38, []() -> IScriptObject* {return new struct DockAreaChange(); }};
|
||||
static const ScriptObjectSpec ActorRotateEnt = {0x39, []() -> IScriptObject* {return new struct ActorRotate(); }};
|
||||
static const ScriptObjectSpec SpecialFunctionEnt = {0x3A, []() -> IScriptObject* {return new struct SpecialFunction(); }};
|
||||
static const ScriptObjectSpec SpankWeedEnt = {0x3B, []() -> IScriptObject* {return new struct SpankWeed(); }};
|
||||
static const ScriptObjectSpec ParasiteEnt = {0x3D, []() -> IScriptObject* {return new struct Parasite(); }};
|
||||
static const ScriptObjectSpec PlayerHintEnt = {0x3E, []() -> IScriptObject* {return new struct PlayerHint(); }};
|
||||
static const ScriptObjectSpec RipperEnt = {0x3F, []() -> IScriptObject* {return new struct Ripper(); }};
|
||||
static const ScriptObjectSpec PickupGeneratorEnt = {0x40, []() -> IScriptObject* {return new struct PickupGenerator(); }};
|
||||
static const ScriptObjectSpec AIKeyframeEnt = {0x41, []() -> IScriptObject* {return new struct AIKeyframe(); }};
|
||||
static const ScriptObjectSpec PointOfInterestEnt = {0x42, []() -> IScriptObject* {return new struct PointOfInterest(); }};
|
||||
static const ScriptObjectSpec DroneEnt = {0x43, []() -> IScriptObject* {return new struct Drone(); }};
|
||||
static const ScriptObjectSpec MetroidAlphaEnt = {0x44, []() -> IScriptObject* {return new struct MetroidAlpha(); }};
|
||||
static const ScriptObjectSpec DebrisExtendedEnt = {0x45, []() -> IScriptObject* {return new struct DebrisExtended(); }};
|
||||
static const ScriptObjectSpec SteamEnt = {0x46, []() -> IScriptObject* {return new struct Steam(); }};
|
||||
static const ScriptObjectSpec RippleEnt = {0x47, []() -> IScriptObject* {return new struct Ripple(); }};
|
||||
static const ScriptObjectSpec BallTriggerEnt = {0x48, []() -> IScriptObject* {return new struct BallTrigger(); }};
|
||||
static const ScriptObjectSpec TargetingPointEnt = {0x49, []() -> IScriptObject* {return new struct TargetingPoint(); }};
|
||||
static const ScriptObjectSpec ElectroMagneticPulseEnt = {0x4A, []() -> IScriptObject* {return new struct ElectroMagneticPulse(); }};
|
||||
static const ScriptObjectSpec IceSheegothEnt = {0x4B, []() -> IScriptObject* {return new struct IceSheegoth(); }};
|
||||
static const ScriptObjectSpec PlayerActorEnt = {0x4C, []() -> IScriptObject* {return new struct PlayerActor(); }};
|
||||
static const ScriptObjectSpec FlaahgraEnt = {0x4D, []() -> IScriptObject* {return new struct Flaahgra(); }};
|
||||
static const ScriptObjectSpec AreaAttributesEnt = {0x4E, []() -> IScriptObject* {return new struct AreaAttributes(); }};
|
||||
static const ScriptObjectSpec FishCloudEnt = {0x4F, []() -> IScriptObject* {return new struct FishCloud(); }};
|
||||
static const ScriptObjectSpec FishCloudModifierEnt = {0x50, []() -> IScriptObject* {return new struct FishCloudModifier(); }};
|
||||
static const ScriptObjectSpec VisorFlareEnt = {0x51, []() -> IScriptObject* {return new struct VisorFlare(); }};
|
||||
static const ScriptObjectSpec WorldTeleporterx52Ent = {0x52, []() -> IScriptObject* {return new struct WorldTeleporter(); }};
|
||||
static const ScriptObjectSpec VisorGooEnt = {0x53, []() -> IScriptObject* {return new struct VisorGoo(); }};
|
||||
static const ScriptObjectSpec JellyZapEnt = {0x54, []() -> IScriptObject* {return new struct JellyZap(); }};
|
||||
static const ScriptObjectSpec ControllerActionEnt = {0x55, []() -> IScriptObject* {return new struct ControllerAction(); }};
|
||||
static const ScriptObjectSpec SwitchEnt = {0x56, []() -> IScriptObject* {return new struct Switch(); }};
|
||||
static const ScriptObjectSpec PlayerStateChangeEnt = {0x57, []() -> IScriptObject* {return new struct PlayerStateChange(); }};
|
||||
static const ScriptObjectSpec ThardusEnt = {0x58, []() -> IScriptObject* {return new struct Thardus(); }};
|
||||
static const ScriptObjectSpec WallCrawlerSwarmEnt = {0x5A, []() -> IScriptObject* {return new struct WallCrawlerSwarm(); }};
|
||||
static const ScriptObjectSpec AIJumpPointEnt = {0x5B, []() -> IScriptObject* {return new struct AIJumpPoint(); }};
|
||||
static const ScriptObjectSpec FlaahgraTentacleEnt = {0x5C, []() -> IScriptObject* {return new struct FlaahgraTentacle(); }};
|
||||
static const ScriptObjectSpec RoomAcousticsEnt = {0x5D, []() -> IScriptObject* {return new struct RoomAcoustics(); }};
|
||||
static const ScriptObjectSpec ColorModulateEnt = {0x5E, []() -> IScriptObject* {return new struct ColorModulate(); }};
|
||||
static const ScriptObjectSpec ThardusRockProjectileEnt = {0x5F, []() -> IScriptObject* {return new struct ThardusRockProjectile(); }};
|
||||
static const ScriptObjectSpec MidiEnt = {0x60, []() -> IScriptObject* {return new struct Midi(); }};
|
||||
static const ScriptObjectSpec StreamedAudioEnt = {0x61, []() -> IScriptObject* {return new struct StreamedAudio(); }};
|
||||
static const ScriptObjectSpec WorldTeleporterx62Ent = {0x62, []() -> IScriptObject* {return new struct WorldTeleporter(); }}; // o.o, no this is not a trick
|
||||
static const ScriptObjectSpec RepulsorEnt = {0x63, []() -> IScriptObject* {return new struct Repulsor(); }};
|
||||
static const ScriptObjectSpec GunTurretEnt = {0x64, []() -> IScriptObject* {return new struct GunTurret(); }};
|
||||
static const ScriptObjectSpec FogVolumeEnt = {0x65, []() -> IScriptObject* {return new struct FogVolume(); }};
|
||||
static const ScriptObjectSpec BabygothEnt = {0x66, []() -> IScriptObject* {return new struct Babygoth(); }};
|
||||
static const ScriptObjectSpec EyeballEnt = {0x67, []() -> IScriptObject* {return new struct Eyeball(); }};
|
||||
static const ScriptObjectSpec RadialDamageEnt = {0x68, []() -> IScriptObject* {return new struct RadialDamage(); }};
|
||||
static const ScriptObjectSpec CameraPitchVolumeEnt = {0x69, []() -> IScriptObject* {return new struct CameraPitchVolume(); }};
|
||||
static const ScriptObjectSpec EnvFxDensityControllerEnt = {0x6A, []() -> IScriptObject* {return new struct EnvFxDensityController(); }};
|
||||
static const ScriptObjectSpec MagdoliteEnt = {0x6B, []() -> IScriptObject* {return new struct Magdolite(); }};
|
||||
static const ScriptObjectSpec TeamAIMgrEnt = {0x6C, []() -> IScriptObject* {return new struct TeamAIMgr(); }};
|
||||
static const ScriptObjectSpec SnakeWeedSwarmEnt = {0x6D, []() -> IScriptObject* {return new struct SnakeWeedSwarm(); }};
|
||||
static const ScriptObjectSpec ActorContraptionEnt = {0x6E, []() -> IScriptObject* {return new struct ActorContraption(); }};
|
||||
static const ScriptObjectSpec OculusEnt = {0x6F, []() -> IScriptObject* {return new struct Oculus(); }};
|
||||
static const ScriptObjectSpec GeemerEnt = {0x70, []() -> IScriptObject* {return new struct Geemer(); }};
|
||||
static const ScriptObjectSpec SpindleCameraEnt = {0x71, []() -> IScriptObject* {return new struct SpindleCamera(); }};
|
||||
static const ScriptObjectSpec AtomicAlphaEnt = {0x72, []() -> IScriptObject* {return new struct AtomicAlpha(); }};
|
||||
static const ScriptObjectSpec CameraHintTriggerEnt = {0x73, []() -> IScriptObject* {return new struct CameraHintTrigger(); }};
|
||||
static const ScriptObjectSpec RumbleEffectEnt = {0x74, []() -> IScriptObject* {return new struct RumbleEffect(); }};
|
||||
static const ScriptObjectSpec AmbientAIEnt = {0x75, []() -> IScriptObject* {return new struct AmbientAI(); }};
|
||||
static const ScriptObjectSpec AtomicBetaEnt = {0x77, []() -> IScriptObject* {return new struct AtomicBeta(); }};
|
||||
static const ScriptObjectSpec IceZoomerEnt = {0x78, []() -> IScriptObject* {return new struct IceZoomer(); }};
|
||||
static const ScriptObjectSpec PufferEnt = {0x79, []() -> IScriptObject* {return new struct Puffer(); }};
|
||||
static const ScriptObjectSpec TryclopsEnt = {0x7A, []() -> IScriptObject* {return new struct Tryclops(); }};
|
||||
static const ScriptObjectSpec RidleyEnt = {0x7B, []() -> IScriptObject* {return new struct Ridley(); }};
|
||||
static const ScriptObjectSpec SeedlingEnt = {0x7C, []() -> IScriptObject* {return new struct Seedling(); }};
|
||||
static const ScriptObjectSpec ThermalHeatFaderEnt = {0x7D, []() -> IScriptObject* {return new struct ThermalHeatFader(); }};
|
||||
static const ScriptObjectSpec BurrowerEnt = {0x7F, []() -> IScriptObject* {return new struct Burrower(); }};
|
||||
static const ScriptObjectSpec ScriptBeamEnt = {0x81, []() -> IScriptObject* {return new struct ScriptBeam(); }};
|
||||
static const ScriptObjectSpec WorldLightFaderEnt = {0x82, []() -> IScriptObject* {return new struct WorldLightFader(); }};
|
||||
static const ScriptObjectSpec MetroidPrimeStage2Ent = {0x83, []() -> IScriptObject* {return new struct MetroidPrimeStage2(); }};
|
||||
static const ScriptObjectSpec MetroidPrimeStage1Ent = {0x84, []() -> IScriptObject* {return new struct MetroidPrimeStage1(); }};
|
||||
static const ScriptObjectSpec MazeNodeEnt = {0x85, []() -> IScriptObject* {return new struct MazeNode(); }};
|
||||
static const ScriptObjectSpec OmegaPirateEnt = {0x86, []() -> IScriptObject* {return new struct OmegaPirate(); }};
|
||||
static const ScriptObjectSpec PhazonPoolEnt = {0x87, []() -> IScriptObject* {return new struct PhazonPool(); }};
|
||||
static const ScriptObjectSpec PhazonHealingNoduleEnt = {0x88, []() -> IScriptObject* {return new struct PhazonHealingNodule(); }};
|
||||
static const ScriptObjectSpec NewCameraShakerEnt = {0x89, []() -> IScriptObject* {return new struct NewCameraShaker(); }};
|
||||
static const ScriptObjectSpec ShadowProjectorEnt = {0x8A, []() -> IScriptObject* {return new struct ShadowProjector(); }};
|
||||
static const ScriptObjectSpec EnergyBallEnt = {0x8B, []() -> IScriptObject* {return new struct EnergyBall(); }};
|
||||
}
|
||||
namespace DataSpec::DNAMP1 {
|
||||
namespace priv {
|
||||
static const ScriptObjectSpec ActorEnt = {0x00, []() -> IScriptObject* { return new struct Actor(); }};
|
||||
static const ScriptObjectSpec WaypointEnt = {0x02, []() -> IScriptObject* { return new struct Waypoint(); }};
|
||||
static const ScriptObjectSpec DoorAreaEnt = {0x03, []() -> IScriptObject* { return new struct DoorArea(); }};
|
||||
static const ScriptObjectSpec TriggerEnt = {0x04, []() -> IScriptObject* { return new struct Trigger(); }};
|
||||
static const ScriptObjectSpec TimerEnt = {0x05, []() -> IScriptObject* { return new struct Timer(); }};
|
||||
static const ScriptObjectSpec CounterEnt = {0x06, []() -> IScriptObject* { return new struct Counter(); }};
|
||||
static const ScriptObjectSpec EffectEnt = {0x07, []() -> IScriptObject* { return new struct Effect(); }};
|
||||
static const ScriptObjectSpec PlatformEnt = {0x08, []() -> IScriptObject* { return new struct Platform(); }};
|
||||
static const ScriptObjectSpec SoundEnt = {0x09, []() -> IScriptObject* { return new struct Sound(); }};
|
||||
static const ScriptObjectSpec GeneratorEnt = {0x0A, []() -> IScriptObject* { return new struct Generator(); }};
|
||||
static const ScriptObjectSpec DockEnt = {0x0B, []() -> IScriptObject* { return new struct Dock(); }};
|
||||
static const ScriptObjectSpec CameraEnt = {0x0C, []() -> IScriptObject* { return new struct Camera(); }};
|
||||
static const ScriptObjectSpec CameraWaypointEnt = {0x0D,
|
||||
[]() -> IScriptObject* { return new struct CameraWaypoint(); }};
|
||||
static const ScriptObjectSpec NewIntroBossEnt = {0x0E, []() -> IScriptObject* { return new struct NewIntroBoss(); }};
|
||||
static const ScriptObjectSpec SpawnPointEnt = {0x0F, []() -> IScriptObject* { return new struct SpawnPoint(); }};
|
||||
static const ScriptObjectSpec CameraHintEnt = {0x10, []() -> IScriptObject* { return new struct CameraHint(); }};
|
||||
static const ScriptObjectSpec PickupEnt = {0x11, []() -> IScriptObject* { return new struct Pickup(); }};
|
||||
static const ScriptObjectSpec MemoryRelayEnt = {0x13, []() -> IScriptObject* { return new struct MemoryRelay(); }};
|
||||
static const ScriptObjectSpec RandomRelayEnt = {0x14, []() -> IScriptObject* { return new struct RandomRelay(); }};
|
||||
static const ScriptObjectSpec RelayEnt = {0x15, []() -> IScriptObject* { return new struct Relay(); }};
|
||||
static const ScriptObjectSpec BeetleEnt = {0x16, []() -> IScriptObject* { return new struct Beetle(); }};
|
||||
static const ScriptObjectSpec HUDMemoEnt = {0x17, []() -> IScriptObject* { return new struct HUDMemo(); }};
|
||||
static const ScriptObjectSpec CameraFilterKeyframeEnt = {
|
||||
0x18, []() -> IScriptObject* { return new struct CameraFilterKeyframe(); }};
|
||||
static const ScriptObjectSpec CameraBlurKeyframeEnt = {
|
||||
0x19, []() -> IScriptObject* { return new struct CameraBlurKeyframe(); }};
|
||||
static const ScriptObjectSpec DamageableTriggerEnt = {
|
||||
0x1A, []() -> IScriptObject* { return new struct DamageableTrigger(); }};
|
||||
static const ScriptObjectSpec DebrisEnt = {0x1B, []() -> IScriptObject* { return new struct Debris(); }};
|
||||
static const ScriptObjectSpec CameraShakerEnt = {0x1C, []() -> IScriptObject* { return new struct CameraShaker(); }};
|
||||
static const ScriptObjectSpec ActorKeyframeEnt = {0x1D, []() -> IScriptObject* { return new struct ActorKeyframe(); }};
|
||||
static const ScriptObjectSpec WaterEnt = {0x20, []() -> IScriptObject* { return new struct Water(); }};
|
||||
static const ScriptObjectSpec WarwaspEnt = {0x21, []() -> IScriptObject* { return new struct Warwasp(); }};
|
||||
static const ScriptObjectSpec SpacePirateEnt = {0x24, []() -> IScriptObject* { return new struct SpacePirate(); }};
|
||||
static const ScriptObjectSpec FlyingPirateEnt = {0x25, []() -> IScriptObject* { return new struct FlyingPirate(); }};
|
||||
static const ScriptObjectSpec ElitePirateEnt = {0x26, []() -> IScriptObject* { return new struct ElitePirate(); }};
|
||||
static const ScriptObjectSpec MetroidBetaEnt = {0x27, []() -> IScriptObject* { return new struct MetroidBeta(); }};
|
||||
static const ScriptObjectSpec ChozoGhostEnt = {0x28, []() -> IScriptObject* { return new struct ChozoGhost(); }};
|
||||
static const ScriptObjectSpec CoverPointEnt = {0x2A, []() -> IScriptObject* { return new struct CoverPoint(); }};
|
||||
static const ScriptObjectSpec SpiderBallWaypointEnt = {
|
||||
0x2C, []() -> IScriptObject* { return new struct SpiderBallWaypoint(); }};
|
||||
static const ScriptObjectSpec BloodFlowerEnt = {0x2D, []() -> IScriptObject* { return new struct BloodFlower(); }};
|
||||
static const ScriptObjectSpec FlickerBatEnt = {0x2E, []() -> IScriptObject* { return new struct FlickerBat(); }};
|
||||
static const ScriptObjectSpec PathCameraEnt = {0x2F, []() -> IScriptObject* { return new struct PathCamera(); }};
|
||||
static const ScriptObjectSpec GrapplePointEnt = {0x30, []() -> IScriptObject* { return new struct GrapplePoint(); }};
|
||||
static const ScriptObjectSpec PuddleSporeEnt = {0x31, []() -> IScriptObject* { return new struct PuddleSpore(); }};
|
||||
static const ScriptObjectSpec DebugCameraWaypointEnt = {
|
||||
0x32, []() -> IScriptObject* { return new struct DebugCameraWaypoint(); }};
|
||||
static const ScriptObjectSpec SpiderBallAttractionSurfaceEnt = {
|
||||
0x33, []() -> IScriptObject* { return new struct SpiderBallAttractionSurface(); }};
|
||||
static const ScriptObjectSpec PuddleToadGammaEnt = {0x34,
|
||||
[]() -> IScriptObject* { return new struct PuddleToadGamma(); }};
|
||||
static const ScriptObjectSpec DistanceFogEnt = {0x35, []() -> IScriptObject* { return new struct DistanceFog(); }};
|
||||
static const ScriptObjectSpec FireFleaEnt = {0x36, []() -> IScriptObject* { return new struct FireFlea(); }};
|
||||
static const ScriptObjectSpec MetareeAlphaEnt = {0x37, []() -> IScriptObject* { return new struct MetareeAlpha(); }};
|
||||
static const ScriptObjectSpec DockAreaChangeEnt = {0x38,
|
||||
[]() -> IScriptObject* { return new struct DockAreaChange(); }};
|
||||
static const ScriptObjectSpec ActorRotateEnt = {0x39, []() -> IScriptObject* { return new struct ActorRotate(); }};
|
||||
static const ScriptObjectSpec SpecialFunctionEnt = {0x3A,
|
||||
[]() -> IScriptObject* { return new struct SpecialFunction(); }};
|
||||
static const ScriptObjectSpec SpankWeedEnt = {0x3B, []() -> IScriptObject* { return new struct SpankWeed(); }};
|
||||
static const ScriptObjectSpec ParasiteEnt = {0x3D, []() -> IScriptObject* { return new struct Parasite(); }};
|
||||
static const ScriptObjectSpec PlayerHintEnt = {0x3E, []() -> IScriptObject* { return new struct PlayerHint(); }};
|
||||
static const ScriptObjectSpec RipperEnt = {0x3F, []() -> IScriptObject* { return new struct Ripper(); }};
|
||||
static const ScriptObjectSpec PickupGeneratorEnt = {0x40,
|
||||
[]() -> IScriptObject* { return new struct PickupGenerator(); }};
|
||||
static const ScriptObjectSpec AIKeyframeEnt = {0x41, []() -> IScriptObject* { return new struct AIKeyframe(); }};
|
||||
static const ScriptObjectSpec PointOfInterestEnt = {0x42,
|
||||
[]() -> IScriptObject* { return new struct PointOfInterest(); }};
|
||||
static const ScriptObjectSpec DroneEnt = {0x43, []() -> IScriptObject* { return new struct Drone(); }};
|
||||
static const ScriptObjectSpec MetroidAlphaEnt = {0x44, []() -> IScriptObject* { return new struct MetroidAlpha(); }};
|
||||
static const ScriptObjectSpec DebrisExtendedEnt = {0x45,
|
||||
[]() -> IScriptObject* { return new struct DebrisExtended(); }};
|
||||
static const ScriptObjectSpec SteamEnt = {0x46, []() -> IScriptObject* { return new struct Steam(); }};
|
||||
static const ScriptObjectSpec RippleEnt = {0x47, []() -> IScriptObject* { return new struct Ripple(); }};
|
||||
static const ScriptObjectSpec BallTriggerEnt = {0x48, []() -> IScriptObject* { return new struct BallTrigger(); }};
|
||||
static const ScriptObjectSpec TargetingPointEnt = {0x49,
|
||||
[]() -> IScriptObject* { return new struct TargetingPoint(); }};
|
||||
static const ScriptObjectSpec ElectroMagneticPulseEnt = {
|
||||
0x4A, []() -> IScriptObject* { return new struct ElectroMagneticPulse(); }};
|
||||
static const ScriptObjectSpec IceSheegothEnt = {0x4B, []() -> IScriptObject* { return new struct IceSheegoth(); }};
|
||||
static const ScriptObjectSpec PlayerActorEnt = {0x4C, []() -> IScriptObject* { return new struct PlayerActor(); }};
|
||||
static const ScriptObjectSpec FlaahgraEnt = {0x4D, []() -> IScriptObject* { return new struct Flaahgra(); }};
|
||||
static const ScriptObjectSpec AreaAttributesEnt = {0x4E,
|
||||
[]() -> IScriptObject* { return new struct AreaAttributes(); }};
|
||||
static const ScriptObjectSpec FishCloudEnt = {0x4F, []() -> IScriptObject* { return new struct FishCloud(); }};
|
||||
static const ScriptObjectSpec FishCloudModifierEnt = {
|
||||
0x50, []() -> IScriptObject* { return new struct FishCloudModifier(); }};
|
||||
static const ScriptObjectSpec VisorFlareEnt = {0x51, []() -> IScriptObject* { return new struct VisorFlare(); }};
|
||||
static const ScriptObjectSpec WorldTeleporterx52Ent = {0x52,
|
||||
[]() -> IScriptObject* { return new struct WorldTeleporter(); }};
|
||||
static const ScriptObjectSpec VisorGooEnt = {0x53, []() -> IScriptObject* { return new struct VisorGoo(); }};
|
||||
static const ScriptObjectSpec JellyZapEnt = {0x54, []() -> IScriptObject* { return new struct JellyZap(); }};
|
||||
static const ScriptObjectSpec ControllerActionEnt = {0x55,
|
||||
[]() -> IScriptObject* { return new struct ControllerAction(); }};
|
||||
static const ScriptObjectSpec SwitchEnt = {0x56, []() -> IScriptObject* { return new struct Switch(); }};
|
||||
static const ScriptObjectSpec PlayerStateChangeEnt = {
|
||||
0x57, []() -> IScriptObject* { return new struct PlayerStateChange(); }};
|
||||
static const ScriptObjectSpec ThardusEnt = {0x58, []() -> IScriptObject* { return new struct Thardus(); }};
|
||||
static const ScriptObjectSpec WallCrawlerSwarmEnt = {0x5A,
|
||||
[]() -> IScriptObject* { return new struct WallCrawlerSwarm(); }};
|
||||
static const ScriptObjectSpec AIJumpPointEnt = {0x5B, []() -> IScriptObject* { return new struct AIJumpPoint(); }};
|
||||
static const ScriptObjectSpec FlaahgraTentacleEnt = {0x5C,
|
||||
[]() -> IScriptObject* { return new struct FlaahgraTentacle(); }};
|
||||
static const ScriptObjectSpec RoomAcousticsEnt = {0x5D, []() -> IScriptObject* { return new struct RoomAcoustics(); }};
|
||||
static const ScriptObjectSpec ColorModulateEnt = {0x5E, []() -> IScriptObject* { return new struct ColorModulate(); }};
|
||||
static const ScriptObjectSpec ThardusRockProjectileEnt = {
|
||||
0x5F, []() -> IScriptObject* { return new struct ThardusRockProjectile(); }};
|
||||
static const ScriptObjectSpec MidiEnt = {0x60, []() -> IScriptObject* { return new struct Midi(); }};
|
||||
static const ScriptObjectSpec StreamedAudioEnt = {0x61, []() -> IScriptObject* { return new struct StreamedAudio(); }};
|
||||
static const ScriptObjectSpec WorldTeleporterx62Ent = {
|
||||
0x62, []() -> IScriptObject* { return new struct WorldTeleporter(); }}; // o.o, no this is not a trick
|
||||
static const ScriptObjectSpec RepulsorEnt = {0x63, []() -> IScriptObject* { return new struct Repulsor(); }};
|
||||
static const ScriptObjectSpec GunTurretEnt = {0x64, []() -> IScriptObject* { return new struct GunTurret(); }};
|
||||
static const ScriptObjectSpec FogVolumeEnt = {0x65, []() -> IScriptObject* { return new struct FogVolume(); }};
|
||||
static const ScriptObjectSpec BabygothEnt = {0x66, []() -> IScriptObject* { return new struct Babygoth(); }};
|
||||
static const ScriptObjectSpec EyeballEnt = {0x67, []() -> IScriptObject* { return new struct Eyeball(); }};
|
||||
static const ScriptObjectSpec RadialDamageEnt = {0x68, []() -> IScriptObject* { return new struct RadialDamage(); }};
|
||||
static const ScriptObjectSpec CameraPitchVolumeEnt = {
|
||||
0x69, []() -> IScriptObject* { return new struct CameraPitchVolume(); }};
|
||||
static const ScriptObjectSpec EnvFxDensityControllerEnt = {
|
||||
0x6A, []() -> IScriptObject* { return new struct EnvFxDensityController(); }};
|
||||
static const ScriptObjectSpec MagdoliteEnt = {0x6B, []() -> IScriptObject* { return new struct Magdolite(); }};
|
||||
static const ScriptObjectSpec TeamAIMgrEnt = {0x6C, []() -> IScriptObject* { return new struct TeamAIMgr(); }};
|
||||
static const ScriptObjectSpec SnakeWeedSwarmEnt = {0x6D,
|
||||
[]() -> IScriptObject* { return new struct SnakeWeedSwarm(); }};
|
||||
static const ScriptObjectSpec ActorContraptionEnt = {0x6E,
|
||||
[]() -> IScriptObject* { return new struct ActorContraption(); }};
|
||||
static const ScriptObjectSpec OculusEnt = {0x6F, []() -> IScriptObject* { return new struct Oculus(); }};
|
||||
static const ScriptObjectSpec GeemerEnt = {0x70, []() -> IScriptObject* { return new struct Geemer(); }};
|
||||
static const ScriptObjectSpec SpindleCameraEnt = {0x71, []() -> IScriptObject* { return new struct SpindleCamera(); }};
|
||||
static const ScriptObjectSpec AtomicAlphaEnt = {0x72, []() -> IScriptObject* { return new struct AtomicAlpha(); }};
|
||||
static const ScriptObjectSpec CameraHintTriggerEnt = {
|
||||
0x73, []() -> IScriptObject* { return new struct CameraHintTrigger(); }};
|
||||
static const ScriptObjectSpec RumbleEffectEnt = {0x74, []() -> IScriptObject* { return new struct RumbleEffect(); }};
|
||||
static const ScriptObjectSpec AmbientAIEnt = {0x75, []() -> IScriptObject* { return new struct AmbientAI(); }};
|
||||
static const ScriptObjectSpec AtomicBetaEnt = {0x77, []() -> IScriptObject* { return new struct AtomicBeta(); }};
|
||||
static const ScriptObjectSpec IceZoomerEnt = {0x78, []() -> IScriptObject* { return new struct IceZoomer(); }};
|
||||
static const ScriptObjectSpec PufferEnt = {0x79, []() -> IScriptObject* { return new struct Puffer(); }};
|
||||
static const ScriptObjectSpec TryclopsEnt = {0x7A, []() -> IScriptObject* { return new struct Tryclops(); }};
|
||||
static const ScriptObjectSpec RidleyEnt = {0x7B, []() -> IScriptObject* { return new struct Ridley(); }};
|
||||
static const ScriptObjectSpec SeedlingEnt = {0x7C, []() -> IScriptObject* { return new struct Seedling(); }};
|
||||
static const ScriptObjectSpec ThermalHeatFaderEnt = {0x7D,
|
||||
[]() -> IScriptObject* { return new struct ThermalHeatFader(); }};
|
||||
static const ScriptObjectSpec BurrowerEnt = {0x7F, []() -> IScriptObject* { return new struct Burrower(); }};
|
||||
static const ScriptObjectSpec ScriptBeamEnt = {0x81, []() -> IScriptObject* { return new struct ScriptBeam(); }};
|
||||
static const ScriptObjectSpec WorldLightFaderEnt = {0x82,
|
||||
[]() -> IScriptObject* { return new struct WorldLightFader(); }};
|
||||
static const ScriptObjectSpec MetroidPrimeStage2Ent = {
|
||||
0x83, []() -> IScriptObject* { return new struct MetroidPrimeStage2(); }};
|
||||
static const ScriptObjectSpec MetroidPrimeStage1Ent = {
|
||||
0x84, []() -> IScriptObject* { return new struct MetroidPrimeStage1(); }};
|
||||
static const ScriptObjectSpec MazeNodeEnt = {0x85, []() -> IScriptObject* { return new struct MazeNode(); }};
|
||||
static const ScriptObjectSpec OmegaPirateEnt = {0x86, []() -> IScriptObject* { return new struct OmegaPirate(); }};
|
||||
static const ScriptObjectSpec PhazonPoolEnt = {0x87, []() -> IScriptObject* { return new struct PhazonPool(); }};
|
||||
static const ScriptObjectSpec PhazonHealingNoduleEnt = {
|
||||
0x88, []() -> IScriptObject* { return new struct PhazonHealingNodule(); }};
|
||||
static const ScriptObjectSpec NewCameraShakerEnt = {0x89,
|
||||
[]() -> IScriptObject* { return new struct NewCameraShaker(); }};
|
||||
static const ScriptObjectSpec ShadowProjectorEnt = {0x8A,
|
||||
[]() -> IScriptObject* { return new struct ShadowProjector(); }};
|
||||
static const ScriptObjectSpec EnergyBallEnt = {0x8B, []() -> IScriptObject* { return new struct EnergyBall(); }};
|
||||
} // namespace priv
|
||||
|
||||
const std::vector<const struct ScriptObjectSpec*> SCRIPT_OBJECT_DB =
|
||||
{
|
||||
const std::vector<const struct ScriptObjectSpec*> SCRIPT_OBJECT_DB = {
|
||||
&priv::AIJumpPointEnt,
|
||||
&priv::AIKeyframeEnt,
|
||||
&priv::ActorEnt,
|
||||
@@ -265,16 +298,12 @@ const std::vector<const struct ScriptObjectSpec*> SCRIPT_OBJECT_DB =
|
||||
&priv::WorldTeleporterx62Ent,
|
||||
};
|
||||
|
||||
zeus::CTransform ConvertEditorEulerToTransform4f(const zeus::CVector3f& scale,
|
||||
const zeus::CVector3f& orientation,
|
||||
const zeus::CVector3f& position)
|
||||
{
|
||||
zeus::simd_floats f(orientation.mSimd);
|
||||
return zeus::CTransform::RotateZ(zeus::degToRad(f[2])) *
|
||||
zeus::CTransform::RotateY(zeus::degToRad(f[1])) *
|
||||
zeus::CTransform::RotateX(zeus::degToRad(f[0])) *
|
||||
zeus::CTransform::Scale(scale) +
|
||||
position;
|
||||
zeus::CTransform ConvertEditorEulerToTransform4f(const zeus::CVector3f& scale, const zeus::CVector3f& orientation,
|
||||
const zeus::CVector3f& position) {
|
||||
zeus::simd_floats f(orientation.mSimd);
|
||||
return zeus::CTransform::RotateZ(zeus::degToRad(f[2])) * zeus::CTransform::RotateY(zeus::degToRad(f[1])) *
|
||||
zeus::CTransform::RotateX(zeus::degToRad(f[0])) * zeus::CTransform::Scale(scale) +
|
||||
position;
|
||||
}
|
||||
|
||||
}
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -15,38 +15,32 @@
|
||||
#define SO_COLLISION_OFFSET_SPECPROP() SPECTER_PROPERTY("Collision Offset", "")
|
||||
#define SO_ACTIVE_SPECPROP() SPECTER_PROPERTY("Active", "If enabled, object instance is drawn and updated")
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
zeus::CTransform ConvertEditorEulerToTransform4f(const zeus::CVector3f& scale,
|
||||
const zeus::CVector3f& orientation,
|
||||
zeus::CTransform ConvertEditorEulerToTransform4f(const zeus::CVector3f& scale, const zeus::CVector3f& orientation,
|
||||
const zeus::CVector3f& position);
|
||||
|
||||
struct IScriptObject : BigDNAVYaml
|
||||
{
|
||||
struct IScriptObject : BigDNAVYaml {
|
||||
AT_DECL_DNA_YAML
|
||||
atUint32 type;
|
||||
Value<atUint32> id;
|
||||
struct Connection : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
atUint32 type;
|
||||
Value<atUint32> id;
|
||||
struct Connection : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> state;
|
||||
Value<atUint32> msg;
|
||||
Value<atUint32> target;
|
||||
};
|
||||
Value<atUint32> state;
|
||||
Value<atUint32> msg;
|
||||
Value<atUint32> target;
|
||||
};
|
||||
|
||||
Value<atUint32> connectionCount;
|
||||
Vector<Connection, AT_DNA_COUNT(connectionCount)> connections;
|
||||
Value<atUint32> propertyCount;
|
||||
virtual ~IScriptObject() = default;
|
||||
Value<atUint32> connectionCount;
|
||||
Vector<Connection, AT_DNA_COUNT(connectionCount)> connections;
|
||||
Value<atUint32> propertyCount;
|
||||
virtual ~IScriptObject() = default;
|
||||
|
||||
virtual void addCMDLRigPairs(PAKRouter<PAKBridge>&,
|
||||
CharacterAssociations<UniqueID32>& charAssoc) const {}
|
||||
virtual void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {}
|
||||
virtual void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const {}
|
||||
virtual void gatherScans(std::vector<Scan>& scansOut) const {}
|
||||
virtual zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const { return {}; }
|
||||
virtual void addCMDLRigPairs(PAKRouter<PAKBridge>&, CharacterAssociations<UniqueID32>& charAssoc) const {}
|
||||
virtual void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {}
|
||||
virtual void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const {}
|
||||
virtual void gatherScans(std::vector<Scan>& scansOut) const {}
|
||||
virtual zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const { return {}; }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,132 +4,112 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct IceSheegoth : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atVec3f> unknown3;
|
||||
Value<float> unknown4;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
DamageVulnerability damageVulnerabilty3;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
UniqueID32 wpsc2;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 elsc;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
DamageInfo damageInfo3;
|
||||
Value<atUint32> soundID1;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
UniqueID32 texture;
|
||||
Value<atUint32> soundID2;
|
||||
UniqueID32 particle6;
|
||||
Value<bool> unknown12;
|
||||
Value<bool> unknown13;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct IceSheegoth : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atVec3f> unknown3;
|
||||
Value<float> unknown4;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
DamageVulnerability damageVulnerabilty3;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
UniqueID32 wpsc2;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 elsc;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
DamageInfo damageInfo3;
|
||||
Value<atUint32> soundID1;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
UniqueID32 texture;
|
||||
Value<atUint32> soundID2;
|
||||
UniqueID32 particle6;
|
||||
Value<bool> unknown12;
|
||||
Value<bool> unknown13;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (texture)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
if (particle6)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (texture) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
if (particle6) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,51 +4,41 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct IceZoomer : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown9;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct IceZoomer : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown9;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,55 +4,45 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct JellyZap : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<bool> unknown13;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct JellyZap : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<bool> unknown13;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,95 +4,79 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Magdolite : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
UniqueID32 cmdlHeadless;
|
||||
UniqueID32 cskrHeadless;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Magdolite : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
UniqueID32 cmdlHeadless;
|
||||
UniqueID32 cskrHeadless;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
struct MagdoliteParameters : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> unknown1;
|
||||
UniqueID32 particle;
|
||||
Value<atUint32> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
struct MagdoliteParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> unknown1;
|
||||
UniqueID32 particle;
|
||||
Value<atUint32> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
} magdoliteParameters;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
} magdoliteParameters;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter);
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
UniqueID32 cinf = patternedInfo.animationParameters.getCINF(pakRouter);
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
|
||||
if (cmdlHeadless && cskrHeadless)
|
||||
{
|
||||
charAssoc.m_cmdlRigs[cmdlHeadless] = std::make_pair(cskrHeadless, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrHeadless] = std::make_pair(
|
||||
patternedInfo.animationParameters.animationCharacterSet, "ATTACH.HEADLESS.CSKR");
|
||||
charAssoc.addAttachmentRig(patternedInfo.animationParameters.animationCharacterSet,
|
||||
{}, cmdlHeadless, "HEADLESS");
|
||||
}
|
||||
if (cmdlHeadless && cskrHeadless) {
|
||||
charAssoc.m_cmdlRigs[cmdlHeadless] = std::make_pair(cskrHeadless, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrHeadless] =
|
||||
std::make_pair(patternedInfo.animationParameters.animationCharacterSet, "ATTACH.HEADLESS.CSKR");
|
||||
charAssoc.addAttachmentRig(patternedInfo.animationParameters.animationCharacterSet, {}, cmdlHeadless, "HEADLESS");
|
||||
}
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (cmdlHeadless)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlHeadless);
|
||||
ent->name = name + "_emodel";
|
||||
}
|
||||
if (cskrHeadless)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cskrHeadless);
|
||||
ent->name = name + "_eskin";
|
||||
}
|
||||
if (magdoliteParameters.particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(magdoliteParameters.particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (cmdlHeadless) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlHeadless);
|
||||
ent->name = name + "_emodel";
|
||||
}
|
||||
if (cskrHeadless) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cskrHeadless);
|
||||
ent->name = name + "_eskin";
|
||||
}
|
||||
if (magdoliteParameters.particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(magdoliteParameters.particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(cmdlHeadless, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrHeadless, pathsOut);
|
||||
g_curSpec->flattenDependencies(magdoliteParameters.particle, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(cmdlHeadless, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrHeadless, pathsOut);
|
||||
g_curSpec->flattenDependencies(magdoliteParameters.particle, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,22 +4,19 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct MazeNode : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atVec3f> unknown5;
|
||||
Value<atVec3f> unknown6;
|
||||
Value<atVec3f> unknown7;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct MazeNode : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atVec3f> unknown5;
|
||||
Value<atVec3f> unknown6;
|
||||
Value<atVec3f> unknown7;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,15 +4,12 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct MemoryRelay : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> unknown;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct MemoryRelay : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> unknown;
|
||||
Value<bool> active;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,47 +4,37 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct MetareeAlpha : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> unknown1;
|
||||
Value<atVec3f> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct MetareeAlpha : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> unknown1;
|
||||
Value<atVec3f> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,63 +4,53 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct MetroidAlpha : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
AnimationParameters animationParameters1;
|
||||
AnimationParameters animationParameters2;
|
||||
AnimationParameters animationParameters3;
|
||||
AnimationParameters animationParameters4;
|
||||
Value<bool> unknown8;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct MetroidAlpha : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
AnimationParameters animationParameters1;
|
||||
AnimationParameters animationParameters2;
|
||||
AnimationParameters animationParameters3;
|
||||
AnimationParameters animationParameters4;
|
||||
Value<bool> unknown8;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
animationParameters1.nameANCS(pakRouter, name + "_animp1");
|
||||
animationParameters2.nameANCS(pakRouter, name + "_animp2");
|
||||
animationParameters3.nameANCS(pakRouter, name + "_animp3");
|
||||
animationParameters4.nameANCS(pakRouter, name + "_animp4");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
animationParameters1.nameANCS(pakRouter, name + "_animp1");
|
||||
animationParameters2.nameANCS(pakRouter, name + "_animp2");
|
||||
animationParameters3.nameANCS(pakRouter, name + "_animp3");
|
||||
animationParameters4.nameANCS(pakRouter, name + "_animp4");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
animationParameters1.depANCS(pathsOut);
|
||||
animationParameters2.depANCS(pathsOut);
|
||||
animationParameters3.depANCS(pathsOut);
|
||||
animationParameters4.depANCS(pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
animationParameters1.depANCS(pathsOut);
|
||||
animationParameters2.depANCS(pathsOut);
|
||||
animationParameters3.depANCS(pathsOut);
|
||||
animationParameters4.depANCS(pathsOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,88 +4,73 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct MetroidBeta : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 swhc;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
Value<bool> unknown10;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct MetroidBeta : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
DamageVulnerability damageVulnerabilty1;
|
||||
DamageVulnerability damageVulnerabilty2;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 swhc;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
Value<bool> unknown10;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (swhc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(swhc);
|
||||
ent->name = name + "_swhc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (swhc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(swhc);
|
||||
ent->name = name + "_swhc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(swhc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(swhc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,351 +4,300 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct MetroidPrimeStage1 : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
Value<atUint32> version;
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<bool> unknown2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct MetroidPrimeStage1 : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
Value<atUint32> version;
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<bool> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
Value<bool> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
HealthInfo healthInfo1;
|
||||
HealthInfo healthInfo2;
|
||||
Value<atUint32> unknown9;
|
||||
|
||||
struct PrimeParameters1 : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
Value<bool> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
HealthInfo healthInfo1;
|
||||
HealthInfo healthInfo2;
|
||||
Value<atUint32> unknown9;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
} primeStruct1[4];
|
||||
|
||||
struct PrimeParameters1 : BigDNA
|
||||
{
|
||||
Value<atUint32> unknown10;
|
||||
Value<atUint32> unknown11;
|
||||
|
||||
struct MassivePrimeStruct : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<atUint32> unknown2;
|
||||
struct CameraShakeData : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<bool> useSfx;
|
||||
Value<float> duration;
|
||||
Value<float> sfxDist;
|
||||
struct CameraShakerComponent : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<bool> useModulation;
|
||||
struct CameraShakePoint : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<float> attackTime;
|
||||
Value<float> sustainTime;
|
||||
Value<float> duration;
|
||||
Value<float> magnitude;
|
||||
};
|
||||
CameraShakePoint am;
|
||||
CameraShakePoint fm;
|
||||
} shakerComponents[3];
|
||||
} shakeDatas[3];
|
||||
|
||||
struct PrimeStruct2B : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
UniqueID32 texture1;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (texture1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
}
|
||||
} primeStruct2b;
|
||||
|
||||
UniqueID32 particle4;
|
||||
|
||||
struct PrimeStruct4 : BigDNA {
|
||||
AT_DECL_DNA
|
||||
BeamInfo beamInfo;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo1;
|
||||
struct PrimeStruct5 : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
} primeStruct1[4];
|
||||
|
||||
Value<atUint32> unknown10;
|
||||
Value<atUint32> unknown11;
|
||||
|
||||
struct MassivePrimeStruct : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
struct CameraShakeData : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<bool> useSfx;
|
||||
Value<float> duration;
|
||||
Value<float> sfxDist;
|
||||
struct CameraShakerComponent : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<bool> useModulation;
|
||||
struct CameraShakePoint : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<float> attackTime;
|
||||
Value<float> sustainTime;
|
||||
Value<float> duration;
|
||||
Value<float> magnitude;
|
||||
};
|
||||
CameraShakePoint am;
|
||||
CameraShakePoint fm;
|
||||
} shakerComponents[3];
|
||||
} shakeDatas[3];
|
||||
UniqueID32 unknown3;
|
||||
UniqueID32 unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
|
||||
struct PrimeStruct2B : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 particle3;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
UniqueID32 texture1;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (texture1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
}
|
||||
} primeStruct2b;
|
||||
|
||||
UniqueID32 particle4;
|
||||
|
||||
struct PrimeStruct4 : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
BeamInfo beamInfo;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo1;
|
||||
struct PrimeStruct5 : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
UniqueID32 unknown3;
|
||||
UniqueID32 unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
Value<atUint32> unknown6;
|
||||
Value<atUint32> unknown7;
|
||||
Value<atUint32> unknown8;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (unknown1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown1);
|
||||
ent->name = name + "_unk1";
|
||||
}
|
||||
if (unknown3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown3);
|
||||
ent->name = name + "_unk3";
|
||||
}
|
||||
if (unknown4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown4);
|
||||
ent->name = name + "_unk4";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(unknown1, pathsOut);
|
||||
g_curSpec->flattenDependencies(unknown3, pathsOut);
|
||||
g_curSpec->flattenDependencies(unknown4, pathsOut);
|
||||
}
|
||||
} primeStruct5;
|
||||
Value<float> unknown14;
|
||||
DamageInfo damageInfo2;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
beamInfo.nameIDs(pakRouter, name + "_beamInfo");
|
||||
if (wpsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
primeStruct5.nameIDs(pakRouter, name + "_prime5");
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
beamInfo.depIDs(pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
primeStruct5.depIDs(pathsOut);
|
||||
}
|
||||
} primeStruct4s[4];
|
||||
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo2;
|
||||
CameraShakeData primeStruct2_4;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo3;
|
||||
CameraShakeData primeStruct2_5;
|
||||
|
||||
struct PrimeProjectileInfo : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo4;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
UniqueID32 texture;
|
||||
Value<bool> unknown12;
|
||||
Value<bool> unknown13;
|
||||
Value<bool> unknown14;
|
||||
Value<bool> unknown15;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (texture)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_tex";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
}
|
||||
} projectileInfo;
|
||||
|
||||
DamageInfo damageInfo5;
|
||||
CameraShakeData primeStruct2_6;
|
||||
UniqueID32 particle6;
|
||||
UniqueID32 swhc;
|
||||
UniqueID32 particle7;
|
||||
UniqueID32 particle8;
|
||||
|
||||
struct PrimeStruct6 : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
DamageVulnerability damageVulnerability;
|
||||
DNAColor unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
} primeStruct6s[4];
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
primeStruct2b.nameIDs(pakRouter, name + "_prime2b");
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle6)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
if (particle8)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle8);
|
||||
ent->name = name + "_part8";
|
||||
}
|
||||
if (swhc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(swhc);
|
||||
ent->name = name + "_swhc";
|
||||
}
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
primeStruct4s[0].nameIDs(pakRouter, name + "_prime41");
|
||||
primeStruct4s[1].nameIDs(pakRouter, name + "_prime42");
|
||||
primeStruct4s[2].nameIDs(pakRouter, name + "_prime43");
|
||||
primeStruct4s[3].nameIDs(pakRouter, name + "_prime44");
|
||||
projectileInfo.nameIDs(pakRouter, name + "_projectileInfo");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (unknown1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown1);
|
||||
ent->name = name + "_unk1";
|
||||
}
|
||||
if (unknown3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown3);
|
||||
ent->name = name + "_unk3";
|
||||
}
|
||||
if (unknown4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(unknown4);
|
||||
ent->name = name + "_unk4";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
primeStruct2b.depIDs(pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle8, pathsOut);
|
||||
g_curSpec->flattenDependencies(swhc, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
primeStruct4s[0].depIDs(pathsOut);
|
||||
primeStruct4s[1].depIDs(pathsOut);
|
||||
primeStruct4s[2].depIDs(pathsOut);
|
||||
primeStruct4s[3].depIDs(pathsOut);
|
||||
projectileInfo.depIDs(pathsOut);
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
g_curSpec->flattenDependencies(unknown1, pathsOut);
|
||||
g_curSpec->flattenDependencies(unknown3, pathsOut);
|
||||
g_curSpec->flattenDependencies(unknown4, pathsOut);
|
||||
}
|
||||
} primeStruct5;
|
||||
Value<float> unknown14;
|
||||
DamageInfo damageInfo2;
|
||||
|
||||
void scanIDs(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
beamInfo.nameIDs(pakRouter, name + "_beamInfo");
|
||||
if (wpsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
} massivePrimeStruct;
|
||||
primeStruct5.nameIDs(pakRouter, name + "_prime5");
|
||||
}
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
massivePrimeStruct.actorParameters.addCMDLRigPairs(pakRouter, charAssoc,
|
||||
massivePrimeStruct.patternedInfo.animationParameters);
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
beamInfo.depIDs(pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
primeStruct5.depIDs(pathsOut);
|
||||
}
|
||||
} primeStruct4s[4];
|
||||
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo2;
|
||||
CameraShakeData primeStruct2_4;
|
||||
UniqueID32 wpsc2;
|
||||
DamageInfo damageInfo3;
|
||||
CameraShakeData primeStruct2_5;
|
||||
|
||||
struct PrimeProjectileInfo : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo4;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
UniqueID32 texture;
|
||||
Value<bool> unknown12;
|
||||
Value<bool> unknown13;
|
||||
Value<bool> unknown14;
|
||||
Value<bool> unknown15;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (texture) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_tex";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
}
|
||||
} projectileInfo;
|
||||
|
||||
DamageInfo damageInfo5;
|
||||
CameraShakeData primeStruct2_6;
|
||||
UniqueID32 particle6;
|
||||
UniqueID32 swhc;
|
||||
UniqueID32 particle7;
|
||||
UniqueID32 particle8;
|
||||
|
||||
struct PrimeStruct6 : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
DamageVulnerability damageVulnerability;
|
||||
DNAColor unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
} primeStruct6s[4];
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
primeStruct2b.nameIDs(pakRouter, name + "_prime2b");
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle6) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
if (particle8) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle8);
|
||||
ent->name = name + "_part8";
|
||||
}
|
||||
if (swhc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(swhc);
|
||||
ent->name = name + "_swhc";
|
||||
}
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
primeStruct4s[0].nameIDs(pakRouter, name + "_prime41");
|
||||
primeStruct4s[1].nameIDs(pakRouter, name + "_prime42");
|
||||
primeStruct4s[2].nameIDs(pakRouter, name + "_prime43");
|
||||
primeStruct4s[3].nameIDs(pakRouter, name + "_prime44");
|
||||
projectileInfo.nameIDs(pakRouter, name + "_projectileInfo");
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
massivePrimeStruct.nameIDs(pakRouter, name + "_massiveStruct");
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
primeStruct2b.depIDs(pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle8, pathsOut);
|
||||
g_curSpec->flattenDependencies(swhc, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
primeStruct4s[0].depIDs(pathsOut);
|
||||
primeStruct4s[1].depIDs(pathsOut);
|
||||
primeStruct4s[2].depIDs(pathsOut);
|
||||
primeStruct4s[3].depIDs(pathsOut);
|
||||
projectileInfo.depIDs(pathsOut);
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
massivePrimeStruct.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void scanIDs(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
} massivePrimeStruct;
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
massivePrimeStruct.scanIDs(scansOut);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
massivePrimeStruct.actorParameters.addCMDLRigPairs(pakRouter, charAssoc,
|
||||
massivePrimeStruct.patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
massivePrimeStruct.nameIDs(pakRouter, name + "_massiveStruct");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
massivePrimeStruct.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { massivePrimeStruct.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,64 +4,51 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct MetroidPrimeStage2 : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> unknown;
|
||||
UniqueID32 particle2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct MetroidPrimeStage2 : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 particle1;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> unknown;
|
||||
UniqueID32 particle2;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,34 +4,27 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Midi : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
UniqueID32 song;
|
||||
Value<float> fadeInTime;
|
||||
Value<float> fadeOutTime;
|
||||
Value<atUint32> volume;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Midi : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
UniqueID32 song;
|
||||
Value<float> fadeInTime;
|
||||
Value<float> fadeOutTime;
|
||||
Value<atUint32> volume;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (song)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(song);
|
||||
ent->name = name + "_song";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (song) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(song);
|
||||
ent->name = name + "_song";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
// Dedicated PAK for this
|
||||
//g_curSpec->flattenDependencies(song, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
// Dedicated PAK for this
|
||||
// g_curSpec->flattenDependencies(song, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,34 +4,29 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct NewCameraShaker : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct NewCameraShaker : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<bool> active;
|
||||
PlayerParameters flags;
|
||||
Value<float> duration;
|
||||
Value<float> sfxDist;
|
||||
struct CameraShakerComponent : BigDNA {
|
||||
AT_DECL_DNA
|
||||
PlayerParameters flags;
|
||||
Value<float> duration;
|
||||
Value<float> sfxDist;
|
||||
struct CameraShakerComponent : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
PlayerParameters flags;
|
||||
struct CameraShakePoint : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
PlayerParameters flags;
|
||||
Value<float> attackTime;
|
||||
Value<float> sustainTime;
|
||||
Value<float> duration;
|
||||
Value<float> magnitude;
|
||||
};
|
||||
CameraShakePoint am;
|
||||
CameraShakePoint fm;
|
||||
} shakerComponents[3];
|
||||
struct CameraShakePoint : BigDNA {
|
||||
AT_DECL_DNA
|
||||
PlayerParameters flags;
|
||||
Value<float> attackTime;
|
||||
Value<float> sustainTime;
|
||||
Value<float> duration;
|
||||
Value<float> magnitude;
|
||||
};
|
||||
CameraShakePoint am;
|
||||
CameraShakePoint fm;
|
||||
} shakerComponents[3];
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,73 +4,59 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct NewIntroBoss : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 weaponDesc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct NewIntroBoss : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 weaponDesc;
|
||||
DamageInfo damageInfo;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(weaponDesc, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(weaponDesc, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -1,38 +1,33 @@
|
||||
#include "Oculus.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
template <class Op>
|
||||
void Oculus::Enumerate(typename Op::StreamT& s)
|
||||
{
|
||||
IScriptObject::Enumerate<Op>(s);
|
||||
Do<Op>({"name"}, name, s);
|
||||
Do<Op>({"location"}, location, s);
|
||||
Do<Op>({"orientation"}, orientation, s);
|
||||
Do<Op>({"scale"}, scale, s);
|
||||
Do<Op>({"patternedInfo"}, patternedInfo, s);
|
||||
Do<Op>({"actorParameters"}, actorParameters, s);
|
||||
Do<Op>({"unknown1"}, unknown1, s);
|
||||
Do<Op>({"unknown2"}, unknown2, s);
|
||||
Do<Op>({"unknown3"}, unknown3, s);
|
||||
Do<Op>({"unknown4"}, unknown4, s);
|
||||
Do<Op>({"unknown5"}, unknown5, s);
|
||||
Do<Op>({"unknown6"}, unknown6, s);
|
||||
Do<Op>({"damageVulnerabilty"}, damageVulnerabilty, s);
|
||||
Do<Op>({"unknown7"}, unknown7, s);
|
||||
Do<Op>({"damageInfo"}, damageInfo, s);
|
||||
if (propertyCount == 16)
|
||||
Do<Op>({"unknown8"}, unknown8, s);
|
||||
else
|
||||
unknown8 = 0.f;
|
||||
void Oculus::Enumerate(typename Op::StreamT& s) {
|
||||
IScriptObject::Enumerate<Op>(s);
|
||||
Do<Op>({"name"}, name, s);
|
||||
Do<Op>({"location"}, location, s);
|
||||
Do<Op>({"orientation"}, orientation, s);
|
||||
Do<Op>({"scale"}, scale, s);
|
||||
Do<Op>({"patternedInfo"}, patternedInfo, s);
|
||||
Do<Op>({"actorParameters"}, actorParameters, s);
|
||||
Do<Op>({"unknown1"}, unknown1, s);
|
||||
Do<Op>({"unknown2"}, unknown2, s);
|
||||
Do<Op>({"unknown3"}, unknown3, s);
|
||||
Do<Op>({"unknown4"}, unknown4, s);
|
||||
Do<Op>({"unknown5"}, unknown5, s);
|
||||
Do<Op>({"unknown6"}, unknown6, s);
|
||||
Do<Op>({"damageVulnerabilty"}, damageVulnerabilty, s);
|
||||
Do<Op>({"unknown7"}, unknown7, s);
|
||||
Do<Op>({"damageInfo"}, damageInfo, s);
|
||||
if (propertyCount == 16)
|
||||
Do<Op>({"unknown8"}, unknown8, s);
|
||||
else
|
||||
unknown8 = 0.f;
|
||||
}
|
||||
|
||||
const char* Oculus::DNAType()
|
||||
{
|
||||
return "urde::DNAMP1::Oculus";
|
||||
}
|
||||
const char* Oculus::DNAType() { return "urde::DNAMP1::Oculus"; }
|
||||
|
||||
AT_SPECIALIZE_DNA_YAML(Oculus)
|
||||
|
||||
}
|
||||
} // namespace DataSpec::DNAMP1
|
||||
@@ -4,54 +4,44 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Oculus : IScriptObject
|
||||
{
|
||||
AT_DECL_EXPLICIT_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown7;
|
||||
DamageInfo damageInfo;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Oculus : IScriptObject {
|
||||
AT_DECL_EXPLICIT_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<float> unknown7;
|
||||
DamageInfo damageInfo;
|
||||
|
||||
/* Trilogy addition */
|
||||
Value<float> unknown8;
|
||||
/* Trilogy addition */
|
||||
Value<float> unknown8;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,169 +4,148 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct OmegaPirate : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters1;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
UniqueID32 particle1;
|
||||
Value<atUint32> soundID1;
|
||||
ActorParameters actorParameters2;
|
||||
AnimationParameters animationParameters;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> soundID2;
|
||||
UniqueID32 model1;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 particle6;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atUint32> soundID3;
|
||||
Value<atUint32> soundID4;
|
||||
UniqueID32 particle7;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> soundID5;
|
||||
Value<bool> unknown17;
|
||||
Value<bool> unknown18;
|
||||
UniqueID32 cmdlPhazonVeins;
|
||||
UniqueID32 cskrPhazonVeins;
|
||||
UniqueID32 cinfPhazonVeins;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct OmegaPirate : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters1;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
UniqueID32 particle1;
|
||||
Value<atUint32> soundID1;
|
||||
ActorParameters actorParameters2;
|
||||
AnimationParameters animationParameters;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> soundID2;
|
||||
UniqueID32 model1;
|
||||
DamageInfo damageInfo1;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 particle3;
|
||||
UniqueID32 particle4;
|
||||
UniqueID32 particle5;
|
||||
UniqueID32 particle6;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<float> unknown12;
|
||||
Value<float> unknown13;
|
||||
Value<float> unknown14;
|
||||
Value<float> unknown15;
|
||||
Value<atUint32> unknown16;
|
||||
Value<atUint32> soundID3;
|
||||
Value<atUint32> soundID4;
|
||||
UniqueID32 particle7;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 elsc;
|
||||
Value<atUint32> soundID5;
|
||||
Value<bool> unknown17;
|
||||
Value<bool> unknown18;
|
||||
UniqueID32 cmdlPhazonVeins;
|
||||
UniqueID32 cskrPhazonVeins;
|
||||
UniqueID32 cinfPhazonVeins;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
if (cmdlPhazonVeins && cskrPhazonVeins && cinfPhazonVeins)
|
||||
{
|
||||
charAssoc.m_cmdlRigs[cmdlPhazonVeins] = std::make_pair(cskrPhazonVeins, cinfPhazonVeins);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrPhazonVeins] = std::make_pair(
|
||||
patternedInfo.animationParameters.animationCharacterSet, "ATTACH.VEINS.CSKR");
|
||||
charAssoc.m_cskrCinfToCharacter[cinfPhazonVeins] = std::make_pair(
|
||||
patternedInfo.animationParameters.animationCharacterSet,
|
||||
hecl::Format("CINF_%08X.CINF", cinfPhazonVeins.toUint32()));
|
||||
charAssoc.addAttachmentRig(patternedInfo.animationParameters.animationCharacterSet,
|
||||
cinfPhazonVeins, cmdlPhazonVeins, "VEINS");
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters1.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
actorParameters2.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
if (cmdlPhazonVeins && cskrPhazonVeins && cinfPhazonVeins) {
|
||||
charAssoc.m_cmdlRigs[cmdlPhazonVeins] = std::make_pair(cskrPhazonVeins, cinfPhazonVeins);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrPhazonVeins] =
|
||||
std::make_pair(patternedInfo.animationParameters.animationCharacterSet, "ATTACH.VEINS.CSKR");
|
||||
charAssoc.m_cskrCinfToCharacter[cinfPhazonVeins] =
|
||||
std::make_pair(patternedInfo.animationParameters.animationCharacterSet,
|
||||
hecl::Format("CINF_%08X.CINF", cinfPhazonVeins.toUint32()));
|
||||
charAssoc.addAttachmentRig(patternedInfo.animationParameters.animationCharacterSet, cinfPhazonVeins,
|
||||
cmdlPhazonVeins, "VEINS");
|
||||
}
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (particle6)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (model1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model1);
|
||||
ent->name = name + "_model1";
|
||||
}
|
||||
if (cmdlPhazonVeins)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlPhazonVeins);
|
||||
ent->name = name + "_model2";
|
||||
}
|
||||
if (cskrPhazonVeins)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cskrPhazonVeins);
|
||||
ent->name = name + "_skin";
|
||||
}
|
||||
if (cinfPhazonVeins)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cinfPhazonVeins);
|
||||
ent->name = name + "_rig";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters1.nameIDs(pakRouter, name + "_actp1");
|
||||
actorParameters2.nameIDs(pakRouter, name + "_actp2");
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (particle3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle3);
|
||||
ent->name = name + "_part3";
|
||||
}
|
||||
if (particle4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle4);
|
||||
ent->name = name + "_part4";
|
||||
}
|
||||
if (particle5) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle5);
|
||||
ent->name = name + "_part5";
|
||||
}
|
||||
if (particle6) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle6);
|
||||
ent->name = name + "_part6";
|
||||
}
|
||||
if (particle7) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle7);
|
||||
ent->name = name + "_part7";
|
||||
}
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (model1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model1);
|
||||
ent->name = name + "_model1";
|
||||
}
|
||||
if (cmdlPhazonVeins) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cmdlPhazonVeins);
|
||||
ent->name = name + "_model2";
|
||||
}
|
||||
if (cskrPhazonVeins) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cskrPhazonVeins);
|
||||
ent->name = name + "_skin";
|
||||
}
|
||||
if (cinfPhazonVeins) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(cinfPhazonVeins);
|
||||
ent->name = name + "_rig";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters1.nameIDs(pakRouter, name + "_actp1");
|
||||
actorParameters2.nameIDs(pakRouter, name + "_actp2");
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(model1, pathsOut);
|
||||
g_curSpec->flattenDependencies(cmdlPhazonVeins, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrPhazonVeins, pathsOut);
|
||||
g_curSpec->flattenDependencies(cinfPhazonVeins, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters1.depIDs(pathsOut, lazyOut);
|
||||
actorParameters2.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle3, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle4, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle5, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle6, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle7, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
g_curSpec->flattenDependencies(model1, pathsOut);
|
||||
g_curSpec->flattenDependencies(cmdlPhazonVeins, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrPhazonVeins, pathsOut);
|
||||
g_curSpec->flattenDependencies(cinfPhazonVeins, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters1.depIDs(pathsOut, lazyOut);
|
||||
actorParameters2.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters1.scanIDs(scansOut);
|
||||
actorParameters2.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const {
|
||||
actorParameters1.scanIDs(scansOut);
|
||||
actorParameters2.scanIDs(scansOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -1,21 +1,19 @@
|
||||
#include "Parameters.hpp"
|
||||
#include "../ANCS.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
UniqueID32 AnimationParameters::getCINF(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (!animationCharacterSet)
|
||||
return UniqueID32();
|
||||
const nod::Node* node;
|
||||
const PAK::Entry* ancsEnt = pakRouter.lookupEntry(animationCharacterSet, &node);
|
||||
ANCS ancs;
|
||||
{
|
||||
PAKEntryReadStream rs = ancsEnt->beginReadStream(*node);
|
||||
ancs.read(rs);
|
||||
}
|
||||
return ancs.characterSet.characters.at(character).cinf;
|
||||
UniqueID32 AnimationParameters::getCINF(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (!animationCharacterSet)
|
||||
return UniqueID32();
|
||||
const nod::Node* node;
|
||||
const PAK::Entry* ancsEnt = pakRouter.lookupEntry(animationCharacterSet, &node);
|
||||
ANCS ancs;
|
||||
{
|
||||
PAKEntryReadStream rs = ancsEnt->beginReadStream(*node);
|
||||
ancs.read(rs);
|
||||
}
|
||||
return ancs.characterSet.characters.at(character).cinf;
|
||||
}
|
||||
|
||||
}
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -5,530 +5,467 @@
|
||||
#include "../SAVW.hpp"
|
||||
#include "specter/genie.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
enum class EPickupType : atUint32
|
||||
{
|
||||
PowerBeam = 0,
|
||||
IceBeam = 1,
|
||||
WaveBeam = 2,
|
||||
PlasmaBeam = 3,
|
||||
Missile = 4,
|
||||
ScanVisor = 5,
|
||||
MorphBallBomb = 6,
|
||||
PowerBomb = 7,
|
||||
Flamethrower = 8,
|
||||
ThermalVisor = 9,
|
||||
ChargeBeam = 10,
|
||||
SuperMissile = 11,
|
||||
GrappleBeam = 12,
|
||||
XRayVisor = 13,
|
||||
IceSpreader = 14,
|
||||
SpaceJump = 15,
|
||||
MorphBall = 16,
|
||||
CombatVisor = 17,
|
||||
BoostBall = 18,
|
||||
SpiderBall = 19,
|
||||
PowerSuit = 20,
|
||||
GravitySuit = 21,
|
||||
VariaSuit = 22,
|
||||
PhazonSuit = 23,
|
||||
EnergyTank = 24,
|
||||
UnknownItem1 = 25,
|
||||
HealthRefill = 26,
|
||||
UnknownItem2 = 27,
|
||||
WaveBuster = 28,
|
||||
Truth = 29,
|
||||
Strength = 30,
|
||||
Elder = 31,
|
||||
Wild = 32,
|
||||
LifeGiver = 33,
|
||||
Warrior = 34,
|
||||
Chozo = 35,
|
||||
Nature = 36,
|
||||
Sun = 37,
|
||||
World = 38,
|
||||
Spirit = 39,
|
||||
Newborn = 40
|
||||
enum class EPickupType : atUint32 {
|
||||
PowerBeam = 0,
|
||||
IceBeam = 1,
|
||||
WaveBeam = 2,
|
||||
PlasmaBeam = 3,
|
||||
Missile = 4,
|
||||
ScanVisor = 5,
|
||||
MorphBallBomb = 6,
|
||||
PowerBomb = 7,
|
||||
Flamethrower = 8,
|
||||
ThermalVisor = 9,
|
||||
ChargeBeam = 10,
|
||||
SuperMissile = 11,
|
||||
GrappleBeam = 12,
|
||||
XRayVisor = 13,
|
||||
IceSpreader = 14,
|
||||
SpaceJump = 15,
|
||||
MorphBall = 16,
|
||||
CombatVisor = 17,
|
||||
BoostBall = 18,
|
||||
SpiderBall = 19,
|
||||
PowerSuit = 20,
|
||||
GravitySuit = 21,
|
||||
VariaSuit = 22,
|
||||
PhazonSuit = 23,
|
||||
EnergyTank = 24,
|
||||
UnknownItem1 = 25,
|
||||
HealthRefill = 26,
|
||||
UnknownItem2 = 27,
|
||||
WaveBuster = 28,
|
||||
Truth = 29,
|
||||
Strength = 30,
|
||||
Elder = 31,
|
||||
Wild = 32,
|
||||
LifeGiver = 33,
|
||||
Warrior = 34,
|
||||
Chozo = 35,
|
||||
Nature = 36,
|
||||
Sun = 37,
|
||||
World = 38,
|
||||
Spirit = 39,
|
||||
Newborn = 40
|
||||
} SPECTER_ENUM("Pickup Type", "", EPickupType);
|
||||
|
||||
enum class ESpecialFunctionType : atUint32
|
||||
{
|
||||
What,
|
||||
PlayerFollowLocator,
|
||||
SpinnerController,
|
||||
ObjectFollowLocator,
|
||||
Function4,
|
||||
InventoryActivator,
|
||||
MapStation,
|
||||
SaveStation,
|
||||
IntroBossRingController,
|
||||
ViewFrustumTest,
|
||||
ShotSpinnerController,
|
||||
EscapeSequence,
|
||||
BossEnergyBar,
|
||||
EndGame,
|
||||
HUDFadeIn,
|
||||
CinematicSkip,
|
||||
ScriptLayerController,
|
||||
RainSimulator,
|
||||
AreaDamage,
|
||||
ObjectFollowObject,
|
||||
HintSystem,
|
||||
DropBomb,
|
||||
Function22,
|
||||
MissileStation,
|
||||
Billboard,
|
||||
PlayerInAreaRelay,
|
||||
HUDTarget,
|
||||
FogFader,
|
||||
EnterLogbook,
|
||||
PowerBombStation,
|
||||
Ending,
|
||||
FusionRelay,
|
||||
WeaponSwitch // PAL Only
|
||||
enum class ESpecialFunctionType : atUint32 {
|
||||
What,
|
||||
PlayerFollowLocator,
|
||||
SpinnerController,
|
||||
ObjectFollowLocator,
|
||||
Function4,
|
||||
InventoryActivator,
|
||||
MapStation,
|
||||
SaveStation,
|
||||
IntroBossRingController,
|
||||
ViewFrustumTest,
|
||||
ShotSpinnerController,
|
||||
EscapeSequence,
|
||||
BossEnergyBar,
|
||||
EndGame,
|
||||
HUDFadeIn,
|
||||
CinematicSkip,
|
||||
ScriptLayerController,
|
||||
RainSimulator,
|
||||
AreaDamage,
|
||||
ObjectFollowObject,
|
||||
HintSystem,
|
||||
DropBomb,
|
||||
Function22,
|
||||
MissileStation,
|
||||
Billboard,
|
||||
PlayerInAreaRelay,
|
||||
HUDTarget,
|
||||
FogFader,
|
||||
EnterLogbook,
|
||||
PowerBombStation,
|
||||
Ending,
|
||||
FusionRelay,
|
||||
WeaponSwitch // PAL Only
|
||||
} SPECTER_ENUM("Special Function", "", EPickupType);
|
||||
|
||||
struct AnimationParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
UniqueID32 animationCharacterSet;
|
||||
Value<atUint32> character;
|
||||
Value<atUint32> defaultAnimation;
|
||||
struct AnimationParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
UniqueID32 animationCharacterSet;
|
||||
Value<atUint32> character;
|
||||
Value<atUint32> defaultAnimation;
|
||||
|
||||
UniqueID32 getCINF(PAKRouter<PAKBridge>& pakRouter) const;
|
||||
UniqueID32 getCINF(PAKRouter<PAKBridge>& pakRouter) const;
|
||||
|
||||
void nameANCS(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (!animationCharacterSet)
|
||||
return;
|
||||
PAK::Entry* ancsEnt = (PAK::Entry*)pakRouter.lookupEntry(animationCharacterSet);
|
||||
if (ancsEnt->name.empty())
|
||||
ancsEnt->name = name;
|
||||
}
|
||||
void nameANCS(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (!animationCharacterSet)
|
||||
return;
|
||||
PAK::Entry* ancsEnt = (PAK::Entry*)pakRouter.lookupEntry(animationCharacterSet);
|
||||
if (ancsEnt->name.empty())
|
||||
ancsEnt->name = name;
|
||||
}
|
||||
|
||||
void depANCS(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(animationCharacterSet, pathsOut, character);
|
||||
}
|
||||
void depANCS(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
g_curSpec->flattenDependencies(animationCharacterSet, pathsOut, character);
|
||||
}
|
||||
|
||||
void depANCSAll(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(animationCharacterSet, pathsOut);
|
||||
}
|
||||
void depANCSAll(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
g_curSpec->flattenDependencies(animationCharacterSet, pathsOut);
|
||||
}
|
||||
};
|
||||
|
||||
struct BehaveChance : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
struct BehaveChance : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
};
|
||||
|
||||
struct DamageInfo : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> weaponType;
|
||||
Value<float> damage;
|
||||
Value<float> radius;
|
||||
Value<float> knockbackPower;
|
||||
struct DamageInfo : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> weaponType;
|
||||
Value<float> damage;
|
||||
Value<float> radius;
|
||||
Value<float> knockbackPower;
|
||||
};
|
||||
|
||||
struct DamageVulnerability : BigDNA
|
||||
{
|
||||
struct DamageVulnerability : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> power;
|
||||
Value<atUint32> ice;
|
||||
Value<atUint32> wave;
|
||||
Value<atUint32> plasma;
|
||||
Value<atUint32> bomb;
|
||||
Value<atUint32> powerBomb;
|
||||
Value<atUint32> missile;
|
||||
Value<atUint32> boostBall;
|
||||
Value<atUint32> phazon;
|
||||
Value<atUint32> enemyWeapon1;
|
||||
Value<atUint32> enemyWeapon2Poison;
|
||||
Value<atUint32> enemyWeapon3Lava;
|
||||
Value<atUint32> enemyWeapon4;
|
||||
Value<atUint32> unkownWeapon1;
|
||||
Value<atUint32> unkownWeapon2;
|
||||
Value<atUint32> deflected;
|
||||
struct ChargedBeams : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> power;
|
||||
Value<atUint32> ice;
|
||||
Value<atUint32> wave;
|
||||
Value<atUint32> plasma;
|
||||
Value<atUint32> bomb;
|
||||
Value<atUint32> powerBomb;
|
||||
Value<atUint32> missile;
|
||||
Value<atUint32> boostBall;
|
||||
Value<atUint32> phazon;
|
||||
Value<atUint32> enemyWeapon1;
|
||||
Value<atUint32> enemyWeapon2Poison;
|
||||
Value<atUint32> enemyWeapon3Lava;
|
||||
Value<atUint32> enemyWeapon4;
|
||||
Value<atUint32> unkownWeapon1;
|
||||
Value<atUint32> unkownWeapon2;
|
||||
Value<atUint32> deflected;
|
||||
struct ChargedBeams : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> power;
|
||||
Value<atUint32> ice;
|
||||
Value<atUint32> wave;
|
||||
Value<atUint32> plasma;
|
||||
Value<atUint32> deflected;
|
||||
} chargedBeams;
|
||||
} chargedBeams;
|
||||
|
||||
struct BeamCombos : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> superMissiles;
|
||||
Value<atUint32> iceSpreader;
|
||||
Value<atUint32> wavebuster;
|
||||
Value<atUint32> flameThrower;
|
||||
Value<atUint32> deflected;
|
||||
} beamCombos;
|
||||
};
|
||||
|
||||
struct FlareDefinition : BigDNA
|
||||
{
|
||||
struct BeamCombos : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 texture;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atVec4f> unknown4; // CColor
|
||||
Value<atUint32> superMissiles;
|
||||
Value<atUint32> iceSpreader;
|
||||
Value<atUint32> wavebuster;
|
||||
Value<atUint32> flameThrower;
|
||||
Value<atUint32> deflected;
|
||||
} beamCombos;
|
||||
};
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (texture)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
struct FlareDefinition : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 texture;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atVec4f> unknown4; // CColor
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (texture) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
}
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const { g_curSpec->flattenDependencies(texture, pathsOut); }
|
||||
};
|
||||
|
||||
struct GrappleParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<bool> disableTurning;
|
||||
struct GrappleParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<bool> disableTurning;
|
||||
};
|
||||
|
||||
struct HealthInfo : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> health SPECTER_PROPERTY("Health", "Base health for object");
|
||||
Value<float> knockbackResistence SPECTER_PROPERTY("Knockback Resistence", "");
|
||||
struct HealthInfo : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> health SPECTER_PROPERTY("Health", "Base health for object");
|
||||
Value<float> knockbackResistence SPECTER_PROPERTY("Knockback Resistence", "");
|
||||
} SPECTER_PROPERTY("Health Info", "");
|
||||
|
||||
struct LightParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> shadowTesselation;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<atVec4f> noLightsAmbient; // CColor
|
||||
Value<bool> makeLights;
|
||||
Value<atUint32> worldLightingOptions;
|
||||
Value<atUint32> lightRecalculationOptions;
|
||||
Value<atVec3f> actorPosBias;
|
||||
Value<atUint32> maxDynamicLights;
|
||||
Value<atUint32> maxAreaLights;
|
||||
Value<bool> ambientChannelOverflow;
|
||||
Value<atUint32> layerIndex;
|
||||
struct LightParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<atUint32> shadowTesselation;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<atVec4f> noLightsAmbient; // CColor
|
||||
Value<bool> makeLights;
|
||||
Value<atUint32> worldLightingOptions;
|
||||
Value<atUint32> lightRecalculationOptions;
|
||||
Value<atVec3f> actorPosBias;
|
||||
Value<atUint32> maxDynamicLights;
|
||||
Value<atUint32> maxAreaLights;
|
||||
Value<bool> ambientChannelOverflow;
|
||||
Value<atUint32> layerIndex;
|
||||
};
|
||||
|
||||
struct PatternedInfo : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> mass;
|
||||
Value<float> speed;
|
||||
Value<float> turnSpeed;
|
||||
Value<float> detectionRange;
|
||||
Value<float> detectionHeightRange;
|
||||
Value<float> dectectionAngle;
|
||||
Value<float> minAttackRange;
|
||||
Value<float> maxAttackRange;
|
||||
Value<float> averageAttackTime;
|
||||
Value<float> attackTimeVariation;
|
||||
Value<float> leashRadius;
|
||||
Value<float> playerLeashRadius;
|
||||
Value<float> playerLeashTime;
|
||||
DamageInfo contactDamage;
|
||||
Value<float> damageWaitTime;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
Value<float> halfExtent;
|
||||
Value<float> height;
|
||||
Value<atVec3f> bodyOrigin;
|
||||
Value<float> stepUpHeight;
|
||||
Value<float> xDamage;
|
||||
Value<float> frozenXDamage;
|
||||
Value<float> xDamageDelay;
|
||||
Value<atUint32> deathSfx;
|
||||
AnimationParameters animationParameters;
|
||||
Value<bool> active;
|
||||
UniqueID32 stateMachine;
|
||||
Value<float> intoFreezeDur;
|
||||
Value<float> outOfFreezeDur;
|
||||
Value<float> unknown10;
|
||||
Value<atUint32> particle1Frames;
|
||||
Value<atVec3f> particle1Scale;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 electric;
|
||||
Value<atVec3f> particle2Scale;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> iceShatterSfx;
|
||||
struct PatternedInfo : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<float> mass;
|
||||
Value<float> speed;
|
||||
Value<float> turnSpeed;
|
||||
Value<float> detectionRange;
|
||||
Value<float> detectionHeightRange;
|
||||
Value<float> dectectionAngle;
|
||||
Value<float> minAttackRange;
|
||||
Value<float> maxAttackRange;
|
||||
Value<float> averageAttackTime;
|
||||
Value<float> attackTimeVariation;
|
||||
Value<float> leashRadius;
|
||||
Value<float> playerLeashRadius;
|
||||
Value<float> playerLeashTime;
|
||||
DamageInfo contactDamage;
|
||||
Value<float> damageWaitTime;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
Value<float> halfExtent;
|
||||
Value<float> height;
|
||||
Value<atVec3f> bodyOrigin;
|
||||
Value<float> stepUpHeight;
|
||||
Value<float> xDamage;
|
||||
Value<float> frozenXDamage;
|
||||
Value<float> xDamageDelay;
|
||||
Value<atUint32> deathSfx;
|
||||
AnimationParameters animationParameters;
|
||||
Value<bool> active;
|
||||
UniqueID32 stateMachine;
|
||||
Value<float> intoFreezeDur;
|
||||
Value<float> outOfFreezeDur;
|
||||
Value<float> unknown10;
|
||||
Value<atUint32> particle1Frames;
|
||||
Value<atVec3f> particle1Scale;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 electric;
|
||||
Value<atVec3f> particle2Scale;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> iceShatterSfx;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
if (stateMachine)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(stateMachine);
|
||||
ent->name = name + "_fsm";
|
||||
}
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (electric)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(electric);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
if (stateMachine) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(stateMachine);
|
||||
ent->name = name + "_fsm";
|
||||
}
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (electric) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(electric);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
animationParameters.depANCS(pathsOut);
|
||||
g_curSpec->flattenDependencies(stateMachine, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(electric, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
}
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
animationParameters.depANCS(pathsOut);
|
||||
g_curSpec->flattenDependencies(stateMachine, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(electric, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
}
|
||||
};
|
||||
|
||||
struct PlayerHintParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> extendTargetDistance;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
Value<bool> unknown6;
|
||||
Value<bool> unknown7;
|
||||
Value<bool> unknown8;
|
||||
Value<bool> unknown9;
|
||||
Value<bool> unknown10;
|
||||
Value<bool> unknown11;
|
||||
Value<bool> unknown12;
|
||||
Value<bool> unknown13;
|
||||
Value<bool> unknown14;
|
||||
Value<bool> unknown15;
|
||||
struct PlayerHintParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> unknown2;
|
||||
Value<bool> extendTargetDistance;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
Value<bool> unknown6;
|
||||
Value<bool> unknown7;
|
||||
Value<bool> unknown8;
|
||||
Value<bool> unknown9;
|
||||
Value<bool> unknown10;
|
||||
Value<bool> unknown11;
|
||||
Value<bool> unknown12;
|
||||
Value<bool> unknown13;
|
||||
Value<bool> unknown14;
|
||||
Value<bool> unknown15;
|
||||
};
|
||||
|
||||
struct ScannableParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 scanId;
|
||||
struct ScannableParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
UniqueID32 scanId;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (scanId)
|
||||
{
|
||||
PAK::Entry* scanEnt = (PAK::Entry*)pakRouter.lookupEntry(scanId);
|
||||
scanEnt->name = name + "_scan";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (scanId) {
|
||||
PAK::Entry* scanEnt = (PAK::Entry*)pakRouter.lookupEntry(scanId);
|
||||
scanEnt->name = name + "_scan";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(scanId, pathsOut);
|
||||
}
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const { g_curSpec->flattenDependencies(scanId, pathsOut); }
|
||||
|
||||
void scanIDs(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
scansOut.emplace_back(scanId);
|
||||
}
|
||||
void scanIDs(std::vector<Scan>& scansOut) const { scansOut.emplace_back(scanId); }
|
||||
};
|
||||
|
||||
struct VisorParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> scanPassthrough;
|
||||
Value<atUint32> visorMask;
|
||||
struct VisorParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> unknown1;
|
||||
Value<bool> scanPassthrough;
|
||||
Value<atUint32> visorMask;
|
||||
};
|
||||
|
||||
struct PlayerParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Vector<bool, AT_DNA_COUNT(propertyCount)> bools;
|
||||
struct PlayerParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Vector<bool, AT_DNA_COUNT(propertyCount)> bools;
|
||||
};
|
||||
|
||||
struct ActorParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
LightParameters lightParameters;
|
||||
ScannableParameters scannableParameters;
|
||||
UniqueID32 cmdlXray;
|
||||
UniqueID32 cskrXray;
|
||||
UniqueID32 cmdlThermal;
|
||||
UniqueID32 cskrThermal;
|
||||
Value<bool> globalTimeProvider;
|
||||
Value<float> fadeInTime;
|
||||
Value<float> fadeOutTime;
|
||||
VisorParameters visorParameters;
|
||||
Value<bool> thermalHeat;
|
||||
Value<bool> renderUnsorted;
|
||||
Value<bool> noSortThermal;
|
||||
Value<float> thermalMag;
|
||||
struct ActorParameters : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
LightParameters lightParameters;
|
||||
ScannableParameters scannableParameters;
|
||||
UniqueID32 cmdlXray;
|
||||
UniqueID32 cskrXray;
|
||||
UniqueID32 cmdlThermal;
|
||||
UniqueID32 cskrThermal;
|
||||
Value<bool> globalTimeProvider;
|
||||
Value<float> fadeInTime;
|
||||
Value<float> fadeOutTime;
|
||||
VisorParameters visorParameters;
|
||||
Value<bool> thermalHeat;
|
||||
Value<bool> renderUnsorted;
|
||||
Value<bool> noSortThermal;
|
||||
Value<float> thermalMag;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc,
|
||||
const AnimationParameters& animParms) const
|
||||
{
|
||||
auto cinf = animParms.getCINF(pakRouter);
|
||||
if (cmdlXray && cskrXray)
|
||||
{
|
||||
charAssoc.m_cmdlRigs[cmdlXray] = std::make_pair(cskrXray, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrXray] = std::make_pair(
|
||||
animParms.animationCharacterSet, "ATTACH.XRAY.CSKR");
|
||||
charAssoc.addAttachmentRig(animParms.animationCharacterSet, {}, cmdlXray, "XRAY");
|
||||
}
|
||||
if (cmdlThermal && cskrThermal)
|
||||
{
|
||||
charAssoc.m_cmdlRigs[cmdlThermal] = std::make_pair(cskrThermal, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrThermal] = std::make_pair(
|
||||
animParms.animationCharacterSet, "ATTACH.THERMAL.CSKR");
|
||||
charAssoc.addAttachmentRig(animParms.animationCharacterSet, {}, cmdlThermal, "THERMAL");
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc,
|
||||
const AnimationParameters& animParms) const {
|
||||
auto cinf = animParms.getCINF(pakRouter);
|
||||
if (cmdlXray && cskrXray) {
|
||||
charAssoc.m_cmdlRigs[cmdlXray] = std::make_pair(cskrXray, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrXray] = std::make_pair(animParms.animationCharacterSet, "ATTACH.XRAY.CSKR");
|
||||
charAssoc.addAttachmentRig(animParms.animationCharacterSet, {}, cmdlXray, "XRAY");
|
||||
}
|
||||
if (cmdlThermal && cskrThermal) {
|
||||
charAssoc.m_cmdlRigs[cmdlThermal] = std::make_pair(cskrThermal, cinf);
|
||||
charAssoc.m_cskrCinfToCharacter[cskrThermal] =
|
||||
std::make_pair(animParms.animationCharacterSet, "ATTACH.THERMAL.CSKR");
|
||||
charAssoc.addAttachmentRig(animParms.animationCharacterSet, {}, cmdlThermal, "THERMAL");
|
||||
}
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
scannableParameters.nameIDs(pakRouter, name);
|
||||
if (cmdlXray)
|
||||
{
|
||||
PAK::Entry* xmEnt = (PAK::Entry*)pakRouter.lookupEntry(cmdlXray);
|
||||
xmEnt->name = name + "_xraymodel";
|
||||
}
|
||||
if (cskrXray)
|
||||
{
|
||||
PAK::Entry* xsEnt = (PAK::Entry*)pakRouter.lookupEntry(cskrXray);
|
||||
xsEnt->name = name + "_xrayskin";
|
||||
}
|
||||
if (cmdlThermal)
|
||||
{
|
||||
PAK::Entry* xmEnt = (PAK::Entry*)pakRouter.lookupEntry(cmdlThermal);
|
||||
xmEnt->name = name + "_thermalmodel";
|
||||
}
|
||||
if (cskrThermal)
|
||||
{
|
||||
PAK::Entry* xsEnt = (PAK::Entry*)pakRouter.lookupEntry(cskrThermal);
|
||||
xsEnt->name = name + "_thermalskin";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
scannableParameters.nameIDs(pakRouter, name);
|
||||
if (cmdlXray) {
|
||||
PAK::Entry* xmEnt = (PAK::Entry*)pakRouter.lookupEntry(cmdlXray);
|
||||
xmEnt->name = name + "_xraymodel";
|
||||
}
|
||||
if (cskrXray) {
|
||||
PAK::Entry* xsEnt = (PAK::Entry*)pakRouter.lookupEntry(cskrXray);
|
||||
xsEnt->name = name + "_xrayskin";
|
||||
}
|
||||
if (cmdlThermal) {
|
||||
PAK::Entry* xmEnt = (PAK::Entry*)pakRouter.lookupEntry(cmdlThermal);
|
||||
xmEnt->name = name + "_thermalmodel";
|
||||
}
|
||||
if (cskrThermal) {
|
||||
PAK::Entry* xsEnt = (PAK::Entry*)pakRouter.lookupEntry(cskrThermal);
|
||||
xsEnt->name = name + "_thermalskin";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
scannableParameters.depIDs(lazyOut);
|
||||
g_curSpec->flattenDependencies(cmdlXray, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrXray, pathsOut);
|
||||
g_curSpec->flattenDependencies(cmdlThermal, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrThermal, pathsOut);
|
||||
}
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
scannableParameters.depIDs(lazyOut);
|
||||
g_curSpec->flattenDependencies(cmdlXray, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrXray, pathsOut);
|
||||
g_curSpec->flattenDependencies(cmdlThermal, pathsOut);
|
||||
g_curSpec->flattenDependencies(cskrThermal, pathsOut);
|
||||
}
|
||||
|
||||
void scanIDs(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
scannableParameters.scanIDs(scansOut);
|
||||
}
|
||||
void scanIDs(std::vector<Scan>& scansOut) const { scannableParameters.scanIDs(scansOut); }
|
||||
};
|
||||
|
||||
struct BeamInfo : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> unknown1;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
DNAColor unknown11;
|
||||
DNAColor unknown12;
|
||||
struct BeamInfo : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> propertyCount;
|
||||
Value<atUint32> unknown1;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
DNAColor unknown11;
|
||||
DNAColor unknown12;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
}
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,60 +4,50 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Parasite : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> flavor;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> maxTelegraphReactDist;
|
||||
Value<float> advanceWpRadius;
|
||||
Value<float> unknown4;
|
||||
Value<float> alignAngVel;
|
||||
Value<float> unknown6;
|
||||
Value<float> stuckTimeThreshold;
|
||||
Value<float> collisionCloseMargin;
|
||||
Value<float> parasiteSearchRadius;
|
||||
Value<float> parasiteSeparationDist;
|
||||
Value<float> parasiteSeparationWeight;
|
||||
Value<float> parasiteAlignmentWeight;
|
||||
Value<float> parasiteCohesionWeight;
|
||||
Value<float> destinationSeekWeight;
|
||||
Value<float> forwardMoveWeight;
|
||||
Value<float> playerSeparationDist;
|
||||
Value<float> playerSeparationWeight;
|
||||
Value<float> playerObstructionMinDist;
|
||||
Value<bool> disableMove;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Parasite : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> flavor;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> maxTelegraphReactDist;
|
||||
Value<float> advanceWpRadius;
|
||||
Value<float> unknown4;
|
||||
Value<float> alignAngVel;
|
||||
Value<float> unknown6;
|
||||
Value<float> stuckTimeThreshold;
|
||||
Value<float> collisionCloseMargin;
|
||||
Value<float> parasiteSearchRadius;
|
||||
Value<float> parasiteSeparationDist;
|
||||
Value<float> parasiteSeparationWeight;
|
||||
Value<float> parasiteAlignmentWeight;
|
||||
Value<float> parasiteCohesionWeight;
|
||||
Value<float> destinationSeekWeight;
|
||||
Value<float> forwardMoveWeight;
|
||||
Value<float> playerSeparationDist;
|
||||
Value<float> playerSeparationWeight;
|
||||
Value<float> playerObstructionMinDist;
|
||||
Value<bool> disableMove;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,34 +4,30 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PathCamera : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
struct CameraParameters : BigDNA
|
||||
{
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> closedLoop;
|
||||
Value<bool> noFilter;
|
||||
Value<bool> tangentOrientation;
|
||||
Value<bool> easeDist;
|
||||
Value<bool> useHintLookZ;
|
||||
Value<bool> clampToClosedDoor;
|
||||
} cameraParameters;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PathCamera : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> active;
|
||||
struct CameraParameters : BigDNA {
|
||||
AT_DECL_DNA
|
||||
Value<atUint32> propertyCount;
|
||||
Value<bool> closedLoop;
|
||||
Value<bool> noFilter;
|
||||
Value<bool> tangentOrientation;
|
||||
Value<bool> easeDist;
|
||||
Value<bool> useHintLookZ;
|
||||
Value<bool> clampToClosedDoor;
|
||||
} cameraParameters;
|
||||
|
||||
Value<float> lengthExtent;
|
||||
Value<float> filterMag;
|
||||
Value<float> filterProportion;
|
||||
Value<atUint32> initPos;
|
||||
Value<float> minEaseDist;
|
||||
Value<float> maxEaseDist;
|
||||
Value<float> lengthExtent;
|
||||
Value<float> filterMag;
|
||||
Value<float> filterProportion;
|
||||
Value<atUint32> initPos;
|
||||
Value<float> minEaseDist;
|
||||
Value<float> maxEaseDist;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,50 +4,39 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PhazonHealingNodule : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown1;
|
||||
UniqueID32 elsc;
|
||||
String<-1> unknown2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PhazonHealingNodule : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown1;
|
||||
UniqueID32 elsc;
|
||||
String<-1> unknown2;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,63 +4,53 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PhazonPool : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<bool> unknown1;
|
||||
UniqueID32 model1;
|
||||
UniqueID32 model2;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> unknown2;
|
||||
DamageInfo damageInfo;
|
||||
Value<atVec3f> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<bool> unknown8;
|
||||
Value<float> unknown9;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PhazonPool : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<bool> unknown1;
|
||||
UniqueID32 model1;
|
||||
UniqueID32 model2;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
Value<atUint32> unknown2;
|
||||
DamageInfo damageInfo;
|
||||
Value<atVec3f> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<bool> unknown8;
|
||||
Value<float> unknown9;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (model1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model1);
|
||||
ent->name = name + "_model1";
|
||||
}
|
||||
if (model2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model2);
|
||||
ent->name = name + "_model2";
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (model1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model1);
|
||||
ent->name = name + "_model1";
|
||||
}
|
||||
if (model2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model2);
|
||||
ent->name = name + "_model2";
|
||||
}
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(model1, pathsOut);
|
||||
g_curSpec->flattenDependencies(model2, pathsOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(model1, pathsOut);
|
||||
g_curSpec->flattenDependencies(model2, pathsOut);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,65 +4,53 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Pickup : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> hitboxVolume;
|
||||
Value<atVec3f> scanPosition;
|
||||
Value<atUint32> pickupType;
|
||||
Value<atUint32> capacity;
|
||||
Value<atUint32> amount;
|
||||
Value<float> dropRate;
|
||||
Value<float> lifetime;
|
||||
Value<float> spawnDelay;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> active;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 particle;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Pickup : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> hitboxVolume;
|
||||
Value<atVec3f> scanPosition;
|
||||
Value<atUint32> pickupType;
|
||||
Value<atUint32> capacity;
|
||||
Value<atUint32> amount;
|
||||
Value<float> dropRate;
|
||||
Value<float> lifetime;
|
||||
Value<float> spawnDelay;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> active;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 particle;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,16 +4,13 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PickupGenerator : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> offset;
|
||||
Value<bool> active;
|
||||
Value<float> frequency;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PickupGenerator : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> offset;
|
||||
Value<bool> active;
|
||||
Value<float> frequency;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -1,37 +1,31 @@
|
||||
#include "Platform.hpp"
|
||||
#include "hecl/Blender/Connection.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
zeus::CAABox Platform::getVISIAABB(hecl::blender::Token& btok) const
|
||||
{
|
||||
hecl::blender::Connection& conn = btok.getBlenderConnection();
|
||||
zeus::CAABox aabbOut;
|
||||
zeus::CAABox Platform::getVISIAABB(hecl::blender::Token& btok) const {
|
||||
hecl::blender::Connection& conn = btok.getBlenderConnection();
|
||||
zeus::CAABox aabbOut;
|
||||
|
||||
if (model)
|
||||
{
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(model);
|
||||
conn.openBlend(path);
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
else if (animationParameters.animationCharacterSet)
|
||||
{
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(
|
||||
animationParameters.animationCharacterSet);
|
||||
conn.openBlend(path.getWithExtension(_SYS_STR(".blend"), true));
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
if (model) {
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(model);
|
||||
conn.openBlend(path);
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
} else if (animationParameters.animationCharacterSet) {
|
||||
hecl::ProjectPath path = UniqueIDBridge::TranslatePakIdToPath(animationParameters.animationCharacterSet);
|
||||
conn.openBlend(path.getWithExtension(_SYS_STR(".blend"), true));
|
||||
hecl::blender::DataStream ds = conn.beginData();
|
||||
auto aabb = ds.getMeshAABB();
|
||||
aabbOut = zeus::CAABox(aabb.first, aabb.second);
|
||||
}
|
||||
|
||||
if (aabbOut.min.x() > aabbOut.max.x())
|
||||
return {};
|
||||
if (aabbOut.min.x() > aabbOut.max.x())
|
||||
return {};
|
||||
|
||||
zeus::CTransform xf = ConvertEditorEulerToTransform4f(scale, orientation, location);
|
||||
return aabbOut.getTransformedAABox(xf);
|
||||
zeus::CTransform xf = ConvertEditorEulerToTransform4f(scale, orientation, location);
|
||||
return aabbOut.getTransformedAABox(xf);
|
||||
}
|
||||
|
||||
}
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,68 +4,56 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Platform : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> extent;
|
||||
Value<atVec3f> collisionCenter;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> speed;
|
||||
Value<bool> active;
|
||||
UniqueID32 dcln;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<bool> detectCollision;
|
||||
Value<float> xrayAlpha;
|
||||
Value<bool> rainSplashes;
|
||||
Value<atUint32> maxRainSplashes;
|
||||
Value<atUint32> rainGenRate;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Platform : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> extent;
|
||||
Value<atVec3f> collisionCenter;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> speed;
|
||||
Value<bool> active;
|
||||
UniqueID32 dcln;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerabilty;
|
||||
Value<bool> detectCollision;
|
||||
Value<float> xrayAlpha;
|
||||
Value<bool> rainSplashes;
|
||||
Value<atUint32> maxRainSplashes;
|
||||
Value<atUint32> rainGenRate;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (dcln) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln);
|
||||
ent->name = name + "_dcln";
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (dcln)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln);
|
||||
ent->name = name + "_dcln";
|
||||
}
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(dcln, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(dcln, pathsOut);
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const;
|
||||
zeus::CAABox getVISIAABB(hecl::blender::Token& btok) const;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,61 +4,50 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PlayerActor : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> boxExtents;
|
||||
Value<atVec3f> boxOffset;
|
||||
Value<float> mass;
|
||||
Value<float> zMomentum;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> loop;
|
||||
Value<bool> snow;
|
||||
Value<bool> solid;
|
||||
Value<bool> active;
|
||||
PlayerParameters playerParameters;
|
||||
Value<atUint32> beamId;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PlayerActor : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
Value<atVec3f> boxExtents;
|
||||
Value<atVec3f> boxOffset;
|
||||
Value<float> mass;
|
||||
Value<float> zMomentum;
|
||||
HealthInfo healthInfo;
|
||||
DamageVulnerability damageVulnerability;
|
||||
UniqueID32 model;
|
||||
AnimationParameters animationParameters;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> loop;
|
||||
Value<bool> snow;
|
||||
Value<bool> solid;
|
||||
Value<bool> active;
|
||||
PlayerParameters playerParameters;
|
||||
Value<atUint32> beamId;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (model)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (model) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model);
|
||||
ent->name = name + "_model";
|
||||
}
|
||||
animationParameters.nameANCS(pakRouter, name + "_animp");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCSAll(lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(model, pathsOut);
|
||||
animationParameters.depANCS(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
animationParameters.depANCSAll(lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,18 +4,15 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PlayerHint : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
PlayerHintParameters playerHintParameters;
|
||||
Value<atUint32> unknown2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PlayerHint : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
PlayerHintParameters playerHintParameters;
|
||||
Value<atUint32> unknown2;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,19 +4,16 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PlayerStateChange : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> unknown;
|
||||
Value<atUint32> item;
|
||||
Value<atUint32> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PlayerStateChange : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> unknown;
|
||||
Value<atUint32> item;
|
||||
Value<atUint32> unknown2;
|
||||
Value<atUint32> unknown3;
|
||||
Value<atUint32> unknown4;
|
||||
Value<atUint32> unknown5;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,34 +4,23 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PointOfInterest : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
ScannableParameters scannableParameters;
|
||||
Value<float> unknown2;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PointOfInterest : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<bool> unknown1;
|
||||
ScannableParameters scannableParameters;
|
||||
Value<float> unknown2;
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
scannableParameters.nameIDs(pakRouter, name + "_scanp");
|
||||
}
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const { scannableParameters.nameIDs(pakRouter, name + "_scanp"); }
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
scannableParameters.depIDs(lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
scannableParameters.depIDs(lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
scannableParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { scannableParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,63 +4,51 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PuddleSpore : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown2;
|
||||
UniqueID32 particle;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PuddleSpore : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<bool> unknown2;
|
||||
UniqueID32 particle;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
UniqueID32 wpsc;
|
||||
DamageInfo damageInfo;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (wpsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (wpsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc);
|
||||
ent->name = name + "_wpsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,58 +4,47 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct PuddleToadGamma : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<atVec3f> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 dcln;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct PuddleToadGamma : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<atVec3f> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
DamageInfo damageInfo1;
|
||||
DamageInfo damageInfo2;
|
||||
UniqueID32 dcln;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (dcln)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln);
|
||||
ent->name = name + "_dcln";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (dcln) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(dcln);
|
||||
ent->name = name + "_dcln";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(dcln, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(dcln, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,63 +4,51 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Puffer : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo1;
|
||||
UniqueID32 texture;
|
||||
Value<float> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
DamageInfo damageInfo2;
|
||||
Value<atUint32> unknown6;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Puffer : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
Value<float> unknown1;
|
||||
UniqueID32 particle;
|
||||
DamageInfo damageInfo1;
|
||||
UniqueID32 texture;
|
||||
Value<float> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
Value<bool> unknown5;
|
||||
DamageInfo damageInfo2;
|
||||
Value<atUint32> unknown6;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (texture)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (texture) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture);
|
||||
ent->name = name + "_texture";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
}
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,17 +4,14 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct RadialDamage : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<bool> active;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> radius;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct RadialDamage : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<bool> active;
|
||||
DamageInfo damageInfo;
|
||||
Value<float> radius;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,17 +4,14 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct RandomRelay : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct RandomRelay : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atUint32> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
Value<bool> unknown3;
|
||||
Value<bool> unknown4;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,14 +4,11 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Relay : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Relay : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<bool> active;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,16 +4,13 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Repulsor : IScriptObject
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<bool> active;
|
||||
Value<float> unknown;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Repulsor : IScriptObject {
|
||||
AT_DECL_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<bool> active;
|
||||
Value<float> unknown;
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -1,74 +1,68 @@
|
||||
#include "Ridley.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
namespace DataSpec::DNAMP1 {
|
||||
|
||||
template <class Op>
|
||||
void Ridley::Enumerate(typename Op::StreamT& s)
|
||||
{
|
||||
IScriptObject::Enumerate<Op>(s);
|
||||
Do<Op>({"name"}, name, s);
|
||||
Do<Op>({"location"}, location, s);
|
||||
Do<Op>({"orientation"}, orientation, s);
|
||||
Do<Op>({"scale"}, scale, s);
|
||||
Do<Op>({"patternedInfo"}, patternedInfo, s);
|
||||
Do<Op>({"actorParameters"}, actorParameters, s);
|
||||
Do<Op>({"model1"}, model1, s);
|
||||
Do<Op>({"model2"}, model2, s);
|
||||
if (propertyCount == 48)
|
||||
{
|
||||
Do<Op>({"model3"}, model3, s);
|
||||
Do<Op>({"model4"}, model4, s);
|
||||
Do<Op>({"model5"}, model5, s);
|
||||
Do<Op>({"model6"}, model6, s);
|
||||
Do<Op>({"model7"}, model7, s);
|
||||
Do<Op>({"model8"}, model8, s);
|
||||
Do<Op>({"model9"}, model9, s);
|
||||
Do<Op>({"model10"}, model10, s);
|
||||
Do<Op>({"model11"}, model11, s);
|
||||
Do<Op>({"model12"}, model12, s);
|
||||
}
|
||||
Do<Op>({"particle"}, particle, s);
|
||||
Do<Op>({"unknown1"}, unknown1, s);
|
||||
Do<Op>({"unknown2"}, unknown2, s);
|
||||
Do<Op>({"unknown3"}, unknown3, s);
|
||||
Do<Op>({"unknown4"}, unknown4, s);
|
||||
Do<Op>({"wpsc1"}, wpsc1, s);
|
||||
Do<Op>({"damageInfo1"}, damageInfo1, s);
|
||||
Do<Op>({"ridleyStruct1"}, ridleyStruct1, s);
|
||||
Do<Op>({"soundID1"}, soundID1, s);
|
||||
Do<Op>({"wpsc2"}, wpsc2, s);
|
||||
if (propertyCount == 40)
|
||||
Do<Op>({"wpsc3"}, wpsc3, s);
|
||||
Do<Op>({"damageInfo2"}, damageInfo2, s);
|
||||
Do<Op>({"ridleyStruct2_1"}, ridleyStruct2_1, s);
|
||||
Do<Op>({"wpsc4"}, wpsc4, s);
|
||||
Do<Op>({"damageInfo3"}, damageInfo3, s);
|
||||
Do<Op>({"ridleyStruct2_2"}, ridleyStruct2_2, s);
|
||||
Do<Op>({"soundID2"}, soundID2, s);
|
||||
Do<Op>({"damageInfo4"}, damageInfo4, s);
|
||||
Do<Op>({"ridleyStruct2_3"}, ridleyStruct2_3, s);
|
||||
Do<Op>({"unknown5"}, unknown5, s);
|
||||
Do<Op>({"unknown6"}, unknown6, s);
|
||||
Do<Op>({"damageInfo5"}, damageInfo5, s);
|
||||
Do<Op>({"unknown7"}, unknown7, s);
|
||||
Do<Op>({"damageInfo6"}, damageInfo6, s);
|
||||
Do<Op>({"unknown8"}, unknown8, s);
|
||||
Do<Op>({"damageInfo7"}, damageInfo7, s);
|
||||
Do<Op>({"unknown9"}, unknown9, s);
|
||||
Do<Op>({"elsc"}, elsc, s);
|
||||
Do<Op>({"unknown10"}, unknown10, s);
|
||||
Do<Op>({"soundID3"}, soundID3, s);
|
||||
Do<Op>({"damageInfo8"}, damageInfo8, s);
|
||||
if (propertyCount == 40)
|
||||
Do<Op>({"damageInfo9"}, damageInfo9, s);
|
||||
void Ridley::Enumerate(typename Op::StreamT& s) {
|
||||
IScriptObject::Enumerate<Op>(s);
|
||||
Do<Op>({"name"}, name, s);
|
||||
Do<Op>({"location"}, location, s);
|
||||
Do<Op>({"orientation"}, orientation, s);
|
||||
Do<Op>({"scale"}, scale, s);
|
||||
Do<Op>({"patternedInfo"}, patternedInfo, s);
|
||||
Do<Op>({"actorParameters"}, actorParameters, s);
|
||||
Do<Op>({"model1"}, model1, s);
|
||||
Do<Op>({"model2"}, model2, s);
|
||||
if (propertyCount == 48) {
|
||||
Do<Op>({"model3"}, model3, s);
|
||||
Do<Op>({"model4"}, model4, s);
|
||||
Do<Op>({"model5"}, model5, s);
|
||||
Do<Op>({"model6"}, model6, s);
|
||||
Do<Op>({"model7"}, model7, s);
|
||||
Do<Op>({"model8"}, model8, s);
|
||||
Do<Op>({"model9"}, model9, s);
|
||||
Do<Op>({"model10"}, model10, s);
|
||||
Do<Op>({"model11"}, model11, s);
|
||||
Do<Op>({"model12"}, model12, s);
|
||||
}
|
||||
Do<Op>({"particle"}, particle, s);
|
||||
Do<Op>({"unknown1"}, unknown1, s);
|
||||
Do<Op>({"unknown2"}, unknown2, s);
|
||||
Do<Op>({"unknown3"}, unknown3, s);
|
||||
Do<Op>({"unknown4"}, unknown4, s);
|
||||
Do<Op>({"wpsc1"}, wpsc1, s);
|
||||
Do<Op>({"damageInfo1"}, damageInfo1, s);
|
||||
Do<Op>({"ridleyStruct1"}, ridleyStruct1, s);
|
||||
Do<Op>({"soundID1"}, soundID1, s);
|
||||
Do<Op>({"wpsc2"}, wpsc2, s);
|
||||
if (propertyCount == 40)
|
||||
Do<Op>({"wpsc3"}, wpsc3, s);
|
||||
Do<Op>({"damageInfo2"}, damageInfo2, s);
|
||||
Do<Op>({"ridleyStruct2_1"}, ridleyStruct2_1, s);
|
||||
Do<Op>({"wpsc4"}, wpsc4, s);
|
||||
Do<Op>({"damageInfo3"}, damageInfo3, s);
|
||||
Do<Op>({"ridleyStruct2_2"}, ridleyStruct2_2, s);
|
||||
Do<Op>({"soundID2"}, soundID2, s);
|
||||
Do<Op>({"damageInfo4"}, damageInfo4, s);
|
||||
Do<Op>({"ridleyStruct2_3"}, ridleyStruct2_3, s);
|
||||
Do<Op>({"unknown5"}, unknown5, s);
|
||||
Do<Op>({"unknown6"}, unknown6, s);
|
||||
Do<Op>({"damageInfo5"}, damageInfo5, s);
|
||||
Do<Op>({"unknown7"}, unknown7, s);
|
||||
Do<Op>({"damageInfo6"}, damageInfo6, s);
|
||||
Do<Op>({"unknown8"}, unknown8, s);
|
||||
Do<Op>({"damageInfo7"}, damageInfo7, s);
|
||||
Do<Op>({"unknown9"}, unknown9, s);
|
||||
Do<Op>({"elsc"}, elsc, s);
|
||||
Do<Op>({"unknown10"}, unknown10, s);
|
||||
Do<Op>({"soundID3"}, soundID3, s);
|
||||
Do<Op>({"damageInfo8"}, damageInfo8, s);
|
||||
if (propertyCount == 40)
|
||||
Do<Op>({"damageInfo9"}, damageInfo9, s);
|
||||
}
|
||||
|
||||
const char* Ridley::DNAType()
|
||||
{
|
||||
return "urde::DNAMP1::Ridley";
|
||||
}
|
||||
const char* Ridley::DNAType() { return "urde::DNAMP1::Ridley"; }
|
||||
|
||||
AT_SPECIALIZE_DNA_YAML(Ridley)
|
||||
|
||||
}
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
@@ -4,264 +4,228 @@
|
||||
#include "IScriptObject.hpp"
|
||||
#include "Parameters.hpp"
|
||||
|
||||
namespace DataSpec::DNAMP1
|
||||
{
|
||||
struct Ridley : IScriptObject
|
||||
{
|
||||
AT_DECL_EXPLICIT_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 model1;
|
||||
UniqueID32 model2;
|
||||
UniqueID32 model3;
|
||||
UniqueID32 model4;
|
||||
UniqueID32 model5;
|
||||
UniqueID32 model6;
|
||||
UniqueID32 model7;
|
||||
UniqueID32 model8;
|
||||
UniqueID32 model9;
|
||||
UniqueID32 model10;
|
||||
UniqueID32 model11;
|
||||
UniqueID32 model12;
|
||||
UniqueID32 particle;
|
||||
Value<float> unknown1;
|
||||
namespace DataSpec::DNAMP1 {
|
||||
struct Ridley : IScriptObject {
|
||||
AT_DECL_EXPLICIT_DNA_YAML
|
||||
AT_DECL_DNAV
|
||||
String<-1> name;
|
||||
Value<atVec3f> location;
|
||||
Value<atVec3f> orientation;
|
||||
Value<atVec3f> scale;
|
||||
PatternedInfo patternedInfo;
|
||||
ActorParameters actorParameters;
|
||||
UniqueID32 model1;
|
||||
UniqueID32 model2;
|
||||
UniqueID32 model3;
|
||||
UniqueID32 model4;
|
||||
UniqueID32 model5;
|
||||
UniqueID32 model6;
|
||||
UniqueID32 model7;
|
||||
UniqueID32 model8;
|
||||
UniqueID32 model9;
|
||||
UniqueID32 model10;
|
||||
UniqueID32 model11;
|
||||
UniqueID32 model12;
|
||||
UniqueID32 particle;
|
||||
Value<float> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
struct RidleyStruct1 : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<atVec4f> unknown12; // CColor
|
||||
Value<atVec4f> unknown13; // CColor
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const {
|
||||
if (particle1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const {
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
}
|
||||
} ridleyStruct1;
|
||||
|
||||
Value<atUint32> soundID1;
|
||||
UniqueID32 wpsc2;
|
||||
UniqueID32 wpsc3;
|
||||
DamageInfo damageInfo2;
|
||||
|
||||
struct RidleyStruct2 : BigDNA {
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
UniqueID32 wpsc1;
|
||||
DamageInfo damageInfo1;
|
||||
struct RidleyStruct1 : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> unknown1;
|
||||
Value<atUint32> unknown2;
|
||||
UniqueID32 particle1;
|
||||
UniqueID32 particle2;
|
||||
UniqueID32 texture1;
|
||||
UniqueID32 texture2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<float> unknown9;
|
||||
Value<float> unknown10;
|
||||
Value<float> unknown11;
|
||||
Value<atVec4f> unknown12; //CColor
|
||||
Value<atVec4f> unknown13; //CColor
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter, const std::string& name) const
|
||||
{
|
||||
if (particle1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle1);
|
||||
ent->name = name + "_part1";
|
||||
}
|
||||
if (particle2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle2);
|
||||
ent->name = name + "_part2";
|
||||
}
|
||||
if (texture1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture1);
|
||||
ent->name = name + "_tex1";
|
||||
}
|
||||
if (texture2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(texture2);
|
||||
ent->name = name + "_tex2";
|
||||
}
|
||||
}
|
||||
|
||||
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle1, pathsOut);
|
||||
g_curSpec->flattenDependencies(particle2, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture1, pathsOut);
|
||||
g_curSpec->flattenDependencies(texture2, pathsOut);
|
||||
}
|
||||
} ridleyStruct1;
|
||||
|
||||
Value<atUint32> soundID1;
|
||||
UniqueID32 wpsc2;
|
||||
UniqueID32 wpsc3;
|
||||
DamageInfo damageInfo2;
|
||||
|
||||
struct RidleyStruct2 : BigDNA
|
||||
{
|
||||
AT_DECL_DNA_YAML
|
||||
Value<atUint32> unknown1;
|
||||
Value<float> unknown2;
|
||||
Value<float> unknown3;
|
||||
Value<float> unknown4;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
Value<float> unknown7;
|
||||
Value<float> unknown8;
|
||||
Value<bool> unknown9;
|
||||
} ridleyStruct2_1;
|
||||
|
||||
UniqueID32 wpsc4;
|
||||
DamageInfo damageInfo3;
|
||||
RidleyStruct2 ridleyStruct2_2;
|
||||
Value<atUint32> soundID2;
|
||||
DamageInfo damageInfo4;
|
||||
RidleyStruct2 ridleyStruct2_3;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
DamageInfo damageInfo5;
|
||||
Value<float> unknown7;
|
||||
DamageInfo damageInfo6;
|
||||
Value<float> unknown8;
|
||||
DamageInfo damageInfo7;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 elsc;
|
||||
Value<float> unknown10;
|
||||
Value<atUint32> soundID3;
|
||||
DamageInfo damageInfo8;
|
||||
Value<bool> unknown9;
|
||||
} ridleyStruct2_1;
|
||||
|
||||
/* Trilogy addition */
|
||||
DamageInfo damageInfo9;
|
||||
UniqueID32 wpsc4;
|
||||
DamageInfo damageInfo3;
|
||||
RidleyStruct2 ridleyStruct2_2;
|
||||
Value<atUint32> soundID2;
|
||||
DamageInfo damageInfo4;
|
||||
RidleyStruct2 ridleyStruct2_3;
|
||||
Value<float> unknown5;
|
||||
Value<float> unknown6;
|
||||
DamageInfo damageInfo5;
|
||||
Value<float> unknown7;
|
||||
DamageInfo damageInfo6;
|
||||
Value<float> unknown8;
|
||||
DamageInfo damageInfo7;
|
||||
Value<float> unknown9;
|
||||
UniqueID32 elsc;
|
||||
Value<float> unknown10;
|
||||
Value<atUint32> soundID3;
|
||||
DamageInfo damageInfo8;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const
|
||||
{
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
/* Trilogy addition */
|
||||
DamageInfo damageInfo9;
|
||||
|
||||
void addCMDLRigPairs(PAKRouter<PAKBridge>& pakRouter, CharacterAssociations<UniqueID32>& charAssoc) const {
|
||||
actorParameters.addCMDLRigPairs(pakRouter, charAssoc, patternedInfo.animationParameters);
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const {
|
||||
if (particle) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
|
||||
void nameIDs(PAKRouter<PAKBridge>& pakRouter) const
|
||||
{
|
||||
if (particle)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle);
|
||||
ent->name = name + "_part";
|
||||
}
|
||||
if (model1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model1);
|
||||
ent->name = name + "_model1";
|
||||
}
|
||||
if (model2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model2);
|
||||
ent->name = name + "_model2";
|
||||
}
|
||||
if (model3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model3);
|
||||
ent->name = name + "_model3";
|
||||
}
|
||||
if (model4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model4);
|
||||
ent->name = name + "_model4";
|
||||
}
|
||||
if (model5)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model5);
|
||||
ent->name = name + "_model5";
|
||||
}
|
||||
if (model6)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model6);
|
||||
ent->name = name + "_model6";
|
||||
}
|
||||
if (model7)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model7);
|
||||
ent->name = name + "_model7";
|
||||
}
|
||||
if (model8)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model8);
|
||||
ent->name = name + "_model8";
|
||||
}
|
||||
if (model9)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model9);
|
||||
ent->name = name + "_model9";
|
||||
}
|
||||
if (model10)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model10);
|
||||
ent->name = name + "_model10";
|
||||
}
|
||||
if (model11)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model11);
|
||||
ent->name = name + "_model11";
|
||||
}
|
||||
if (model12)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model12);
|
||||
ent->name = name + "_model12";
|
||||
}
|
||||
if (wpsc1)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (wpsc3)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc3);
|
||||
ent->name = name + "_wpsc3";
|
||||
}
|
||||
if (wpsc4)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc4);
|
||||
ent->name = name + "_wpsc4";
|
||||
}
|
||||
if (elsc)
|
||||
{
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
ridleyStruct1.nameIDs(pakRouter, name + "_ridley1");
|
||||
if (model1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model1);
|
||||
ent->name = name + "_model1";
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut,
|
||||
std::vector<hecl::ProjectPath>& lazyOut) const
|
||||
{
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(model1, pathsOut);
|
||||
g_curSpec->flattenDependencies(model2, pathsOut);
|
||||
g_curSpec->flattenDependencies(model3, pathsOut);
|
||||
g_curSpec->flattenDependencies(model4, pathsOut);
|
||||
g_curSpec->flattenDependencies(model5, pathsOut);
|
||||
g_curSpec->flattenDependencies(model6, pathsOut);
|
||||
g_curSpec->flattenDependencies(model7, pathsOut);
|
||||
g_curSpec->flattenDependencies(model8, pathsOut);
|
||||
g_curSpec->flattenDependencies(model9, pathsOut);
|
||||
g_curSpec->flattenDependencies(model10, pathsOut);
|
||||
g_curSpec->flattenDependencies(model11, pathsOut);
|
||||
g_curSpec->flattenDependencies(model12, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc3, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc4, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
ridleyStruct1.depIDs(pathsOut);
|
||||
if (model2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model2);
|
||||
ent->name = name + "_model2";
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const
|
||||
{
|
||||
actorParameters.scanIDs(scansOut);
|
||||
if (model3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model3);
|
||||
ent->name = name + "_model3";
|
||||
}
|
||||
if (model4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model4);
|
||||
ent->name = name + "_model4";
|
||||
}
|
||||
if (model5) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model5);
|
||||
ent->name = name + "_model5";
|
||||
}
|
||||
if (model6) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model6);
|
||||
ent->name = name + "_model6";
|
||||
}
|
||||
if (model7) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model7);
|
||||
ent->name = name + "_model7";
|
||||
}
|
||||
if (model8) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model8);
|
||||
ent->name = name + "_model8";
|
||||
}
|
||||
if (model9) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model9);
|
||||
ent->name = name + "_model9";
|
||||
}
|
||||
if (model10) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model10);
|
||||
ent->name = name + "_model10";
|
||||
}
|
||||
if (model11) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model11);
|
||||
ent->name = name + "_model11";
|
||||
}
|
||||
if (model12) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(model12);
|
||||
ent->name = name + "_model12";
|
||||
}
|
||||
if (wpsc1) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc1);
|
||||
ent->name = name + "_wpsc1";
|
||||
}
|
||||
if (wpsc2) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc2);
|
||||
ent->name = name + "_wpsc2";
|
||||
}
|
||||
if (wpsc3) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc3);
|
||||
ent->name = name + "_wpsc3";
|
||||
}
|
||||
if (wpsc4) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(wpsc4);
|
||||
ent->name = name + "_wpsc4";
|
||||
}
|
||||
if (elsc) {
|
||||
PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(elsc);
|
||||
ent->name = name + "_elsc";
|
||||
}
|
||||
patternedInfo.nameIDs(pakRouter, name + "_patterned");
|
||||
actorParameters.nameIDs(pakRouter, name + "_actp");
|
||||
ridleyStruct1.nameIDs(pakRouter, name + "_ridley1");
|
||||
}
|
||||
|
||||
void gatherDependencies(std::vector<hecl::ProjectPath>& pathsOut, std::vector<hecl::ProjectPath>& lazyOut) const {
|
||||
g_curSpec->flattenDependencies(particle, pathsOut);
|
||||
g_curSpec->flattenDependencies(model1, pathsOut);
|
||||
g_curSpec->flattenDependencies(model2, pathsOut);
|
||||
g_curSpec->flattenDependencies(model3, pathsOut);
|
||||
g_curSpec->flattenDependencies(model4, pathsOut);
|
||||
g_curSpec->flattenDependencies(model5, pathsOut);
|
||||
g_curSpec->flattenDependencies(model6, pathsOut);
|
||||
g_curSpec->flattenDependencies(model7, pathsOut);
|
||||
g_curSpec->flattenDependencies(model8, pathsOut);
|
||||
g_curSpec->flattenDependencies(model9, pathsOut);
|
||||
g_curSpec->flattenDependencies(model10, pathsOut);
|
||||
g_curSpec->flattenDependencies(model11, pathsOut);
|
||||
g_curSpec->flattenDependencies(model12, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc1, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc2, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc3, pathsOut);
|
||||
g_curSpec->flattenDependencies(wpsc4, pathsOut);
|
||||
g_curSpec->flattenDependencies(elsc, pathsOut);
|
||||
patternedInfo.depIDs(pathsOut);
|
||||
actorParameters.depIDs(pathsOut, lazyOut);
|
||||
ridleyStruct1.depIDs(pathsOut);
|
||||
}
|
||||
|
||||
void gatherScans(std::vector<Scan>& scansOut) const { actorParameters.scanIDs(scansOut); }
|
||||
};
|
||||
}
|
||||
|
||||
} // namespace DataSpec::DNAMP1
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user