From bb53af1930307c589f258be8e582d6765926fe78 Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Thu, 2 Jun 2016 18:35:02 -0400 Subject: Fixed bug with structures not showing up correctly client side --- gamemode/structuresystem/loadstructures.lua | 16 +++++++++------- .../structuresystem/structures/aaaStructureExample.lua | 5 ++++- 2 files changed, 13 insertions(+), 8 deletions(-) (limited to 'gamemode') diff --git a/gamemode/structuresystem/loadstructures.lua b/gamemode/structuresystem/loadstructures.lua index 858d976..820f055 100644 --- a/gamemode/structuresystem/loadstructures.lua +++ b/gamemode/structuresystem/loadstructures.lua @@ -8,27 +8,29 @@ function registerStructure(tbl) GMS.Structures[tbl.Name] = tbl end -concommand.Add("gms_spawnstructure",function(ply,cmd,args) - if !ply:IsDeveloper() then return end - assert(args[1] != "","Failed to find structure name") - assert(GMS.Structures[args[1]] != nil, "Structure \"" .. args[1] .. "\" does not exist!") +function SpawnStructure(structname, ply) + assert(structname != "","Failed to find structure name") + assert(GMS.Structures[structname] != nil, "Structure \"" .. structname .. "\" does not exist!") local tr = ply:GetEyeTrace() local e = ents.Create("gms_generic_structure") - local tbl = GMS.Structures[args[1]] + local tbl = GMS.Structures[structname] if tbl.uniquedata then tbl = table.Copy(tbl) GMS.UniqueStructures[e:EntIndex()] = tbl end for k,v in pairs(tbl) do - print("Setting " .. k .. " to") - print(v) e[k] = v end e:Spawn() e:SetPos(tr.HitPos) SPropProtection.PlayerMakePropOwner( ply, e ) --e:SetNWString("Owner",ply:Nick()) +end + +concommand.Add("gms_spawnstructure",function(ply,cmd,args) + if !ply:IsDeveloper() then return end + SpawnStructure(args[1],ply) end) diff --git a/gamemode/structuresystem/structures/aaaStructureExample.lua b/gamemode/structuresystem/structures/aaaStructureExample.lua index abe91ba..060eba8 100644 --- a/gamemode/structuresystem/structures/aaaStructureExample.lua +++ b/gamemode/structuresystem/structures/aaaStructureExample.lua @@ -6,7 +6,7 @@ STRUCT = {} STRUCT.Name = "Example Structure" --The model for this structure. -STRUCT.Model = "models/props/de_inferno/ClayOven.mdl" +STRUCT.Model = "models/props_combine/breendesk.mdl" --The initalize method. Called on both the server and the client STRUCT.onInitialize = function(self) @@ -20,3 +20,6 @@ STRUCT.uniquedata = false STRUCT.onUse = function(self,ply) print("onUse called!") end + +--Don't forget to register the structure when you're done! +registerStructure(STRUCT) -- cgit v1.2.3-70-g09d2