2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-08 22:27:43 +00:00

Tons of dependency gathering flow

This commit is contained in:
Jack Andersen
2016-10-02 12:41:36 -10:00
parent 6b97fa0242
commit 341fe2c728
106 changed files with 1743 additions and 207 deletions

View File

@@ -3,6 +3,7 @@
#include "../../DNACommon/DNACommon.hpp"
#include "../DNAMP1.hpp"
#include "../SAVW.hpp"
namespace DataSpec
{
@@ -68,7 +69,7 @@ enum class ESpecialFunctionType : atUint32
EndGame,
HUDFadeIn,
CinematicSkip,
ScriptLyaerController,
ScriptLayerController,
RainSimulator,
AreaDamage,
ObjectFollowObject,
@@ -104,6 +105,11 @@ struct AnimationParameters : BigYAML
if (ancsEnt->name.empty())
ancsEnt->name = name;
}
void depANCS(std::vector<hecl::ProjectPath>& pathsOut) const
{
g_curSpec->flattenDependencies(animationCharacterSet, pathsOut);
}
};
struct BehaveChance : BigYAML
@@ -189,6 +195,11 @@ struct FlareDefinition : BigYAML
ent->name = name + "_texture";
}
}
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
{
g_curSpec->flattenDependencies(texture, pathsOut);
}
};
struct GrappleParameters : BigYAML
@@ -299,6 +310,14 @@ struct PatternedInfo : BigYAML
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(particle2, pathsOut);
}
};
struct PlayerHintParameters : BigYAML
@@ -336,6 +355,16 @@ struct ScannableParameters : BigYAML
scanEnt->name = name + "_scan";
}
}
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
{
g_curSpec->flattenDependencies(scanId, pathsOut);
}
void scanIDs(std::vector<Scan>& scansOut) const
{
scansOut.emplace_back(scanId);
}
};
struct VisorParameters : BigYAML
@@ -407,6 +436,20 @@ struct ActorParameters : BigYAML
xsEnt->name = name + "_thermalskin";
}
}
void depIDs(std::vector<hecl::ProjectPath>& pathsOut) const
{
scannableParameters.depIDs(pathsOut);
g_curSpec->flattenDependencies(xrayModel, pathsOut);
g_curSpec->flattenDependencies(xraySkin, pathsOut);
g_curSpec->flattenDependencies(thermalModel, pathsOut);
g_curSpec->flattenDependencies(thermalSkin, pathsOut);
}
void scanIDs(std::vector<Scan>& scansOut) const
{
scannableParameters.scanIDs(scansOut);
}
};
}
}