baseball 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 89ba7861f9a4ff6ab8eb9e593ce96fd98d6ad93ff6fecf95d18ef755bfeeac51
4
- data.tar.gz: e397f50bca09a4954b1eca3b7111dd5d0445712d37608633a92240e80f3b7cc3
3
+ metadata.gz: aa54caafe28d80c5f1d5bfd3fb52d58d3e0b5dd84b787c90b7eeb97208be8439
4
+ data.tar.gz: 82ac54c8286efde8e7874d55932f45a5e51cf1936b18baf61aa0c6c5737cef5a
5
5
  SHA512:
6
- metadata.gz: ebaaad7c2bf243d2fb2a0fed2cceb220ce6f89ca778b0c2d49b481f979c8ffbc2d429005cbfba187eb16fd4fcb14a923ad6d205667af62c6d1d1a5e49a546f85
7
- data.tar.gz: aafd95eee82921c51f340a03191b74b19e7441c0d8c71d3564ffe5365fc5020b0cf8e96fd48e3a7f891ecdf33d59d31ae7ea543afd3514736f75015cc2769aa8
6
+ metadata.gz: '038b299268c4e9914c98ca2a57e1fa363edb906f57c3743f3f47cd04297e1751be12ef85f8712aeb82c355660688ba92b5002b07c59b60c5245a490fdf1605f5'
7
+ data.tar.gz: 64f7aa0f21c737b3b3e3b2e97ca1497831a68ce371ad9413dbbaae52a32800310209bb0f2ad525942d757cb618688d75d1f37461791f5fe631667d9232058807
@@ -7,8 +7,7 @@ module Batting
7
7
  def batting_average
8
8
  avg = @player[:hits].to_f / @player[:at_bats].to_f
9
9
  player_average = avg.round(3)
10
- batting_average_string = player_average.to_s.sub!("0", "")
11
- figure_trailing_zeroes(batting_average_string)
10
+ figure_lead_and_trailing_zeroes(player_average)
12
11
  end
13
12
 
14
13
  def obp
@@ -16,16 +15,14 @@ module Batting
16
15
  times_at_plate = @player[:at_bats].to_f + @player[:walks].to_f + @player[:hbp].to_f + @player[:sac_flies]
17
16
  obp = times_on_base.to_f / times_at_plate.to_f
18
17
  player_obp = obp.round(3)
19
- player_obp_string = player_obp.to_s.sub!("0", "")
20
- figure_trailing_zeroes(player_obp_string)
18
+ figure_lead_and_trailing_zeroes(player_obp)
21
19
  end
22
20
 
23
21
  def slugging_percentage
24
22
  total_bases = @player[:singles] + (@player[:doubles] * 2) + (@player[:triples] * 3) + @player[:hr] * 4
25
23
  slg = total_bases.to_f / @player[:at_bats].to_f
26
24
  slg = slg.round(3)
27
- slg_string = slg.to_s.sub!("0", "")
28
- figure_trailing_zeroes(slg_string)
25
+ figure_lead_and_trailing_zeroes(slg)
29
26
  end
30
27
 
31
28
  def ops
@@ -33,22 +30,11 @@ module Batting
33
30
  player_ops_string = player_ops.round(3)
34
31
  player_ops_string = player_ops_string.to_s
35
32
  if player_ops_string[0] === "0"
36
- player_ops_string.to_s.sub!("0", "")
33
+ remove_leading_zero(player_ops_string)
37
34
  else
38
- return player_ops_string
35
+ player_ops_string
39
36
  end
40
37
  end
41
-
42
- def base_runs
43
- # a = hits + walks - hr
44
- # b = (1.4 * totalbases - .6 * hits - 3 * HR + .1 * BB) * 1.02
45
- # c = AB - Hits
46
- # D = HR
47
-
48
- # x = (A * B) / (B + C)
49
- # x + D
50
- end
51
-
52
38
  end
53
39
 
54
40
  end
@@ -9,8 +9,7 @@ module Fielding
9
9
  plays_plus_errors = plays + @player[:errors]
10
10
  player_avg = plays.to_f / plays_plus_errors.to_f
11
11
  avg = player_avg.round(3)
12
- fielding_percentage = avg.to_s.sub!("0", "")
13
- figure_trailing_zeroes(fielding_percentage)
12
+ figure_lead_and_trailing_zeroes(avg)
14
13
  end
15
14
  end
16
15
 
@@ -12,7 +12,7 @@ module Pitching
12
12
  end
13
13
 
14
14
  def whip
15
- corrected_innings = third_inning_handler(@player[:ip]).to_f
15
+ corrected_innings = third_of_an_inning_handler(@player[:ip]).to_f
16
16
  walks_plus_hits = @player[:walks] + @player[:hits]
17
17
  figured_whip = walks_plus_hits / corrected_innings
18
18
  figured_whip = figured_whip.round(3)
@@ -6,8 +6,8 @@ module Player
6
6
  @player = player
7
7
  end
8
8
 
9
- def figure_trailing_zeroes(arg)
10
- revised_number = arg
9
+ def figure_lead_and_trailing_zeroes(arg)
10
+ revised_number = self.remove_leading_zero(arg)
11
11
 
12
12
  if revised_number.length === 3
13
13
  revised_number = "#{revised_number}0"
@@ -18,24 +18,26 @@ module Player
18
18
  end
19
19
  end
20
20
 
21
- def third_inning_handler(innings)
21
+ def third_of_an_inning_handler(innings)
22
22
  innings_string = innings.to_s
23
23
  final_fig = innings_string[0..(innings_string.length - 2)]
24
24
  final_num = innings_string[(innings_string.length - 2)..innings_string.length].to_f
25
-
25
+ returnable_innings = final_fig.to_f
26
26
  if final_num == 0.1
27
- returnable_innings = final_fig.to_f
28
27
  returnable_innings += 0.33
29
28
  returnable_innings.to_s
30
29
  elsif final_num == 0.2
31
- returnable_innings = final_fig.to_f
32
30
  returnable_innings += 0.66
33
31
  returnable_innings.to_s
34
32
  else
35
- return innings
33
+ innings
36
34
  end
37
35
  end
38
36
 
37
+ def remove_leading_zero(arg)
38
+ arg.to_s.sub("0", "")
39
+ end
40
+
39
41
  end
40
42
 
41
43
  end
@@ -7,8 +7,8 @@ module Running
7
7
  def stolen_base_percentage
8
8
  player_stolen_base_percentage = @player[:stolen_bases].to_f / (@player[:stolen_bases ].to_f + @player[:caught_stealing].to_f)
9
9
  stealing_average = player_stolen_base_percentage.round(3)
10
- average_string = stealing_average.to_s.sub!("0", "")
11
- figure_trailing_zeroes(average_string)
10
+ average_string = remove_leading_zero(stealing_average)
11
+ figure_lead_and_trailing_zeroes(average_string)
12
12
  end
13
13
 
14
14
  def stolen_base_runs
@@ -17,8 +17,6 @@ module Running
17
17
  adjusted_stolen_base_runs = stolen_base_adjustment - caught_stealing_adjustment
18
18
  base_runs = adjusted_stolen_base_runs.round(3)
19
19
  return base_runs.to_s
20
- #Created by Total baseball
21
- # (.3 x stolen bases) - (.6 x caught stealing)
22
20
  end
23
21
  end
24
22
 
@@ -1,3 +1,3 @@
1
1
  module Baseball
2
- VERSION = "1.0.0"
2
+ VERSION = "1.1.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: baseball
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brent Busby
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-03-20 00:00:00.000000000 Z
11
+ date: 2018-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler