Ergebnis 1 bis 7 von 7

Thema: DosenWelder und so

  1. #1

    Standard DosenWelder und so

    Aloha.
    Ich hab ne kleine DosenSpawner Swep geschrieben,Die mit Linksklick ne Dose and nem Prop Weldet. Mit rechtsklick spawnt die einfach so.
    Aber das ist ja nebensache.
    Als erstes hab ich versucht es mit ner Toolgun zu machen das ich aber nicht Schaffte.
    So. Was ich nun machen will ist Kompliziert, dass weiss ich gut
    Ich möchte das automatisch nen Trail auf die Dosen gemacht wird.
    Klappt auch relativ gut.
    Mit ner "if" sollte dann überprüft werden ob die Concommand "Can_Trail" 1 ist.
    Wenn dann soll halt nen Trail miterstellt werden.
    Nur wenn ich als Standart 0 hab und ich in die console ne 1 mache, ändert es sich nicht. Wenn ich aber 1 als Standart hab, schon.
    Wie Schaffe ich das?
    Ich hab es mit
    Lua Code:
    1. function GetClientInfo( property )
    2. local mode = self:GetMode() 
    3. return self:GetOwner():GetInfo("Can_Trail")
    4. end
    Versucht. Ein Codesnippet aus gmod.com
    aber das gibt nur Lua Fehler.

    Hier mal meine Epische shared.lua
    Spoiler:
    Spoiler anzeigen


    Bitte Helft mir
    olololoolo

  2. #2

    Standard AW: DosenWelder und so

    Lua Code:
    1. SWEP.Author     = "Flo / Peacemaker"
    2. SWEP.Contact        = "Garrysmod.de - User peacemaker"
    3. SWEP.Instructions   = "Rightclick to Spawn a Can / Leftclick To Spawn and Wekd a Can to a Prop"
    4. SWEP.Spawnable      = "True"
    5. SWEP.AdminSpawnable     = "True"
    6.  
    7. local Can_Trail = CreateClientConVar("Can_Trail",1,false,true) 
    8.  
    9. SWEP.ViewModel      = "models/weapons/v_pistol.mdl"
    10. SWEP.WorldModel     = "models/weapons/w_pistol.mdl"
    11.  
    12. SWEP.Primary.Clipsize   = "-1"
    13. SWEP.Primary.DefaultClip= "-1"
    14. SWEP.Primary.Automatic  = false
    15. SWEP.Primary.Ammo   = "none"
    16.  
    17. SWEP.Secondary.Clipsize     = "-1"
    18. SWEP.Secondary.DefaultClip= "-1"
    19. SWEP.Secondary.Automatic    = false
    20. SWEP.Secondary.Ammo = "none"
    21.  
    22. function SWEP:PrimaryAttack(tr)    
    23.     local tr = self.Owner:GetEyeTrace()    
    24. 	if (!SERVER) then return end
    25. 	local ent = ents.Create ("prop_physics")
    26. 	ent:SetModel ("models/props_junk/PopCan01a.mdl")
    27. 	ent:SetPos( tr.HitPos + self.Owner:GetAimVector() * -3 )
    28. 	ent:SetAngles( tr.HitNormal:Angle() )
    29. 	ent:Spawn()
    30. 	local weld = constraint.Weld( tr.Entity, ent, tr.PhysicsBone, 0, 0 ) 
    31. 	undo.Create( "OMFG CAN!" )
    32. 	undo.AddEntity( weld )
    33. 	undo.AddEntity( ent )
    34. 	undo.SetPlayer( self.Owner )
    35. 	undo.Finish() 
    36. 	if (Can_Trail:GetInt() == 1) then
    37. 		local trail = util.SpriteTrail(ent, 0, Color(255,0,0), false, 15, 1, 4, 1/(15+1)*0.5, "trails/plasma.vmt") 
    38. 	else
    39. 		return false
    40. 	end
    41. end
    42.  
    43. function SWEP:SecondaryAttack()    
    44.     local tr = self.Owner:GetEyeTrace()    
    45. 	if (!SERVER) then return end
    46. 	local ent = ents.Create ("prop_physics")
    47. 	ent:SetModel ("models/props_junk/PopCan01a.mdl")
    48. 	ent:SetPos( tr.HitPos + self.Owner:GetAimVector() * -3 )
    49. 	ent:SetAngles( tr.HitNormal:Angle() )
    50. 	ent:Spawn() 
    51. 	undo.Create( "OMFG CAN!" )
    52. 	undo.AddEntity( ent )
    53. 	undo.SetPlayer( self.Owner )
    54. 	undo.Finish() 
    55. end
    56.  
    57. function SWEP:Think()
    58. end
    59.  
    60. function SWEP:Reload()
    61. end

    Dummerchen. Während das script geladen wird macht er ne neue convar, das ist schonmal gut. Aber gleich in der nächsten Zeile rufst du den Wert ab, und speicherst den in einer Variable die du später verwendest, das heißt sie ist immer gleich.

    awesome thing is made by Araxiel-Sama

  3. #3

    Standard AW: DosenWelder und so

    Zitat Zitat von WeltEnSTurm Beitrag anzeigen
    Dummerchen.


    Zitat Zitat von WeltEnSTurm Beitrag anzeigen
    Während das script geladen wird macht er ne neue convar, das ist schonmal gut. Aber gleich in der nächsten Zeile rufst du den Wert ab, und speicherst den in einer Variable die du später verwendest, das heißt sie ist immer gleich.
    Danke! Es geht
    Achja. Gibt es eine Methode ohne der Toolgun sowas wie ein Colorpicker zu bauen und in einer Convar zu speichern?
    olololoolo

  4. #4

    Standard AW: DosenWelder und so

    Bedenke, dass das mit Colour erst was wird, wenn du dem Prop o.Ä. vorher mit dem Colour Tool 'ne Farbe verpasst, ansonsten hat nichts eine Farbe.
    orly?
    ­­­­­

  5. #5

    Standard AW: DosenWelder und so

    Zitat Zitat von Pij Beitrag anzeigen
    Bedenke, dass das mit Colour erst was wird, wenn du dem Prop o.Ä. vorher mit dem Colour Tool 'ne Farbe verpasst, ansonsten hat nichts eine Farbe.
    Also.. Ich mein eigentlich. Die Trailfarbe verändern. Deswegen iwie ein Colorpicker vllt Derma oder so? der dann Iwie Hex Dezimalien dann inner convar speichert?
    olololoolo

  6. #6

    Standard AW: DosenWelder und so

    Meh.
    Ich hab zwar keinen Plan was du mit nen Derma Panel willst ohne Toolgun, da man schließlich ja den Mauszeiger braucht um das Color Panel zu benutzen, aber diesen Code benutze ich um ein Color Panel zu erstellen.

    Lua Code:
    1. 	local ColorVGui = vgui.Create("CtrlColor") 
    2. 	ColorVGui:SetPos(260,70)
    3. 	ColorVGui:SetWide(180)
    4.  	ColorVGui:SetConVarR( "color_can_trail_r")  // Die dazugehörigen Client Convars natürlich am Anfang des Scriptes definieren
    5.  	ColorVGui:SetConVarG( "color_can_trail_g" ) 
    6.  	ColorVGui:SetConVarB( "color_can_trail_b" ) 
    7.  	ColorVGui:SetConVarA( "color_can_trail_a" )

  7. #7

    Standard AW: DosenWelder und so

    Ola'
    Mein Problem ist ja, dass ich es ja eigentlich mit ner Toolgun haben will.
    Nur ich schaff es einfach nicht.
    Danke erstmal für den Code
    Ich Poste einfach ganz Dreißt mal meine "Wannabe Toolgun"
    Lua Code:
    1. TOOL.Category		= "Construction"
    2. TOOL.Name			= "#Can Spawner"
    3. TOOL.Command		= nil
    4. TOOL.ConfigName		= ""
    5.  
    6.  
    7. if CLIENT then
    8. 	language.Add( "Tool_can_name", "Teh C4n Spwnr" )
    9. 	language.Add( "Tool_can_desc", "Made by Peacemaker" )
    10. 	language.Add( "Tool_can_0", "Leftclick-Spawn and Weld a Can to a Prop./.Rightclick Just Spawn a fkn' Can" )
    11. 	language.Add( "Undone_can", "Undone Can" )
    12. end
    13.  
    14. function TOOL:LeftClick(tr)
    15. if (!tr.Entity) then return false end
    16. if (!tr.Entity:IsValid() ) then return false end
    17. if (tr.Entity:IsPlayer()) then return false end
    18. if (tr.Entity:IsWorld()) then return false end 
    19.  
    20. if ( CLIENT ) then return true end 
    21. ent = ents.Create("prop_physics")
    22. ent.Entity:SetModel("models/props_junk/PopCan01a.mdl")  
    23. ent:SetPos( ent.HitPos + self.Owner:GetAimVector() * -3 )
    24. ent:SetAngles( ent.HitNormal:Angle() )
    25. ent.Entity:Spawn()
    26. return true
    27. end
    Geändert von peacemaker (10.07.2009 um 22:23 Uhr) Grund: Doppelposts zusammengefügt| No U
    olololoolo

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •