35 lines
1.1 KiB
C#
35 lines
1.1 KiB
C#
using System.Collections.Generic;
|
|
using Escape_Room_Engine.Engine.Scripts.Modules;
|
|
using NaughtyAttributes;
|
|
using UnityEngine;
|
|
|
|
namespace Escape_Room_Engine.Engine.Scripts
|
|
{
|
|
[CreateAssetMenu(menuName = "Engine Config")]
|
|
public class EngineConfiguration : ScriptableObject
|
|
{
|
|
[BoxGroup("Size")]
|
|
[Tooltip("The minimum size that should be allowed for rooms.")]
|
|
public Vector2Int minRoomSize;
|
|
|
|
[BoxGroup("Size")]
|
|
[Tooltip("The size of the physical play space available to the engine.")]
|
|
public Vector2Int playSpace;
|
|
|
|
[BoxGroup("Doors")]
|
|
[Required]
|
|
public DoorModuleDescription spawnDoor;
|
|
|
|
[BoxGroup("Doors")]
|
|
[ValidateInput("IsNotEmpty", "At least one exit door type is required")]
|
|
public List<DoorModuleDescription> exitDoorTypes;
|
|
|
|
[BoxGroup("Puzzles")]
|
|
[MinMaxSlider(0, 10)] public Vector2Int puzzleCount;
|
|
|
|
[BoxGroup("Puzzles")]
|
|
public List<PuzzleModuleDescription> puzzleTypes;
|
|
|
|
public ModuleDescription genericModule;
|
|
}
|
|
} |