Entity Spawnen aber wie? :D
Hallo,
Ich möchte mit Derma ein kleines Menü erstellen und dort soll man Tische und Stühle spawnen können!
Da hätten wir eine Furniture_Spawn.lua
Code:
local DermaPanel = vgui.Create( "DFrame" )
DermaPanel:SetPos( 50,150 )
DermaPanel:SetSize( 700, 500 )
DermaPanel:SetTitle( "Spawn Furnitures" )
DermaPanel:SetVisible( true )
DermaPanel:SetDraggable( true )
DermaPanel:ShowCloseButton( true )
DermaPanel:MakePopup()
local DermaButton = vgui.Create( "DButton" )
DermaButton:SetParent( DermaPanel )
DermaButton:SetText( "Table" )
DermaButton:SetPos( 25, 50 )
DermaButton:SetSize( 150, 50 )
DermaButton.DoClick = function ()
SpawnTable()
end
und die cl_init.lua
Code:
include ("cl_hud.lua")
include ("Furniture_spawn.lua")
function SpawnTable()
local table = ents.Create("prop_physics")
table:SetModel("models/props_c17/FurnitureTable002a.mdl")
table:SetPos(tr.HitPos)
table:Spawn()
end
InGame geht direkt das Menü auf (ändere ich noch) und es kommt ein Panel mit einem Button namens "Table", bis dorthin keine errors!
Wenn ich auf den Button klicke spawnt bei den cooridnaten ~(0 0 64) ein Tisch durch den man durchlaufen kann und nicht zerstören.
Folgendes steht in der Console:
Zitat:
Zitat von Console
SantoRP/gamemode/cl_init.lua:8: attempt to index global 'tr' (a nil value)
Was habe ich übersehn, bzw. vergessen oder geht es auch leichter?
Thanks schonmal...
mfG Santo
AW: Entity Spawnen aber wie? :D
Zitat:
Zitat von
Santo
Code:
table:SetPos(tr.HitPos)
Er weiß nicht was "tr" ist.
Ich kenn mich leider nicht besonders mit Lua aus, aber du musst tr schon Definieren.
AW: Entity Spawnen aber wie? :D
AW: Entity Spawnen aber wie? :D
Code:
include ("cl_hud.lua")
include ("Furniture_spawn.lua")
local tr = self.Owner:GetEyeTrace()
function SpawnTable()
local table = ents.Create("prop_physics")
table:SetModel("models/props_c17/FurnitureTable002a.mdl")
table:SetPos(tr.HitPos)
table:Spawn()
end
Füg mal die Zeile ein.
AW: Entity Spawnen aber wie? :D
Das ist der Spawncode eines normalen Entity.
AW: Entity Spawnen aber wie? :D
Aber nur wenn du ein SENT erstellst!
-----
Desweiteren solltest du das Prop auf der Server Seite erstellen.
Mach einfach folgendes bei der DoClick Funktion:
Das sollte funktionieren.
AW: Entity Spawnen aber wie? :D
Also muss ich das derma in cl_init und die function in init stecken oder wie? :gmod:
AW: Entity Spawnen aber wie? :D
Wahrscheinlich.
cl_init ist darstellung/grafik, init das script
AW: Entity Spawnen aber wie? :D
Zitat:
Zitat von
WeltEnSTurm
Wahrscheinlich.
cl_init ist darstellung/grafik, init das script
Das stimmt nur bedingt.
In der cl_init.lua sind die Sachen für den Client (Derma, HUD usw) und in der init.lua sind Sachen für den Server (Entities Spawnen usw)
AW: Entity Spawnen aber wie? :D
Zitat:
Zitat von Console
SantoRP\gamemode\init.lua:1: attempt to index global 'self' (a nil value)