} //END private void setChampTournRankingsTeamIndexes(Team[] teamsArray) { //TEMP TOURNAMENT ARRAYS //ORDER - CONFERENCE INDEX int[] arrayIntRanked32IndexesForConfChampsIndexes = new int[appResources.getLengthOfConferenceNames()]; //CONFERENCE INDEX - RATING double[] arrayDouble32ConfChampRatings = new double[appResources.getLengthOfConferenceNames()]; //INDEX - TEAM INDEX int[] arrayInt64ChampTournIndexes = new int[64]; //INDEX - RATING double[] arrayDouble64ChampTournRatings = new double[64]; //RANK - TEAM INDEX int[] arrayIntRanked64IndexesForChampTournIndexes = new int[64]; //INDEX - TEAM INDEX int[] arrayInt68ChampTournIndexes = new int[68]; //INDEX - RATING double[] arrayDouble68ChampTournRatings = new double[68]; //RANK TEAM INDEX int[] arrayIntRanked68IndexesForChampTournIndexes = new int[68]; //CHAMPIONSHIP TOURNAMENT //RANK - TEAM INDEX int[] arrayIntRanked64ChampTournIndexes = new int[64]; //RANK - SEED int[] arrayIntRanked64ChampTournSeeds = new int[64]; //RANK - REGION string[] arrayStringRanked64ChampTournRegions = new string[64]; //TEAM RANKS INDEXES //RANK - TEAM INDEX int[] arrayIntRanked353TeamIndexes = new int[appResources.getLengthOfTeamNames()]; //SEEDED PLAY IN TEAMS int[] arrayIntSeededPlayInIndexes = new int[] { 0, 1, 4, 5 }; //FOUND INDEX VARIABLE int foundIndex = 0; //TEAM INDEX VARIABLE int rankIndex = 0; //IF RANKINGS NOT UPDATED //UPDATE RANKINGS if (tournamentContainer.getRankingsUpdated() == false) { updateRankings(teamsArray); } //END IF //RANK TEAMS //TEAM RANKS INDEXES Array.Copy(getOrderIndexes(tournamentContainer.get353Rankings(), appResources.getLengthOfTeamNames()), arrayIntRanked353TeamIndexes, appResources.getLengthOfTeamNames()); //INITIALIZE VALUES //(so indexOf doesn't find garbage) for (int index = 0; index < arrayInt68ChampTournIndexes.Length; index++) { //INDEX - TEAM INDEX arrayInt68ChampTournIndexes[index] = -1; }//END FOR //SELECT CHAMPIONSHIP TOURNAMENT PARTICIPANTS-------------------------- //GET CONFERENCE RATINGS //FOR ALL CONFERENCES for (int conferenceIndex = 0; conferenceIndex < appResources.getLengthOfConferenceNames(); conferenceIndex++) { //CONFERENCE INDEX - RATING arrayDouble32ConfChampRatings[conferenceIndex] = tournamentContainer.get353Rankings()[tournamentContainer.get32ConfChampsIndexes()[conferenceIndex]]; } //END FOR //CALCULATE ORDER //ORDER CONFERENCE CHAMPIONS Array.Copy(getOrderIndexes(arrayDouble32ConfChampRatings, arrayDouble32ConfChampRatings.Length), arrayIntRanked32IndexesForConfChampsIndexes, arrayIntRanked32IndexesForConfChampsIndexes.Length); //ADD CONFERENCE CHAMPIONS //FOR ALL CONFERENCES for (int conferenceIndex = 0; conferenceIndex < appResources.getLengthOfConferenceNames(); conferenceIndex++) { //INDEX - TEAM INDEX arrayInt68ChampTournIndexes[ arrayIntRanked32IndexesForConfChampsIndexes[conferenceIndex] ] = tournamentContainer.get32ConfChampsIndexes()[conferenceIndex]; } //END FOR //SET PLAY IN CONFERENCE TOURNAMENT CHAMPIONS //ADD 4 WORST CONFERECE CHAMPS TO PLAY IN ARRAY //(from best to worse) tournamentContainer.set8PlayInIndexes(0, arrayInt68ChampTournIndexes[appResources.getLengthOfConferenceNames() - 4]); tournamentContainer.set8PlayInIndexes(1, arrayInt68ChampTournIndexes[appResources.getLengthOfConferenceNames() - 3]); tournamentContainer.set8PlayInIndexes(2, arrayInt68ChampTournIndexes[appResources.getLengthOfConferenceNames() - 2]); tournamentContainer.set8PlayInIndexes(3, arrayInt68ChampTournIndexes[appResources.getLengthOfConferenceNames() - 1]); //ADD AT LARGE TEAMS //FOR ALL REMAINING TEAMS for (int teamIndex = appResources.getLengthOfConferenceNames(); teamIndex < 68; teamIndex++) { //FIND TEAM TO ADD TO TOURNAMENT do { //IF NOT IN ARRAY if (Array.IndexOf(arrayInt68ChampTournIndexes, arrayIntRanked353TeamIndexes[rankIndex]) < 0) { //INDEX - TEAM INDEX arrayInt68ChampTournIndexes[teamIndex] = arrayIntRanked353TeamIndexes[rankIndex]; rankIndex++; break; }//END IF rankIndex++; } while (rankIndex < arrayIntRanked353TeamIndexes.Length); //END DO WHILE } //END FOR //SET PLAY IN AT LARGE TEAMS //ADD 4 WORST CONFERECE CHAMPS TO PLAY IN ARRAY //(from best to worse) tournamentContainer.set8PlayInIndexes(4, arrayInt68ChampTournIndexes[64]); tournamentContainer.set8PlayInIndexes(5, arrayInt68ChampTournIndexes[65]); tournamentContainer.set8PlayInIndexes(6, arrayInt68ChampTournIndexes[66]); tournamentContainer.set8PlayInIndexes(7, arrayInt68ChampTournIndexes[67]); //ORDER 68 TOURNAMENT TEAMS-------------------------------------------- //GET RATINGS //FOR ALL TOURNAMENT TEAMS for (int index = 0; index < arrayDouble68ChampTournRatings.Length; index++) { //INDEX - RATING arrayDouble68ChampTournRatings[index] = tournamentContainer.get353Rankings()[arrayInt68ChampTournIndexes[index]]; } //END FOR //CALCULATE ORDER //ORDER TOURNAMENT TEAMS Array.Copy(getOrderIndexes(arrayDouble68ChampTournRatings, arrayIntRanked68IndexesForChampTournIndexes.Length), arrayIntRanked68IndexesForChampTournIndexes, arrayIntRanked68IndexesForChampTournIndexes.Length); //ORDER 64 TOURNAMENT TEAMS-------------------------------------------- //GET INDEXES FOR SEEDING //GET CONFERENCE TOURNAMENT CHAMPIONS INDEXES //(minus 2 worst play in conference champions) //FOR ALL SEEDED CONFERENCE CHAMP TEAMS for (int index = 0; index < appResources.getLengthOfConferenceNames() - 2; index++) { //INDEX - TEAM INDEX arrayInt64ChampTournIndexes[index] = arrayInt68ChampTournIndexes[index]; } //END FOR //GET AT LARGE INDEXES //(minus 2 worst play in at large teams) //FOR ALL AT LARGE SEEDED TEAMS for (int index = appResources.getLengthOfConferenceNames(); index < arrayInt64ChampTournIndexes.Length + 2; index++) { //INDEX - TEAM INDEX arrayInt64ChampTournIndexes[index - 2] = arrayInt68ChampTournIndexes[index]; } //END FOR //GET RATINGS //FOR ALL SEEDED TEAMS for (int index = 0; index < arrayDouble64ChampTournRatings.Length; index++) { //INDEX - RATING arrayDouble64ChampTournRatings[index] = tournamentContainer.get353Rankings()[arrayInt64ChampTournIndexes[index]]; } //END FOR //CALCULATE ORDER //ORDER TOURNAMENT TEAMS Array.Copy(getOrderIndexes(arrayDouble64ChampTournRatings, arrayIntRanked64IndexesForChampTournIndexes.Length), arrayIntRanked64IndexesForChampTournIndexes, arrayIntRanked64IndexesForChampTournIndexes.Length); //SET TOURNAMENT SEEDS------------------------------------------------- //SET SEEDS for (int seedIndex = 0; seedIndex < 16; seedIndex++) { //SET INDEXES IN RANKINGS //RANK - TEAM INDEX arrayIntRanked64ChampTournIndexes[seedIndex * 4] = arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4]]; arrayIntRanked64ChampTournIndexes[seedIndex * 4 + 1] = arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 1]]; arrayIntRanked64ChampTournIndexes[seedIndex * 4 + 2] = arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 2]]; arrayIntRanked64ChampTournIndexes[seedIndex * 4 + 3] = arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 3]]; //ZIG ZAG THROUGH SEEDS if (seedIndex % 2 == 0) { //SET INDEXES IN REGIONS tournamentContainer.setRanked16ChampTournWestIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4]]); tournamentContainer.setRanked16ChampTournMidwestIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 1]]); tournamentContainer.setRanked16ChampTournSouthIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 2]]); tournamentContainer.setRanked16ChampTournEastIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 3]]); //SET SEEDS IN //RANK - SEED arrayIntRanked64ChampTournSeeds[seedIndex * 4] = seedIndex; arrayIntRanked64ChampTournSeeds[seedIndex * 4 + 1] = seedIndex; arrayIntRanked64ChampTournSeeds[seedIndex * 4 + 2] = seedIndex; arrayIntRanked64ChampTournSeeds[seedIndex * 4 + 3] = seedIndex; //SET REGIONS IN RANKINGS //RANK - REGION arrayStringRanked64ChampTournRegions[seedIndex * 4] = appResources.getChampTounRegionTypeText(0); arrayStringRanked64ChampTournRegions[seedIndex * 4 + 1] = appResources.getChampTounRegionTypeText(1); arrayStringRanked64ChampTournRegions[seedIndex * 4 + 2] = appResources.getChampTounRegionTypeText(2); arrayStringRanked64ChampTournRegions[seedIndex * 4 + 3] = appResources.getChampTounRegionTypeText(3); } else { //SET INDEXES IN REGIONS tournamentContainer.setRanked16ChampTournWestIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 3]]); tournamentContainer.setRanked16ChampTournMidwestIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 2]]); tournamentContainer.setRanked16ChampTournSouthIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4 + 1]]); tournamentContainer.setRanked16ChampTournEastIndexes(seedIndex, arrayInt64ChampTournIndexes[arrayIntRanked64IndexesForChampTournIndexes[seedIndex * 4]]); //SET SEEDS IN RANKINGS //RANK - SEED arrayIntRanked64ChampTournSeeds[seedIndex * 4 + 3] = seedIndex; arrayIntRanked64ChampTournSeeds[seedIndex * 4 + 2] = seedIndex; arrayIntRanked64ChampTournSeeds[seedIndex * 4 + 1] = seedIndex; arrayIntRanked64ChampTournSeeds[seedIndex * 4] = seedIndex; //SET REGIONS IN RANKINGS //RANK - REGION arrayStringRanked64ChampTournRegions[seedIndex * 4 + 3] = appResources.getChampTounRegionTypeText(0); arrayStringRanked64ChampTournRegions[seedIndex * 4 + 2] = appResources.getChampTounRegionTypeText(1); arrayStringRanked64ChampTournRegions[seedIndex * 4 + 1] = appResources.getChampTounRegionTypeText(2); arrayStringRanked64ChampTournRegions[seedIndex * 4] = appResources.getChampTounRegionTypeText(3); } //END IF } //END FOR //FILL TOP 68 OVERALL RANKINGS----------------------------------------- //FILL TOP 68 TOURNAMENT TEAMS //FOR ALL SEEDED TEAMS //ADD INDEX REGION AND SEED //ADD RANKING INDEXES TO RANKING ARRAY for (int index = 0; index < arrayInt68ChampTournIndexes.Length; index++) { tournamentContainer.setRanked68ChampTournIndexes( index, arrayInt68ChampTournIndexes[arrayIntRanked68IndexesForChampTournIndexes[index]]); foundIndex = Array.IndexOf(arrayIntRanked64ChampTournIndexes, tournamentContainer.getRanked68ChampTournIndexes()[index]); if (foundIndex != -1) { tournamentContainer.setRanked68ChampTournSeeds(index, arrayIntRanked64ChampTournSeeds[foundIndex]); tournamentContainer.setRanked68ChampTournRegions(index, arrayStringRanked64ChampTournRegions[foundIndex]); }//END IF tournamentContainer.setRanked353ChampTournReturnIndexes(index, arrayInt68ChampTournIndexes[arrayIntRanked68IndexesForChampTournIndexes[index]]); } //END FOR //SET PLAY IN TEAM SEEDS AND REGIONS----------------------------------- //FOR ALL REMAINING TEAMS for (int index = 0; index < arrayIntSeededPlayInIndexes.Length; index++) { //FIND RANKINGS INDEX foundIndex = Array.IndexOf(tournamentContainer.getRanked68ChampTournIndexes(), tournamentContainer.get8PlayInIndexes()[arrayIntSeededPlayInIndexes[index]]); //COPY SEED AND REGION TO PLAY IN ARRAYS tournamentContainer.set8PlayInSeeds(arrayIntSeededPlayInIndexes[index], tournamentContainer.getRanked68ChampTournSeeds()[foundIndex]); tournamentContainer.set8PlayInRegions(arrayIntSeededPlayInIndexes[index], tournamentContainer.getRanked68ChampTournRegions()[foundIndex]); } //END FOR //FILL NON SEEDED PLAY IN TEAMS tournamentContainer.set8PlayInSeeds(2, tournamentContainer.get8PlayInSeeds()[1]); tournamentContainer.set8PlayInRegions(2, tournamentContainer.get8PlayInRegions()[1]); tournamentContainer.set8PlayInSeeds(3, tournamentContainer.get8PlayInSeeds()[0]); tournamentContainer.set8PlayInRegions(3, tournamentContainer.get8PlayInRegions()[0]); tournamentContainer.set8PlayInSeeds(6, tournamentContainer.get8PlayInSeeds()[5]); tournamentContainer.set8PlayInRegions(6, tournamentContainer.get8PlayInRegions()[5]); tournamentContainer.set8PlayInSeeds(7, tournamentContainer.get8PlayInSeeds()[4]); tournamentContainer.set8PlayInRegions(7, tournamentContainer.get8PlayInRegions()[4]); //FILL CHAMPIONSHIP TOURNAMENT ARRAY WITH NON SEEDED PLAY IN TEAMS //FIND RANKINGS INDEX foundIndex = Array.IndexOf(tournamentContainer.getRanked68ChampTournIndexes(), tournamentContainer.get8PlayInIndexes()[2]); tournamentContainer.setRanked68ChampTournIndexes(foundIndex, tournamentContainer.get8PlayInIndexes()[2]); tournamentContainer.setRanked68ChampTournSeeds(foundIndex, tournamentContainer.get8PlayInSeeds()[2]); tournamentContainer.setRanked68ChampTournRegions(foundIndex, tournamentContainer.get8PlayInRegions()[2]); foundIndex = Array.IndexOf(tournamentContainer.getRanked68ChampTournIndexes(), tournamentContainer.get8PlayInIndexes()[3]); tournamentContainer.setRanked68ChampTournIndexes(foundIndex, tournamentContainer.get8PlayInIndexes()[3]); tournamentContainer.setRanked68ChampTournSeeds(foundIndex, tournamentContainer.get8PlayInSeeds()[3]); tournamentContainer.setRanked68ChampTournRegions(foundIndex, tournamentContainer.get8PlayInRegions()[3]); foundIndex = Array.IndexOf(tournamentContainer.getRanked68ChampTournIndexes(), tournamentContainer.get8PlayInIndexes()[6]); tournamentContainer.setRanked68ChampTournIndexes(foundIndex, tournamentContainer.get8PlayInIndexes()[6]); tournamentContainer.setRanked68ChampTournSeeds(foundIndex, tournamentContainer.get8PlayInSeeds()[6]); tournamentContainer.setRanked68ChampTournRegions(foundIndex, tournamentContainer.get8PlayInRegions()[6]); foundIndex = Array.IndexOf(tournamentContainer.getRanked68ChampTournIndexes(), tournamentContainer.get8PlayInIndexes()[7]); tournamentContainer.setRanked68ChampTournIndexes(foundIndex, tournamentContainer.get8PlayInIndexes()[7]); tournamentContainer.setRanked68ChampTournSeeds(foundIndex, tournamentContainer.get8PlayInSeeds()[7]); tournamentContainer.setRanked68ChampTournRegions(foundIndex, tournamentContainer.get8PlayInRegions()[7]); //FILL REMAINING OVERALL RANKINGS-------------------------------------- //ADD REMAINING TEAMS FROM RANKINGS //FOR ALL REMAINING TEAMS for (int teamIndex = 68; teamIndex < tournamentContainer.getRanked353ChampTournReturnIndexes().Length; teamIndex++) { //FIND TEAM TO ADD TO TOURNAMENT do { //IF NOT IN ARRAY if (Array.IndexOf(arrayInt68ChampTournIndexes, arrayIntRanked353TeamIndexes[rankIndex]) < 0) { tournamentContainer.setRanked353ChampTournReturnIndexes(teamIndex, arrayIntRanked353TeamIndexes[rankIndex]); rankIndex++; break; }//END IF rankIndex++; } while (rankIndex < tournamentContainer.getRanked353ChampTournReturnIndexes().Length); //END DO WHILE } //END FOR } //END