From 7177c2dee856439b83e7a218b717e13a20a9a701 Mon Sep 17 00:00:00 2001 From: xNexus-ACS <83370388+xNexus-ACS@users.noreply.github.com> Date: Mon, 23 Jan 2023 22:02:46 +0100 Subject: [PATCH 1/3] Positions to CursedRoom and CursedDecontamination --- .../Facility/CursedDecontamination.cs | 35 +++++++++++++++++++ .../Wrappers/Facility/Rooms/CursedRoom.cs | 4 +++ 2 files changed, 39 insertions(+) create mode 100644 CursedMod/Features/Wrappers/Facility/CursedDecontamination.cs diff --git a/CursedMod/Features/Wrappers/Facility/CursedDecontamination.cs b/CursedMod/Features/Wrappers/Facility/CursedDecontamination.cs new file mode 100644 index 00000000..fc8894a8 --- /dev/null +++ b/CursedMod/Features/Wrappers/Facility/CursedDecontamination.cs @@ -0,0 +1,35 @@ +using LightContainmentZoneDecontamination; +using PhaseFunction = LightContainmentZoneDecontamination.DecontaminationController.DecontaminationPhase.PhaseFunction; +using DecontaminationStatus = LightContainmentZoneDecontamination.DecontaminationController.DecontaminationStatus; + +namespace CursedMod.Features.Wrappers.Facility; + +public class CursedDecontamination +{ + public DecontaminationController DecontaminationController { get; } + + public CursedDecontamination(DecontaminationController decontaminationController) + { + DecontaminationController = decontaminationController; + } + + public double StartTime + { + get => DecontaminationController.NetworkRoundStartTime; + set => DecontaminationController.NetworkRoundStartTime = value; + } + + public bool IsDecontaminating => DecontaminationController.IsDecontaminating; + + public bool IsAnnouncementHearable => DecontaminationController.IsAnnouncementHearable; + + public PhaseFunction CurrentFunction => DecontaminationController.Singleton._curFunction; + + public DecontaminationStatus Status => DecontaminationController.Singleton.DecontaminationOverride; + + public void StopDecontamination() => DecontaminationController.NetworkRoundStartTime = -1f; + + public void StartDecontamination() => DecontaminationController.NetworkRoundStartTime = 1f; + + public void SetStatus(DecontaminationStatus status) => DecontaminationController.Singleton.DecontaminationOverride = status; +} \ 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 b09655bd..09d08908 100644 --- a/CursedMod/Features/Wrappers/Facility/Rooms/CursedRoom.cs +++ b/CursedMod/Features/Wrappers/Facility/Rooms/CursedRoom.cs @@ -16,6 +16,10 @@ public CursedRoom(RoomIdentifier room) public Quaternion Rotation => Room.transform.rotation; + public GameObject GameObject => Room.gameObject; + + public Transform Transform => Room.transform; + public RoomName Name => Room.Name; public FacilityZone Zone => Room.Zone; From ac236be06389b532e05cd6b2ff5f72963676766c Mon Sep 17 00:00:00 2001 From: xNexus-ACS <83370388+xNexus-ACS@users.noreply.github.com> Date: Mon, 23 Jan 2023 22:13:24 +0100 Subject: [PATCH 2/3] VoiceChat --- .../Player/VoiceChat/CursedVoiceChat.cs | 30 +++++++++++++++++++ .../Player/VoiceChat/CursedVoicePlayback.cs | 25 ++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoiceChat.cs create mode 100644 CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoicePlayback.cs diff --git a/CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoiceChat.cs b/CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoiceChat.cs new file mode 100644 index 00000000..e0086350 --- /dev/null +++ b/CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoiceChat.cs @@ -0,0 +1,30 @@ +using PlayerRoles.Voice; +using VoiceChat; + +namespace CursedMod.Features.Wrappers.Player.VoiceChat; + +public class CursedVoiceChat +{ + public VoiceModuleBase VoiceModule { get; } + + public CursedVoiceChat(VoiceModuleBase voiceModule) + { + VoiceModule = voiceModule; + } + + public VoiceChatChannel LastChannel => VoiceModule._lastChannel; + + public VoiceChatChannel CurrentChannel + { + get => VoiceModule.CurrentChannel; + set => VoiceModule.CurrentChannel = value; + } + + public bool IsSpeaking => VoiceModule.IsSpeaking; + + public void CheckRateLimit() => VoiceModule.CheckRateLimit(); + + public void ValidateReceive(ReferenceHub refHub, VoiceChatChannel channel) => VoiceModule.ValidateReceive(refHub, channel); + + public void ValidateSend(VoiceChatChannel channel) => VoiceModule.ValidateSend(channel); +} \ No newline at end of file diff --git a/CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoicePlayback.cs b/CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoicePlayback.cs new file mode 100644 index 00000000..e3d392ca --- /dev/null +++ b/CursedMod/Features/Wrappers/Player/VoiceChat/CursedVoicePlayback.cs @@ -0,0 +1,25 @@ +using VoiceChat.Playbacks; + +namespace CursedMod.Features.Wrappers.Player.VoiceChat; + +public class CursedVoicePlayback +{ + public VoiceChatPlaybackBase VoiceChatPlayback { get; } + + public CursedVoicePlayback(VoiceChatPlaybackBase voiceChatPlayback) + { + VoiceChatPlayback = voiceChatPlayback; + } + + public float Loudness + { + get => VoiceChatPlayback.Loudness; + set => VoiceChatPlayback.Loudness = value; + } + + public float VolumeScale + { + get => VoiceChatPlayback.VolumeScale; + set => VoiceChatPlayback.VolumeScale = value; + } +} \ No newline at end of file From b19a4e0de8545e7eccc38f51f684aebaa19903be Mon Sep 17 00:00:00 2001 From: xNexus-ACS <83370388+xNexus-ACS@users.noreply.github.com> Date: Mon, 23 Jan 2023 22:14:34 +0100 Subject: [PATCH 3/3] update csproj --- CursedMod/CursedMod.csproj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CursedMod/CursedMod.csproj b/CursedMod/CursedMod.csproj index b0536ea0..32a0c476 100644 --- a/CursedMod/CursedMod.csproj +++ b/CursedMod/CursedMod.csproj @@ -79,6 +79,7 @@ + @@ -121,6 +122,8 @@ + +