diff --git a/app/models/weight.rb b/app/models/weight.rb index c54aa7c..b76fdf4 100644 --- a/app/models/weight.rb +++ b/app/models/weight.rb @@ -96,6 +96,8 @@ class Weight < ActiveRecord::Base return "fourPoolsToSemi" elsif self.wrestlers.size > 16 && self.wrestlers.size <= 24 return "eightPoolsToQuarter" + elsif self.wrestlers.size <= 6 + return "onePool" end end diff --git a/app/services/wrestler_services/pool_bracket_placement_points.rb b/app/services/wrestler_services/pool_bracket_placement_points.rb index cb0964a..f32980a 100644 --- a/app/services/wrestler_services/pool_bracket_placement_points.rb +++ b/app/services/wrestler_services/pool_bracket_placement_points.rb @@ -2,6 +2,7 @@ class PoolBracketPlacementPoints def initialize(wrestler) @wrestler = wrestler @bracket = wrestler.weight.pool_bracket_type + @largest_bracket = wrestler.tournament.weights.sort_by{|w| w.wrestlers.size}.first.pool_bracket_type end def calcPoints @@ -21,6 +22,14 @@ class PoolBracketPlacementPoints end return @points end + + def number_of_placers + if @largest_bracket == "twoPoolsToSemi" or @largest_bracket == "twoPoolsToFinal" or @largest_bracket == "onePool" + return 4 + else + return 8 + end + end def whilePointsAreZero if @points == 0 @@ -108,34 +117,50 @@ class PoolBracketPlacementPoints end def firstPlace - 16 + if number_of_placers == 4 + return 14 + else + return 16 + end end def secondPlace - 12 + if number_of_placers == 4 + return 10 + else + return 12 + end end def thirdPlace - 10 + if number_of_placers == 4 + return 9 + else + return 7 + end end def fourthPlace - 9 + if number_of_placers == 4 + return 4 + else + return 7 + end end def fifthPlace - 7 + 5 end def sixthPlace - 6 + 3 end def seventhPlace - 4 + 2 end def eighthPlace - 3 + 1 end end diff --git a/app/views/static_pages/about.html.erb b/app/views/static_pages/about.html.erb index 5d7f437..06683f3 100644 --- a/app/views/static_pages/about.html.erb +++ b/app/views/static_pages/about.html.erb @@ -27,15 +27,58 @@
  • Win by tech fall: 1.5pt extra
  • Win by fall, default, dq: 2pt extra
  • BYE points: 2pt (if you win at least 1 match in a pool with a BYE)
  • -
  • 1st place: 16pt
  • -
  • 2nd place: 12pt
  • -
  • 3rd place: 10pt
  • -
  • 4th place: 9pt
  • -
  • 5th place: 7pt
  • -
  • 6th place: 6pt
  • -
  • 7th place: 4pt
  • -
  • 8th place: 3pt
  • +

    Placement points will happen as follows (based on the largest bracket of the tournament):

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Number of Places1st Place Points2nd Place Points3rd Place Points4th Place Points5th Place Points6th Place Points7th Place Points8th Place Points
    1st-4th141074
    1st-6th16129753
    1st-8th1612975321

    Finals matches will only recieve extra placement points for placing higher and bonus points for pin, tech, major, etc. Please note, only brackets with four pools place up to 8. Brackets with 1 or 2 pools only place top 4.


    Pool Types

    diff --git a/test/integration/eight_pool_match_generation_test.rb b/test/integration/eight_pool_match_generation_test.rb index 93ede5f..b52e896 100644 --- a/test/integration/eight_pool_match_generation_test.rb +++ b/test/integration/eight_pool_match_generation_test.rb @@ -72,12 +72,12 @@ class EightPoolMatchGenerationTest < ActionDispatch::IntegrationTest wrestler = get_wrestler_by_name("Test1") match.w1 = wrestler.id match.save - assert wrestler.reload.placement_points == 3 + assert wrestler.reload.placement_points == 1 match2 = @tournament.matches.select{|m| m.bracket_position == "Semis"}.first match2.w1 = wrestler.id match2.save - assert wrestler.reload.placement_points == 9 + assert wrestler.reload.placement_points == 7 end test "Run through all matches works" do diff --git a/test/integration/four_pool_to_quarter_generation_test.rb b/test/integration/four_pool_to_quarter_generation_test.rb index 6ebbc41..aa5cca0 100644 --- a/test/integration/four_pool_to_quarter_generation_test.rb +++ b/test/integration/four_pool_to_quarter_generation_test.rb @@ -72,12 +72,12 @@ class FourPoolToQuarterGenerationTest < ActionDispatch::IntegrationTest wrestler = get_wrestler_by_name("Test1") match.w1 = wrestler.id match.save - assert wrestler.reload.placement_points == 3 + assert wrestler.reload.placement_points == 1 match2 = @tournament.matches.select{|m| m.bracket_position == "Semis"}.first match2.w1 = wrestler.id match2.save - assert wrestler.reload.placement_points == 9 + assert wrestler.reload.placement_points == 7 end test "Run through all matches works" do diff --git a/test/integration/four_pool_to_semi_generation_test.rb b/test/integration/four_pool_to_semi_generation_test.rb index bac0135..5ab2166 100644 --- a/test/integration/four_pool_to_semi_generation_test.rb +++ b/test/integration/four_pool_to_semi_generation_test.rb @@ -66,12 +66,12 @@ class FourPoolToSemiGenerationTest < ActionDispatch::IntegrationTest wrestler = get_wrestler_by_name("Test1") match.w1 = wrestler.id match.save - assert wrestler.reload.placement_points == 3 + assert wrestler.reload.placement_points == 1 match2 = @tournament.matches.select{|m| m.bracket_position == "Semis"}.first match2.w1 = wrestler.id match2.save - assert wrestler.reload.placement_points == 9 + assert wrestler.reload.placement_points == 7 end test "Run through all matches works" do diff --git a/test/integration/two_pool_to_semi_generation_test.rb b/test/integration/two_pool_to_semi_generation_test.rb index 2ef278e..6ad1988 100644 --- a/test/integration/two_pool_to_semi_generation_test.rb +++ b/test/integration/two_pool_to_semi_generation_test.rb @@ -51,7 +51,7 @@ class TwoPoolToSemiGenerationTest < ActionDispatch::IntegrationTest wrestler = get_wrestler_by_name("Test1") match.w1 = wrestler.id match.save - assert wrestler.reload.placement_points == 9 + assert wrestler.reload.placement_points == 4 end test "Run through all matches works" do