《Unity3D-敌人血条或者玩家血条控制的代码》

//思路:设置一个简单的血量条的数量,通过一定的方法来减少受到的伤害

//1.设置血量条

private float hp=100;

//2.设置受到伤害的方法

public void TakeDamage(float damage){

  //4.判断如果血量小于等于0的情况

  if(hp<=0){

    return;

  }else{   //4.1判断血量大于0的情况

    //3.让血量递减受到的伤害值

    hp-=damage;

    //5.判断是否在受到伤害的时候血量为0了

    if(hp<=0){

      //6.放置玩家受到伤害以后的状态

    }

  }

}

//题外话:如果敌人是受到主角射击的伤害的时候应该这样调用 使用射线检测

//1.射击代码的射线检测中

//伪代码

生成射线

Raycasthit hitinfo

if(Physics.Raycast(ray,out hitinfo)){

  //检测到射线的情况下

  if(hitinfo.collider.tag=="Enemy"){

    //调用射线的生成

    hitinfo.collider.GetComonent().TakeDamage(30f);  //这样在子弹或者任何射线检测到我们的敌人身上的Tags的时候就会触发这个方法

  }

}

 

转载于:https://www.cnblogs.com/ylllove/p/7267328.html

你可能感兴趣的:(《Unity3D-敌人血条或者玩家血条控制的代码》)