1
0
mirror of https://github.com/jcwimer/wrestlingApp synced 2026-03-25 01:14:43 +00:00

Added team points for double elimination

This commit is contained in:
2020-01-24 14:27:53 -05:00
parent 1198171653
commit 66f7a7ab3e
2 changed files with 39 additions and 0 deletions

View File

@@ -27,6 +27,7 @@ class CalculateWrestlerTeamScore
def placement_points
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 DoubleEliminationPlacementPoints.new(@wrestler).calc_points if @tournament.tournament_type == "Double Elimination 1-6"
return 0
end

View File

@@ -0,0 +1,38 @@
class DoubleEliminationPlacementPoints
def initialize(wrestler)
@wrestler = wrestler
if wrestler.tournament.tournament_type == "Double Elimination 1-6"
@number_of_placers = 6
end
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("3/4") > 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("Semis") > 0 or bracket_position_size("Conso Semis") > 0) and @number_of_placers >= 6
return PlacementPoints.new(@number_of_placers).sixthPlace
elsif won_bracket_position_size("7/8") > 0
return PlacementPoints.new(@number_of_placers).seventhPlace
elsif bracket_position_size("Conso Quarter") > 0 and @number_of_placers >= 8
return PlacementPoints.new(@number_of_placers).eigthPlace
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