1
0
mirror of https://github.com/jcwimer/wrestlingApp synced 2026-04-29 02:12:59 +00:00

Added 16 man modified double elimination bracket type. Still need to fix swap wrestlers code.

This commit is contained in:
2020-01-23 07:46:23 -05:00
parent 314124107c
commit ff102a1862
18 changed files with 744 additions and 265 deletions

View File

@@ -25,7 +25,9 @@ class CalculateWrestlerTeamScore
end
def placement_points
PoolBracketPlacementPoints.new(@wrestler).calcPoints if @tournament.tournament_type == "Pool to bracket"
return PoolBracketPlacementPoints.new(@wrestler).calcPoints if @tournament.tournament_type == "Pool to bracket"
return ModifiedSixteenManPlacementPoints.new(@wrestler).calc_points if @tournament.tournament_type == "Modified 16 Man Double Elimination"
return 0
end
def bracketPoints

View File

@@ -0,0 +1,32 @@
class ModifiedSixteenManPlacementPoints
def initialize(wrestler)
@wrestler = wrestler
@number_of_placers = 6
end
def calc_points
if won_bracket_position_size("1/2") > 0
return PlacementPoints.new(@number_of_placers).firstPlace
elsif bracket_position_size("1/2") > 0
return PlacementPoints.new(@number_of_placers).secondPlace
elsif won_bracket_position_size("3/4") > 0
return PlacementPoints.new(@number_of_placers).thirdPlace
elsif bracket_position_size("Semis") > 0
return PlacementPoints.new(@number_of_placers).fourthPlace
elsif won_bracket_position_size("5/6") > 0
return PlacementPoints.new(@number_of_placers).fifthPlace
elsif bracket_position_size("5/6") > 0
return PlacementPoints.new(@number_of_placers).sixthPlace
else
return 0
end
end
def bracket_position_size(bracket_position_name)
@wrestler.all_matches.select{|m| m.bracket_position == bracket_position_name}.size
end
def won_bracket_position_size(bracket_position_name)
@wrestler.matches_won.select{|m| m.bracket_position == bracket_position_name}.size
end
end

View File

@@ -0,0 +1,53 @@
class PlacementPoints
def initialize(number_of_placers)
@number_of_placers = number_of_placers
end
def firstPlace
if @number_of_placers == 4
return 14
else
return 16
end
end
def secondPlace
if @number_of_placers == 4
return 10
else
return 12
end
end
def thirdPlace
if @number_of_placers == 4
return 9
else
return 7
end
end
def fourthPlace
if @number_of_placers == 4
return 4
else
return 7
end
end
def fifthPlace
5
end
def sixthPlace
3
end
def seventhPlace
2
end
def eighthPlace
1
end
end

View File

@@ -48,120 +48,72 @@ class PoolBracketPlacementPoints
def fourPoolsToQuarter
if bracket_position_size("Semis") > 0
return fourthPlace
return PlacementPoints.new(number_of_placers).fourthPlace
end
if bracket_position_size("Quarter") > 0
return eighthPlace
return PlacementPoints.new(number_of_placers).eighthPlace
end
return 0
end
def twoPoolsToSemi
if bracket_position_size("Semis") > 0
return fourthPlace
return PlacementPoints.new(number_of_placers).fourthPlace
end
if bracket_position_size("Conso Semis") > 0
return eighthPlace
return PlacementPoints.new(number_of_placers).eighthPlace
end
return 0
end
def fourPoolsToSemi
if bracket_position_size("Semis") > 0
return fourthPlace
return PlacementPoints.new(number_of_placers).fourthPlace
end
if bracket_position_size("Conso Semis") > 0
return eighthPlace
return PlacementPoints.new(number_of_placers).eighthPlace
end
return 0
end
def onePool
if @wrestler.pool_placement == 1
return firstPlace
return PlacementPoints.new(number_of_placers).firstPlace
elsif @wrestler.pool_placement == 2
return secondPlace
return PlacementPoints.new(number_of_placers).secondPlace
elsif @wrestler.pool_placement == 3
return thirdPlace
return PlacementPoints.new(number_of_placers).thirdPlace
elsif @wrestler.pool_placement == 4
return fourthPlace
return PlacementPoints.new(number_of_placers).fourthPlace
end
return 0
end
def finalMatchPoints
if won_bracket_position_size("1/2") > 0
return firstPlace
return PlacementPoints.new(number_of_placers).firstPlace
end
if won_bracket_position_size("3/4") > 0
return thirdPlace
return PlacementPoints.new(number_of_placers).thirdPlace
end
if won_bracket_position_size("5/6") > 0
return fifthPlace
return PlacementPoints.new(number_of_placers).fifthPlace
end
if won_bracket_position_size("7/8") > 0
return seventhPlace
return PlacementPoints.new(number_of_placers).seventhPlace
end
if bracket_position_size("1/2") > 0
return secondPlace
return PlacementPoints.new(number_of_placers).secondPlace
end
if bracket_position_size("3/4") > 0
return fourthPlace
return PlacementPoints.new(number_of_placers).fourthPlace
end
if bracket_position_size("5/6") > 0
return sixthPlace
return PlacementPoints.new(number_of_placers).sixthPlace
end
if bracket_position_size("7/8") > 0
return eighthPlace
return PlacementPoints.new(number_of_placers).eighthPlace
end
return 0
end
def firstPlace
if number_of_placers == 4
return 14
else
return 16
end
end
def secondPlace
if number_of_placers == 4
return 10
else
return 12
end
end
def thirdPlace
if number_of_placers == 4
return 9
else
return 7
end
end
def fourthPlace
if number_of_placers == 4
return 4
else
return 7
end
end
def fifthPlace
5
end
def sixthPlace
3
end
def seventhPlace
2
end
def eighthPlace
1
end
end