diff --git a/CursedMod/CursedMod.csproj b/CursedMod/CursedMod.csproj index a79ab937..d421c72e 100644 --- a/CursedMod/CursedMod.csproj +++ b/CursedMod/CursedMod.csproj @@ -53,6 +53,9 @@ ..\..\..\SCPSL\Plugins\Dependencies\UnityEngine.CoreModule.dll + + ..\..\..\SCPSL\Plugins\Dependencies\UnityEngine.AudioModule.dll + @@ -66,6 +69,7 @@ + diff --git a/CursedMod/Features/Wrappers/Facility/Props/CursedLocker.cs b/CursedMod/Features/Wrappers/Facility/Props/CursedLocker.cs new file mode 100644 index 00000000..c3243473 --- /dev/null +++ b/CursedMod/Features/Wrappers/Facility/Props/CursedLocker.cs @@ -0,0 +1,42 @@ +using MapGeneration.Distributors; +using UnityEngine; + +namespace CursedMod.Features.Wrappers.Facility.Props; + +public class CursedLocker +{ + public LockerChamber Base { get; } + + public CursedLocker(LockerChamber locker) + { + Base = locker; + } + + public bool IsOpen + { + get => Base.IsOpen; + set => Base.IsOpen = value; + } + + public bool CanInteract => Base.CanInteract; + + public Vector3 Position + { + get => Base.transform.position; + set => Base.transform.position = value; + } + + public Quaternion Rotation + { + get => Base.transform.rotation; + set => Base.transform.rotation = value; + } + + public Transform Transform => Base.transform; + + public void SetDoor(bool status, AudioClip clip) => Base.SetDoor(status, clip); + + public void PlayDeniedSound(AudioClip clip) => Base.PlayDenied(clip); + + public override string ToString() => $"{nameof(CursedLocker)}: Opened: {IsOpen} | CanInteract: {CanInteract} | Position: {Position} | Rotation: {Rotation}"; +} \ No newline at end of file diff --git a/CursedMod/Features/Wrappers/Facility/Rooms/CursedRoom.cs b/CursedMod/Features/Wrappers/Facility/Rooms/CursedRoom.cs index 6a9c55d7..b09655bd 100644 --- a/CursedMod/Features/Wrappers/Facility/Rooms/CursedRoom.cs +++ b/CursedMod/Features/Wrappers/Facility/Rooms/CursedRoom.cs @@ -6,6 +6,11 @@ namespace CursedMod.Features.Wrappers.Facility.Rooms; public class CursedRoom { public RoomIdentifier Room { get; } + + public CursedRoom(RoomIdentifier room) + { + Room = room; + } public Vector3 Position => Room.transform.position;