From 507302fa24114d982baf88a871316c1e9cf878db Mon Sep 17 00:00:00 2001 From: div0 Date: Fri, 29 Aug 2008 06:07:32 +0000 Subject: [PATCH] add field .nottargeted to override targetname checks (for misc_follow on anything) git-svn-id: svn://svn.icculus.org/nexuiz/trunk@4226 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/defs.qh | 2 - data/qcsrc/server/domination.qc | 4 +- data/qcsrc/server/g_triggers.qc | 6 +- data/qcsrc/server/keyhunt.qc | 1 - data/qcsrc/server/miscfunctions.qc | 3 + data/qcsrc/server/runematch.qc | 1 - data/qcsrc/server/t_plats.qc | 115 +++-------------------------- data/qcsrc/server/t_quake.qc | 1 + data/qcsrc/server/t_teleporters.qc | 5 +- data/qcsrc/server/teamplay.qc | 3 +- 10 files changed, 23 insertions(+), 118 deletions(-) diff --git a/data/qcsrc/server/defs.qh b/data/qcsrc/server/defs.qh index 26b737d6e..3ab39b94a 100644 --- a/data/qcsrc/server/defs.qh +++ b/data/qcsrc/server/defs.qh @@ -338,8 +338,6 @@ float playerid_last; float default_player_alpha; float default_weapon_alpha; -.float has_zoomed; - .float() customizeentityforclient; .float cvar_cl_handicap; .float cvar_cl_zoomfactor; diff --git a/data/qcsrc/server/domination.qc b/data/qcsrc/server/domination.qc index 9d210052f..1a27b039b 100644 --- a/data/qcsrc/server/domination.qc +++ b/data/qcsrc/server/domination.qc @@ -40,7 +40,7 @@ void dompoint_captured () local float old_delay, old_team, real_team; // now that the delay has expired, switch to the latest team to lay claim to this point - head = self.aiment; + head = self.owner; real_team = self.cnt; self.cnt = -1; @@ -170,7 +170,7 @@ void dompointtouch() self.team = self.goalentity.team; // this stores the PREVIOUS team! self.cnt = other.team; - self.aiment = head; // team to switch to after the delay + self.owner = head; // team to switch to after the delay self.dmg_inflictor = other; // self.state = 1; diff --git a/data/qcsrc/server/g_triggers.qc b/data/qcsrc/server/g_triggers.qc index 71f8c79ff..eb92b1f96 100644 --- a/data/qcsrc/server/g_triggers.qc +++ b/data/qcsrc/server/g_triggers.qc @@ -474,7 +474,7 @@ void spawnfunc_target_speaker() { if(self.noise) precache_sound (self.noise); - if(self.targetname) + IFTARGETED self.use = target_speaker_use; else ambientsound (self.origin, self.noise, VOL_BASE, ATTN_STATIC); @@ -567,7 +567,7 @@ void spawnfunc_func_pointparticles() self.model = "net_entity"; if(!self.cnt) self.cnt = particleeffectnum(self.mdl); - if(self.targetname != "") + IFTARGETED { self.use = pointparticles_use; if(self.spawnflags & 1) @@ -854,7 +854,7 @@ void spawnfunc_misc_laser() self.modelindex = 1; self.model = "net_entity"; - if(self.targetname != "") + IFTARGETED { self.use = laser_use; if(self.spawnflags & 1) diff --git a/data/qcsrc/server/keyhunt.qc b/data/qcsrc/server/keyhunt.qc index a4d12cd8d..e5f014b90 100644 --- a/data/qcsrc/server/keyhunt.qc +++ b/data/qcsrc/server/keyhunt.qc @@ -245,7 +245,6 @@ void kh_Key_Detach(entity key) // runs every time a key is dropped or lost. Runs setattachment(key, world, ""); key.angles_y += key.owner.angles_y; #endif - key.aiment = world; key.flags = FL_ITEM; key.solid = SOLID_TRIGGER; key.movetype = MOVETYPE_TOSS; diff --git a/data/qcsrc/server/miscfunctions.qc b/data/qcsrc/server/miscfunctions.qc index f621f05f4..da611894c 100644 --- a/data/qcsrc/server/miscfunctions.qc +++ b/data/qcsrc/server/miscfunctions.qc @@ -1260,3 +1260,6 @@ void InitializeEntitiesRun() } initialize_entity_first = world; } + +.float nottargeted; +#define IFTARGETED if(!self.nottargeted && self.targetname != "") diff --git a/data/qcsrc/server/runematch.qc b/data/qcsrc/server/runematch.qc index a94f62fed..3ce380ea6 100644 --- a/data/qcsrc/server/runematch.qc +++ b/data/qcsrc/server/runematch.qc @@ -199,7 +199,6 @@ void rune_touch() setattachment(self, world, ""); self.movetype = MOVETYPE_FOLLOW; - self.aiment = other; self.view_ofs = other.origin; setorigin(self, '0 0 0'); diff --git a/data/qcsrc/server/t_plats.qc b/data/qcsrc/server/t_plats.qc index 3bcaf46a5..16a63f21b 100644 --- a/data/qcsrc/server/t_plats.qc +++ b/data/qcsrc/server/t_plats.qc @@ -208,7 +208,7 @@ void spawnfunc_func_plat() plat_spawn_inside_trigger (); // the "start moving" trigger - if (self.targetname) + IFTARGETED { self.state = 4; self.use = plat_use; @@ -221,101 +221,6 @@ void spawnfunc_func_plat() }; -/* -void() train_next; -void() func_train_find; - -void train_blocked() -{ - if (time < self.attack_finished_single) - return; - self.attack_finished_single = time + 0.5; -}; -void train_use() -{ - if (self.think != func_train_find) - return; - train_next(); -}; - -void train_wait() -{ - if (self.wait) - { - self.nextthink = self.ltime + self.wait; - sound (self, CHAN_TRIGGER, self.noise, VOL_BASE, ATTN_NORM); - } - else - self.nextthink = self.ltime + 0.1; - - self.think = train_next; -}; - -void train_next() -{ - local entity targ; - - targ = find (world, targetname, self.target); - self.target = targ.target; - if (!self.target) - objerror ("train_next: no next target"); - if (targ.wait) - self.wait = targ.wait; - else - self.wait = 0; - sound (self, CHAN_TRIGGER, self.noise1, VOL_BASE, ATTN_NORM); - SUB_CalcMove (targ.origin - self.mins, self.speed, train_wait); -}; - -void func_train_find() -{ - local entity targ; - - targ = find (world, targetname, self.target); - self.target = targ.target; - setorigin (self, targ.origin - self.mins); - if (!self.targetname) - { // not triggered, so start immediately - self.nextthink = self.ltime + 0.1; - self.think = train_next; - } -}; - - -void spawnfunc_func_train() -{ - if (!self.speed) - self.speed = 100; - if (!self.target) - objerror ("func_train without a target"); - - if (self.sounds == 0) - { - self.noise = ("misc/null.wav"); - precache_sound ("misc/null.wav"); - self.noise1 = ("misc/null.wav"); - precache_sound ("misc/null.wav"); - } - - if (self.sounds == 1) - { - self.noise = ("plats/train2.wav"); - precache_sound ("plats/train2.wav"); - self.noise1 = ("plats/train1.wav"); - precache_sound ("plats/train1.wav"); - } - - self.blocked = train_blocked; - self.use = train_use; - self.classname = "train"; - - InitMovingBrushTrigger(); - self.effects |= EF_LOWPRECISION; - self.nextthink = self.ltime + 0.1; - self.think = func_train_find; -}; -*/ - void() train_next; void train_wait() { @@ -978,7 +883,7 @@ void LinkDoors() if (self.health) starte.health = self.health; - if (self.targetname) + IFTARGETED starte.targetname = self.targetname; if (self.message != "") starte.message = self.message; @@ -995,7 +900,7 @@ void LinkDoors() if (self.health) return; - if (self.targetname) + IFTARGETED return; if (self.items) return; @@ -1070,11 +975,6 @@ void spawnfunc_func_door() self.blocked = door_blocked; self.use = door_use; - if(self.targetname == "") { - self.spawnflags = 0; - self.dmg = 0; - } - if(self.spawnflags & 8) self.dmg = 10000; @@ -1258,12 +1158,12 @@ void fd_secret_move6() void fd_secret_done() { - if (!self.targetname || self.spawnflags&SECRET_YES_SHOOT) + if (self.spawnflags&SECRET_YES_SHOOT) { self.health = 10000; self.takedamage = DAMAGE_YES; //self.th_pain = fd_secret_use; - } + } if (self.noise3 != "") sound(self, CHAN_TRIGGER, self.noise3, VOL_BASE, ATTN_NORM); }; @@ -1337,7 +1237,10 @@ void spawnfunc_func_door_secret() self.blocked = secret_blocked; self.speed = 50; self.use = fd_secret_use; - if ( !self.targetname || self.spawnflags&SECRET_YES_SHOOT) + IFTARGETED + self.spawnflags |= SECRET_YES_SHOOT; + + if(self.spawnflags&SECRET_YES_SHOOT) { self.health = 10000; self.takedamage = DAMAGE_YES; diff --git a/data/qcsrc/server/t_quake.qc b/data/qcsrc/server/t_quake.qc index 7f4abeea9..45a2bd742 100644 --- a/data/qcsrc/server/t_quake.qc +++ b/data/qcsrc/server/t_quake.qc @@ -52,5 +52,6 @@ void junk_function () trace_dphittexturename = ""; require_spawnfunc_prefix = 1; self.movetypesteplandevent = SUB_Null; + self.viewzoom = 0; } diff --git a/data/qcsrc/server/t_teleporters.qc b/data/qcsrc/server/t_teleporters.qc index c3441b2d7..2a264de88 100644 --- a/data/qcsrc/server/t_teleporters.qc +++ b/data/qcsrc/server/t_teleporters.qc @@ -92,7 +92,10 @@ void spawnfunc_info_teleport_destination (void) //setorigin (self, self.origin + '0 0 27'); // To fix a mappers' habit as old as Quake setorigin (self, self.origin); - if (!self.targetname) + IFTARGETED + { + } + else objerror ("Teleport destination without a targetname"); } diff --git a/data/qcsrc/server/teamplay.qc b/data/qcsrc/server/teamplay.qc index 33e1fbd57..d71ff76f6 100644 --- a/data/qcsrc/server/teamplay.qc +++ b/data/qcsrc/server/teamplay.qc @@ -161,7 +161,7 @@ void ActivateTeamplay() void InitGameplayMode() { - float fraglimit_override, timelimit_override, capturelimit_override; + float fraglimit_override, timelimit_override; VoteReset(); @@ -352,7 +352,6 @@ string GetClientVersionMessage() { void PrintWelcomeMessage(entity pl) { string s, mutator, modifications; - float p; /*if(self.welcomemessage_time > time) return; -- 2.39.2