X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fcommon%2Ftriggers%2Ftrigger%2Fjumppads.qc;h=de8458e9f8bc15abe5c63f034c35164c02f3ff6f;hp=c83ea06fa220765223c6fc12437ac26f61bfebc2;hb=66189615a05cc66dd0ee544a2bbc841c4f426193;hpb=0dbdb22db2053df47bd9c2d871540a0e42ea0521 diff --git a/qcsrc/common/triggers/trigger/jumppads.qc b/qcsrc/common/triggers/trigger/jumppads.qc index c83ea06fa..de8458e9f 100644 --- a/qcsrc/common/triggers/trigger/jumppads.qc +++ b/qcsrc/common/triggers/trigger/jumppads.qc @@ -361,6 +361,7 @@ void trigger_push_updatelink() void trigger_push_link() { + SELFPARAM(); trigger_link(self, trigger_push_send); } @@ -417,16 +418,23 @@ bool target_push_send(entity this, entity to, float sf) return true; } -void target_push_link() -{SELFPARAM(); - BITSET_ASSIGN(self.effects, EF_NODEPTHTEST); - Net_LinkEntity(self, false, 0, target_push_send); - //self.SendFlags |= 1; // update +void target_push_link(entity this) +{ + BITSET_ASSIGN(this.effects, EF_NODEPTHTEST); + Net_LinkEntity(this, false, 0, target_push_send); + //this.SendFlags |= 1; // update +} + +void target_push_init(entity this) +{ + this.mangle = this.angles; + setorigin(this, this.origin); + target_push_link(this); } -spawnfunc(target_push) { target_push_link(); } -spawnfunc(info_notnull) { target_push_link(); } -spawnfunc(target_position) { make_pure(this); target_push_link(); } +spawnfunc(target_push) { target_push_init(this); } +spawnfunc(info_notnull) { target_push_init(this); } +spawnfunc(target_position) { target_push_init(this); } #elif defined(CSQC) @@ -453,20 +461,19 @@ NET_HANDLE(ENT_CLIENT_TRIGGER_PUSH, bool isnew) return true; } -void target_push_remove() -{SELFPARAM(); - if(self.classname) - strunzone(self.classname); - self.classname = string_null; +void target_push_remove(entity this) +{ + if(this.classname) + strunzone(this.classname); + this.classname = string_null; - if(self.targetname) - strunzone(self.targetname); - self.targetname = string_null; + if(this.targetname) + strunzone(this.targetname); + this.targetname = string_null; } NET_HANDLE(ENT_CLIENT_TARGET_PUSH, bool isnew) { - make_pure(this); self.classname = "push_target"; self.cnt = ReadByte(); self.targetname = strzone(ReadString());