• 《Unity3D-控制检测碰撞以后触发的事件之敌人的攻击行为》


    //思路:此方法适用于敌人的攻击行为,当敌人和主角间的距离达到一定的范围的时候触发器将会触发这个行为

      首先给主角和敌人身上绑定触发器 然后isTarigger选项一定要勾选上

    //定义敌人的攻击行为

    代码:

    private float attack=10; //定义敌人的攻击伤害值

    private float attackTimer=1;//定义敌人的攻击频率为1秒

    private float timer=1;  //触发的间隙时间

    //定义触发时间的方法

    public void OnTriggerStar(Collider collider){  //此方法会检测玩家和敌人的距离一旦距离到达一定的值此方法 就会被调用然后下面的代码就是控制敌人去攻击的玩家的

      if(collider.tag=="Player"){  //定义触发器触发的对象是玩家控制的角色

        timer+=Time.deltaTime;  //让触发的间隙时间随着每帧的时间增加

        if(timer>=attackTimer){  //一旦触发的间隙时间大于固定的攻击的是频率的时候就让敌人发动一次攻击

          timer-=attackTimer;  //让触发的间隔时间不但的减小下一次需要的时候就可以调用此种方法

          collider.GetComponent<PlayerHealth>().HealthDamage(attack);  //其中的HealthDamage()方法就是让我们玩家控制的角色掉血的方法 attack为敌人每次的攻击的伤害

        }

      }

    }

  • 相关阅读:
    mysql安装停在make[3]: Leaving directory `/mysql5.xx/mysqltest' 解决方法
    搞了个burst
    PKU2074
    PKU2029
    ACM/ICPC要求的知识点(转)
    PKU3264线段树解法
    PKU2036
    PKU1151线段树解法
    今天递了辞呈
    hamachi
  • 原文地址:https://www.cnblogs.com/ylllove/p/7283380.html
Copyright © 2020-2023  润新知