From 5c4ebc932d8c02522802c842d43d863d89aca162 Mon Sep 17 00:00:00 2001 From: Apickx Date: Mon, 28 Dec 2015 19:10:44 -0500 Subject: Initial commit --- gamemode/shared/player_transferitem.lua | 44 +++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 gamemode/shared/player_transferitem.lua (limited to 'gamemode/shared/player_transferitem.lua') diff --git a/gamemode/shared/player_transferitem.lua b/gamemode/shared/player_transferitem.lua new file mode 100644 index 0000000..944af63 --- /dev/null +++ b/gamemode/shared/player_transferitem.lua @@ -0,0 +1,44 @@ + +if (SERVER) then + util.AddNetworkString("RequestTransfer") + util.AddNetworkString("RequestTransferFrom") + + net.Receive("RequestTransfer",function(siz,pl) + local item = net.ReadString() + local quan = net.ReadUInt(32) + local ent = net.ReadEntity() + + if (!IsValid(ent) or !ent.AddItem) then return end + + if (!pl:HasItem(item,quan)) then return end + + pl:RemoveItem(item,quan) + ent:AddItem(item,quan) + end) + + net.Receive("RequestTransferFrom",function(siz,pl) + local item = net.ReadString() + local quan = net.ReadUInt(32) + local ent = net.ReadEntity() + + if (!IsValid(ent) or !ent.TakeItem) then return end + + ent:TakeItem(pl,item,quan) + end) +else + function TransferItems(item,quantity,to) + net.Start("RequestTransfer") + net.WriteString(item) + net.WriteUInt(quantity,32) + net.WriteEntity(to) + net.SendToServer() + end + + function DemandItems(item,quantity,from) + net.Start("RequestTransferFrom") + net.WriteString(item) + net.WriteUInt(quantity,32) + net.WriteEntity(from) + net.SendToServer() + end +end \ No newline at end of file -- cgit v1.2.3-70-g09d2