diff options
| author | Apickx <Apickx@cogarr.org> | 2015-12-28 19:10:44 -0500 |
|---|---|---|
| committer | Apickx <Apickx@cogarr.org> | 2015-12-28 19:10:44 -0500 |
| commit | 5c4ebc932d8c02522802c842d43d863d89aca162 (patch) | |
| tree | 6be7ad664bdf060127e6df6baa72beaf508aa149 /gamemode/shared/player_transferitem.lua | |
| download | wintersurvival2-5c4ebc932d8c02522802c842d43d863d89aca162.tar.gz wintersurvival2-5c4ebc932d8c02522802c842d43d863d89aca162.tar.bz2 wintersurvival2-5c4ebc932d8c02522802c842d43d863d89aca162.zip | |
Initial commit
Diffstat (limited to 'gamemode/shared/player_transferitem.lua')
| -rw-r--r-- | gamemode/shared/player_transferitem.lua | 44 |
1 files changed, 44 insertions, 0 deletions
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 |
