本文整理汇总了C++中Obj_Character::Impact_OnImpactFadeOut方法的典型用法代码示例。如果您正苦于以下问题:C++ Obj_Character::Impact_OnImpactFadeOut方法的具体用法?C++ Obj_Character::Impact_OnImpactFadeOut怎么用?C++ Obj_Character::Impact_OnImpactFadeOut使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Obj_Character
的用法示例。
在下文中一共展示了Obj_Character::Impact_OnImpactFadeOut方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
VOID StdImpact021_T::OnUseSkillSuccessfully(OWN_IMPACT& rImp, Obj_Character& rMe, SkillInfo_T& rSkill) const
{
__ENTER_FUNCTION
BOOL bFound = FALSE;
INT nActiveTimes=GetActivateTimes(rImp);
if(0==nActiveTimes)
{
return;
}
if(FALSE == Skill_IsSkillInCollection(rSkill, GetTargetCollection(rImp)))
{
return;
}
SkillLogic_T const* pSkillLogic = Skill_GetLogic(rSkill);
if(NULL==pSkillLogic)
{
return;
}
if(0<nActiveTimes)
{
--nActiveTimes;
if(0==nActiveTimes)
{
rMe.Impact_OnImpactFadeOut(rImp);
}
SetActivateTimes(rImp, nActiveTimes);
return;
}
__LEAVE_FUNCTION
}
示例2: ContinuanceCalc
VOID ImpactLogic_T::ContinuanceCalc(OWN_IMPACT& rImp, Obj_Character& rMe, INT nDeltaTime) const
{
__ENTER_FUNCTION
//取得总持续时间
INT const nContinuance = rImp.GetContinuance();
//取得逝去的持续时间
INT nContinuanceElapsed = rImp.GetContinuanceElapsed();
//如果不是消散状态
if(FALSE == rImp.IsFadeOut())
{
//如果是持续性效果
if(TRUE == IsOverTimed())
{
if(-1==nContinuance)
{
return; //-1为持续时间无限长
}
if(nContinuanceElapsed<=nContinuance)
{
nContinuanceElapsed += nDeltaTime;
}
//如果超时,则消散
if(nContinuanceElapsed>nContinuance)
{
// prepare delete this impact
rMe.Impact_OnImpactFadeOut(rImp);
}
//更新逝去时间
rImp.SetContinuanceElapsed(nContinuanceElapsed);
}
}
__LEAVE_FUNCTION
}