Skip to content

Commit 9d761f7

Browse files
committed
Update 3.2.2.2
1 parent ce6f209 commit 9d761f7

File tree

10 files changed

+130
-169
lines changed

10 files changed

+130
-169
lines changed

Commands/Plastic.cs

Lines changed: 0 additions & 48 deletions
This file was deleted.

Items/AdminAbuse.cs

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using Exiled.Events.EventArgs.Item;
1010
using Exiled.Events.EventArgs.Player;
1111
using InventorySystem.Items.Firearms.Attachments;
12+
using UnityEngine;
1213
using E = ExtendedItems.Utils;
1314
using ItemEvents = Exiled.Events.Handlers.Item;
1415

@@ -18,11 +19,12 @@ namespace ExtendedItems.Items
1819
public class AdminAbuse : CustomWeapon
1920
{
2021
[Description("thanks to hayden for the idea on buckshot or else it wouldnt have worked")]
21-
public override uint Id { get; set; } = 799;
22+
public override uint Id { get; set; } = 20;
2223

24+
public override ItemType Type { get; set; } = ItemType.GunRevolver;
2325
public override string Name { get; set; } = "Regert (dont use this because it crashes the server)";
2426
public override string Description { get; set; } = "you asked for it!";
25-
public override float Weight { get; set; } = 0f;
27+
public override float Weight { get; set; } = 1f;
2628
public override float Damage { get; set; } = 0;
2729

2830
public override SpawnProperties? SpawnProperties { get; set; } = new()
@@ -43,8 +45,9 @@ protected override void OnShot(ShotEventArgs ev)
4345
var throwable = ev.Player.ThrowGrenade(ProjectileType.FragGrenade);
4446
// defining ammo by itself will not change the ammo count
4547
// so you need to call ev.Firearm.MagazineAmmo :)
46-
ev.Firearm.MagazineAmmo = E.Subtract((ushort)ev.Firearm.MagazineAmmo);
47-
48+
49+
// ev.Firearm.MagazineAmmo = E.Subtract((ushort)ev.Firearm.MagazineAmmo);
50+
4851
throwable.Projectile.GameObject.AddComponent<CollisionHandler>()
4952
.Init(ev.Player.GameObject, throwable.Projectile.Base);
5053

@@ -53,7 +56,7 @@ protected override void OnShot(ShotEventArgs ev)
5356

5457
private void OnChangingAttachments(ChangingAttachmentsEventArgs ev)
5558
{
56-
if (!Check(ev.Item) || ev.Player.NetId < 2) return;
59+
if (!Check(ev.Item)) return;
5760

5861
Log.Debug($"Player {ev.Player.Nickname} tried to change attachments for {Name}");
5962
ev.IsAllowed = false;
@@ -74,16 +77,5 @@ protected override void UnsubscribeEvents()
7477

7578
base.UnsubscribeEvents();
7679
}
77-
78-
private static IEnumerator<float> Detonate(Throwable throwable)
79-
{
80-
for (;;)
81-
{
82-
float comp = -2;
83-
var yVelocity = throwable.Projectile.Rigidbody.linearVelocity.y - comp;
84-
85-
Log.Info(yVelocity);
86-
}
87-
}
8880
}
8981
}

Items/Coin.cs

Lines changed: 51 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ namespace ExtendedItems.Items
1717
public class Coin : CustomItem
1818
{
1919
public override string Name { get; set; } = "SCP-1289";
20-
public override uint Id { get; set; } = 804;
20+
public override uint Id { get; set; } = 4;
2121
public override string Description { get; set; } = "<i>\"What's the most you ever lost on a coin toss?\"</i>";
2222
public override float Weight { get; set; } = 1f;
2323

@@ -65,34 +65,64 @@ private void OnFlippingCoin(FlippingCoinEventArgs ev)
6565
{
6666
if (!Check(ev.Item)) return;
6767

68-
Timing.CallDelayed(2f, () =>
69-
{
70-
if (ev.IsTails && !ev.Player.IsDead)
68+
Timing.CallDelayed(2f,
69+
() =>
7170
{
72-
ev.Player.Scale = Vector3.zero;
73-
var cause = Plugin.Instance?.Config.LoseCauses.RandomItem() ?? "<Error: Coin Reason Not Found>";
74-
var ragdoll = Ragdoll.CreateAndSpawn(ev.Player.Role.Type, ev.Player.DisplayNickname,
75-
new CustomReasonDamageHandler($"{cause}"),
76-
ev.Player.Position, ev.Player.Rotation, ev.Player);
71+
if (ev.IsTails)
72+
{
73+
if (ev.Player.ActiveEffects.Any(targetActiveEffect => targetActiveEffect.name == nameof(EffectType.AntiScp207)))
74+
{
75+
Log.Debug($"{ev.Player.Nickname} had Anti-207");
76+
ev.Player.Explode(ProjectileType.FragGrenade, ev.Player);
77+
}
78+
else
79+
{
80+
Log.Debug("Coin Landed on tails");
81+
ev.Player.Scale = Vector3.zero;
82+
Log.Debug($"Scaling {ev.Player.Nickname} to zero");
7783

78-
ev.Player.IsGodModeEnabled = false;
84+
// ReSharper disable once InconsistentNaming
85+
var _temp = Plugin.Instance?.Config.LoseCauses.RandomItem() ??
86+
"<Error: Coin Reason Not Found>";
87+
88+
string cause = _temp.Any(char.IsWhiteSpace) ? $"the words {_temp} are etched into the scalp" : $"the word {_temp} is etched in the scalp";
89+
Ragdoll.CreateAndSpawn(ev.Player.Role.Type,
90+
ev.Player.DisplayNickname,
91+
new CustomReasonDamageHandler(cause),
92+
ev.Player.Position,
93+
ev.Player.Rotation,
94+
ev.Player);
7995

80-
ev.Player.ExplodeEffect(ProjectileType.FragGrenade);
81-
ev.Player.Kill($"{cause}");
82-
ev.Player.Scale = Vector3.one;
83-
return;
84-
}
96+
ev.Player.IsGodModeEnabled = false;
8597

86-
ev.Player.ShowHint($"{Plugin.Instance?.Config.WinHints.RandomItem()}");
98+
Log.Debug("Spawning Grenade");
99+
Utils.Exploding(ev.Player);
100+
ev.Player.Kill(cause);
101+
}
102+
}
103+
else
104+
{
105+
ev.Player.ShowHint($"{Plugin.Instance?.Config.WinHints.RandomItem()}");
87106

88-
Effects.ForEach(effect =>
89-
{
90-
ev.Player.EnableEffect(effect.Type, effect.Intensity, effect.Duration, true);
107+
if (ev.Player.Health + ev.Player.ArtificialHealth < ev.Player.MaxHealth / 2)
108+
{
109+
ev.Player.AddRegeneration(duration: 10, rate: 5);
110+
}
111+
else
112+
{
113+
Effects.ForEach(effect =>
114+
{
115+
ev.Player.EnableEffect(effect.Type,
116+
effect.Intensity,
117+
effect.Duration,
118+
true);
119+
});
120+
}
121+
}
91122
});
92-
});
93123
}
94124

95-
private void OnRoleChanging(ChangingRoleEventArgs ev)
125+
private static void OnRoleChanging(ChangingRoleEventArgs ev)
96126
{
97127
ev.Player.Scale = Vector3.one;
98128
ev.Player.DisableAllEffects();

Items/GrenadeLauncher.cs

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ namespace ExtendedItems.Items
1717
[CustomItem(ItemType.GunLogicer)]
1818
public class GrenadeLauncher : CustomWeapon
1919
{
20-
public override uint Id { get; set; } = 805;
20+
public override uint Id { get; set; } = 5;
2121
public override string Name { get; set; } = "Grenade Launcher";
2222

2323
public override string Description { get; set; } =
@@ -70,10 +70,10 @@ protected override void OnReloading(ReloadingWeaponEventArgs ev)
7070
ev.IsAllowed = false;
7171
ev.Player.ShowHint("You don't have any 7.62mm ammo to reload the grenade launcher!", 5);
7272
}
73-
else if (ev.Player.GetAmmo(AmmoType.Nato762) < 10)
73+
else if (ev.Player.GetAmmo(AmmoType.Nato762) < Plugin.Instance.Config.GrenadeLauncherAmmoUsage)
7474
{
7575
ev.IsAllowed = false;
76-
ev.Player.ShowHint("You need more than 10 7.62 to reload the grenade launcher!", 5);
76+
ev.Player.ShowHint($"You need more than {Plugin.Instance.Config.GrenadeLauncherAmmoUsage} 7.62 to reload the grenade launcher!", 5);
7777
}
7878
else
7979
{
@@ -100,22 +100,10 @@ protected override void UnsubscribeEvents()
100100

101101
private void OnChangingAttachments(ChangingAttachmentsEventArgs ev)
102102
{
103-
if (!Check(ev.Item) || ev.Player.NetId < 2) return;
104-
103+
if (!Check(ev.Item)) return;
105104
Log.Debug($"Player {ev.Player.Nickname} tried to change attachments for {Name}");
106105
ev.Player.Broadcast(5, "You can't change the attachments on this weapon");
107106
ev.IsAllowed = false;
108107
}
109-
110-
private static IEnumerator<float> Detonate(Throwable throwable)
111-
{
112-
for (;;)
113-
{
114-
float comp = -2;
115-
var yVelocity = throwable.Projectile.Rigidbody.linearVelocity.y - comp;
116-
117-
Log.Info(yVelocity);
118-
}
119-
}
120108
}
121109
}

Items/Plastic.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public enum C4RemoveMethod
3939
public override string Description { get; set; } =
4040
"A Remote Explosive that can be detonated when you are within 100m (about 1049.866 Big macs)";
4141

42-
public override uint Id { get; set; } = 806;
42+
public override uint Id { get; set; } = 6;
4343
public override float Weight { get; set; } = 1.5f;
4444
public override bool ExplodeOnCollision { get; set; } = false;
4545
public override float FuseTime { get; set; } = 10800f;
@@ -73,7 +73,7 @@ public void Handler(Pickup? charge, C4RemoveMethod method = C4RemoveMethod.Drop,
7373
if (detonator == null) method = C4RemoveMethod.Drop;
7474
else
7575
{
76-
detonator = charge != null && Charges.TryGetValue(charge.Serial, out var foundPlayer)
76+
detonator = Charges.TryGetValue(charge.Serial, out var foundPlayer)
7777
? foundPlayer
7878
: null;
7979
}

Items/Scp1499.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public class Scp1499 : CustomItem
2020
[Description("Relative position of room mentioned above to teleport player to after using SCP-1499.")]
2121
private readonly Vector3 _relativePosition = new(5.75f, 10f, -10.75f);
2222

23-
public override uint Id { get; set; } = 803;
23+
public override uint Id { get; set; } = 3;
2424
public override string Name { get; set; } = "SCP-1499";
2525
public override string Description { get; set; } = "<i>A breath away from oblivion.</i>";
2626
public override float Weight { get; set; } = 5f;

Items/Sniper.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ namespace ExtendedItems.Items
1313
[CustomItem(ItemType.GunE11SR)]
1414
public class Sniper : CustomWeapon
1515
{
16-
public override uint Id { get; set; } = 802;
16+
public override uint Id { get; set; } = 2;
1717
public ItemCategory Category { get; set; } = ItemCategory.SpecialWeapon;
1818

1919
public override string Name { get; set; } = "SR-118";
@@ -57,7 +57,7 @@ protected override void UnsubscribeEvents()
5757

5858
private void OnChangingAttachments(ChangingAttachmentsEventArgs ev)
5959
{
60-
if (!Check(ev.Item) || ev.Player.NetId < 2) return;
60+
if (!Check(ev.Item)) return;
6161

6262
Log.Debug($"Player {ev.Player.Nickname} tried to change attachments for {Name}");
6363
ev.IsAllowed = false;

Items/Tranquilizer.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public class Tranquilizer : CustomWeapon
2525

2626
[YamlIgnore] private readonly Random _rng = new();
2727
public override string Name { get; set; } = "Tranquilizer";
28-
public override uint Id { get; set; } = 801;
28+
public override uint Id { get; set; } = 1;
2929

3030
public override string Description { get; set; } =
3131
"A gun that temporarily tranquilizes entities; might be unreliable.";
@@ -50,7 +50,6 @@ public class Tranquilizer : CustomWeapon
5050
private bool AdrenalineBuff { get; } = true;
5151

5252
private bool Affected { get; set; } = true;
53-
public ItemType[] Inventory { get; set; } = [];
5453

5554
public override SpawnProperties? SpawnProperties { get; set; } = new()
5655
{

0 commit comments

Comments
 (0)