equal
deleted
inserted
replaced
772 end; |
772 end; |
773 SetAllToActive |
773 SetAllToActive |
774 end; |
774 end; |
775 |
775 |
776 procedure AssignHHCoords; |
776 procedure AssignHHCoords; |
777 var Team: PTeam; |
777 var i, t, p: LongInt; |
778 i, t: LongInt; |
|
779 ar: array[0..Pred(cMaxHHs)] of PGear; |
778 ar: array[0..Pred(cMaxHHs)] of PGear; |
780 Count: Longword; |
779 Count: Longword; |
781 begin |
780 begin |
782 Team:= TeamsList; |
|
783 |
|
784 if (GameFlags and gfForts) <> 0 then |
781 if (GameFlags and gfForts) <> 0 then |
785 begin |
782 begin |
786 t:= 0; |
783 t:= 0; |
787 while Team <> nil do |
784 for p:= 0 to Pred(TeamsCount) do |
|
785 with TeamsArray[p]^ do |
788 begin |
786 begin |
789 for i:= 0 to cMaxHHIndex do |
787 for i:= 0 to cMaxHHIndex do |
790 with Team^.Hedgehogs[i] do |
788 with Hedgehogs[i] do |
791 if Gear <> nil then FindPlace(Gear, false, t, t + 1024); |
789 if Gear <> nil then FindPlace(Gear, false, t, t + 1024); |
792 inc(t, 1024); |
790 inc(t, 1024); |
793 Team:= Team^.Next |
|
794 end |
791 end |
795 end else // mix hedgehogs |
792 end else // mix hedgehogs |
796 begin |
793 begin |
797 Count:= 0; |
794 Count:= 0; |
798 while Team <> nil do |
795 for p:= 0 to Pred(TeamsCount) do |
|
796 with TeamsArray[p]^ do |
799 begin |
797 begin |
800 for i:= 0 to cMaxHHIndex do |
798 for i:= 0 to cMaxHHIndex do |
801 with Team^.Hedgehogs[i] do |
799 with Hedgehogs[i] do |
802 if Gear <> nil then |
800 if Gear <> nil then |
803 begin |
801 begin |
804 ar[Count]:= Gear; |
802 ar[Count]:= Gear; |
805 inc(Count) |
803 inc(Count) |
806 end; |
804 end; |
807 Team:= Team^.Next |
|
808 end; |
805 end; |
809 |
806 |
810 while (Count > 0) do |
807 while (Count > 0) do |
811 begin |
808 begin |
812 i:= GetRandom(Count); |
809 i:= GetRandom(Count); |