C# 为不同游戏对象/类之间的冲突检测类型/枚举
我正在尝试制作一个碰撞检测系统,通过检查与之碰撞的游戏对象的类型,每个游戏对象对其他游戏对象的反应不同 我不断得到: “Rat”是一个“类型”,但与“变量”一样使用 这是我用来检测什么类型的对象发生碰撞的代码,并决定当一个对象与另一个特定类型的对象发生碰撞时应该做什么:C# 为不同游戏对象/类之间的冲突检测类型/枚举,c#,enums,C#,Enums,我正在尝试制作一个碰撞检测系统,通过检查与之碰撞的游戏对象的类型,每个游戏对象对其他游戏对象的反应不同 我不断得到: “Rat”是一个“类型”,但与“变量”一样使用 这是我用来检测什么类型的对象发生碰撞的代码,并决定当一个对象与另一个特定类型的对象发生碰撞时应该做什么: switch (other.Type) { case Rat: float tooClose = (Radius * 2) - distance.Length(); distance.No
switch (other.Type) {
case Rat:
float tooClose = (Radius * 2) - distance.Length();
distance.Normalize();
PositionAfterCollisions += distance * tooClose * 0.5f;
VelocityAfterCollisions = -Velocity;
}
“其他”
是对冲突列表中游戏对象的引用
这是从类/GameObjectI的顶部开始的,我试图确定它继承自的类:
public enum ObjectType
{
Default,
Player,
Rat,
Cheese,
Trap,
Home
}
public ObjectType Type = ObjectType.Rat;
在C#中,枚举总是按名称限定
你需要
case ObjectType.Rat:
现在我得到了这个错误:控件不能从一个case标签('case2:')掉到另一个case标签