PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SWep: Tripmine SWEP



RP-01
29.08.2008, 06:08
Hi,ich habe die letzte Zeit an vielen Waffen gearbeitet und die erste die Fertig ist is eine "Tripmine" (Eine Waffe kein sent).
In dem Pack ist die "Tripmine"
(also mit dieser Waffe wirft man sie wie neh Granate)
und der "Miner"
(mit dem könnt ihr Primär in nem normalen Tempo "Tripmines" schießen, Sekundär Schnell Tripmines schießen, und auf "USE" ein bisschen zielene!

So jetz schluss mit dem Gelaber,hier is sie:
http://www.garrysmod.org/downloads/?a=view&id=50210

TheStargater
29.08.2008, 08:32
naja ob das so viel arbeit war. ist ja eigentlich nur die waffen von hl2 anderes model und bissel was verändert.
Doppelpost:
aber ich werde sie troztdem mal testen. ;)

WeltEnSTurm
29.08.2008, 11:12
naja ob das so viel arbeit war. ist ja eigentlich nur die waffen von hl2 anderes model und bissel was verändert.
Doppelpost:
aber ich werde sie troztdem mal testen. ;)

Machs doch besser :gmod:
Und zeig uns mal wie man Waffen aus den Source-Games in gmod importiert.

Mac
29.08.2008, 11:33
Also ich finde sie schon gut, den Horstgater brauchst nicht ernstnehmen, der kann gar nix ;).
Ich teste sie mal eben
So, da sind noch Fehler beim laser drin.

'SetRenderBoundsWS' (Vector expected, got number)
entities/item_tripmine_laser/cl_init.lua:35: attempt to index a number value

RP-01
29.08.2008, 13:05
bei mir geht alles
erscheint der laser nicht oder was?

hatte ich am anfang auch en paar probleme mit aber das konnte ich durch einen draw beam beheben

@ TheStargater:Die Waffe ist von meinem GMDM Gamemode,die hab ich dann so modifiziert das sie auch als normale waffe geht,und doch das war viel Arbeit weil die Waffe auf ner "gmdm_base" basierte ,das heißt das es eigentlich nur so neh Art sent war!

BennyG
29.08.2008, 15:14
Ehrlich gesagt,ich glaub dir kaum dass du die alleine gescripted hast.

Wenn ich mir den code so angucke,was genau ist da selbst geschrieben dran...
Ich erkenn da nichts was einen Anfänger im Code schreiben ähnelt.
Sieht mir nur nach kopieren und eventuelles ändern ein paar String's,um die Granate mit der Tripmine zu ersetzen.

(Wenn man das schon ließt... "function SWEP:FinishGrenadeThrow")


Es ist noch kein Meister vom Himmel gefallen,besonders wenn man sich deine alten Fragen ansieht :roll:(Beispiel : Hier (http://garrysmod.de/forum/showthread.php?t=16086) )


'n Copy & Paste kann jeder...

Warum sagst du eigentlich "dein Gamemode",der ist doch von Garry,und du hast vielleicht Texture Pfade und ähnliches geändert,die nicht funktionierten.

Sorry aber,sehr schlecht fail


(Ist das Forum Lua niveu schon so weit gesunken das sogennante 5 min SWeps(Im Facepunch sind die bannable) hier noch gefeiert werden....Also bitte.)

TheStargater
29.08.2008, 15:38
gute aussage.

TheModMaster
29.08.2008, 16:12
gute aussage.

Halt, se!
Edit by €r!k: Was?

Bei mir gibts auch die gleichen Probleme wie bei Mac.

RP-01
29.08.2008, 17:44
also das is kein copy and paste,das is eine funktionierende Version von der tripmine vom GMDM Gamemode das "Grenade" hat dort so gestanden!
und das problem mit dem Tripmine Laser ist bei mir nicht aufgetaucht!

macht diese Fehlermeldung überhaupt was aus?

@ BennyG Ok das war ein blöder Thread aber das hab ich gefragt weil ich nichts darüber gefunden habe!(auf garrysmod.com)

Aero
29.08.2008, 18:32
Auf jeden fall ist er so schlau und hat seinen namen bei "author" angegeben :lol:

Pac_187
29.08.2008, 20:16
Haste ja gut aus dem GM:DM Gamemode geklaut!




AddCSLuaFile( "cl_init.lua" )
AddCSLuaFile( "shared.lua" )

include('shared.lua')

local sndStick = Sound( "physics/metal/sawblade_stick3.wav" )

/*---------------------------------------------------------
Name: Initialize
---------------------------------------------------------*/
function ENT:Initialize()

self.Entity:DrawShadow( false )
self.Entity:SetModel( "models/props_c17/pottery08a.mdl" )
self.Entity:PhysicsInit( SOLID_VPHYSICS )

self.Entity:SetCollisionGroup( COLLISION_GROUP_WEAPON )
self.Entity:SetTrigger( true )

end

function ENT:Think()

if ( self.Placed ) then

// Todo: Make it solid so the player can walk on it
// Requires fixing player getting stuck in it when placing.
//self.Entity:SetCollisionGroup( COLLISION_GROUP_NONE )
self.Placed = nil
end

if ( self.ExplodeTimer && self.ExplodeTimer < CurTime() ) then
self:Explode()
end

end

function ENT:OnTakeDamage( dmginfo )

if ( self.ExplodeTimer ) then return end

self.ExplodeTimer = CurTime() + 0.1

end


/*---------------------------------------------------------
Name: PhysicsCollide
Desc: Called when physics collides. The table contains
data on the collision
---------------------------------------------------------*/
function ENT:PhysicsCollide( data, physobj )

if ( !data.HitEntity:IsWorld() ) then return end

// TODO! DON'T STICK TO SKY!

physobj:EnableMotion( false )
physobj:Sleep()

self:StartTripmineMode( nil, data.HitNormal:GetNormal() * -1 )

end


function ENT:StartTripmineMode( hitpos, forward )

self.Placed = true

if (hitpos) then self.Entity:SetPos( hitpos ) end
self.Entity:SetAngles( forward:Angle() + Angle( 90, 0, 0 ) )

local trace = {}
trace.start = self.Entity:GetPos()
trace.endpos = self.Entity:GetPos() + (forward * 4096)
trace.mask = MASK_NPCWORLDSTATIC

local tr = util.TraceLine( trace )

local ent = ents.Create( "item_tripmine_laser" )

// Offset the position of the laser slightly so it looks like it's coming out of the spout
// This is a crude estimation. If you're using your own model you should use an attachment

ent:SetPos( self.Entity:LocalToWorld( Vector( 0, -6, 1) ) )
ent:Spawn()
ent:Activate()
ent:GetTable():SetEndPos( tr.HitPos )
ent:GetTable():SetActiveTime( CurTime() + 2 )
ent:SetParent( self.Entity )
ent:SetOwner( self.Entity )

self.Laser = ent

self.Entity:EmitSound( sndStick )

local effectdata = EffectData()
effectdata:SetOrigin( self.Entity:GetPos() )
effectdata:SetNormal( forward )
effectdata:SetMagnitude( 3 )
effectdata:SetScale( 1 )
effectdata:SetRadius( 4 )
util.Effect( "Sparks", effectdata )

end

function ENT:Explode()

if ( self.Exploded ) then return end

self.Exploded = true

local Forward = self.Entity:GetAngles():Forward()

// I don't like spawning an entity to make an explosion. It feels stupid.
local ent = ents.Create( "env_explosion" )
if ( ent && ent != NULL ) then

ent:SetPos( self.Entity:GetPos() + Forward * 16 )
ent:Spawn()
ent:Activate()
ent:SetOwner( self.Thrower )
ent:SetKeyValue( "iMagnitude", "150" )
ent:Fire( "Explode", 0, 0 )

end

// Just for good measure
local effectdata = EffectData()
effectdata:SetOrigin( self.Entity:GetPos() + Forward * 16 )
util.Effect( "Super_Explosion", effectdata, true, true )

self.Entity:Remove()

end


/*---------------------------------------------------------
Name: UpdateTransmitState
Desc: Set the transmit state
---------------------------------------------------------*/
function ENT:UpdateTransmitState()
return TRANSMIT_ALWAYS
end







AddCSLuaFile( "cl_init.lua" )
AddCSLuaFile( "shared.lua" )

include('shared.lua')

local sndStick = Sound( "physics/metal/sawblade_stick3.wav" )

/*---------------------------------------------------------
Name: Initialize
---------------------------------------------------------*/
function ENT:Initialize()

self.Entity:DrawShadow( false )
self.Entity:SetModel( "models/props_interiors/pot01a.mdl" )
self.Entity:PhysicsInit( SOLID_VPHYSICS )

self.Entity:SetCollisionGroup( COLLISION_GROUP_WEAPON )
self.Entity:SetTrigger( true )

end

function ENT:Think()

if ( self.Placed ) then

// Todo: Make it solid so the player can walk on it
// Requires fixing player getting stuck in it when placing.
//self.Entity:SetCollisionGroup( COLLISION_GROUP_NONE )
self.Placed = nil
end

if ( self.ExplodeTimer && self.ExplodeTimer < CurTime() ) then
self:Explode()
end

end

function ENT:OnTakeDamage( dmginfo )

if ( self.ExplodeTimer ) then return end

self.ExplodeTimer = CurTime() + 0.1

end


/*---------------------------------------------------------
Name: PhysicsCollide
Desc: Called when physics collides. The table contains
data on the collision
---------------------------------------------------------*/
function ENT:PhysicsCollide( data, physobj )

if ( !data.HitEntity:IsWorld() ) then return end

// TODO! DON'T STICK TO SKY!

physobj:EnableMotion( false )
physobj:Sleep()

self:StartTripmineMode( nil, data.HitNormal:GetNormal() * -1 )

end


function ENT:StartTripmineMode( hitpos, forward )

self.Placed = true

if (hitpos) then self.Entity:SetPos( hitpos ) end
self.Entity:SetAngles( forward:Angle() + Angle( 90, 0, 0 ) )

local trace = {}
trace.start = self.Entity:GetPos()
trace.endpos = self.Entity:GetPos() + (forward * 4096)
trace.mask = MASK_NPCWORLDSTATIC

local tr = util.TraceLine( trace )

local ent = ents.Create( "item_tripmine_laser" )

// Offset the position of the laser slightly so it looks like it's coming out of the spout
// This is a crude estimation. If you're using your own model you should use an attachment

ent:SetPos( self.Entity:LocalToWorld( Vector( 0, -6, 1) ) )
ent:Spawn()
ent:Activate()
ent:GetTable():SetEndPos( tr.HitPos )
ent:GetTable():SetActiveTime( CurTime() + 2 )
ent:SetParent( self.Entity )
ent:SetOwner( self.Entity )

self.Laser = ent

self.Entity:EmitSound( sndStick )

local effectdata = EffectData()
effectdata:SetOrigin( self.Entity:GetPos() )
effectdata:SetNormal( forward )
effectdata:SetMagnitude( 3 )
effectdata:SetScale( 1 )
effectdata:SetRadius( 4 )
util.Effect( "Sparks", effectdata )

end

function ENT:Explode()

if ( self.Exploded ) then return end

self.Exploded = true

local Forward = self.Entity:GetAngles():Forward()

// I don't like spawning an entity to make an explosion. It feels stupid.
local ent = ents.Create( "env_explosion" )
if ( ent && ent != NULL ) then

ent:SetPos( self.Entity:GetPos() + Forward * 16 )
ent:Spawn()
ent:Activate()
ent:SetOwner( self.Thrower )
ent:SetKeyValue( "iMagnitude", "150" )
ent:Fire( "Explode", 0, 0 )

end

// Just for good measure
local effectdata = EffectData()
effectdata:SetOrigin( self.Entity:GetPos() + Forward * 16 )
util.Effect( "Super_Explosion", effectdata, true, true )

self.Entity:Remove()

end


/*---------------------------------------------------------
Name: UpdateTransmitState
Desc: Set the transmit state
---------------------------------------------------------*/
function ENT:UpdateTransmitState()
return TRANSMIT_ALWAYS
end





Und es ist auch nicht dein Gamemode!

Ich zitiere mal von Garry:


It is released as a learning aid only.


Source: http://garrysmod.org/downloads/?a=view&id=39743

RP-01
30.08.2008, 12:28
@ Aero: Sag mir mal bitte was du alles schon gemacht hast!
Außerdem:Wieso ist das so schlecht? sonst ist noch keiner drauf gekommen!

So ich weiß jetz was das problem mit dem laser ist,das gmdm_pickup light hat gefehlt!
Heut Abend

Das Garry diesen Gamemode rausbrachte wusste ich nicht,den den ich Geuploaded hab war bei meinem g-mod dabei

Pac_187
30.08.2008, 12:32
Die SWEP die du gebastelt hast gab es schon im GM:DM Gamemode!


Und btw.:

http://garrysmod.org/downloads/?a=view&id=26530

http://garrysmod.org/downloads/?a=view&id=21248

RP-01
30.08.2008, 12:42
zum 1. Link:das ist ein STool keine Waffe(fubktioniert zwar ungefähr wie die tripmine aber halt ein Stool)

zum 2. Link: bennyg's tripmine ist ein SENT und um da ein minenfeld anzulegen muss man sehr oft klicken und muss sich ohne freies Sichtfeld bewegen

außerdem ist die SWEP ist wirklich kein copy and past
Doppelpost:
Ich hab neh wirklich gute Idee:

Wir beenden diesen Thread (oder auch diese Diskusion)
und ich beweise mein Können bei meiner nachsten Waffe!

Ich sag nur schonmal soviel:
Es wird eine Bombe!

Die Swep gab es aber nicht als normale Waffe

WeltEnSTurm
30.08.2008, 12:56
Die Swep gab es aber nicht als normale Waffe

The same idiot

Pac_187
30.08.2008, 13:00
Ich sag nur schonmal soviel:
Es wird eine Bombe!


Du weist schon das es Bomben im Überfluss in Garry's Mod gibt?

Denk dir mal was neues aus, etwas was noch keiner gemacht hat!

BennyG
30.08.2008, 13:02
Ich sag nur schonmal soviel:
Es wird eine Bombe!


Lass mich raten,du nimmst den explosions code der Granate und packs dir bei der Tripmine rein :roll:

RP-01
30.08.2008, 22:17
Falsch,solch eine Bombe gibts meines wissens nach auf garrysmod.org nicht!(außer save's und sent's)

Diese Bombe (nein BennyG keine Tripmine-Granate) kann man Fernzünden und auf eine Zeit Programieren (d.h. 10, 20, 60, 120 Sekunden)

Und sie ist schon fast fertig,bin nurnoch am effekte machen und suchen!
(also die SWEP an sich funktioniert schon)

OK,es gibt dieses "Nucler Detonation Pack" aber bis auf das "sent_nuclear_duration" entitie find ich die schlecht!

Aber ich werde mir mal was neues überlegen!

Pac_187
31.08.2008, 10:31
Gibt es schon sehr lange:

http://garrysmod.org/downloads/?a=view&id=19152

RP-01
31.08.2008, 12:26
Hab ich gesternabend auch noch iergendwann entdeckt,aber ich hab mir die von ja_cop angeguckt und getestet,und ich finde sie mittelmäßig

und außerdem hat er sie von ner amerikanischen seite kopiert
(sie war dort als Beispiel)
dann noch ein Paar funktionen umbenannt wie das aussieht,und fertig

Aero
31.08.2008, 12:45
Hab ich gesternabend auch noch iergendwann entdeckt,aber ich hab mir die von ja_cop angeguckt und getestet,und ich finde sie mittelmäßig

und außerdem hat er sie von ner amerikanischen seite kopiert
(sie war dort als Beispiel)
dann noch ein Paar funktionen umbenannt wie das aussieht,und fertig

Wenn du sie mittelmäßig findest, mach's doch besser...:roll:

RP-01
31.08.2008, 13:48
bin ich ja dran!

BennyG
31.08.2008, 13:49
und außerdem hat er sie von ner amerikanischen seite kopiert
(sie war dort als Beispiel)
dann noch ein Paar funktionen umbenannt wie das aussieht,und fertig

Was redest du da fürn Stuss?
Ja_cop ist einer der besten Lua Scripter des FP(Z.B Gmod Stranded ist z.B von ihm)

Du willst mir doch nicht ernsthaft erzählen,dass etwas in Gmod-Spezifischen Lua auf irgendeiner Seite gepostet wird,was vorher noch nicht gemacht wurde....Also bitte.
Brauchst erst gar nicht versuchen dich rauszureden indem ja "alle nur Copy & Pasten".

RP-01
31.08.2008, 14:10
Auf dieser Seite (hab sie leider nicht gespeichert)
wurde dieser Code anfang 06 gepostet.
Ich weiß nicht wann der erste Releasetag der C4 Swep war aber garantiert nicht anfang 06

Ist ja aber auch egal wie es war,am besten beenden wir diesen Thread jetz!

Pac_187
31.08.2008, 19:47
Die Bombe wurde kurz nach dem Release von GMod herausgebracht...

Leider kann man nicht mehr auf das Archiv von FP zugreifen
sonst hätte ich den Thread hier reingestellt!

>Closed!