1037 else DrawSprite(sprMolotov, x, y, 8); |
1048 else DrawSprite(sprMolotov, x, y, 8); |
1038 |
1049 |
1039 gtRCPlane: begin |
1050 gtRCPlane: begin |
1040 aangle:= Gear^.Angle * 360 / 4096; |
1051 aangle:= Gear^.Angle * 360 / 4096; |
1041 if Gear^.Tag < 0 then aangle:= 360-aangle; |
1052 if Gear^.Tag < 0 then aangle:= 360-aangle; |
1042 Tint(Gear^.Hedgehog^.Team^.Clan^.Color shl 8 or $FF); |
1053 Tint(Gear^.Tint); |
1043 DrawSpriteRotatedF(sprPlane, x, y, 0, Gear^.Tag, aangle - 90); |
1054 DrawSpriteRotatedF(sprPlane, x, y, 0, Gear^.Tag, aangle - 90); |
1044 untint; |
1055 untint; |
1045 DrawSpriteRotatedF(sprPlane, x, y, 1, Gear^.Tag, aangle - 90) |
1056 DrawSpriteRotatedF(sprPlane, x, y, 1, Gear^.Tag, aangle - 90) |
1046 end; |
1057 end; |
1047 gtBall: DrawSpriteRotatedF(sprBalls, x, y, Gear^.Tag,0, Gear^.DirAngle); |
1058 gtBall: DrawSpriteRotatedF(sprBalls, x, y, Gear^.Tag,0, Gear^.DirAngle); |
1159 gtParachute: begin |
1170 gtParachute: begin |
1160 DrawSprite(sprParachute, x - 24, y - 48, 0); |
1171 DrawSprite(sprParachute, x - 24, y - 48, 0); |
1161 DrawAltWeapon(Gear, x + 1, y - 3) |
1172 DrawAltWeapon(Gear, x + 1, y - 3) |
1162 end; |
1173 end; |
1163 gtAirAttack: begin |
1174 gtAirAttack: begin |
1164 Tint(Gear^.Hedgehog^.Team^.Clan^.Color shl 8 or $FF); |
1175 Tint(Gear^.Tint); |
1165 DrawSpriteRotatedF(sprAirplane, x, y, 0, Gear^.Tag, 0); |
1176 DrawSpriteRotatedF(sprAirplane, x, y, 0, Gear^.Tag, 0); |
1166 untint; |
1177 untint; |
1167 DrawSpriteRotatedF(sprAirplane, x, y, 1, Gear^.Tag, 0); |
1178 DrawSpriteRotatedF(sprAirplane, x, y, 1, Gear^.Tag, 0); |
1168 end; |
1179 end; |
1169 gtAirBomb: DrawSpriteRotated(sprAirBomb, x, y, 0, DxDy2Angle(Gear^.dY, Gear^.dX)); |
1180 gtAirBomb: DrawSpriteRotated(sprAirBomb, x, y, 0, DxDy2Angle(Gear^.dY, Gear^.dX)); |
1235 end; |
1246 end; |
1236 DrawTextureF(SpritesData[sprPiano].Texture, 1, x, y, 0, 1, 128, 128); |
1247 DrawTextureF(SpritesData[sprPiano].Texture, 1, x, y, 0, 1, 128, 128); |
1237 end; |
1248 end; |
1238 gtPoisonCloud: begin |
1249 gtPoisonCloud: begin |
1239 if Gear^.Timer < 1020 then |
1250 if Gear^.Timer < 1020 then |
1240 Tint($C0, $C0, $00, Gear^.Timer div 8) |
1251 Tint(Gear^.Tint and $FFFFFF00 or Gear^.Timer div 8) |
1241 else if Gear^.Timer > 3980 then |
1252 else if Gear^.Timer > 3980 then |
1242 Tint($C0, $C0, $00, (5000 - Gear^.Timer) div 8) |
1253 Tint(Gear^.Tint and $FFFFFF00 or (5000 - Gear^.Timer) div 8) |
1243 else |
1254 else |
1244 Tint($C0, $C0, $00, $C0); |
1255 Tint(Gear^.Tint); |
1245 DrawTextureRotatedF(SpritesData[sprSmokeWhite].texture, 3, 0, 0, x, y, 0, 1, 22, 22, (RealTicks shr 36 + Gear^.UID * 100) mod 360); |
1256 DrawTextureRotatedF(SpritesData[sprSmokeWhite].texture, 3, 0, 0, x, y, 0, 1, 22, 22, (RealTicks shr 36 + Gear^.UID * 100) mod 360); |
1246 untint |
1257 untint |
1247 end; |
1258 end; |
1248 gtResurrector: begin |
1259 gtResurrector: begin |
1249 DrawSpriteRotated(sprCross, x, y, 0, 0); |
1260 DrawSpriteRotated(sprCross, x, y, 0, 0); |
1250 Tint($f5, $db, $35, max($00, round($C0 * abs(1 - (GameTicks mod 6000) / 3000)))); |
1261 Tint(Gear^.Tint and $FFFFFF00 or max($00, round($C0 * abs(1 - (GameTicks mod 6000) / 3000)))); |
1251 DrawTexture(x - 108, y - 108, SpritesData[sprVampiric].Texture, 4.5); |
1262 DrawTexture(x - 108, y - 108, SpritesData[sprVampiric].Texture, 4.5); |
1252 untint; |
1263 untint; |
1253 end; |
1264 end; |
1254 gtNapalmBomb: DrawSpriteRotated(sprNapalmBomb, x, y, 0, DxDy2Angle(Gear^.dY, Gear^.dX)); |
1265 gtNapalmBomb: DrawSpriteRotated(sprNapalmBomb, x, y, 0, DxDy2Angle(Gear^.dY, Gear^.dX)); |
1255 gtFlake: if Gear^.State and (gstDrowning or gstTmpFlag) <> 0 then |
1266 gtFlake: if Gear^.State and (gstDrowning or gstTmpFlag) <> 0 then |
1256 begin |
1267 begin |
1257 Tint((ExplosionBorderColor shr RShift) and $FF, |
1268 Tint(Gear^.Tint); |
1258 (ExplosionBorderColor shr GShift) and $FF, |
|
1259 (ExplosionBorderColor shr BShift) and $FF, |
|
1260 $FF); |
|
1261 // Needs a nicer white texture to tint |
1269 // Needs a nicer white texture to tint |
1262 DrawTextureRotatedF(SpritesData[sprSnowDust].Texture, 1, 0, 0, x, y, 0, 1, 8, 8, Gear^.DirAngle); |
1270 DrawTextureRotatedF(SpritesData[sprSnowDust].Texture, 1, 0, 0, x, y, 0, 1, 8, 8, Gear^.DirAngle); |
1263 //DrawSpriteRotated(sprSnowDust, x, y, 0, Gear^.DirAngle); |
1271 //DrawSpriteRotated(sprSnowDust, x, y, 0, Gear^.DirAngle); |
1264 //DrawTexture(x, y, SpritesData[sprVampiric].Texture, 0.1); |
1272 //DrawTexture(x, y, SpritesData[sprVampiric].Texture, 0.1); |
1265 untint; |
1273 untint; |