如何在 unity3d 中更改碰撞时的立方体宽度
How to change cube width on collision in unity3d
我正在使用 Unity3D 和 C# 制作手机游戏。我正在尝试找到一种方法来创建一个脚本,当立方体遇到带有标签 'Take Damage' 的障碍物时,它会降低立方体的健康状况。有没有简单的方法让酒吧用脚本下去?
使用 onCollisionEnter
的东西会很好。
有这个great tutorial 为初学者创建健康栏。但是如果你不想使用UI系统:
class HealthBar
{
int health = 100;
int damage = 5;
float toBarScale = 20f;
void Start()
{
transform.scale = new Vector3(health / toBarScale, transform.scale.y, 0);
}
void OnCollisionEnter2D(Collider2D collision)
{
if (!collision.gameObject.CompareTag("Take Damage")) return;
health = Mathf.Clamp(health - damage, 0, 100);
transform.scale = new Vector3(health / toBarScale, transform.scale.y, 0);
}
}
我正在使用 Unity3D 和 C# 制作手机游戏。我正在尝试找到一种方法来创建一个脚本,当立方体遇到带有标签 'Take Damage' 的障碍物时,它会降低立方体的健康状况。有没有简单的方法让酒吧用脚本下去?
使用 onCollisionEnter
的东西会很好。
有这个great tutorial 为初学者创建健康栏。但是如果你不想使用UI系统:
class HealthBar
{
int health = 100;
int damage = 5;
float toBarScale = 20f;
void Start()
{
transform.scale = new Vector3(health / toBarScale, transform.scale.y, 0);
}
void OnCollisionEnter2D(Collider2D collision)
{
if (!collision.gameObject.CompareTag("Take Damage")) return;
health = Mathf.Clamp(health - damage, 0, 100);
transform.scale = new Vector3(health / toBarScale, transform.scale.y, 0);
}
}