hedgewars/uGearsRender.pas
changeset 7721 2b1ad418ba39
parent 7671 43f38923bc6e
child 7730 2013733f9ca9
equal deleted inserted replaced
7720:8e6b79a020f8 7721:2b1ad418ba39
  1016                             end;
  1016                             end;
  1017                         end;
  1017                         end;
  1018                     if Gear^.Timer < 1833 then
  1018                     if Gear^.Timer < 1833 then
  1019                         begin
  1019                         begin
  1020                         DrawTextureRotatedF(SpritesData[sprPortal].texture, min(abs(1.25 - (Gear^.Timer mod 1333) / 400), 1.25), 0, 0,
  1020                         DrawTextureRotatedF(SpritesData[sprPortal].texture, min(abs(1.25 - (Gear^.Timer mod 1333) / 400), 1.25), 0, 0,
  1021                                             x, Gear^.Angle+WorldDy-16, 4+Gear^.Tag, 1, 32, 32, 270);
  1021                                             x, LongInt(Gear^.Angle) + WorldDy - 16, 4 + Gear^.Tag, 1, 32, 32, 270);
  1022                         end
  1022                         end
  1023                     end;
  1023                     end;
  1024       gtExplosives: begin
  1024       gtExplosives: begin
  1025                     if ((Gear^.State and gstDrowning) <> 0) then
  1025                     if ((Gear^.State and gstDrowning) <> 0) then
  1026                         DrawSprite(sprExplosivesRoll, x - 24, y - 24, 0)
  1026                         DrawSprite(sprExplosivesRoll, x - 24, y - 24, 0)
  1190                         end;
  1190                         end;
  1191             gtIceGun: begin
  1191             gtIceGun: begin
  1192                       HHGear := Gear^.Hedgehog^.Gear;
  1192                       HHGear := Gear^.Hedgehog^.Gear;
  1193                       if HHGear <> nil then
  1193                       if HHGear <> nil then
  1194                           begin
  1194                           begin
  1195                           i:= hwRound(hwSqr(Gear^.X-HHGear^.X)+hwSqr(Gear^.Y-HHGear^.Y));
  1195                           i:= hwRound(hwSqr(Gear^.X - HHGear^.X) + hwSqr(Gear^.Y - HHGear^.Y));
  1196                           if RealTicks mod max(1,50-(round(sqrt(i)) div 4)) = 0 then // experiment in "intensifying" might not get used
  1196                           if RealTicks mod max(1,50 - (round(sqrt(i)) div 4)) = 0 then // experiment in "intensifying" might not get used
  1197                             begin
  1197                             begin
  1198                             vg:= AddVisualGear(hwRound(Gear^.X), hwRound(Gear^.Y), vgtDust, 1);
  1198                             vg:= AddVisualGear(hwRound(Gear^.X), hwRound(Gear^.Y), vgtDust, 1);
  1199                             if vg <> nil then
  1199                             if vg <> nil then
  1200                                 begin
  1200                                 begin
  1201                                 i:= random(100)+155;
  1201                                 i:= random(100) + 155;
  1202                                 vg^.Tint:= i shl 24 or i shl 16 or $FF shl 8 or ((random(200)+55));
  1202                                 vg^.Tint:= i shl 24 or i shl 16 or $FF shl 8 or Longword(random(200) + 55);
  1203                                 vg^.Angle:= random(360);
  1203                                 vg^.Angle:= random(360);
  1204                                 vg^.dx:= 0.001 * (random(80));
  1204                                 vg^.dx:= 0.001 * random(80);
  1205                                 vg^.dy:= 0.001 * (random(80))
  1205                                 vg^.dy:= 0.001 * random(80)
  1206                                 end
  1206                                 end
  1207                             end;
  1207                             end;
  1208                           if RealTicks mod 2 = 0 then
  1208                           if RealTicks mod 2 = 0 then
  1209                                 begin
  1209                                 begin
  1210                                 i:= random(100)+100;
  1210                                 i:= random(100)+100;