小编sou*_*ola的帖子

如果声明总是与枚举相对应

我遇到了问题.我正在制作一个实用程序来执行程序生成的地图.我有一个房间游泳池,每个房间都摆放在一张房间的桌子上.我有一种方法将所有房间连接在一起,走在桌子上并连接相邻的房间.

我有一个enum包含房间类型:

public enum RoomType
{
    Default = 0,
    Building,
    Boss,
    Item,
    Standard,
    Start,
}
Run Code Online (Sandbox Code Playgroud)

在连接方法中,我检查邻居,看看它是什么样的房间:

if (neighbourhood[2, 1] != null)
{
    if (firstLevel.isOn)
    {                     
        if (neighbourhood[2,1].TypeOfRoom == RoomType.Start)
        {
            roomGrid[x, y].AddConnection(neighbourhood[2, 1], Location.RIGHT)
        }
    }
    else if (neighbourhood[2,1].TypeOfRoom != RoomType.Boss)
        roomGrid[x, y].AddConnection(neighbourhood[2, 1], Location.RIGHT);
}
Run Code Online (Sandbox Code Playgroud)

但是,当我检查房间的类型是否是Start,它始终true是连接添加.

IMG IMG2

我不知道为什么会这样.

我在哪里设置TypeOfRoom: img3

c# enums if-statement

5
推荐指数
1
解决办法
267
查看次数

标签 统计

c# ×1

enums ×1

if-statement ×1