From: Rudolf Polzer Date: Fri, 20 Aug 2010 17:30:56 +0000 (+0200) Subject: fix origin of func_breakable too X-Git-Tag: xonotic-v0.1.0preview~335 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=ac8d34b7b43c9f282f0922dc7c52614318f8d06c;p=xonotic%2Fxonotic-data.pk3dir.git fix origin of func_breakable too --- diff --git a/qcsrc/server/func_breakable.qc b/qcsrc/server/func_breakable.qc index a5e8dfa58..ca3d804d2 100644 --- a/qcsrc/server/func_breakable.qc +++ b/qcsrc/server/func_breakable.qc @@ -85,6 +85,9 @@ void func_breakable_look_destroyed() { local float floor_z; + if(self.solid == SOLID_BSP) // in case a misc_follow moved me, save the current origin first + self.dropped_origin = self.origin; + if(self.mdl_dead == "") self.model = ""; else { @@ -102,6 +105,8 @@ void func_breakable_look_destroyed() void func_breakable_look_restore() { setmodel(self, self.mdl); + if(self.mdl_dead != "") // only do this if we use mdl_dead, to behave better with misc_follow + setorigin(self, self.dropped_origin); self.solid = SOLID_BSP; } @@ -241,6 +246,7 @@ void spawnfunc_func_breakable() { precache_sound(self.noise); self.team_saved = self.team; + self.dropped_origin = self.origin; self.reset = func_breakable_reset; func_breakable_reset();