equal
deleted
inserted
replaced
90 if (CurrentHedgehog^.Gear = gi) then |
90 if (CurrentHedgehog^.Gear = gi) then |
91 PlaySoundV(sndOops, gi^.Hedgehog^.Team^.voicepack) |
91 PlaySoundV(sndOops, gi^.Hedgehog^.Team^.voicepack) |
92 |
92 |
93 else |
93 else |
94 begin |
94 begin |
95 if (gi^.State and gstMoving) = 0 then |
95 if ((gi^.State and gstMoving) = 0) and (gi^.Hedgehog^.Effects[heFrozen] = 0) then |
96 begin |
96 begin |
97 gi^.dX.isNegative:= X<gi^.X; |
97 gi^.dX.isNegative:= X<gi^.X; |
98 gi^.State := gi^.State or gstLoser; |
98 gi^.State := gi^.State or gstLoser; |
99 end; |
99 end; |
100 |
100 |
4954 DeleteGear(Gear); |
4954 DeleteGear(Gear); |
4955 exit |
4955 exit |
4956 end; |
4956 end; |
4957 Gear^.Pos:= 4; |
4957 Gear^.Pos:= 4; |
4958 // This condition might need tweaking |
4958 // This condition might need tweaking |
4959 Gear^.Timer:= GetRandom(cHedgehogTurnTime*TeamsCount*2)+cHedgehogTurnTime*2 |
4959 Gear^.Timer:= GetRandom(cHedgehogTurnTime*TeamsCount)+cHedgehogTurnTime |
4960 end; |
4960 end; |
4961 |
4961 |
4962 if (Gear^.Pos = 4) then |
4962 if (Gear^.Pos = 4) then |
4963 begin |
4963 begin |
4964 cnt:= 0; |
4964 cnt:= 0; |
4990 Gear^.SoundChannel := LoopSound(sndTardis); |
4990 Gear^.SoundChannel := LoopSound(sndTardis); |
4991 Gear^.Pos:= 1; |
4991 Gear^.Pos:= 1; |
4992 Gear^.Power:= 0; |
4992 Gear^.Power:= 0; |
4993 end |
4993 end |
4994 end |
4994 end |
4995 else dec(Gear^.Timer); |
4995 else if (CurrentHedgehog^.Team^.Clan = Gear^.Hedgehog^.Team^.Clan) then dec(Gear^.Timer) |
4996 end; |
4996 end; |
4997 |
4997 |
4998 end; |
4998 end; |
4999 |
4999 |
5000 procedure doStepTardis(Gear: PGear); |
5000 procedure doStepTardis(Gear: PGear); |
5122 begin |
5122 begin |
5123 DeleteGear(Gear); |
5123 DeleteGear(Gear); |
5124 AfterAttack; |
5124 AfterAttack; |
5125 exit |
5125 exit |
5126 end |
5126 end |
5127 else |
5127 else if Gear^.Message and (gmUp or gmDown) = 0 then updateFuel(Gear); |
5128 begin |
|
5129 updateFuel(Gear); |
|
5130 end; |
|
5131 |
5128 |
5132 with Gear^ do |
5129 with Gear^ do |
5133 begin |
5130 begin |
5134 HedgehogChAngle(HHGear); |
5131 HedgehogChAngle(HHGear); |
5135 ndX:= SignAs(AngleSin(HHGear^.Angle), HHGear^.dX) * _4; |
5132 ndX:= SignAs(AngleSin(HHGear^.Angle), HHGear^.dX) * _4; |
5201 begin |
5198 begin |
5202 hogs.ar^[i]^.Active:= true; |
5199 hogs.ar^[i]^.Active:= true; |
5203 if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] < 256 then |
5200 if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] < 256 then |
5204 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] := hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] + 1 |
5201 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] := hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] + 1 |
5205 else if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] = 256 then |
5202 else if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] = 256 then |
5206 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen]:= 100000 |
5203 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen]:= cHedgehogTurnTime + cReadyDelay |
5207 end; |
5204 end; |
5208 inc(Pos) |
5205 inc(Pos) |
5209 end |
5206 end |
5210 else if (t > 400) and ((gY > cWaterLine) or |
5207 else if (t > 400) and ((gY > cWaterLine) or |
5211 (((gX and LAND_WIDTH_MASK = 0) and (gY and LAND_HEIGHT_MASK = 0)) |
5208 (((gX and LAND_WIDTH_MASK = 0) and (gY and LAND_HEIGHT_MASK = 0)) |