224 begin |
224 begin |
225 Tint($00, $FF, $40, $40); |
225 Tint($00, $FF, $40, $40); |
226 DrawRotatedTextureF(SpritesData[sprSmokeWhite].texture, 2, 0, 0, sx, sy, 0, 1, 22, 22, (RealTicks shr 36) mod 360); |
226 DrawRotatedTextureF(SpritesData[sprSmokeWhite].texture, 2, 0, 0, sx, sy, 0, 1, 22, 22, (RealTicks shr 36) mod 360); |
227 Tint($FF, $FF, $FF, $FF) |
227 Tint($FF, $FF, $FF, $FF) |
228 end; |
228 end; |
229 |
|
230 if (CurAmmoGear <> nil) and |
|
231 (CurrentHedgehog^.Gear <> nil) and |
|
232 (CurrentHedgehog^.Gear = Gear) and |
|
233 (CurAmmoGear^.Kind = gtTardis) then Tint($FF, $FF, $FF, CurAmmoGear^.Timer div 20) |
|
234 // probably will need a new flag for this |
|
235 else if (Gear^.State and gstTmpFlag <> 0) then Tint($FF, $FF, $FF, $FF-Gear^.Timer); |
|
236 |
229 |
237 if ((Gear^.State and gstWinner) <> 0) and |
230 if ((Gear^.State and gstWinner) <> 0) and |
238 ((CurAmmoGear = nil) or (CurAmmoGear^.Kind <> gtPickHammer)) then |
231 ((CurAmmoGear = nil) or (CurAmmoGear^.Kind <> gtPickHammer)) then |
239 begin |
232 begin |
240 DrawHedgehog(sx, sy, |
233 DrawHedgehog(sx, sy, |
891 |
884 |
892 case Gear^.Kind of |
885 case Gear^.Kind of |
893 gtGrenade: DrawRotated(sprBomb, x, y, 0, Gear^.DirAngle); |
886 gtGrenade: DrawRotated(sprBomb, x, y, 0, Gear^.DirAngle); |
894 gtSnowball: DrawRotated(sprSnowball, x, y, 0, Gear^.DirAngle); |
887 gtSnowball: DrawRotated(sprSnowball, x, y, 0, Gear^.DirAngle); |
895 gtGasBomb: DrawRotated(sprCheese, x, y, 0, Gear^.DirAngle); |
888 gtGasBomb: DrawRotated(sprCheese, x, y, 0, Gear^.DirAngle); |
896 gtMolotov: DrawRotated(sprMolotov, x, y, 0, Gear^.DirAngle); |
889 |
|
890 gtMolotov: if (Gear^.State and gstDrowning) = 0 then |
|
891 DrawRotatedF(sprMolotov, x, y, (RealTicks div 125) mod 8, hwSign(Gear^.dX), Gear^.DirAngle * hwSign(Gear^.dX)) |
|
892 else DrawSprite(sprMolotov, x, y, 8); |
897 |
893 |
898 gtRCPlane: begin |
894 gtRCPlane: begin |
899 if (Gear^.Tag = -1) then |
895 if (Gear^.Tag = -1) then |
900 DrawRotated(sprPlane, x, y, -1, DxDy2Angle(Gear^.dX, Gear^.dY) + 90) |
896 DrawRotated(sprPlane, x, y, -1, DxDy2Angle(Gear^.dX, Gear^.dY) + 90) |
901 else |
897 else |
1076 DrawRotatedTextureF(SpritesData[sprSnowDust].Texture, 1, 0, 0, x, y, 0, 1, 8, 8, Gear^.DirAngle); |
1072 DrawRotatedTextureF(SpritesData[sprSnowDust].Texture, 1, 0, 0, x, y, 0, 1, 8, 8, Gear^.DirAngle); |
1077 //DrawRotated(sprSnowDust, x, y, 0, Gear^.DirAngle); |
1073 //DrawRotated(sprSnowDust, x, y, 0, Gear^.DirAngle); |
1078 //DrawTexture(x, y, SpritesData[sprVampiric].Texture, 0.1); |
1074 //DrawTexture(x, y, SpritesData[sprVampiric].Texture, 0.1); |
1079 Tint($FF, $FF, $FF, $FF); |
1075 Tint($FF, $FF, $FF, $FF); |
1080 end |
1076 end |
1081 else if not isInLag then |
1077 else //if not isInLag then |
1082 begin |
1078 begin |
|
1079 if isInLag and (Gear^.FlightTime < 256) then inc(Gear^.FlightTime, 8) |
|
1080 else if not isInLag and (Gear^.FlightTime > 0) then dec(Gear^.FlightTime, 8); |
|
1081 if Gear^.FlightTime > 0 then Tint($FF, $FF, $FF, $FF-min(255,Gear^.FlightTime)); |
1083 if vobVelocity = 0 then |
1082 if vobVelocity = 0 then |
1084 DrawSprite(sprFlake, x, y, Gear^.Timer) |
1083 DrawSprite(sprFlake, x, y, Gear^.Timer) |
1085 else |
1084 else |
1086 DrawRotatedF(sprFlake, x, y, Gear^.Timer, 1, Gear^.DirAngle) |
1085 DrawRotatedF(sprFlake, x, y, Gear^.Timer, 1, Gear^.DirAngle); |
1087 //DrawSprite(sprFlake, x-SpritesData[sprFlake].Width div 2, y-SpritesData[sprFlake].Height div 2, Gear^.Timer) |
1086 //DrawSprite(sprFlake, x-SpritesData[sprFlake].Width div 2, y-SpritesData[sprFlake].Height div 2, Gear^.Timer) |
1088 //DrawRotatedF(sprFlake, x-SpritesData[sprFlake].Width div 2, y-SpritesData[sprFlake].Height div 2, Gear^.Timer, 1, Gear^.DirAngle); |
1087 //DrawRotatedF(sprFlake, x-SpritesData[sprFlake].Width div 2, y-SpritesData[sprFlake].Height div 2, Gear^.Timer, 1, Gear^.DirAngle); |
|
1088 if Gear^.FlightTime > 0 then Tint($FF, $FF, $FF, $FF); |
1089 end; |
1089 end; |
1090 gtStructure: DrawSprite(sprTarget, x - 16, y - 16, 0); |
1090 gtStructure: DrawSprite(sprTarget, x - 16, y - 16, 0); |
|
1091 gtTardis: if Gear^.Pos <> 4 then |
|
1092 begin |
|
1093 if Gear^.Pos = 2 then Tint(Gear^.Hedgehog^.Team^.Clan^.Color shl 8 or $FF) |
|
1094 else Tint(Gear^.Hedgehog^.Team^.Clan^.Color shl 8 or max($00, round(Gear^.Power * (1-abs(0.5 - (GameTicks mod 2000) / 2000))))); |
|
1095 DrawSprite(sprTardis, x-24, y-63,0); |
|
1096 if Gear^.Pos = 2 then Tint($FF, $FF, $FF, $FF) |
|
1097 else Tint($FF,$FF,$FF,max($00, round(Gear^.Power * (1-abs(0.5 - (GameTicks mod 2000) / 2000))))); |
|
1098 DrawSprite(sprTardis, x-24, y-63,1); |
|
1099 if Gear^.Pos <> 2 then Tint($FF, $FF, $FF, $FF) |
|
1100 (* |
|
1101 Tint(Gear^.Hedgehog^.Team^.Clan^.Color shl 8 or max($00, round(Gear^.Power * abs(1 - (RealTicks mod 500) / 250)))); |
|
1102 DrawTexture(x-6, y-70, SpritesData[sprVampiric].Texture, 0.25); |
|
1103 Tint($FF, $FF, $FF, $FF) |
|
1104 *) |
|
1105 end; |
|
1106 |
1091 |
1107 |
1092 end; |
1108 end; |
1093 if Gear^.RenderTimer and (Gear^.Tex <> nil) then DrawCentered(x + 8, y + 8, Gear^.Tex); |
1109 if Gear^.RenderTimer and (Gear^.Tex <> nil) then DrawCentered(x + 8, y + 8, Gear^.Tex); |
1094 end; |
1110 end; |
1095 |
1111 |