Skip to content

Commit c48a1da

Browse files
committed
1.9.6 | Better Hints & WarningHints
1 parent 8305a24 commit c48a1da

File tree

4 files changed

+24
-81
lines changed

4 files changed

+24
-81
lines changed

UsefulHints/EventHandlers/Items/Hints.cs

Lines changed: 15 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
using System;
2-
using System.Linq;
32
using System.Collections.Generic;
43
using Exiled.API.Enums;
5-
using Exiled.API.Extensions;
64
using JailbirdPickup = Exiled.API.Features.Pickups.JailbirdPickup;
75
using Player = Exiled.API.Features.Player;
86
using Exiled.Events.EventArgs.Map;
97
using Exiled.Events.EventArgs.Player;
108
using InventorySystem.Items.ThrowableProjectiles;
119
using InventorySystem.Items.Jailbird;
12-
using InventorySystem.Items.MicroHID;
10+
using CustomPlayerEffects;
1311
using MEC;
1412

1513
namespace UsefulHints.EventHandlers.Items
@@ -57,59 +55,34 @@ private static void OnGrenadeHurting(HurtingEventArgs ev)
5755
if (ev.DamageHandler.Type == DamageType.Explosion)
5856
{
5957
float RemainingHealth = ev.Player.Health - ev.Amount;
58+
6059
if (RemainingHealth > 0 && !ev.Attacker.IsHost)
61-
{
6260
ev.Attacker.ShowHint($"<color=white>{new string('\n', 5)}{string.Format(UsefulHints.Instance.Config.GrenadeDamageHint, Math.Round(ev.Amount))}</color>", 4);
63-
}
6461
}
6562
}
6663
// SCP 207 Handler
6764
private static void OnPickingUpSCP207(PickingUpItemEventArgs ev)
6865
{
69-
if (ev.Pickup.Type == ItemType.SCP207)
70-
{
71-
CustomPlayerEffects.StatusEffectBase scp207Effect = ev.Player.ActiveEffects.FirstOrDefault(effect => effect.GetEffectType() == EffectType.Scp207);
72-
73-
if (scp207Effect != null)
74-
{
75-
ev.Player.ShowHint($"<color=#A60C0E>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.Scp207HintMessage, scp207Effect.Intensity)}</color>", 4);
76-
}
77-
}
78-
if (ev.Pickup.Type == ItemType.AntiSCP207)
79-
{
80-
CustomPlayerEffects.StatusEffectBase antiscp207Effect = ev.Player.ActiveEffects.FirstOrDefault(effect => effect.GetEffectType() == EffectType.AntiScp207);
66+
if (ev.Player.IsEffectActive<Scp207>() && ev.Pickup.Type != ItemType.AntiSCP207)
67+
ev.Player.ShowHint($"<color=#A60C0E>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.Scp207HintMessage, ev.Player.GetEffect(EffectType.Scp207).Intensity)}</color>", 4);
8168

82-
if (antiscp207Effect != null)
83-
{
84-
ev.Player.ShowHint($"<color=#C53892>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.AntiScp207HintMessage, antiscp207Effect.Intensity)}</color>", 4);
85-
}
86-
}
69+
if (ev.Player.IsEffectActive<AntiScp207>() && ev.Pickup.Type != ItemType.SCP207)
70+
ev.Player.ShowHint($"<color=#C53892>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.AntiScp207HintMessage, ev.Player.GetEffect(EffectType.AntiScp207).Intensity)}</color>", 4);
8771
}
8872
private static void OnEquipSCP207(ChangingItemEventArgs ev)
8973
{
9074
if (UsefulHints.Instance.Config.ShowHintOnEquipItem)
9175
{
9276
if (ev.Item == null)
93-
{
9477
return;
95-
}
96-
if (ev.Item.Type == ItemType.SCP207)
97-
{
98-
CustomPlayerEffects.StatusEffectBase scp207Effect = ev.Player.ActiveEffects.FirstOrDefault(effect => effect.GetEffectType() == EffectType.Scp207);
9978

100-
if (scp207Effect != null)
101-
{
102-
ev.Player.ShowHint($"<color=#A60C0E>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.Scp207HintMessage, scp207Effect.Intensity)}</color>", 2);
103-
}
104-
}
105-
if (ev.Item.Type == ItemType.AntiSCP207)
79+
if (ev.Item.Type == ItemType.SCP207 || ev.Item.Type == ItemType.AntiSCP207)
10680
{
107-
CustomPlayerEffects.StatusEffectBase antiscp207Effect = ev.Player.ActiveEffects.FirstOrDefault(effect => effect.GetEffectType() == EffectType.AntiScp207);
81+
if (ev.Player.IsEffectActive<Scp207>() && ev.Item.Type != ItemType.AntiSCP207)
82+
ev.Player.ShowHint($"<color=#A60C0E>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.Scp207HintMessage, ev.Player.GetEffect(EffectType.Scp207).Intensity)}</color>", 4);
10883

109-
if (antiscp207Effect != null)
110-
{
111-
ev.Player.ShowHint($"<color=#C53892>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.AntiScp207HintMessage, antiscp207Effect.Intensity)}</color>", 2);
112-
}
84+
if (ev.Player.IsEffectActive<AntiScp207>() && ev.Item.Type != ItemType.SCP207)
85+
ev.Player.ShowHint($"<color=#C53892>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.AntiScp207HintMessage, ev.Player.GetEffect(EffectType.AntiScp207).Intensity)}</color>", 4);
11386
}
11487
}
11588
}
@@ -129,8 +102,8 @@ private static void OnSCP1576Used(UsedItemEventArgs ev)
129102
}
130103

131104
var coroutine = Timing.RunCoroutine(Scp1576Timer(ev.Player));
132-
activeCoroutines[ev.Player] = coroutine;
133-
activeItems[ev.Player] = ev.Item.Type;
105+
activeCoroutines.Add(ev.Player, coroutine);
106+
activeItems.Add(ev.Player, ev.Item.Type);
134107
}
135108
}
136109
private static void OnSCP1576ChangedItem(ChangedItemEventArgs ev)
@@ -246,37 +219,29 @@ private static void OnPickingUpJailbird(PickingUpItemEventArgs ev)
246219
{
247220
int maxCharges = 5;
248221
int remainingCharges = maxCharges - jailbirdPickup.TotalCharges;
222+
249223
if (remainingCharges > 1)
250-
{
251224
ev.Player.ShowHint($"<color=#00B7EB>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.JailbirdUseMessage, remainingCharges)}</color>", 4);
252-
}
253225
else
254-
{
255226
ev.Player.ShowHint($"<color=#C73804>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.JailbirdUseMessage, remainingCharges)}</color>", 4);
256-
}
257227
}
258228
}
259229
private static void OnEquipJailbird(ChangingItemEventArgs ev)
260230
{
261231
if (UsefulHints.Instance.Config.ShowHintOnEquipItem)
262232
{
263233
if (ev.Item == null)
264-
{
265234
return;
266-
}
235+
267236
if (ev.Item.Base is JailbirdItem jailbirdItem)
268237
{
269238
int maxCharges = 5;
270239
int remainingCharges = maxCharges - jailbirdItem.TotalChargesPerformed;
271240

272241
if (remainingCharges > 1)
273-
{
274242
ev.Player.ShowHint($"<color=#00B7EB>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.JailbirdUseMessage, remainingCharges)}</color>", 2);
275-
}
276243
else
277-
{
278244
ev.Player.ShowHint($"<color=#C73804>{new string('\n', 10)}{string.Format(UsefulHints.Instance.Config.JailbirdUseMessage, remainingCharges)}</color>", 2);
279-
}
280245
}
281246
}
282247
}

UsefulHints/EventHandlers/Items/WarningHints.cs

Lines changed: 7 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -15,38 +15,16 @@ public static void UnregisterEvents()
1515
}
1616
private static void OnPickingUpWarning(PickingUpItemEventArgs ev)
1717
{
18-
if (ev.Pickup.Type == ItemType.SCP207)
18+
if (ev.Pickup.Type == ItemType.SCP207 || ev.Pickup.Type == ItemType.AntiSCP207 || ev.Pickup.Type == ItemType.SCP1853)
1919
{
20-
if (ev.Player.IsEffectActive<AntiScp207>())
21-
{
22-
ev.Player.ShowHint(string.Format(UsefulHints.Instance.Config.AntiScp207Warning), 4);
23-
}
24-
if (ev.Player.IsEffectActive<Scp1853>())
25-
{
26-
ev.Player.ShowHint(string.Format(UsefulHints.Instance.Config.Scp1853Warning), 4);
27-
}
28-
}
29-
if (ev.Pickup.Type == ItemType.AntiSCP207)
30-
{
31-
if (ev.Player.IsEffectActive<Scp207>())
32-
{
20+
if (ev.Player.IsEffectActive<Scp207>() && ev.Pickup.Type != ItemType.SCP207)
3321
ev.Player.ShowHint(string.Format(UsefulHints.Instance.Config.Scp207Warning), 4);
34-
}
35-
if (ev.Player.IsEffectActive<Scp1853>())
36-
{
37-
ev.Player.ShowHint(string.Format(UsefulHints.Instance.Config.Scp1853Warning), 4);
38-
}
39-
}
40-
if (ev.Pickup.Type == ItemType.SCP1853)
41-
{
42-
if (ev.Player.IsEffectActive<Scp207>())
43-
{
44-
ev.Player.ShowHint(string.Format(UsefulHints.Instance.Config.Scp207Warning), 4);
45-
}
46-
if (ev.Player.IsEffectActive<AntiScp207>())
47-
{
22+
23+
if (ev.Player.IsEffectActive<AntiScp207>() && ev.Pickup.Type != ItemType.AntiSCP207)
4824
ev.Player.ShowHint(string.Format(UsefulHints.Instance.Config.AntiScp207Warning), 4);
49-
}
25+
26+
if (ev.Player.IsEffectActive<Scp1853>() && ev.Pickup.Type != ItemType.SCP1853)
27+
ev.Player.ShowHint(string.Format(UsefulHints.Instance.Config.Scp1853Warning), 4);
5028
}
5129
}
5230
}

UsefulHints/UsefulHints.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ public class UsefulHints : Plugin<Config>
99
public override string Name => "Useful Hints";
1010
public override string Author => "Vretu";
1111
public override string Prefix { get; } = "UH";
12-
public override Version Version => new Version(1, 9, 5);
12+
public override Version Version => new Version(1, 9, 6);
1313
public override Version RequiredExiledVersion { get; } = new Version(9, 0, 0);
1414
public override PluginPriority Priority { get; } = PluginPriority.Low;
1515
public static UsefulHints Instance { get; private set; }

UsefulHints/UsefulHints.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868
<PrivateAssets>all</PrivateAssets>
6969
</PackageReference>
7070
<PackageReference Include="ExMod.Exiled">
71-
<Version>9.2.1</Version>
71+
<Version>9.2.2</Version>
7272
</PackageReference>
7373
<PackageReference Include="Fody">
7474
<Version>6.9.1</Version>

0 commit comments

Comments
 (0)