#pragma once #include #include #include "Runtime/Character/CAnimSysContext.hpp" #include "Runtime/Character/CAnimTreeNode.hpp" #include "Runtime/Character/CBoolPOINode.hpp" #include "Runtime/Character/CInt32POINode.hpp" #include "Runtime/Character/CParticlePOINode.hpp" #include "Runtime/Character/CSoundPOINode.hpp" namespace urde { class CTransitionDatabaseGame; class IMetaAnim; class CSequenceFundamentals { CSteadyStateAnimInfo x0_ssInfo; std::vector x18_boolNodes; std::vector x28_int32Nodes; std::vector x38_particleNodes; std::vector x48_soundNodes; public: CSequenceFundamentals(const CSteadyStateAnimInfo& ssInfo, const std::vector& boolNodes, const std::vector& int32Nodes, const std::vector& particleNodes, const std::vector& soundNodes); const CSteadyStateAnimInfo& GetSteadyStateAnimInfo() const { return x0_ssInfo; } const std::vector& GetBoolPointsOfInterest() const { return x18_boolNodes; } const std::vector& GetInt32PointsOfInterest() const { return x28_int32Nodes; } const std::vector& GetParticlePointsOfInterest() const { return x38_particleNodes; } const std::vector& GetSoundPointsOfInterest() const { return x48_soundNodes; } }; class CSequenceHelper { CAnimSysContext x0_animCtx; std::vector> x10_treeNodes; std::vector x20_; public: CSequenceHelper(const std::shared_ptr& a, const std::shared_ptr& b, const CAnimSysContext& animCtx); CSequenceHelper(const std::vector>& nodes, const CAnimSysContext& animCtx); CSequenceFundamentals ComputeSequenceFundamentals(); }; } // namespace urde