Quadravol fire shouldn't spread to Demolitionist.

This commit is contained in:
Mari the Deer 2022-09-05 00:29:08 +02:00
commit bf19ca87d3
2 changed files with 13 additions and 9 deletions

View file

@ -1,3 +1,3 @@
[default]
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r405 \cu(Sun 4 Sep 21:27:48 CEST 2022)\c-";
SWWM_SHORTVER="\cw1.3pre r405 \cu(2022-09-04 21:27:48)\c-";
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r406 \cu(Mon 5 Sep 00:29:08 CEST 2022)\c-";
SWWM_SHORTVER="\cw1.3pre r406 \cu(2022-09-05 00:29:08)\c-";

View file

@ -986,14 +986,18 @@ Class OnFire : Inventory
{
if ( target == Owner ) return Damage;
// spread ourselves
let t = OnFire(target.FindInventory("OnFire"));
if ( !t )
// note: cannot spread to Demolitionist
if ( !(target is 'Demolitionist') )
{
t = Apply(target,instigator,min(Damage,int(Amount*.6))); // prevent "escalating" spread
t.cnt = 15; // long delay
let t = OnFire(target.FindInventory("OnFire"));
if ( !t )
{
t = Apply(target,instigator,min(Damage,int(Amount*.6))); // prevent "escalating" spread
t.cnt = 15; // long delay
}
else if ( t.Amount < int(Amount*.6) ) t.Amount = min(t.Amount+Damage,int(Amount*.6)); // prevent "escalating" spread
t.instigator = instigator;
}
else if ( t.Amount < int(Amount*.6) ) t.Amount = min(t.Amount+Damage,int(Amount*.6)); // prevent "escalating" spread
t.instigator = instigator;
return clamp(int(Damage*.15),1,50); // reduced direct damage
}
@ -1005,7 +1009,7 @@ Class OnFire : Inventory
Destroy();
return;
}
if ( Owner is 'Demolitionist' ) amount = min(amount-1,200); // Demo's body puts out fire faster
if ( Owner is 'Demolitionist' ) amount = min(amount-1,100); // Demo's body puts out fire faster
if ( !(level.maptime%3) )
amount--;
if ( Owner.player ) amount -= int(abs(actor.deltaangle(Owner.angle,oangle))/30);