mirror of
https://github.com/jcwimer/wrestlingApp
synced 2026-04-05 22:21:26 +00:00
Random seeding now works
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
module GeneratesTournamentMatches
|
||||
|
||||
def generateMatchups
|
||||
resetSchoolScores
|
||||
setSeedsAndRandomSeedingWrestlersWithoutSeeds
|
||||
poolToBracket() if tournament_type == "Pool to bracket"
|
||||
matches
|
||||
end
|
||||
@@ -9,7 +11,6 @@ module GeneratesTournamentMatches
|
||||
end
|
||||
|
||||
def poolToBracket
|
||||
resetSchoolScores
|
||||
destroyAllMatches
|
||||
buildTournamentWeights
|
||||
generateMatches
|
||||
@@ -39,5 +40,11 @@ module GeneratesTournamentMatches
|
||||
m.save
|
||||
end
|
||||
end
|
||||
|
||||
def setSeedsAndRandomSeedingWrestlersWithoutSeeds
|
||||
weights.each do |w|
|
||||
w.setSeeds
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -49,7 +49,7 @@ class Weight < ActiveRecord::Base
|
||||
end
|
||||
|
||||
def onePoolNumbers(wrestlers)
|
||||
wrestlers.sort_by{|x|[x.original_seed]}.each do |w|
|
||||
wrestlers.sort_by{|x|[x.seed]}.each do |w|
|
||||
w.poolNumber = 1
|
||||
end
|
||||
return wrestlers
|
||||
@@ -58,14 +58,14 @@ class Weight < ActiveRecord::Base
|
||||
|
||||
def twoPoolNumbers(wrestlers)
|
||||
pool = 1
|
||||
wrestlers.sort_by{|x|[x.original_seed]}.reverse.each do |w|
|
||||
if w.original_seed == 1
|
||||
wrestlers.sort_by{|x|[x.seed]}.reverse.each do |w|
|
||||
if w.seed == 1
|
||||
w.poolNumber = 1
|
||||
elsif w.original_seed == 2
|
||||
elsif w.seed == 2
|
||||
w.poolNumber = 2
|
||||
elsif w.original_seed == 3
|
||||
elsif w.seed == 3
|
||||
w.poolNumber = 2
|
||||
elsif w.original_seed == 4
|
||||
elsif w.seed == 4
|
||||
w.poolNumber = 1
|
||||
else
|
||||
w.poolNumber = pool
|
||||
@@ -81,14 +81,14 @@ class Weight < ActiveRecord::Base
|
||||
|
||||
def fourPoolNumbers(wrestlers)
|
||||
pool = 1
|
||||
wrestlers.sort_by{|x|[x.original_seed]}.reverse.each do |w|
|
||||
if w.original_seed == 1
|
||||
wrestlers.sort_by{|x|[x.seed]}.reverse.each do |w|
|
||||
if w.seed == 1
|
||||
w.poolNumber = 1
|
||||
elsif w.original_seed == 2
|
||||
elsif w.seed == 2
|
||||
w.poolNumber = 2
|
||||
elsif w.original_seed == 3
|
||||
elsif w.seed == 3
|
||||
w.poolNumber = 3
|
||||
elsif w.original_seed == 4
|
||||
elsif w.seed == 4
|
||||
w.poolNumber = 4
|
||||
else
|
||||
w.poolNumber = pool
|
||||
@@ -141,4 +141,26 @@ class Weight < ActiveRecord::Base
|
||||
def poolOrder(pool)
|
||||
PoolOrder.new(wrestlersForPool(pool)).getPoolOrder
|
||||
end
|
||||
|
||||
def randomSeeding
|
||||
wrestlerWithSeeds = wrestlers.select{|w| w.original_seed != nil }.sort_by{|w| w.original_seed}
|
||||
highestSeed = wrestlerWithSeeds.last.original_seed
|
||||
seed = highestSeed
|
||||
wrestlersWithoutSeed = wrestlers.select{|w| w.original_seed == nil }
|
||||
wrestlersWithoutSeed.shuffle.each do |w|
|
||||
w.seed = seed
|
||||
w.save
|
||||
seed += 1
|
||||
end
|
||||
end
|
||||
|
||||
def setSeeds
|
||||
wrestlerWithSeeds = wrestlers.select{|w| w.original_seed != nil }.sort_by{|w| w.original_seed}
|
||||
wrestlerWithSeeds.each do |w|
|
||||
w.seed = w.original_seed
|
||||
w.save
|
||||
end
|
||||
randomSeeding
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user