cirnogodot/Scripts/Resources/Roguelite/RogueliteRoomResource.cs
2025-04-20 17:47:57 +02:00

22 lines
No EOL
744 B
C#

using Cirno.Scripts.Enums;
using Godot;
using Godot.Collections;
namespace Cirno.Scripts.Resources.Roguelite;
[GlobalClass]
public partial class RogueliteRoomResource : Resource
{
[Export] public StringName RoomName { get; set; }
[Export] public RoomType Type { get; set; } = RoomType.Regular;
[Export] public StringName ScenePath { get; set; }
[Export] public Vector2I Size { get; set; } = new(1, 1);
[Export] public Array<Vector2I> DoorGridPositions { get; set; } = [];
[Export] public Array<EnemyResource> SpawnableEnemies { get; set; }
[Export] public DoorDirections DoorDirections { get; set; }
public bool HasDoors(DoorDirections required) => (DoorDirections & required) == required;
}