Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var seeds = [
- 1,2,3,4,5,6,7,8
- ],
- num_rounds = Math.log(seeds.length)/Math.log(2);
- // 2-dimensional array
- // Each subarray holds the seeds active in that round in order of matches played
- // Example:
- // seeds in first match of 2nd round are: seed_round[1][0] & seed_round[1][1]
- var seed_rounds = [];
- // Create empty arrays inside seed_round
- for(var i = 0; i < num_rounds; i++) {
- seed_rounds[i] = [];
- }
- // Assuming no upsets
- // Final is seed 1 and seed 2
- seed_rounds[num_rounds] = [ seeds[0], seeds[1] ];
- // For each round in the bracket
- for(var r = num_rounds; r > 0; r--) {
- var round = seed_rounds[r];
- var feed_round = seed_rounds[r - 1];
- // For each seed in the round, work out who they defeated in previous round, storing result
- for(var m = 0; m < round.length; m++) {
- var num_teams_in_round = round.length * 2;
- // Feeder match seed A = current match seed "m"
- feed_round[m * 2] = round[m];
- // Feeder match seed B = # teams in feeder round plus 1 minus current match seed "m"
- feed_round[(m * 2) + 1] = num_teams_in_round + 1 - round[m];
- }
- }
- var firstHalf = [];
- var secondHalf = [];
- for(var i = 0; i < (seeds.length / 2); i++) {
- firstHalf[i] = seed_rounds[1][i];
- }
- for(var i = 0; i < num_rounds; i++) {
- secondHalf[i] = seed_rounds[1].slice((seeds.length / 2), (seeds.length));
- }
- secondHalf[1].reverse();
- var newSeeds = firstHalf.concat(secondHalf[1]);
- var singleElim8Data = {
- teams : [ // Matchups
- [ newSeeds[0], newSeeds[1] ],
- [ newSeeds[2], newSeeds[3] ],
- [ newSeeds[4], newSeeds[5] ],
- [ newSeeds[6], newSeeds[7] ]
- ],
- results : [[
- [ [1, 0], [1, 0], [0, 1], [0,1] ],
- [ [1, 0], [0, 1] ],
- [ [1, 0], [0, 1] ]
- ]]
- }
- $(function() {
- $('#singleElim8').bracket({
- init: singleElim8Data
- })
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement