baseball 0.3.1 → 0.4.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 +4 -4
- data/lib/baseball.rb +2 -1
- data/lib/baseball/batting.rb +2 -7
- data/lib/baseball/fielding.rb +2 -7
- data/lib/baseball/pitching.rb +7 -9
- data/lib/baseball/player.rb +22 -0
- data/lib/baseball/running.rb +4 -9
- data/lib/baseball/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3282ac577b06b9350a668b2f4c8731e79b798514b4d226a2c9c8cc2365383135
|
4
|
+
data.tar.gz: b97971236e840d43777772ac7dbc26e64a194a12aa2605c2ac1c4b2fe9f8c7d6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 56aa6a66e48a6e7f5eb431ec5616421ef9ce8262c2023c8c133c59e0966679ee3202911ffd75b3e1b6a5a606d332b685fbbd348ab6e065096435751011c03c26
|
7
|
+
data.tar.gz: 445fd6f352b879b7e664e88aa95414c88e87732b96d85df96fe9c8bb169adf181754c6132a044fb25e6a19f5028435716a294501b2fae7466b22d670182b1005
|
data/lib/baseball.rb
CHANGED
@@ -3,6 +3,7 @@ require 'baseball/batting'
|
|
3
3
|
require 'baseball/pitching'
|
4
4
|
require 'baseball/fielding'
|
5
5
|
require 'baseball/running'
|
6
|
+
require 'baseball/player'
|
6
7
|
|
7
8
|
module Baseball
|
8
9
|
|
@@ -66,5 +67,5 @@ module Baseball
|
|
66
67
|
runner = Runner.new(runner_hash)
|
67
68
|
runner.stolen_base_percentage
|
68
69
|
end
|
69
|
-
|
70
|
+
|
70
71
|
end
|
data/lib/baseball/batting.rb
CHANGED
@@ -1,13 +1,8 @@
|
|
1
|
-
require 'baseball/
|
1
|
+
require 'baseball/player'
|
2
2
|
|
3
3
|
module Batting
|
4
4
|
|
5
|
-
class Batter
|
6
|
-
include Helper
|
7
|
-
attr_accessor :player_hash
|
8
|
-
def initialize(player_hash)
|
9
|
-
@player = player_hash
|
10
|
-
end
|
5
|
+
class Batter < Player::PlayerTemplate
|
11
6
|
|
12
7
|
def batting_average
|
13
8
|
avg = @player[:hits].to_f / @player[:at_bats].to_f
|
data/lib/baseball/fielding.rb
CHANGED
@@ -1,13 +1,8 @@
|
|
1
|
-
require 'baseball/
|
1
|
+
require 'baseball/player'
|
2
2
|
|
3
3
|
module Fielding
|
4
4
|
|
5
|
-
class Fielder
|
6
|
-
include Helper
|
7
|
-
attr_accessor :player_hash
|
8
|
-
def initialize(player_hash)
|
9
|
-
@player = player_hash
|
10
|
-
end
|
5
|
+
class Fielder < Player::PlayerTemplate
|
11
6
|
|
12
7
|
def fielding_percentage
|
13
8
|
plays = @player[:put_outs] + @player[:assists]
|
data/lib/baseball/pitching.rb
CHANGED
@@ -1,20 +1,18 @@
|
|
1
|
+
require 'baseball/player'
|
2
|
+
|
1
3
|
module Pitching
|
4
|
+
class Pitcher < Player::PlayerTemplate
|
2
5
|
|
3
|
-
class Pitcher
|
4
|
-
attr_accessor :pitcher_hash
|
5
|
-
def initialize(pitcher_hash)
|
6
|
-
@pitcher = pitcher_hash
|
7
|
-
end
|
8
6
|
|
9
7
|
def era
|
10
|
-
earned_runs = @
|
11
|
-
avg = earned_runs / @
|
8
|
+
earned_runs = @player[:er] * 9
|
9
|
+
avg = earned_runs / @player[:ip].to_f
|
12
10
|
earned_run_average = avg.round(2)
|
13
11
|
end
|
14
12
|
|
15
13
|
def whip
|
16
|
-
walks_plus_hits = @
|
17
|
-
whip = walks_plus_hits / @
|
14
|
+
walks_plus_hits = @player[:walks] + @player[:hits]
|
15
|
+
whip = walks_plus_hits / @player[:ip].to_f
|
18
16
|
whip = whip.round(3)
|
19
17
|
end
|
20
18
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Player
|
2
|
+
|
3
|
+
class PlayerTemplate
|
4
|
+
attr_accessor :player
|
5
|
+
def initialize(player)
|
6
|
+
@player = player
|
7
|
+
end
|
8
|
+
|
9
|
+
def figure_trailing_zeroes(arg)
|
10
|
+
revised_number = arg
|
11
|
+
if revised_number.length === 3
|
12
|
+
revised_number = "#{revised_number}0"
|
13
|
+
elsif revised_number.length === 2
|
14
|
+
revised_number = "#{revised_number}00"
|
15
|
+
else
|
16
|
+
return revised_number
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
data/lib/baseball/running.rb
CHANGED
@@ -1,16 +1,11 @@
|
|
1
|
-
require 'baseball/
|
1
|
+
require 'baseball/player'
|
2
2
|
|
3
3
|
module Running
|
4
4
|
|
5
|
-
class Runner
|
6
|
-
include Helper
|
7
|
-
attr_accessor :runner_hash
|
8
|
-
def initialize(runner_hash)
|
9
|
-
@runner = runner_hash
|
10
|
-
end
|
5
|
+
class Runner < Player::PlayerTemplate
|
11
6
|
|
12
7
|
def stolen_base_percentage
|
13
|
-
player_stolen_base_percentage = @
|
8
|
+
player_stolen_base_percentage = @player[:stolen_bases].to_f / (@player[:stolen_bases ].to_f + @player[:caught_stealing].to_f)
|
14
9
|
stealing_average = player_stolen_base_percentage.round(3)
|
15
10
|
average_string = stealing_average.to_s.sub!("0", "")
|
16
11
|
figure_trailing_zeroes(average_string)
|
@@ -21,5 +16,5 @@ module Running
|
|
21
16
|
# (.3 x stolen bases) - (.6 x caught stealing)
|
22
17
|
end
|
23
18
|
end
|
24
|
-
|
19
|
+
|
25
20
|
end
|
data/lib/baseball/version.rb
CHANGED
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: 0.
|
4
|
+
version: 0.4.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-
|
11
|
+
date: 2018-03-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -59,6 +59,7 @@ files:
|
|
59
59
|
- lib/baseball/fielding.rb
|
60
60
|
- lib/baseball/helper.rb
|
61
61
|
- lib/baseball/pitching.rb
|
62
|
+
- lib/baseball/player.rb
|
62
63
|
- lib/baseball/running.rb
|
63
64
|
- lib/baseball/version.rb
|
64
65
|
homepage: https://github.com/buzzamus/baseball-gem
|