X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fg_lights.qc;h=852f1efc01d70cda4a73a3d903a67c20a67e1601;hb=05d2779856eda44ed6c8779ab55380fa006cfcb4;hp=796af16b13e5efe2a1a0307d32a0dc34d1cf3102;hpb=490a31934aa67cc7de5299a4d3f625d5271f8583;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/g_lights.qc b/qcsrc/server/g_lights.qc index 796af16b1..852f1efc0 100644 --- a/qcsrc/server/g_lights.qc +++ b/qcsrc/server/g_lights.qc @@ -1,5 +1,8 @@ #include "g_lights.qh" +#include +#include + void train_next(entity this); const float LOOP = 1; @@ -36,50 +39,50 @@ flags: */ void dynlight_think(entity this) { - if(!self.owner) - remove(self); + if(!this.owner) + delete(this); - self.nextthink = time + 0.1; + this.nextthink = time + 0.1; } void dynlight_find_aiment(entity this) { entity targ; - if (!self.target) - objerror ("dynlight: no target to follow"); + if (!this.target) + objerror (this, "dynlight: no target to follow"); - targ = find(world, targetname, self.target); - self.movetype = MOVETYPE_FOLLOW; - self.aiment = targ; - self.owner = targ; - self.punchangle = targ.angles; - self.view_ofs = self.origin - targ.origin; - self.v_angle = self.angles - targ.angles; - setthink(self, dynlight_think); - self.nextthink = time + 0.1; + targ = find(NULL, targetname, this.target); + set_movetype(this, MOVETYPE_FOLLOW); + this.aiment = targ; + this.owner = targ; + this.punchangle = targ.angles; + this.view_ofs = this.origin - targ.origin; + this.v_angle = this.angles - targ.angles; + setthink(this, dynlight_think); + this.nextthink = time + 0.1; } void dynlight_find_path(entity this) { entity targ; - if (!self.target) - objerror ("dynlight: no target to follow"); + if (!this.target) + objerror (this, "dynlight: no target to follow"); - targ = find(world, targetname, self.target); - self.target = targ.target; - setorigin (self, targ.origin); - setthink(self, train_next); - self.nextthink = time + 0.1; + targ = find(NULL, targetname, this.target); + this.target = targ.target; + setorigin(this, targ.origin); + setthink(this, train_next); + this.nextthink = time + 0.1; } void dynlight_find_target(entity this) { entity targ; - if (!self.target) - objerror ("dynlight: no target to follow"); + if (!this.target) + objerror (this, "dynlight: no target to follow"); - targ = find(world, targetname, self.target); - setattachment(self, targ, self.dtagname); - self.owner = targ; - setthink(self, dynlight_think); - self.nextthink = time + 0.1; + targ = find(NULL, targetname, this.target); + setattachment(this, targ, this.dtagname); + this.owner = targ; + setthink(this, dynlight_think); + this.nextthink = time + 0.1; } void dynlight_use(entity this, entity actor, entity trigger) { @@ -97,7 +100,7 @@ spawnfunc(dynlight) this.lefty = this.light_lev; this.use = dynlight_use; setsize (this, '0 0 0', '0 0 0'); - setorigin (this, this.origin); + setorigin(this, this.origin); //this.pflags = PFLAGS_FULLDYNAMIC; this.solid = SOLID_NOT; //this.blocked = func_null; @@ -123,7 +126,7 @@ spawnfunc(dynlight) if (this.target) // if (!(this.spawnflags & DFOLLOW)) { - this.movetype = MOVETYPE_NOCLIP; + set_movetype(this, MOVETYPE_NOCLIP); if (!this.speed) this.speed = 100; InitializeEntity(this, dynlight_find_path, INITPRIO_FINDTARGET);