hedgewars/GSHandlers.inc
changeset 5922 7e7774e7be8c
parent 5913 1791f776b726
child 5924 82fc26c53d2a
equal deleted inserted replaced
5921:43cb3139cebe 5922:7e7774e7be8c
  2843     end;
  2843     end;
  2844 
  2844 
  2845     if Gear^.Health < Gear^.Damage then
  2845     if Gear^.Health < Gear^.Damage then
  2846     begin
  2846     begin
  2847         doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 30, Gear^.Hedgehog, EXPLAutoSound);
  2847         doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 30, Gear^.Hedgehog, EXPLAutoSound);
       
  2848         for i:= 0 to 31 do
       
  2849             begin
       
  2850             sparkles:= AddVisualGear(hwRound(Gear^.X), hwRound(Gear^.Y), vgtStraightShot);
       
  2851             if sparkles <> nil then
       
  2852                 with sparkles^ do
       
  2853                     begin
       
  2854                     sparkles^.Tint:= ((random(210)+45) shl 24) or ((random(210)+45) shl 16) or ((random(210)+45) shl 8) or $FF;
       
  2855                     dx:= 0.001 * (random(200));
       
  2856                     dy:= 0.001 * (random(200));
       
  2857                     if random(2) = 0 then dx := -dx;
       
  2858                     if random(2) = 0 then dy := -dy;
       
  2859                     FrameTicks:= random(250) + 250;
       
  2860                     State:= ord(sprSnowDust);
       
  2861                     end;
       
  2862             end;
  2848         AfterAttack;
  2863         AfterAttack;
  2849         DeleteGear(Gear);
  2864         DeleteGear(Gear);
  2850         DeleteGear(HHGear);
  2865         DeleteGear(HHGear);
  2851     end
  2866     end
  2852     else
  2867     else
  2859 procedure doStepKamikazeIdle(Gear: PGear);
  2874 procedure doStepKamikazeIdle(Gear: PGear);
  2860 begin
  2875 begin
  2861     AllInactive := false;
  2876     AllInactive := false;
  2862     dec(Gear^.Timer);
  2877     dec(Gear^.Timer);
  2863     if Gear^.Timer = 0 then
  2878     if Gear^.Timer = 0 then
  2864     begin
  2879         begin
  2865         Gear^.Pos := 1;
  2880         Gear^.Pos := 1;
  2866         PlaySound(sndKamikaze, Gear^.Hedgehog^.Team^.voicepack);
  2881         PlaySound(sndKamikaze, Gear^.Hedgehog^.Team^.voicepack);
  2867         Gear^.doStep := @doStepKamikazeWork
  2882         Gear^.doStep := @doStepKamikazeWork
  2868     end
  2883         end
  2869 end;
  2884 end;
  2870 
  2885 
  2871 procedure doStepKamikaze(Gear: PGear);
  2886 procedure doStepKamikaze(Gear: PGear);
  2872 var 
  2887 var 
  2873     HHGear: PGear;
  2888     HHGear: PGear;