#pragma once #include "../../DNACommon/DNACommon.hpp" #include "IScriptObject.hpp" #include "Parameters.hpp" namespace DataSpec::DNAMP1 { struct VisorGoo : IScriptObject { AT_DECL_DNA_YAMLV String<-1> name; Value position; UniqueID32 particle; UniqueID32 electric; Value minDist; Value maxDist; Value nearProb; Value farProb; DNAColor color; Value sfx; Value skipAngleTest; void nameIDs(PAKRouter& pakRouter) const override { if (particle.isValid()) { PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(particle); ent->name = name + "_part"; } if (electric.isValid()) { PAK::Entry* ent = (PAK::Entry*)pakRouter.lookupEntry(electric); ent->name = name + "_elsc"; } } void gatherDependencies(std::vector& pathsOut, std::vector& lazyOut) const override { g_curSpec->flattenDependencies(particle, pathsOut); g_curSpec->flattenDependencies(electric, pathsOut); } }; } // namespace DataSpec::DNAMP1