5852 end; |
5852 end; |
5853 |
5853 |
5854 end; |
5854 end; |
5855 |
5855 |
5856 procedure doStepTardis(Gear: PGear); |
5856 procedure doStepTardis(Gear: PGear); |
5857 var i,j,cnt: LongWord; |
5857 var HH: PHedgehog; |
5858 HH: PHedgehog; |
5858 begin |
5859 begin |
|
5860 (* |
|
5861 Conditions for not activating. |
|
5862 1. Hog is last of his clan |
|
5863 2. Sudden Death is in play |
|
5864 3. Hog is a king |
|
5865 *) |
|
5866 HH:= Gear^.Hedgehog; |
5859 HH:= Gear^.Hedgehog; |
5867 if HH^.Gear <> nil then |
5860 if (not CanUseTardis(HH^.Gear)) then |
5868 if (HH^.Gear = nil) or (HH^.King) or (SuddenDeathDmg) then |
5861 begin |
5869 begin |
5862 HH^.Gear^.Message := HH^.Gear^.Message and (not gmAttack); |
5870 if HH^.Gear <> nil then |
5863 HH^.Gear^.State:= HH^.Gear^.State and (not gstAttacking); |
5871 begin |
|
5872 HH^.Gear^.Message := HH^.Gear^.Message and (not gmAttack); |
|
5873 HH^.Gear^.State:= HH^.Gear^.State and (not gstAttacking); |
|
5874 end; |
|
5875 PlaySound(sndDenied); |
5864 PlaySound(sndDenied); |
5876 DeleteGear(gear); |
5865 DeleteGear(Gear); |
5877 exit |
5866 exit |
5878 end; |
5867 end; |
5879 cnt:= 0; |
|
5880 for j:= 0 to Pred(HH^.Team^.Clan^.TeamsNumber) do |
|
5881 for i:= 0 to Pred(HH^.Team^.Clan^.Teams[j]^.HedgehogsNumber) do |
|
5882 if (HH^.Team^.Clan^.Teams[j]^.Hedgehogs[i].Gear <> nil) |
|
5883 and ((HH^.Team^.Clan^.Teams[j]^.Hedgehogs[i].Gear^.State and gstDrowning) = 0) |
|
5884 and (HH^.Team^.Clan^.Teams[j]^.Hedgehogs[i].Gear^.Health > HH^.Team^.Clan^.Teams[j]^.Hedgehogs[i].Gear^.Damage) then |
|
5885 inc(cnt); |
|
5886 if cnt < 2 then |
|
5887 begin |
|
5888 if HH^.Gear <> nil then |
|
5889 begin |
|
5890 HH^.Gear^.Message := HH^.Gear^.Message and (not gmAttack); |
|
5891 HH^.Gear^.State:= HH^.Gear^.State and (not gstAttacking); |
|
5892 end; |
|
5893 PlaySound(sndDenied); |
|
5894 DeleteGear(gear); |
|
5895 exit |
|
5896 end; |
|
5897 Gear^.SoundChannel := LoopSound(sndTardis); |
5868 Gear^.SoundChannel := LoopSound(sndTardis); |
5898 Gear^.doStep:= @doStepTardisWarp |
5869 Gear^.doStep:= @doStepTardisWarp |
5899 end; |
5870 end; |
5900 |
5871 |
5901 //////////////////////////////////////////////////////////////////////////////// |
5872 //////////////////////////////////////////////////////////////////////////////// |