逻辑性
最近学习的一些东西让我从分了解了逻辑性的重要性。在做游戏项目的时候我们会发现一堆的逻辑性问题
逻辑思维(Logical thinking),人们在认识过程中借助于概念、判断、推理等思维形式能动地反映客观现实的理性认识过程,又称理论思维。它是作为对认识着的思维及其结构以及起作用的规律的分析而产生和发展起来的。只有经过逻辑思维,人们才能达到对具体对象本质规定的把握,进而认识客观世界。它是人的认识的高级阶段,即理性认识阶段,以下是典型案例。
//距离(到终点的距离(鼠标指到的位置))为零时,初始状态为静止
if (agent.remainingDistance == 0)
{
AnimationToIdle();//吊静止方法
}
else {
AnimationToWalk();
}//否则会走
if (flag) { //判断一下flag 上下两个判断冲突,指定的位置和碰撞的位置发生冲突
AnimationToWorking();
}
从上面的代码我们可以发现一个有趣的逻辑问题,两个if语句发生冲突致使unity的游戏场景发生错误。由此可以发现逻辑的重要性。
对打逃离
英雄和怪物的距离如果小于2米玩家攻击怪物(调戏)
if (lifeTime > 0)
{
AnimationToAttack();//攻击
}
else if (lifeTime <= 0)
{
AnimationToDie();//生命小于0,吊死亡的动作效果
}
玩家挑衅怪物·逃离·距离·怪物逗留原地·再挑衅(我的速度比你快)
else if (Vector3.Distance(transform.position, girl.position) < 4f) //判断怪物与玩家距离小于4米 {
AnimationToWalk(); //调怪物行走的动画
agent.SetDestination(girl.position); //怪物打玩家
}
else if (Vector3.Distance(transform.position, girl.position) > 4f) //判断怪物与玩家距离大于4米
{
AnimationToIdle();
agent.SetDestination(transform.position); //怪物停在所在位置
}