Do not allow users to drop larger than max stacks if max stack check is enabled.
This commit is contained in:
parent
c6e19c6658
commit
348685bb2a
1 changed files with 21 additions and 0 deletions
|
|
@ -118,6 +118,7 @@ namespace TShockAPI
|
|||
{PacketTypes.TileGetSection, HandleGetSection},
|
||||
{PacketTypes.UpdateNPCHome, UpdateNPCHome },
|
||||
{PacketTypes.PlayerAddBuff, HandlePlayerBuff},
|
||||
{PacketTypes.ItemDrop, HandleItemDrop}
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -920,5 +921,25 @@ namespace TShockAPI
|
|||
{
|
||||
return !args.Player.Group.HasPermission(Permissions.ignoregriefdetection);
|
||||
}
|
||||
|
||||
private static bool HandleItemDrop(GetDataHandlerArgs args)
|
||||
{
|
||||
var id = args.Data.ReadInt16();
|
||||
var pos = new Vector2(args.Data.ReadSingle(), args.Data.ReadSingle());
|
||||
var vel = new Vector2(args.Data.ReadSingle(), args.Data.ReadSingle());
|
||||
var stacks = args.Data.ReadInt8();
|
||||
var prefix = args.Data.ReadInt8();
|
||||
var type = args.Data.ReadInt16();
|
||||
|
||||
if (TShock.Config.EnableItemStackChecks)
|
||||
{
|
||||
var item = new Item();
|
||||
item.SetDefaults(type);
|
||||
if (stacks > item.maxStack)
|
||||
TShock.Utils.HandleCheater(args.Player, "Dropped illegal stack of item");
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue