【发布时间】:2017-12-12 07:45:18
【问题描述】:
我在 Unity3D 中遇到问题。我有相同的健康脚本附加到玩家和敌人。我想在玩家死亡时显示游戏结束消息,但问题是玩家和敌人死亡时都会出现游戏结束消息。
我的代码是这样的:
public class CharacterStats : MonoBehaviour
{
// Use this for initialization
void Start ()
{
}
// Update is called once per frame
void Update ()
{
health = Mathf.Clamp (health, 0, 100);
}
public void damage(float damage)
{
health -= damage;
if(health<=0)
{
Die();
Application.LoadLevel(gameover);
}
}
void Die()
{
characterController.enabled = false;
if (scriptstodisable.Length == 0)
return;
foreach (MonoBehaviour scripts in scriptstodisable)
scripts.enabled = false;
if (ragdollmanger != null)
ragdollmanger.Raggdoll();
}
}
【问题讨论】:
-
您可以添加一个描述角色类型(玩家或敌人)的枚举,并且仅当您的枚举值 == 玩家时才显示“死亡”消息
标签: c# unity3d monodevelop