equal
deleted
inserted
replaced
156 if ((Mask and EXPLPoisoned) <> 0) and (Gear^.Kind = gtHedgehog) and (Gear^.Hedgehog^.Effects[heInvulnerable] = 0) and (Gear^.State and gstHHDeath = 0) then |
156 if ((Mask and EXPLPoisoned) <> 0) and (Gear^.Kind = gtHedgehog) and (Gear^.Hedgehog^.Effects[heInvulnerable] = 0) and (Gear^.State and gstHHDeath = 0) then |
157 Gear^.Hedgehog^.Effects[hePoisoned] := 1; |
157 Gear^.Hedgehog^.Effects[hePoisoned] := 1; |
158 end; |
158 end; |
159 |
159 |
160 end; |
160 end; |
161 gtGrave: begin |
161 gtGrave: if Mask and EXPLDoNotTouchAny = 0 then |
162 // Run the calcs only once we know we have a type that will need damage |
162 // Run the calcs only once we know we have a type that will need damage |
163 tdX:= Gear^.X-fX; |
|
164 tdY:= Gear^.Y-fY; |
|
165 if LongInt(tdX.Round + tdY.Round + 2) < dmgBase then |
|
166 dmg:= dmgBase - hwRound(Distance(tdX, tdY)); |
|
167 if dmg > 1 then |
|
168 begin |
163 begin |
169 dmg:= ModifyDamage(min(dmg div 2, Radius), Gear); |
164 tdX:= Gear^.X-fX; |
170 Gear^.dY:= - _0_004 * dmg; |
165 tdY:= Gear^.Y-fY; |
171 Gear^.Active:= true |
166 if LongInt(tdX.Round + tdY.Round + 2) < dmgBase then |
172 end |
167 dmg:= dmgBase - hwRound(Distance(tdX, tdY)); |
173 end; |
168 if dmg > 1 then |
|
169 begin |
|
170 dmg:= ModifyDamage(min(dmg div 2, Radius), Gear); |
|
171 Gear^.dY:= - _0_004 * dmg; |
|
172 Gear^.Active:= true |
|
173 end |
|
174 end; |
174 end; |
175 end; |
175 end; |
176 end; |
176 Gear:= Gear^.NextGear |
177 Gear:= Gear^.NextGear |
177 end; |
178 end; |
178 |
179 |