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_useitem.lua | 40 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 gamemode/shared/player_useitem.lua (limited to 'gamemode/shared/player_useitem.lua') diff --git a/gamemode/shared/player_useitem.lua b/gamemode/shared/player_useitem.lua new file mode 100644 index 0000000..128146a --- /dev/null +++ b/gamemode/shared/player_useitem.lua @@ -0,0 +1,40 @@ + +local meta = FindMetaTable("Player") + +if (SERVER) then + util.AddNetworkString("UseItem") + util.AddNetworkString("UseItemReq") + + function meta:UseItem(item,bAccount) + if ((!bAccount and !self:HasItem(item)) or (bAccount and !self:HasAccountItem(item))) then return end + + local IT = GetItemByName(item) + + if (IT.OnUse) then + IT:OnUse(self) + + net.Start("UseItem") + net.WriteEntity(self) + net.WriteString(item) + net.Broadcast() + end + end + + net.Receive("UseItemReq",function(seq,pl) pl:UseItem(net.ReadString(),util.tobool(net.ReadBit())) end) +else + net.Receive("UseItem",function() + local pl = net.ReadEntity() + local it = GetItemByName(net.ReadString()) + + if (it.OnUse) then it:OnUse(pl) end + end) + + function RequestUseItem(item,bAccount) + net.Start("UseItemReq") + net.WriteString(item) + net.WriteBit(bAccount) + net.SendToServer() + end +end + + \ No newline at end of file -- cgit v1.2.3-70-g09d2