本文整理汇总了C#中Skill.skillLogic方法的典型用法代码示例。如果您正苦于以下问题:C# Skill.skillLogic方法的具体用法?C# Skill.skillLogic怎么用?C# Skill.skillLogic使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Skill
的用法示例。
在下文中一共展示了Skill.skillLogic方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: playAttackAnimation
public override IEnumerator playAttackAnimation(Skill skill, float attackTime)
{
int frame = 0;
walkingFrame = 0;
do {
if (!isStunned()) {
body.GetComponent<SpriteRenderer>().sprite = spriteAttack[frame];
if (frame == 6)
skill.skillLogic(this, stats);
frame++;
}
yield return new WaitForSeconds(attackTime / spriteAttack.Length);
} while (frame < spriteAttack.Length);
isAttacking = false;
}
示例2: playAttackAnimation
public override IEnumerator playAttackAnimation(Skill skill, float attackTime)
{
walkingFrame = 0;
bool hasntAttacked = true;
float endTime = Time.fixedTime + attackTime;
float remainingTime = endTime - Time.fixedTime;
while (remainingTime > 0) {
int currentFrame = (int)(((attackTime - remainingTime) / attackTime) * spriteAttack.Length);
body.GetComponent<SpriteRenderer>().sprite = spriteAttack[currentFrame];
if (hasntAttacked && currentFrame > 3) {
hasntAttacked = false;
skill.skillLogic(this, stats);
}
yield return new WaitForSeconds(0);
remainingTime = endTime - Time.fixedTime;
}
body.GetComponent<SpriteRenderer>().sprite = spriteAttack[0];
if (hasntAttacked)
skill.skillLogic(this, stats);
isAttacking = false;
}
示例3: playAttackAnimation
public override IEnumerator playAttackAnimation(Skill skill, float attackTime)
{
float endTime = Time.fixedTime + attackTime;
float remainingTime = endTime - Time.fixedTime;
while (remainingTime > 0) {
int currentFrame = (int)(((attackTime - remainingTime) / attackTime) * spriteAttack.Length);
body.GetComponent<SpriteRenderer>().sprite = spriteAttack[currentFrame];
yield return new WaitForSeconds(0);
remainingTime = endTime - Time.fixedTime;
}
skill.skillLogic(this, stats);
}