From f0c00d7d81bdb90ec7e72645c77eec843b7d00fd Mon Sep 17 00:00:00 2001
From: Miki_hero <100715076+Mikihero@users.noreply.github.com>
Date: Tue, 26 Nov 2024 22:59:43 +0100
Subject: [PATCH 1/6] better docs so it compiles for me
---
EXILED/Exiled.API/Enums/DoorType.cs | 2 +-
EXILED/Exiled.API/Enums/RespawnEffectType.cs | 5 ++---
EXILED/Exiled.API/Features/Npc.cs | 8 +++++++
EXILED/Exiled.API/Features/Respawn.cs | 23 +++++++++++++++++---
4 files changed, 31 insertions(+), 7 deletions(-)
diff --git a/EXILED/Exiled.API/Enums/DoorType.cs b/EXILED/Exiled.API/Enums/DoorType.cs
index 745557a6a7..223b2a1724 100644
--- a/EXILED/Exiled.API/Enums/DoorType.cs
+++ b/EXILED/Exiled.API/Enums/DoorType.cs
@@ -268,7 +268,7 @@ public enum DoorType
ElevatorGateB,
///
- /// Represents the Elevator door for .
+ /// Represents the Elevator door for and .
///
ElevatorNuke,
diff --git a/EXILED/Exiled.API/Enums/RespawnEffectType.cs b/EXILED/Exiled.API/Enums/RespawnEffectType.cs
index d26f7be267..14ef8c8421 100644
--- a/EXILED/Exiled.API/Enums/RespawnEffectType.cs
+++ b/EXILED/Exiled.API/Enums/RespawnEffectType.cs
@@ -8,14 +8,13 @@
namespace Exiled.API.Enums
{
using Features;
-
using PlayerRoles;
+ using Respawning.Waves;
///
/// Layers game respawn effects.
///
- ///
- ///
+ ///
public enum RespawnEffectType
{
///
diff --git a/EXILED/Exiled.API/Features/Npc.cs b/EXILED/Exiled.API/Features/Npc.cs
index d31b0b5303..2309d18af9 100644
--- a/EXILED/Exiled.API/Features/Npc.cs
+++ b/EXILED/Exiled.API/Features/Npc.cs
@@ -134,6 +134,14 @@ public override Vector3 Position
public static new Npc? Get(NetworkConnection conn) => Player.Get(conn) as Npc;
// TODO: Write docs.
+
+ ///
+ /// to be filled.
+ ///
+ /// to be filled..
+ /// to be filled...
+ /// to be filled....
+ /// to be filled.....
public static Npc Create(string name, RoleTypeId role, Vector3 position)
{
// TODO: Test this.
diff --git a/EXILED/Exiled.API/Features/Respawn.cs b/EXILED/Exiled.API/Features/Respawn.cs
index 1f3774f438..03db56a9e1 100644
--- a/EXILED/Exiled.API/Features/Respawn.cs
+++ b/EXILED/Exiled.API/Features/Respawn.cs
@@ -181,13 +181,30 @@ public static bool TryGetWaveBase(SpawnableFaction faction, out SpawnableWaveBas
return false;
}
- // TODO: Docs.
+ // TODO: Write docs.
+
+ ///
+ /// to be filled.
+ ///
+ /// to be filled..
+ /// to be filled...
public static void AdvanceTime(Faction faction, float time) => WaveManager.AdvanceTimer(faction, time);
- // TODO: Docs.
+ // TODO: Write docs.
+
+ ///
+ /// to be filled.
+ ///
+ /// to be filled..
public static void SpawnWave(SpawnableWaveBase wave) => WaveManager.Spawn(wave);
- // TODO: Docs.
+ // TODO: Write docs.
+
+ ///
+ /// to be filled.
+ ///
+ /// to be filled..
+ /// to be filled...
public static void SpawnWave(Faction faction, bool mini)
where T : SpawnableWaveBase
{
From 30e74cbd7f49d8c1c2b5037ed991b50941e7c73f Mon Sep 17 00:00:00 2001
From: Miki_hero <100715076+Mikihero@users.noreply.github.com>
Date: Tue, 26 Nov 2024 23:03:56 +0100
Subject: [PATCH 2/6] added to be filled docs so stylecop stops screaming
---
EXILED/Exiled.API/Features/Items/Firearm.cs | 22 +++++--------------
.../Exiled.API/Features/Items/Flashlight.cs | 1 -
EXILED/Exiled.API/Features/Pickups/Pickup.cs | 2 +-
.../Pickups/Projectiles/Scp018Projectile.cs | 2 +-
EXILED/Exiled.API/Features/Respawn.cs | 7 ++++++
5 files changed, 14 insertions(+), 20 deletions(-)
diff --git a/EXILED/Exiled.API/Features/Items/Firearm.cs b/EXILED/Exiled.API/Features/Items/Firearm.cs
index 0ec5a64933..4c6466933a 100644
--- a/EXILED/Exiled.API/Features/Items/Firearm.cs
+++ b/EXILED/Exiled.API/Features/Items/Firearm.cs
@@ -5,8 +5,6 @@
//
// -----------------------------------------------------------------------
-using MEC;
-
namespace Exiled.API.Features.Items
{
using System;
@@ -14,29 +12,19 @@ namespace Exiled.API.Features.Items
using System.Linq;
using CameraShaking;
-
using Enums;
-
- using Exiled.API.Features.Pickups;
- using Exiled.API.Interfaces;
- using Exiled.API.Structs;
-
using Extensions;
-
- using InventorySystem;
- using InventorySystem.Items;
- using InventorySystem.Items.Firearms;
+ using Interfaces;
using InventorySystem.Items.Firearms.Attachments;
using InventorySystem.Items.Firearms.Attachments.Components;
- using InventorySystem.Items.Firearms.BasicMessages;
using InventorySystem.Items.Firearms.Modules;
- using InventorySystem.Items.Pickups;
-
+ using MEC;
+ using Pickups;
+ using Structs;
using UnityEngine;
using BaseFirearm = InventorySystem.Items.Firearms.Firearm;
using FirearmPickup = Pickups.FirearmPickup;
- using Object = UnityEngine.Object;
///
/// A wrapper class for .
@@ -139,7 +127,6 @@ public int MaxAmmo
///
public AmmoType AmmoType => (Base.Modules.OfType().FirstOrDefault()?.AmmoType ?? ItemType.None).GetAmmoType();
-
///
/// Gets a value indicating whether the firearm is being aimed.
///
@@ -660,6 +647,7 @@ internal override void ChangeOwner(Player oldOwner, Player newOwner)
Base._footprintCacheSet = false;
}
+ ///
internal override void ReadPickupInfo(Pickup pickup)
{
base.ReadPickupInfo(pickup);
diff --git a/EXILED/Exiled.API/Features/Items/Flashlight.cs b/EXILED/Exiled.API/Features/Items/Flashlight.cs
index 0e9de906ba..93a3876ca6 100644
--- a/EXILED/Exiled.API/Features/Items/Flashlight.cs
+++ b/EXILED/Exiled.API/Features/Items/Flashlight.cs
@@ -45,7 +45,6 @@ internal Flashlight(ItemType type)
/// Can be or .
public new ToggleableLightItemBase Base { get; }
-
///
/// Gets or sets a value indicating whether the item is emitting light.
///
diff --git a/EXILED/Exiled.API/Features/Pickups/Pickup.cs b/EXILED/Exiled.API/Features/Pickups/Pickup.cs
index 286e7cf7b8..7bc5601b53 100644
--- a/EXILED/Exiled.API/Features/Pickups/Pickup.cs
+++ b/EXILED/Exiled.API/Features/Pickups/Pickup.cs
@@ -128,7 +128,7 @@ internal Pickup(ItemType type)
public Room Room => Room.FindParentRoom(GameObject);
///
- /// Gets or sets the pickup's PhysicsModule.
+ /// Gets (or sets) the pickup's PhysicsModule.
///
public PickupStandardPhysics PhysicsModule => Base.PhysicsModule as PickupStandardPhysics;
diff --git a/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs b/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs
index 6bb4763708..144478f9bb 100644
--- a/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs
+++ b/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs
@@ -50,7 +50,7 @@ internal Scp018Projectile()
public new BaseScp018Projectile Base { get; }
///
- /// Gets or sets the pickup's PhysicsModule.
+ /// Gets (or sets) the pickup's PhysicsModule.
///
public new Scp018Physics PhysicsModule => Base.PhysicsModule as Scp018Physics;
diff --git a/EXILED/Exiled.API/Features/Respawn.cs b/EXILED/Exiled.API/Features/Respawn.cs
index 03db56a9e1..69059fc441 100644
--- a/EXILED/Exiled.API/Features/Respawn.cs
+++ b/EXILED/Exiled.API/Features/Respawn.cs
@@ -205,6 +205,7 @@ public static bool TryGetWaveBase(SpawnableFaction faction, out SpawnableWaveBas
///
/// to be filled..
/// to be filled...
+ /// to be filled....
public static void SpawnWave(Faction faction, bool mini)
where T : SpawnableWaveBase
{
@@ -295,6 +296,12 @@ public static void ForceWave(Faction team)
ForceWave(wave);
}
+ // TODO: Write docs.
+
+ ///
+ /// to be filled.
+ ///
+ /// to be filled....
public static void ForceWave(SpawnableWaveBase wave)
{
WaveManager.Spawn(wave);
From e261b4f54d6addd785a2127b42d636e83b0b5f40 Mon Sep 17 00:00:00 2001
From: Miki_hero <100715076+Mikihero@users.noreply.github.com>
Date: Wed, 27 Nov 2024 00:11:25 +0100
Subject: [PATCH 3/6] cleanup using
---
EXILED/Exiled.API/Enums/DoorType.cs | 2 +-
EXILED/Exiled.API/Enums/RespawnEffectType.cs | 4 ----
EXILED/Exiled.API/Features/Doors/ElevatorDoor.cs | 3 +--
EXILED/Exiled.API/Features/Items/Firearm.cs | 10 +++-------
EXILED/Exiled.API/Features/Items/Flashlight.cs | 4 +---
EXILED/Exiled.API/Features/Npc.cs | 6 +++---
EXILED/Exiled.API/Features/Pickups/Pickup.cs | 12 ++++--------
.../Pickups/Projectiles/Scp018Projectile.cs | 4 +---
EXILED/Exiled.API/Features/Player.cs | 16 ++++++++--------
9 files changed, 22 insertions(+), 39 deletions(-)
diff --git a/EXILED/Exiled.API/Enums/DoorType.cs b/EXILED/Exiled.API/Enums/DoorType.cs
index 7cf1e8a2d0..1417d448fe 100644
--- a/EXILED/Exiled.API/Enums/DoorType.cs
+++ b/EXILED/Exiled.API/Enums/DoorType.cs
@@ -7,7 +7,7 @@
namespace Exiled.API.Enums
{
- using Exiled.API.Features.Doors;
+ using Features.Doors;
using Interactables.Interobjects;
///
diff --git a/EXILED/Exiled.API/Enums/RespawnEffectType.cs b/EXILED/Exiled.API/Enums/RespawnEffectType.cs
index 25c02009b5..34ce495b51 100644
--- a/EXILED/Exiled.API/Enums/RespawnEffectType.cs
+++ b/EXILED/Exiled.API/Enums/RespawnEffectType.cs
@@ -7,10 +7,6 @@
namespace Exiled.API.Enums
{
- using Features;
- using PlayerRoles;
- using Respawning.Waves;
-
///
/// Layers game respawn effects.
///
diff --git a/EXILED/Exiled.API/Features/Doors/ElevatorDoor.cs b/EXILED/Exiled.API/Features/Doors/ElevatorDoor.cs
index dd597645c3..5b598de818 100644
--- a/EXILED/Exiled.API/Features/Doors/ElevatorDoor.cs
+++ b/EXILED/Exiled.API/Features/Doors/ElevatorDoor.cs
@@ -10,9 +10,8 @@ namespace Exiled.API.Features.Doors
using System.Collections.Generic;
using System.Linq;
- using Exiled.API.Enums;
+ using Enums;
using Interactables.Interobjects;
- using Interactables.Interobjects.DoorUtils;
using UnityEngine;
///
diff --git a/EXILED/Exiled.API/Features/Items/Firearm.cs b/EXILED/Exiled.API/Features/Items/Firearm.cs
index f4b2f767e1..4c6466933a 100644
--- a/EXILED/Exiled.API/Features/Items/Firearm.cs
+++ b/EXILED/Exiled.API/Features/Items/Firearm.cs
@@ -13,18 +13,14 @@ namespace Exiled.API.Features.Items
using CameraShaking;
using Enums;
- using Exiled.API.Features.Pickups;
- using Exiled.API.Interfaces;
- using Exiled.API.Structs;
using Extensions;
- using InventorySystem;
- using InventorySystem.Items;
- using InventorySystem.Items.Firearms;
+ using Interfaces;
using InventorySystem.Items.Firearms.Attachments;
using InventorySystem.Items.Firearms.Attachments.Components;
using InventorySystem.Items.Firearms.Modules;
- using InventorySystem.Items.Pickups;
using MEC;
+ using Pickups;
+ using Structs;
using UnityEngine;
using BaseFirearm = InventorySystem.Items.Firearms.Firearm;
diff --git a/EXILED/Exiled.API/Features/Items/Flashlight.cs b/EXILED/Exiled.API/Features/Items/Flashlight.cs
index 93a3876ca6..c7cb386924 100644
--- a/EXILED/Exiled.API/Features/Items/Flashlight.cs
+++ b/EXILED/Exiled.API/Features/Items/Flashlight.cs
@@ -7,9 +7,7 @@
namespace Exiled.API.Features.Items
{
- using System;
-
- using Exiled.API.Interfaces;
+ using Interfaces;
using InventorySystem.Items.ToggleableLights;
using InventorySystem.Items.ToggleableLights.Flashlight;
using InventorySystem.Items.ToggleableLights.Lantern;
diff --git a/EXILED/Exiled.API/Features/Npc.cs b/EXILED/Exiled.API/Features/Npc.cs
index 2309d18af9..0231f73a6f 100644
--- a/EXILED/Exiled.API/Features/Npc.cs
+++ b/EXILED/Exiled.API/Features/Npc.cs
@@ -15,14 +15,14 @@ namespace Exiled.API.Features
using CentralAuth;
using CommandSystem;
- using Exiled.API.Enums;
- using Exiled.API.Features.Components;
- using Exiled.API.Features.Roles;
+ using Components;
+ using Enums;
using Footprinting;
using GameCore;
using MEC;
using Mirror;
using PlayerRoles;
+ using Roles;
using UnityEngine;
using Object = UnityEngine.Object;
diff --git a/EXILED/Exiled.API/Features/Pickups/Pickup.cs b/EXILED/Exiled.API/Features/Pickups/Pickup.cs
index 2deb4f4845..c3bbf4b025 100644
--- a/EXILED/Exiled.API/Features/Pickups/Pickup.cs
+++ b/EXILED/Exiled.API/Features/Pickups/Pickup.cs
@@ -7,22 +7,19 @@
namespace Exiled.API.Features.Pickups
{
- using System;
using System.Collections.Generic;
using System.Linq;
- using Exiled.API.Extensions;
- using Exiled.API.Features.Core;
- using Exiled.API.Features.Pickups.Projectiles;
- using Exiled.API.Interfaces;
-
+ using Core;
+ using Extensions;
+ using Interfaces;
using InventorySystem;
using InventorySystem.Items;
using InventorySystem.Items.Pickups;
using InventorySystem.Items.ThrowableProjectiles;
using InventorySystem.Items.Usables.Scp244;
-
using Mirror;
+ using Projectiles;
using RelativePositioning;
using UnityEngine;
@@ -37,7 +34,6 @@ namespace Exiled.API.Features.Pickups
using BaseScp1576Pickup = InventorySystem.Items.Usables.Scp1576.Scp1576Pickup;
using BaseScp2176Projectile = InventorySystem.Items.ThrowableProjectiles.Scp2176Projectile;
using BaseScp330Pickup = InventorySystem.Items.Usables.Scp330.Scp330Pickup;
-
using Object = UnityEngine.Object;
///
diff --git a/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs b/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs
index f33d935a97..0a766bf14b 100644
--- a/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs
+++ b/EXILED/Exiled.API/Features/Pickups/Projectiles/Scp018Projectile.cs
@@ -7,12 +7,10 @@
namespace Exiled.API.Features.Pickups.Projectiles
{
- using System;
using System.Reflection;
- using Exiled.API.Interfaces;
using HarmonyLib;
-
+ using Interfaces;
using InventorySystem.Items.ThrowableProjectiles;
using BaseScp018Projectile = InventorySystem.Items.ThrowableProjectiles.Scp018Projectile;
diff --git a/EXILED/Exiled.API/Features/Player.cs b/EXILED/Exiled.API/Features/Player.cs
index ddad6ca4ce..46e520b365 100644
--- a/EXILED/Exiled.API/Features/Player.cs
+++ b/EXILED/Exiled.API/Features/Player.cs
@@ -17,21 +17,16 @@ namespace Exiled.API.Features
using CustomPlayerEffects;
using CustomPlayerEffects.Danger;
using DamageHandlers;
+ using Doors;
using Enums;
using Exiled.API.Features.Core.Interfaces;
- using Exiled.API.Features.Doors;
- using Exiled.API.Features.Hazards;
- using Exiled.API.Features.Items;
- using Exiled.API.Features.Pickups;
- using Exiled.API.Features.Pools;
- using Exiled.API.Features.Roles;
- using Exiled.API.Interfaces;
- using Exiled.API.Structs;
using Extensions;
using Footprinting;
using global::Scp914;
+ using Hazards;
using Hints;
using Interactables.Interobjects;
+ using Interfaces;
using InventorySystem;
using InventorySystem.Disarming;
using InventorySystem.Items;
@@ -41,10 +36,12 @@ namespace Exiled.API.Features
using InventorySystem.Items.Firearms.ShotEvents;
using InventorySystem.Items.Usables;
using InventorySystem.Items.Usables.Scp330;
+ using Items;
using MapGeneration.Distributors;
using MEC;
using Mirror;
using Mirror.LiteNetLib4Mirror;
+ using Pickups;
using PlayerRoles;
using PlayerRoles.FirstPersonControl;
using PlayerRoles.RoleAssign;
@@ -52,10 +49,13 @@ namespace Exiled.API.Features
using PlayerRoles.Voice;
using PlayerStatsSystem;
using PluginAPI.Core;
+ using Pools;
using RelativePositioning;
using RemoteAdmin;
using Respawning.NamingRules;
+ using Roles;
using RoundRestarting;
+ using Structs;
using UnityEngine;
using Utils;
using Utils.Networking;
From 705e7d5a8e9e02d3e2f5c87069ea983a0d390cb2 Mon Sep 17 00:00:00 2001
From: Miki_hero <100715076+Mikihero@users.noreply.github.com>
Date: Wed, 27 Nov 2024 01:19:04 +0100
Subject: [PATCH 4/6] prefix for 049 finishing recall
---
.../Patches/Events/Scp049/FinishingRecall.cs | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/EXILED/Exiled.Events/Patches/Events/Scp049/FinishingRecall.cs b/EXILED/Exiled.Events/Patches/Events/Scp049/FinishingRecall.cs
index eacd1e1684..efecf0c055 100644
--- a/EXILED/Exiled.Events/Patches/Events/Scp049/FinishingRecall.cs
+++ b/EXILED/Exiled.Events/Patches/Events/Scp049/FinishingRecall.cs
@@ -8,15 +8,14 @@
namespace Exiled.Events.Patches.Events.Scp049
{
using System.Collections.Generic;
+ using System.Diagnostics.CodeAnalysis;
using System.Reflection.Emit;
using API.Features;
using API.Features.Pools;
using Exiled.Events.Attributes;
using Exiled.Events.EventArgs.Scp049;
-
using HarmonyLib;
-
using PlayerRoles.PlayableScps.Scp049;
using PlayerRoles.Subroutines;
@@ -30,7 +29,8 @@ namespace Exiled.Events.Patches.Events.Scp049
[HarmonyPatch(typeof(Scp049ResurrectAbility), nameof(Scp049ResurrectAbility.ServerComplete))]
internal static class FinishingRecall
{
- private static IEnumerable Transpiler(IEnumerable instructions, ILGenerator generator)
+ // TODO: fix
+ /*private static IEnumerable Transpiler(IEnumerable instructions, ILGenerator generator)
{
List newInstructions = ListPool.Pool.Get(instructions);
@@ -78,6 +78,15 @@ private static IEnumerable Transpiler(IEnumerable.Pool.Return(newInstructions);
+ }*/
+
+ [SuppressMessage("StyleCop.CSharp.NamingRules", "SA1313:Parameter names should begin with lower-case letter", Justification = "Prefix")]
+ private static bool Prefix(Scp049ResurrectAbility __instance)
+ {
+ FinishingRecallEventArgs ev = new(Player.Get(__instance.CurRagdoll.Info.OwnerHub), Player.Get(__instance.Owner), __instance.CurRagdoll);
+ Handlers.Scp049.OnFinishingRecall(ev);
+
+ return ev.IsAllowed;
}
}
}
\ No newline at end of file
From 5a91a0e2a506811420f1543a2edcfcb6dfc6f09d Mon Sep 17 00:00:00 2001
From: Miki_hero <100715076+Mikihero@users.noreply.github.com>
Date: Wed, 27 Nov 2024 12:16:40 +0100
Subject: [PATCH 5/6] work in progress respawningteam changes
---
.../Patches/Events/Server/RespawningTeam.cs | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs b/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs
index ea2f3546ff..2a72977154 100644
--- a/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs
+++ b/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs
@@ -5,6 +5,8 @@
//
// -----------------------------------------------------------------------
+using System;
+
namespace Exiled.Events.Patches.Events.Server
{
using System.Collections.Generic;
@@ -26,6 +28,8 @@ namespace Exiled.Events.Patches.Events.Server
using Player = API.Features.Player;
+ // This event should be renaned to SpawningWave, might be a good time to do it now since it's a breaking change
+
///
/// Patch the .
/// Adds the event.
@@ -34,7 +38,7 @@ namespace Exiled.Events.Patches.Events.Server
[HarmonyPatch(typeof(WaveSpawner), nameof(WaveSpawner.SpawnWave))]
internal static class RespawningTeam
{
- private static IEnumerable Transpiler(IEnumerable instructions, ILGenerator generator)
+ /*private static IEnumerable Transpiler(IEnumerable instructions, ILGenerator generator)
{
List newInstructions = ListPool.Pool.Get(instructions);
@@ -121,6 +125,13 @@ private static void RefillQueue(Queue newQueue)
WaveSpawner.SpawnQueue.Clear();
foreach (RoleTypeId role in newQueue)
WaveSpawner.SpawnQueue.Enqueue(role);
+ }*/
+
+ private static bool Prefix(SpawnableWaveBase wave)
+ {
+ List playerList = ReferenceHub.AllHubs.Where(WaveSpawner.CheckSpawnable).OrderByDescending(hub => WaveSpawner.CalculatePriority(hub, spawningTeam)).ToList();
+
+ RespawningTeamEventArgs ev = new()
}
}
}
\ No newline at end of file
From 2afb2a16d22b3dabd6efeaf8dab40a5b2f2c4cb0 Mon Sep 17 00:00:00 2001
From: Miki_hero <100715076+Mikihero@users.noreply.github.com>
Date: Wed, 27 Nov 2024 15:45:32 +0100
Subject: [PATCH 6/6] respawningteam event prefix
---
.../EventArgs/Server/RespawningTeamEventArgs.cs | 12 ++++++------
.../Patches/Events/Server/RespawningTeam.cs | 15 +++++++++------
2 files changed, 15 insertions(+), 12 deletions(-)
diff --git a/EXILED/Exiled.Events/EventArgs/Server/RespawningTeamEventArgs.cs b/EXILED/Exiled.Events/EventArgs/Server/RespawningTeamEventArgs.cs
index f475591a6f..f64c5b012d 100644
--- a/EXILED/Exiled.Events/EventArgs/Server/RespawningTeamEventArgs.cs
+++ b/EXILED/Exiled.Events/EventArgs/Server/RespawningTeamEventArgs.cs
@@ -35,18 +35,18 @@ public class RespawningTeamEventArgs : IDeniableEvent
///
///
///
- ///
- ///
+ ///
+ ///
///
///
///
///
- public RespawningTeamEventArgs(List players, Queue queue, int maxRespawn, SpawnableWaveBase nextKnownTeam, bool isAllowed = true)
+ public RespawningTeamEventArgs(List players, Queue queue, int maxRespawn, SpawnableWaveBase respawningTeam, bool isAllowed = true)
{
Players = players;
MaximumRespawnAmount = maxRespawn;
SpawnQueue = queue;
- NextKnownTeam = nextKnownTeam;
+ RespawningTeam = respawningTeam;
IsAllowed = isAllowed;
}
@@ -74,9 +74,9 @@ public int MaximumRespawnAmount
}
///
- /// Gets or sets a value indicating what the next respawnable team is.
+ /// Gets or sets a value indicating what the currently respawning team is.
///
- public SpawnableWaveBase NextKnownTeam { get; set; }
+ public SpawnableWaveBase RespawningTeam { get; set; }
///
/// Gets or sets a value indicating whether the spawn can occur.
diff --git a/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs b/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs
index 2a72977154..8b09ce19a2 100644
--- a/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs
+++ b/EXILED/Exiled.Events/Patches/Events/Server/RespawningTeam.cs
@@ -5,10 +5,9 @@
//
// -----------------------------------------------------------------------
-using System;
-
namespace Exiled.Events.Patches.Events.Server
{
+ using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
@@ -28,7 +27,7 @@ namespace Exiled.Events.Patches.Events.Server
using Player = API.Features.Player;
- // This event should be renaned to SpawningWave, might be a good time to do it now since it's a breaking change
+ // This event should be renamed to smth like SpawningWave, might be a good time to do it now since it's a breaking change
///
/// Patch the .
@@ -106,7 +105,7 @@ internal static class RespawningTeam
new(OpCodes.Call, Method(typeof(RespawningTeam), nameof(RefillQueue))),
// wave = ev.NextKnownTeam;
- new(OpCodes.Callvirt, PropertyGetter(typeof(RespawningTeamEventArgs), nameof(RespawningTeamEventArgs.NextKnownTeam))),
+ new(OpCodes.Callvirt, PropertyGetter(typeof(RespawningTeamEventArgs), nameof(RespawningTeamEventArgs.RespawningTeam))),
new(OpCodes.Starg_S, 1),
});
@@ -129,9 +128,13 @@ private static void RefillQueue(Queue newQueue)
private static bool Prefix(SpawnableWaveBase wave)
{
- List playerList = ReferenceHub.AllHubs.Where(WaveSpawner.CheckSpawnable).OrderByDescending(hub => WaveSpawner.CalculatePriority(hub, spawningTeam)).ToList();
+ SpawnableTeamType spawningTeam = wave.TargetFaction.GetSpawnableTeam();
+ List playerList = ReferenceHub.AllHubs.Where(WaveSpawner.CheckSpawnable).OrderByDescending(hub => WaveSpawner.CalculatePriority(hub, spawningTeam)).ToList();
+
+ RespawningTeamEventArgs ev = new(playerList.Select(Player.Get).ToList(), WaveSpawner.SpawnQueue, wave.MaxWaveSize, wave);
+ Server.OnRespawningTeam(ev);
- RespawningTeamEventArgs ev = new()
+ return ev.IsAllowed;
}
}
}
\ No newline at end of file