mirror of https://github.com/PrimeDecomp/prime.git
parent
65efa56f99
commit
40b9efd47f
|
@ -500,7 +500,7 @@ LIBS = [
|
|||
["Kyoto/Animation/CPrimitive", True],
|
||||
"Kyoto/Animation/CSequenceHelper",
|
||||
["Kyoto/Animation/CTransition", True],
|
||||
"Kyoto/Animation/CTransitionManager",
|
||||
["Kyoto/Animation/CTransitionManager", True],
|
||||
"Kyoto/Animation/CTreeUtils",
|
||||
"Kyoto/Animation/IMetaAnim",
|
||||
["Kyoto/Audio/CSfxHandle", True],
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
#ifndef _CANIMSYSCONTEXT
|
||||
#define _CANIMSYSCONTEXT
|
||||
|
||||
#include "Kyoto/TToken.hpp"
|
||||
|
||||
#include "rstl/rc_ptr.hpp"
|
||||
|
||||
class CTransitionDatabaseGame;
|
||||
class CRandom16;
|
||||
class CSimplePool;
|
||||
|
||||
class CAnimSysContext {
|
||||
public:
|
||||
CAnimSysContext(const TToken< CTransitionDatabaseGame >& transDb,
|
||||
const rstl::ncrc_ptr< CRandom16 >& random, CSimplePool& store)
|
||||
: x0_transDb(transDb), x8_random(random), xc_store(store) {}
|
||||
|
||||
private:
|
||||
TToken< CTransitionDatabaseGame > x0_transDb;
|
||||
rstl::rc_ptr< CRandom16 > x8_random;
|
||||
CSimplePool& xc_store;
|
||||
};
|
||||
|
||||
#endif // _CANIMSYSCONTEXT
|
|
@ -0,0 +1,16 @@
|
|||
#ifndef _CTRANSITIONMANAGER
|
||||
#define _CTRANSITIONMANAGER
|
||||
|
||||
#include "Kyoto/Animation/CAnimSysContext.hpp"
|
||||
|
||||
class CAnimTreeNode;
|
||||
class CTransitionManager {
|
||||
public:
|
||||
rstl::rc_ptr< CAnimTreeNode > GetTransitionTree(const rstl::ncrc_ptr< CAnimTreeNode >& a,
|
||||
const rstl::ncrc_ptr< CAnimTreeNode >& b) const;
|
||||
|
||||
private:
|
||||
CAnimSysContext x0_context;
|
||||
};
|
||||
|
||||
#endif // _CTRANSITIONMANAGER
|
|
@ -0,0 +1,15 @@
|
|||
#ifndef _CTREEUTILS
|
||||
#define _CTREEUTILS
|
||||
|
||||
#include "rstl/rc_ptr.hpp"
|
||||
|
||||
class CAnimTreeNode;
|
||||
class CAnimSysContext;
|
||||
class CTreeUtils {
|
||||
public:
|
||||
static rstl::rc_ptr< CAnimTreeNode > GetTransitionTree(const rstl::ncrc_ptr< CAnimTreeNode >& a,
|
||||
const rstl::ncrc_ptr< CAnimTreeNode >& b,
|
||||
const CAnimSysContext& animCtx);
|
||||
};
|
||||
|
||||
#endif // _CTREEUTILS
|
|
@ -0,0 +1,9 @@
|
|||
#include "Kyoto/Animation/CTransitionManager.hpp"
|
||||
#include "Kyoto/Animation/CTreeUtils.hpp"
|
||||
|
||||
rstl::rc_ptr< CAnimTreeNode >
|
||||
CTransitionManager::GetTransitionTree(const rstl::ncrc_ptr< CAnimTreeNode >& a,
|
||||
const rstl::ncrc_ptr< CAnimTreeNode >& b) const {
|
||||
|
||||
return CTreeUtils::GetTransitionTree(a, b, x0_context);
|
||||
}
|
Loading…
Reference in New Issue