aboutsummaryrefslogtreecommitdiff
path: root/gamemode/shared/player_dropitem.lua
diff options
context:
space:
mode:
Diffstat (limited to 'gamemode/shared/player_dropitem.lua')
-rw-r--r--gamemode/shared/player_dropitem.lua26
1 files changed, 26 insertions, 0 deletions
diff --git a/gamemode/shared/player_dropitem.lua b/gamemode/shared/player_dropitem.lua
new file mode 100644
index 0000000..717e1b5
--- /dev/null
+++ b/gamemode/shared/player_dropitem.lua
@@ -0,0 +1,26 @@
+
+local meta = FindMetaTable("Player")
+
+if (SERVER) then
+ util.AddNetworkString("DropItemReq")
+
+ function meta:DropItem(item,bAccount)
+ if ((!bAccount and !self:HasItem(item)) or (bAccount and !self:HasAccountItem(item))) then return end
+
+ if (bAccount) then self:RemoveAccountItem(item,1) return
+ else self:RemoveItem(item,1) end
+
+ SpawnWSItem(item,self:GetShootPos()+self:GetAimVector()*20)
+ end
+
+ net.Receive("DropItemReq",function(seq,pl) pl:DropItem(net.ReadString(),util.tobool(net.ReadBit())) end)
+else
+ function RequestDropItem(item,bAccount)
+ net.Start("DropItemReq")
+ net.WriteString(item)
+ net.WriteBit(bAccount)
+ net.SendToServer()
+ end
+end
+
+ \ No newline at end of file