X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Ffunc_breakable.qc;h=0bf71059e6029ae10d9e94b1ed0ba861842cd609;hb=6ca9598bd85dac9bd2f84eb870b62e537e1594e7;hp=8dca538f1a417a46b271458557e8ecda139a3870;hpb=105c4e2c93cadac6c8b09a998333e2f5fe11a533;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/func_breakable.qc b/qcsrc/server/func_breakable.qc index 8dca538f1..0bf71059e 100644 --- a/qcsrc/server/func_breakable.qc +++ b/qcsrc/server/func_breakable.qc @@ -70,7 +70,7 @@ void LaunchDebris (string debrisname, vector force) void func_breakable_colormod() { float h; - if not(self.spawnflags & 2) + if (!(self.spawnflags & 2)) return; h = self.health / self.max_health; if(h < 0.25) @@ -79,6 +79,8 @@ void func_breakable_colormod() self.colormod = '1 0 0' + '0 1 0' * (2 * h - 0.5); else self.colormod = '1 1 1'; + + CSQCMODEL_AUTOUPDATE(); } void func_breakable_look_destroyed() @@ -140,12 +142,16 @@ void func_breakable_destroyed() { func_breakable_look_destroyed(); func_breakable_behave_destroyed(); + + CSQCMODEL_AUTOUPDATE(); } void func_breakable_restore() { func_breakable_look_restore(); func_breakable_behave_restore(); + + CSQCMODEL_AUTOUPDATE(); } vector debrisforce; // global, set before calling this @@ -167,7 +173,7 @@ void func_breakable_destroy() { sound (self, CH_TRIGGER, self.noise, VOL_BASE, ATTEN_NORM); if(self.dmg) - RadiusDamage(self, activator, self.dmg, self.dmg_edge, self.dmg_radius, self, self.dmg_force, DEATH_HURTTRIGGER, world); + RadiusDamage(self, activator, self.dmg, self.dmg_edge, self.dmg_radius, self, world, self.dmg_force, DEATH_HURTTRIGGER, world); if(self.cnt) pointparticles(self.cnt, self.absmin * 0.5 + self.absmax * 0.5, '0 0 0', self.count); @@ -217,6 +223,8 @@ void func_breakable_reset() func_breakable_behave_destroyed(); else func_breakable_behave_restore(); + + CSQCMODEL_AUTOUPDATE(); } // destructible walls that can be used to trigger target_objective_decrease @@ -268,6 +276,8 @@ void spawnfunc_func_breakable() { self.reset = func_breakable_reset; func_breakable_reset(); + + CSQCMODEL_AUTOINIT(); } // for use in maps with a "model" key set