aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gamemode/itemsystem/items/fence.lua9
-rw-r--r--gamemode/itemsystem/items/fencehalf.lua66
2 files changed, 69 insertions, 6 deletions
diff --git a/gamemode/itemsystem/items/fence.lua b/gamemode/itemsystem/items/fence.lua
index 1749713..2f2c5bf 100644
--- a/gamemode/itemsystem/items/fence.lua
+++ b/gamemode/itemsystem/items/fence.lua
@@ -8,10 +8,7 @@ ITEM.Recipe = {
Resources = {
["Plank"] = 2,
["Sap"] = 1,
- },
- Tools = {
- ["Crystal"] = 1,
- },
+ }
}
ITEM.Structure = {
@@ -26,7 +23,7 @@ ITEM.Structure = {
ITEM.Ghost = {
{
- Model = "models/props_wasteland/wood_fence02a.mdl",
+ Model = "models/props_wasteland/wood_fence01a.mdl",
Size = Vector(1,1,1),
Pos = Vector(0,0,0),
Ang = Angle(0,0,0),
@@ -43,7 +40,7 @@ function ITEM:OnPrimary(pl,tr)
if (tr.Hit) then
local drop = ents.Create("ws_prop")
- drop:SetModel("models/props_wasteland/wood_fence02a.mdl")
+ drop:SetModel("models/props_wasteland/wood_fence01a.mdl")
local Aim = Angle(0,pl:GetAimVector():Angle().y+90,0)
local Pos = tr.HitPos
if(pl:KeyDown(IN_SPEED)) then
diff --git a/gamemode/itemsystem/items/fencehalf.lua b/gamemode/itemsystem/items/fencehalf.lua
new file mode 100644
index 0000000..f121292
--- /dev/null
+++ b/gamemode/itemsystem/items/fencehalf.lua
@@ -0,0 +1,66 @@
+
+ITEM.Name = "Half Fence"
+ITEM.Class = "structure"
+ITEM.Desc = "Some basic wood structure for setting up camps.\nHold down shift to snap"
+ITEM.Model = "models/props_debris/wood_board07a.mdl"
+ITEM.Icon = Material("wintersurvival2/hud/ws1_icons/icon_fence")
+ITEM.Recipe = {
+ Resources = {
+ ["Fence"] = 1,
+ },
+ Tools = {
+ ["Axe"] = 1,
+ },
+}
+
+ITEM.Structure = {
+ {
+ Bone = "ValveBiped.Bip01_R_Hand",
+ Model = "models/props_junk/Rock001a.mdl",
+ Size = Vector(0.5,0.5,0.5),
+ Pos = Vector(4,-3,-1),
+ Ang = Angle(0,0,0),
+ },
+}
+
+ITEM.Ghost = {
+ {
+ Model = "models/props_wasteland/wood_fence02a.mdl",
+ Size = Vector(1,1,1),
+ Pos = Vector(0,0,0),
+ Ang = Angle(0,0,0),
+ },
+}
+
+ITEM.Range = 200
+ITEM.CD = 0.5
+
+function ITEM:OnPrimary(pl,tr)
+ if (CLIENT) then return end
+
+ if (!pl:CanPlaceStructure(tr)) then pl:GhostStructure(self.Name) return end
+
+ if (tr.Hit) then
+ local drop = ents.Create("ws_prop")
+ drop:SetModel("models/props_wasteland/wood_fence02a.mdl")
+ local Aim = Angle(0,pl:GetAimVector():Angle().y+90,0)
+ local Pos = tr.HitPos
+ if(pl:KeyDown(IN_SPEED)) then
+ Pos.x = Pos.x - (Pos.x%20)
+ Pos.y = Pos.y - (Pos.y%20)
+ Pos.z = Pos.z - (Pos.z%20)
+ Aim.yaw = Aim.yaw - (Aim.yaw%15)
+ end
+ drop:SetAngles(Aim)
+ drop:SetPos(Pos)
+ drop:Spawn()
+ drop:Activate()
+
+ if (pl:HasItem(self.Name)) then pl:RemoveItem(self.Name,1)
+ else pl:UnEquipWeaponSlot(pl.Select,true) end
+
+ pl:GhostRemove()
+ else
+ pl:EmitSound(Sound("weapons/iceaxe/iceaxe_swing1.wav"),100,math.random(90,110))
+ end
+end