diff options
| author | Alexander Pickering <Alexander.Pickering@anondomain.site90.net> | 2015-12-30 21:38:28 -0500 |
|---|---|---|
| committer | Alexander Pickering <Alexander.Pickering@anondomain.site90.net> | 2015-12-30 21:38:28 -0500 |
| commit | ad728d580ea64797f7bcd02894f18cc4d1072d97 (patch) | |
| tree | ca8d85b1aff6bb4a917bbeafb2d4dd5add26d504 /entities | |
| parent | 76f2e4086134f45413bb67209ae1e842e79dca4c (diff) | |
| download | wintersurvival2-ad728d580ea64797f7bcd02894f18cc4d1072d97.tar.gz wintersurvival2-ad728d580ea64797f7bcd02894f18cc4d1072d97.tar.bz2 wintersurvival2-ad728d580ea64797f7bcd02894f18cc4d1072d97.zip | |
Changed research table and fix bird spawning
Diffstat (limited to 'entities')
| -rw-r--r-- | entities/entities/ws_researchtable/init.lua | 67 |
1 files changed, 5 insertions, 62 deletions
diff --git a/entities/entities/ws_researchtable/init.lua b/entities/entities/ws_researchtable/init.lua index 9f09365..64596e4 100644 --- a/entities/entities/ws_researchtable/init.lua +++ b/entities/entities/ws_researchtable/init.lua @@ -3,11 +3,6 @@ AddCSLuaFile("shared.lua") include('shared.lua')
--[[An item to give hints to players that are just starting out]]
-local ResurrectionTable = {
- ["Wood"] = 10,
- ["Rock"] = 10,
- ["Sap"] = 10,
-}
local PossibleRecipies = {
[1] = { [0]="Arrow",
@@ -46,73 +41,21 @@ function ENT:Initialize() end
self:SetHealth(30)
-
- self.StoredItems = {}
end
function ENT:Think()
- local HasItems = {}
- if(!self.StoredItems) then return end
- for k,v in pairs(self.StoredItems) do
- if (ResurrectionTable[v.Name] and v.Quantity >= ResurrectionTable[v.Name]) then
- HasItems[v.Name] = {k,ResurrectionTable[v.Name]}
- end
- end
-
- if (table.Count(HasItems) >= table.Count(ResurrectionTable)) then
- local randomrecipie = PossibleRecipies[math.random(1,10)]
- for k,v in pairs(player.GetAll()) do
- if (v:Alive() and v:GetPos():Distance(self:GetPos()) < 200) then
- v:ChatPrint("Perhaps you can make a " .. randomrecipie[0] .. " with " .. randomrecipie[1])
-
- for a,b in pairs(HasItems) do
- if (self.StoredItems[b[1]].Quantity == b[2]) then table.remove(self.StoredItems,b[1])
- else self.StoredItems[b[1]].Quantity = self.StoredItems[b[1]].Quantity-b[2] end
- end
- break
- end
+ local randomrecipie = PossibleRecipies[math.random(1,10)]
+ for k,v in pairs(player.GetAll()) do
+ if (v:Alive() and v:GetPos():Distance(self:GetPos()) < 200) then
+ v:ChatPrint("Perhaps you can make a " .. randomrecipie[0] .. " with " .. randomrecipie[1])
end
end
- self:NextThink(CurTime()+10)
+ self:NextThink(CurTime()+30)
return true
end
-function ENT:AddItem(item,quantity)
- for k,v in pairs(self.StoredItems) do
- if (v.Name == item) then
- v.Quantity = v.Quantity + quantity
- return
- end
- end
-
- table.insert(self.StoredItems,{Name = item, Quantity = quantity})
-end
-
-function ENT:TakeItem(pl,item,quantity)
- for k,v in pairs(self.StoredItems) do
- if (v.Name == item) then
- quantity = math.min(quantity,v.Quantity)
- v.Quantity = v.Quantity - quantity
-
- pl:AddItem(item,quantity)
-
- if (v.Quantity <= 0) then table.remove(self.StoredItems,k) end
- break
- end
- end
-end
-
-function ENT:GetItems()
- return self.StoredItems
-end
-
-function ENT:Use(pl)
- if (pl:IsPigeon()) then return end
- OpenLootventory(pl,self.StoredItems,self)
-end
-
function ENT:OnTakeDamage(dmg)
self:SetHealth(self:Health()-dmg)
|
