Make Bouncer reject Shimmer placement without bucket or whilst banned

This commit is contained in:
James Puleo 2022-10-10 19:00:43 -04:00
parent bf53c3313c
commit 1df123d2be
No known key found for this signature in database
GPG key ID: 3E16C7EFA34FB15D

View file

@ -1548,6 +1548,10 @@ namespace TShockAPI
{
bucket = 7;
}
else if (selectedItemType == ItemID.BottomlessShimmerBucket)
{
bucket = 8;
}
if (!wasThereABombNearby && type == LiquidType.Lava && !(bucket == 2 || bucket == 0 || bucket == 5 || bucket == 6))
{
@ -1608,6 +1612,27 @@ namespace TShockAPI
args.Handled = true;
return;
}
if (!wasThereABombNearby && type == LiquidType.Shimmer && bucket != 8)
{
TShock.Log.ConsoleDebug("Bouncer / OnLiquidSet rejected bucket check 6 from {0}", args.Player.Name);
args.Player.SendErrorMessage("You do not have permission to perform this action.");
args.Player.Disable("Spreading shimmer without holding a honey bucket", DisableFlags.WriteToLogAndConsole);
args.Player.SendTileSquareCentered(tileX, tileY, 1);
args.Handled = true;
return;
}
if (!wasThereABombNearby && type == LiquidType.Shimmer &&
TShock.ItemBans.DataModel.ItemIsBanned("Bottomless Shimmer Bucket", args.Player))
{
TShock.Log.ConsoleDebug("Bouncer / OnLiquidSet rejected bucket check 7 from {0}", args.Player.Name);
args.Player.SendErrorMessage("You do not have permission to perform this action.");
args.Player.Disable("Using banned bottomless shimmer bucket without permissions", DisableFlags.WriteToLogAndConsole);
args.Player.SendTileSquareCentered(tileX, tileY, 1);
args.Handled = true;
return;
}
}
if (!args.Player.HasBuildPermission(tileX, tileY))