Пример #1
0
    public void Link(DungeonRoom other, int keyLevel)
    {
        DungeonEdge edge = edges.FirstOrDefault(e => e.GetRoomId() == other.id);

        if (edge != null)
        {
            edge.SetKeyLevel(keyLevel);
        }
        else
        {
            edge = new DungeonEdge(other.id, keyLevel);
            edges.Add(edge);
        }
    }
Пример #2
0
    protected override void RenderDoor(DungeonRoom dungeonRoom, Direction direction)
    {
        Transform   door = null;
        DungeonEdge edge = dungeon.IsLinkedToDirection(dungeonRoom, direction);

        if (edge != null)
        {
            door = currentRoom.transform.Find(direction.ToString() + "Door");
            if (door != null)
            {
                Renderer doorRend = door.GetComponent <Renderer>();
                if (doorRend != null)
                {
                    doorRend.material.color = edge.GetKeyLevel() > -1 ? edge.GetKeyLevel() == 1000 ? Color.red : Color.black : Color.grey;
                }
            }
        }
    }