summaryrefslogtreecommitdiff
path: root/data/artery/global/sv_stamina.lua
diff options
context:
space:
mode:
authorApickx <apickx@cogarr.com>2018-03-24 20:40:54 -0400
committerApickx <apickx@cogarr.com>2018-03-24 20:40:54 -0400
commit2568d8b47bfb77ba3a748e189901846b4ae7860c (patch)
tree524b2beacf754927df82aecf6dcd8887e0521ba0 /data/artery/global/sv_stamina.lua
downloadartery_stamina-2568d8b47bfb77ba3a748e189901846b4ae7860c.tar.gz
artery_stamina-2568d8b47bfb77ba3a748e189901846b4ae7860c.tar.bz2
artery_stamina-2568d8b47bfb77ba3a748e189901846b4ae7860c.zip
Inital commit
Inital commit
Diffstat (limited to 'data/artery/global/sv_stamina.lua')
-rw-r--r--data/artery/global/sv_stamina.lua34
1 files changed, 34 insertions, 0 deletions
diff --git a/data/artery/global/sv_stamina.lua b/data/artery/global/sv_stamina.lua
new file mode 100644
index 0000000..8a32598
--- /dev/null
+++ b/data/artery/global/sv_stamina.lua
@@ -0,0 +1,34 @@
+util.AddNetworkString("art_sync_stamina")
+
+local stam = nrequire("sh_stamina.lua")
+
+--Table that holds stamina for all players
+local staminatbl = {}
+
+local function sync_stamina(who)
+ net.Start("art_sync_stamina")
+ net.WriteTable(staminatbl[who])
+ net.Send(who)
+end
+
+hook.Add( "PlayerInitialSpawn", "stamina_init",function(ply)
+ staminatbl[ply] = table.Copy(stam.default_stamina)
+end )
+hook.Add( "PlayerDisconnected", "stamina_desc",function(ply)
+ staminatbl[ply] = nil
+end )
+
+function stam.getStamina(who)
+ staminatbl[who] = staminatbl[who] or table.Copy(stam.default_stamina)
+ return stam.calc_stamina(staminatbl[who])
+end
+
+function stam.takeStamina(who,num)
+ staminatbl[who] = staminatbl[who] or table.Copy(stam.default_stamina)
+ local ttbl = staminatbl[who]
+ ttbl.stamina = stam.getStamina(who) - num
+ ttbl.last_stamina_use = CurTime()
+ sync_stamina(who)
+end
+
+return stam