equal
deleted
inserted
replaced
49 uGearsUtils, uGearsList, uVisualGearsList, uTextures |
49 uGearsUtils, uGearsList, uVisualGearsList, uTextures |
50 {$IFDEF USE_TOUCH_INTERFACE}, uTouch{$ENDIF}; |
50 {$IFDEF USE_TOUCH_INTERFACE}, uTouch{$ENDIF}; |
51 |
51 |
52 var TeamsGameOver: boolean; |
52 var TeamsGameOver: boolean; |
53 NextClan: boolean; |
53 NextClan: boolean; |
|
54 SwapClan: LongInt; |
54 |
55 |
55 function CheckForWin: boolean; |
56 function CheckForWin: boolean; |
56 var AliveClan: PClan; |
57 var AliveClan: PClan; |
57 s, cap: ansistring; |
58 s, cap: ansistring; |
58 ts: array[0..(cMaxTeams - 1)] of ansistring; |
59 ts: array[0..(cMaxTeams - 1)] of ansistring; |
202 end; |
203 end; |
203 |
204 |
204 if (GameFlags and gfTagTeam) = 0 then |
205 if (GameFlags and gfTagTeam) = 0 then |
205 inc(c); |
206 inc(c); |
206 |
207 |
|
208 if (c = SwapClan) and (not PlacingHogs) then |
|
209 inc(TotalRounds); |
207 if c = ClansCount then |
210 if c = ClansCount then |
208 begin |
211 c:= 0; |
209 if not PlacingHogs then |
|
210 inc(TotalRounds); |
|
211 c:= 0 |
|
212 end; |
|
213 |
212 |
214 with ClansArray[c]^ do |
213 with ClansArray[c]^ do |
215 begin |
214 begin |
216 PrevTeam:= CurrTeam; |
215 PrevTeam:= CurrTeam; |
217 repeat |
216 repeat |
283 begin |
282 begin |
284 for i:= 0 to ClansCount do |
283 for i:= 0 to ClansCount do |
285 if ClansArray[i] <> nil then |
284 if ClansArray[i] <> nil then |
286 ClansArray[i]^.TurnNumber:= 0; |
285 ClansArray[i]^.TurnNumber:= 0; |
287 ResetWeapons |
286 ResetWeapons |
288 end |
287 end; |
289 end; |
288 |
|
289 end; |
|
290 |
|
291 // Clan ID (+1) to check to determine whether to increase TotalRounds |
|
292 if (SwapClan = -1) and (not PlacingHogs) then |
|
293 if (GameFlags and gfRandomOrder) <> 0 then |
|
294 SwapClan:= ClansCount |
|
295 else |
|
296 SwapClan:= 1; |
290 |
297 |
291 inc(CurrentTeam^.Clan^.TurnNumber); |
298 inc(CurrentTeam^.Clan^.TurnNumber); |
292 with CurrentTeam^.Clan^ do |
299 with CurrentTeam^.Clan^ do |
293 for t:= 0 to Pred(TeamsNumber) do |
300 for t:= 0 to Pred(TeamsNumber) do |
294 with Teams[t]^ do |
301 with Teams[t]^ do |
872 LocalClan:= -1; |
879 LocalClan:= -1; |
873 LocalTeam:= -1; |
880 LocalTeam:= -1; |
874 LocalAmmo:= -1; |
881 LocalAmmo:= -1; |
875 TeamsGameOver:= false; |
882 TeamsGameOver:= false; |
876 NextClan:= true; |
883 NextClan:= true; |
|
884 SwapClan:= -1; |
877 MaxTeamHealth:= 0; |
885 MaxTeamHealth:= 0; |
878 end; |
886 end; |
879 |
887 |
880 procedure freeModule; |
888 procedure freeModule; |
881 var i, h: LongWord; |
889 var i, h: LongWord; |
917 Dispose(ClansArray[i]) |
925 Dispose(ClansArray[i]) |
918 end |
926 end |
919 end; |
927 end; |
920 TeamsCount:= 0; |
928 TeamsCount:= 0; |
921 ClansCount:= 0; |
929 ClansCount:= 0; |
|
930 SwapClan:= -1; |
922 end; |
931 end; |
923 |
932 |
924 end. |
933 end. |