445 hwSign(Gear^.dX), 0, |
445 hwSign(Gear^.dX), 0, |
446 PHedgehog(Gear^.Hedgehog)^.visStepPos div 2, |
446 PHedgehog(Gear^.Hedgehog)^.visStepPos div 2, |
447 Surface); |
447 Surface); |
448 |
448 |
449 with PHedgehog(Gear^.Hedgehog)^ do |
449 with PHedgehog(Gear^.Hedgehog)^ do |
450 if (Gear^.State and not gstAnimation) = 0 then |
450 if (Gear^.State{ and not gstAnimation}) = 0 then |
451 begin |
451 begin |
452 t:= hwRound(Gear^.Y) - cHHRadius - 10 + WorldDy; |
452 t:= hwRound(Gear^.Y) - cHHRadius - 10 + WorldDy; |
453 dec(t, HealthTag^.h + 2); |
453 dec(t, HealthTag^.h + 2); |
454 DrawCentered(hwRound(Gear^.X) + WorldDx, t, HealthTag, Surface); |
454 DrawCentered(hwRound(Gear^.X) + WorldDx, t, HealthTag, Surface); |
455 dec(t, NameTag^.h + 2); |
455 dec(t, NameTag^.h + 2); |
456 DrawCentered(hwRound(Gear^.X) + WorldDx, t, NameTag, Surface); |
456 DrawCentered(hwRound(Gear^.X) + WorldDx, t, NameTag, Surface); |
457 dec(t, Team^.NameTag^.h + 2); |
457 dec(t, Team^.NameTag^.h + 2); |
458 DrawCentered(hwRound(Gear^.X) + WorldDx, t, Team^.NameTag, Surface) |
458 DrawCentered(hwRound(Gear^.X) + WorldDx, t, Team^.NameTag, Surface) |
459 end else // Current hedgehog |
459 end else // Current hedgehog |
|
460 if (Gear^.State and gstHHDriven) <> 0 then |
460 begin |
461 begin |
461 if bShowFinger and ((Gear^.State and gstHHDriven) <> 0) then |
462 if bShowFinger and ((Gear^.State and gstHHDriven) <> 0) then |
462 DrawSprite(sprFinger, hwRound(Gear^.X) - 16 + WorldDx, hwRound(Gear^.Y) - 64 + WorldDy, |
463 DrawSprite(sprFinger, hwRound(Gear^.X) - 16 + WorldDx, hwRound(Gear^.Y) - 64 + WorldDy, |
463 GameTicks div 32 mod 16, Surface); |
464 GameTicks div 32 mod 16, Surface); |
464 if (Gear^.State and (gstMoving or gstDrowning or gstFalling)) = 0 then |
465 if (Gear^.State and (gstMoving or gstDrowning or gstFalling)) = 0 then |
746 if t^.ar[i]^.Kind = gtHedgehog then |
747 if t^.ar[i]^.Kind = gtHedgehog then |
747 begin |
748 begin |
748 AddDamageTag(hwRound(t^.ar[i]^.X), hwRound(t^.ar[i]^.Y), Damage, t^.ar[i]); |
749 AddDamageTag(hwRound(t^.ar[i]^.X), hwRound(t^.ar[i]^.Y), Damage, t^.ar[i]); |
749 inc(hh^.DamageGiven, Damage) |
750 inc(hh^.DamageGiven, Damage) |
750 end; |
751 end; |
|
752 DeleteCI(t^.ar[i]); |
751 t^.ar[i]^.dX:= Ammo^.dX * Power * _0_01; |
753 t^.ar[i]^.dX:= Ammo^.dX * Power * _0_01; |
752 t^.ar[i]^.dY:= Ammo^.dY * Power * _0_01; |
754 t^.ar[i]^.dY:= Ammo^.dY * Power * _0_01; |
753 t^.ar[i]^.Active:= true; |
755 t^.ar[i]^.Active:= true; |
754 t^.ar[i]^.State:= t^.ar[i]^.State or gstMoving; |
756 t^.ar[i]^.State:= t^.ar[i]^.State or gstMoving; |
755 DeleteCI(t^.ar[i]); |
|
756 FollowGear:= t^.ar[i] |
757 FollowGear:= t^.ar[i] |
757 end; |
758 end; |
758 end |
759 end |
759 end; |
760 end; |
760 SetAllToActive |
761 SetAllToActive |