本文整理汇总了C++中CAI_Stalker::animation方法的典型用法代码示例。如果您正苦于以下问题:C++ CAI_Stalker::animation方法的具体用法?C++ CAI_Stalker::animation怎么用?C++ CAI_Stalker::animation使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CAI_Stalker
的用法示例。
在下文中一共展示了CAI_Stalker::animation方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void CCharacterPhysicsSupport::update_interactive_anims ()
{
if ( Type() != etStalker )
return;
VERIFY( m_EntityAlife.cast_stalker( ) );
CAI_Stalker *stalker = m_EntityAlife.cast_stalker( );
CBlend *b = stalker->animation().global().blend();
if( b && !m_interactive_animation && stalker->animation().global().callback_on_collision() )
run_interactive ( b );
if( m_interactive_animation && !m_interactive_animation->update( m_EntityAlife.XFORM( ) ) )
xr_delete( m_interactive_animation );
}
示例2: script_play_callback
void CStalkerAnimationManager::script_play_callback(CBlend *blend)
{
CAI_Stalker *object = (CAI_Stalker*)blend->CallbackParam;
VERIFY (object);
CStalkerAnimationManager &animation_manager = object->animation();
CStalkerAnimationPair &pair = animation_manager.script();
const SCRIPT_ANIMATIONS &animations = animation_manager.script_animations();
#if 0
Msg (
"%6d Script callback [%s]",
Device.dwTimeGlobal,
animations.empty()
?
"unknown"
:
animation_manager.m_skeleton_animated->LL_MotionDefName_dbg(animations.front().animation())
);
#endif
if (
pair.animation() &&
!animations.empty() &&
(pair.animation() == animations.front().animation())
)
animation_manager.pop_script_animation();
animation_manager.m_call_script_callback = true;
pair.on_animation_end ();
}
示例3:
void CStalkerAnimationManager::legs_play_callback (CBlend *blend)
{
CAI_Stalker *object = (CAI_Stalker*)blend->CallbackParam;
VERIFY (object);
CStalkerAnimationPair &pair = object->animation().legs();
pair.on_animation_end ();
}
示例4:
int CScriptGameObject::animation_count () const
{
CAI_Stalker *stalker = smart_cast<CAI_Stalker*>(&object());
if (!stalker) {
ai().script_engine().script_log (ScriptStorage::eLuaMessageTypeError,"CGameObject : cannot access class member clear_animations!");
return (-1);
}
return ((int)stalker->animation().script_animations().size());
}
示例5:
bool CScriptGameObject::special_danger_move ()
{
CAI_Stalker *stalker = smart_cast<CAI_Stalker*>(&object());
if (!stalker) {
ai().script_engine().script_log (ScriptStorage::eLuaMessageTypeError,"CAI_Stalker : cannot access class member special_danger_move!");
return (false);
}
return (stalker->animation().special_danger_move());
}