Skip to content

Commit ad7138b

Browse files
committed
AdminToyList
1 parent 234b075 commit ad7138b

File tree

3 files changed

+32
-2
lines changed

3 files changed

+32
-2
lines changed

EXILED/Exiled.Events/Events.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,13 @@ public override void OnEnabled()
8181
RagdollManager.OnRagdollRemoved += Handlers.Internal.RagdollList.OnRemovedRagdoll;
8282
ItemPickupBase.OnPickupAdded += Handlers.Internal.PickupEvent.OnSpawnedPickup;
8383
ItemPickupBase.OnPickupDestroyed += Handlers.Internal.PickupEvent.OnRemovedPickup;
84-
ServerConsole.ReloadServerName();
84+
85+
AdminToys.AdminToyBase.OnAdded += Handlers.Internal.AdminToyList.OnAddedAdminToys;
86+
AdminToys.AdminToyBase.OnRemoved += Handlers.Internal.AdminToyList.OnRemovedAdminToys;
8587

8688
ServerSpecificSettingsSync.ServerOnSettingValueReceived += SettingBase.OnSettingUpdated;
89+
90+
ServerConsole.ReloadServerName();
8791
}
8892

8993
/// <inheritdoc/>
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// -----------------------------------------------------------------------
2+
// <copyright file="AdminToyList.cs" company="ExMod Team">
3+
// Copyright (c) ExMod Team. All rights reserved.
4+
// Licensed under the CC BY-SA 3.0 license.
5+
// </copyright>
6+
// -----------------------------------------------------------------------
7+
8+
namespace Exiled.Events.Handlers.Internal
9+
{
10+
/// <summary>
11+
/// Handles adding and removing from <see cref="Exiled.API.Features.Toys.AdminToy.List"/>.
12+
/// </summary>
13+
internal static class AdminToyList
14+
{
15+
/// <summary>
16+
/// Called after a ragdoll is spawned. Hooked to <see cref="AdminToys.AdminToyBase.OnAdded"/>.
17+
/// </summary>
18+
/// <param name="adminToy">The spawned ragdoll.</param>
19+
public static void OnAddedAdminToys(AdminToys.AdminToyBase adminToy) => API.Features.Toys.AdminToy.Get(adminToy);
20+
21+
/// <summary>
22+
/// Called before a ragdoll is destroyed. Hooked to <see cref="AdminToys.AdminToyBase.OnRemoved"/>.
23+
/// </summary>
24+
/// <param name="adminToy">The destroyed ragdoll.</param>
25+
public static void OnRemovedAdminToys(AdminToys.AdminToyBase adminToy) => API.Features.Toys.AdminToy.BaseToAdminToy.Remove(adminToy);
26+
}
27+
}

EXILED/Exiled.Events/Handlers/Internal/SceneUnloaded.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ public static void OnSceneUnloaded(Scene _)
3535
{
3636
Player.UserIdsCache.Clear();
3737
Player.Dictionary.Clear();
38-
AdminToy.BaseToAdminToy.Clear();
3938
}
4039
}
4140
}

0 commit comments

Comments
 (0)