nba 0.1.1 → 0.2.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 +5 -5
- data/AGENTS.md +362 -0
- data/CHANGELOG.md +169 -0
- data/CLAUDE.md +1 -0
- data/LICENSE +21 -0
- data/README.md +501 -101
- data/bin/console +10 -0
- data/bin/setup +6 -0
- data/exe/nba +8 -0
- data/lib/nba/all_time_leader.rb +77 -0
- data/lib/nba/all_time_leaders.rb +185 -0
- data/lib/nba/assist_leader.rb +92 -0
- data/lib/nba/assist_leaders.rb +64 -0
- data/lib/nba/assist_tracker.rb +108 -0
- data/lib/nba/assist_tracker_entry.rb +206 -0
- data/lib/nba/award.rb +128 -0
- data/lib/nba/box_score.rb +2 -0
- data/lib/nba/box_score_advanced.rb +114 -0
- data/lib/nba/box_score_advanced_player_stat.rb +297 -0
- data/lib/nba/box_score_advanced_team_stat.rb +237 -0
- data/lib/nba/box_score_advanced_v3.rb +124 -0
- data/lib/nba/box_score_defensive_player_stat.rb +281 -0
- data/lib/nba/box_score_defensive_team_stat.rb +85 -0
- data/lib/nba/box_score_defensive_v2.rb +190 -0
- data/lib/nba/box_score_four_factors.rb +91 -0
- data/lib/nba/box_score_four_factors_player_stat.rb +185 -0
- data/lib/nba/box_score_four_factors_team_stat.rb +141 -0
- data/lib/nba/box_score_four_factors_v3.rb +133 -0
- data/lib/nba/box_score_hustle.rb +226 -0
- data/lib/nba/box_score_hustle_player_stat.rb +233 -0
- data/lib/nba/box_score_hustle_team_stat.rb +189 -0
- data/lib/nba/box_score_matchup_stat.rb +417 -0
- data/lib/nba/box_score_matchups_v3.rb +184 -0
- data/lib/nba/box_score_misc.rb +100 -0
- data/lib/nba/box_score_misc_player_stat.rb +217 -0
- data/lib/nba/box_score_misc_team_stat.rb +173 -0
- data/lib/nba/box_score_misc_v3.rb +163 -0
- data/lib/nba/box_score_player_stat.rb +273 -0
- data/lib/nba/box_score_player_track.rb +223 -0
- data/lib/nba/box_score_player_track_stat.rb +273 -0
- data/lib/nba/box_score_player_track_team_stat.rb +229 -0
- data/lib/nba/box_score_scoring.rb +103 -0
- data/lib/nba/box_score_scoring_player_stat.rb +241 -0
- data/lib/nba/box_score_scoring_team_stat.rb +197 -0
- data/lib/nba/box_score_scoring_v3.rb +170 -0
- data/lib/nba/box_score_similarity_score.rb +119 -0
- data/lib/nba/box_score_similarity_stat.rb +76 -0
- data/lib/nba/box_score_starter_bench_stat.rb +257 -0
- data/lib/nba/box_score_summary.rb +285 -0
- data/lib/nba/box_score_summary_v2.rb +202 -0
- data/lib/nba/box_score_summary_v3.rb +120 -0
- data/lib/nba/box_score_summary_v3_data.rb +419 -0
- data/lib/nba/box_score_team_stat.rb +229 -0
- data/lib/nba/box_score_traditional.rb +101 -0
- data/lib/nba/box_score_traditional_v3.rb +195 -0
- data/lib/nba/box_score_usage.rb +102 -0
- data/lib/nba/box_score_usage_player_stat.rb +265 -0
- data/lib/nba/box_score_usage_team_stat.rb +221 -0
- data/lib/nba/box_score_usage_v3.rb +169 -0
- data/lib/nba/box_score_v3_helpers.rb +144 -0
- data/lib/nba/career_stats.rb +217 -0
- data/lib/nba/cli/display/player_display.rb +98 -0
- data/lib/nba/cli/display.rb +178 -0
- data/lib/nba/cli/formatters/game_formatters.rb +86 -0
- data/lib/nba/cli/formatters/leaders_formatters.rb +26 -0
- data/lib/nba/cli/formatters/player_formatters.rb +52 -0
- data/lib/nba/cli/formatters/standings_formatters.rb +26 -0
- data/lib/nba/cli/formatters/team_formatters.rb +67 -0
- data/lib/nba/cli/formatters/time_formatters.rb +82 -0
- data/lib/nba/cli/formatters.rb +56 -0
- data/lib/nba/cli/helpers.rb +135 -0
- data/lib/nba/cli.rb +171 -20
- data/lib/nba/client.rb +35 -0
- data/lib/nba/collection.rb +89 -0
- data/lib/nba/college_player_stat.rb +200 -0
- data/lib/nba/common_player_info.rb +142 -0
- data/lib/nba/common_playoff_series.rb +90 -0
- data/lib/nba/common_team_years.rb +113 -0
- data/lib/nba/conference.rb +39 -0
- data/lib/nba/connection.rb +84 -0
- data/lib/nba/cume_stats_player.rb +358 -0
- data/lib/nba/cume_stats_player_game.rb +217 -0
- data/lib/nba/cume_stats_player_games.rb +99 -0
- data/lib/nba/cume_stats_player_games_entry.rb +25 -0
- data/lib/nba/cume_stats_player_total.rb +481 -0
- data/lib/nba/cume_stats_team.rb +349 -0
- data/lib/nba/cume_stats_team_games.rb +145 -0
- data/lib/nba/cume_stats_team_games_entry.rb +25 -0
- data/lib/nba/cume_stats_team_player.rb +485 -0
- data/lib/nba/cume_stats_team_total.rb +267 -0
- data/lib/nba/data.rb +73 -0
- data/lib/nba/defense_hub.rb +109 -0
- data/lib/nba/defense_hub_stat.rb +57 -0
- data/lib/nba/defensive_shot_stat.rb +102 -0
- data/lib/nba/division.rb +49 -0
- data/lib/nba/draft_board.rb +126 -0
- data/lib/nba/draft_board_pick.rb +173 -0
- data/lib/nba/draft_combine_anthro_measurement.rb +163 -0
- data/lib/nba/draft_combine_drill_result.rb +115 -0
- data/lib/nba/draft_combine_drill_results.rb +112 -0
- data/lib/nba/draft_combine_non_stationary_shooting.rb +268 -0
- data/lib/nba/draft_combine_non_stationary_shooting_result.rb +355 -0
- data/lib/nba/draft_combine_player_anthro.rb +133 -0
- data/lib/nba/draft_combine_spot_shooting.rb +243 -0
- data/lib/nba/draft_combine_spot_shooting_result.rb +419 -0
- data/lib/nba/draft_combine_stat.rb +211 -0
- data/lib/nba/draft_combine_stats.rb +160 -0
- data/lib/nba/draft_history.rb +142 -0
- data/lib/nba/draft_pick.rb +154 -0
- data/lib/nba/dunk_score_leader.rb +93 -0
- data/lib/nba/dunk_score_leaders.rb +77 -0
- data/lib/nba/estimated_metrics_stat.rb +152 -0
- data/lib/nba/fantasy_profile_stat.rb +142 -0
- data/lib/nba/fantasy_widget.rb +72 -0
- data/lib/nba/fantasy_widget_player.rb +98 -0
- data/lib/nba/found_game.rb +260 -0
- data/lib/nba/franchise.rb +136 -0
- data/lib/nba/franchise_history.rb +142 -0
- data/lib/nba/franchise_leader.rb +147 -0
- data/lib/nba/franchise_leaders.rb +162 -0
- data/lib/nba/franchise_player.rb +224 -0
- data/lib/nba/franchise_players.rb +147 -0
- data/lib/nba/game.rb +80 -64
- data/lib/nba/game_log.rb +349 -0
- data/lib/nba/game_rotation.rb +152 -0
- data/lib/nba/game_streak.rb +102 -0
- data/lib/nba/games.rb +46 -0
- data/lib/nba/home_page_leader.rb +99 -0
- data/lib/nba/home_page_leaders.rb +75 -0
- data/lib/nba/home_page_stat.rb +57 -0
- data/lib/nba/home_page_v2.rb +110 -0
- data/lib/nba/hustle_stats_box_score.rb +182 -0
- data/lib/nba/infographic_fan_duel_player.rb +139 -0
- data/lib/nba/infographic_fan_duel_player_stat.rb +311 -0
- data/lib/nba/ist_standing.rb +167 -0
- data/lib/nba/ist_standings.rb +81 -0
- data/lib/nba/leader.rb +103 -0
- data/lib/nba/leaders.rb +110 -0
- data/lib/nba/leaders_tile.rb +57 -0
- data/lib/nba/leaders_tiles.rb +90 -0
- data/lib/nba/league.rb +37 -0
- data/lib/nba/league_dash_lineup_stat.rb +270 -0
- data/lib/nba/league_dash_lineups.rb +177 -0
- data/lib/nba/league_dash_opp_pt_shot.rb +150 -0
- data/lib/nba/league_dash_player_bio_stat.rb +217 -0
- data/lib/nba/league_dash_player_bio_stats.rb +164 -0
- data/lib/nba/league_dash_player_clutch.rb +212 -0
- data/lib/nba/league_dash_player_clutch_stat.rb +271 -0
- data/lib/nba/league_dash_player_pt_shot.rb +152 -0
- data/lib/nba/league_dash_player_pt_shot_stat.rb +193 -0
- data/lib/nba/league_dash_player_shot_location_stat.rb +265 -0
- data/lib/nba/league_dash_player_shot_locations.rb +210 -0
- data/lib/nba/league_dash_player_stat.rb +306 -0
- data/lib/nba/league_dash_player_stats.rb +176 -0
- data/lib/nba/league_dash_pt_defend.rb +160 -0
- data/lib/nba/league_dash_pt_defend_stat.rb +145 -0
- data/lib/nba/league_dash_pt_stats.rb +152 -0
- data/lib/nba/league_dash_pt_stats_stat.rb +169 -0
- data/lib/nba/league_dash_pt_team_defend.rb +158 -0
- data/lib/nba/league_dash_pt_team_defend_stat.rb +110 -0
- data/lib/nba/league_dash_team_clutch.rb +211 -0
- data/lib/nba/league_dash_team_clutch_stat.rb +237 -0
- data/lib/nba/league_dash_team_pt_shot.rb +150 -0
- data/lib/nba/league_dash_team_pt_shot_stat.rb +166 -0
- data/lib/nba/league_dash_team_shot_location_stat.rb +230 -0
- data/lib/nba/league_dash_team_shot_locations.rb +208 -0
- data/lib/nba/league_dash_team_stat.rb +275 -0
- data/lib/nba/league_dash_team_stats.rb +172 -0
- data/lib/nba/league_game_finder.rb +170 -0
- data/lib/nba/league_game_log.rb +224 -0
- data/lib/nba/league_hustle_stats_player.rb +161 -0
- data/lib/nba/league_hustle_stats_player_stat.rb +253 -0
- data/lib/nba/league_hustle_stats_team.rb +157 -0
- data/lib/nba/league_hustle_stats_team_stat.rb +179 -0
- data/lib/nba/league_lineup_viz.rb +184 -0
- data/lib/nba/league_lineup_viz_stat.rb +214 -0
- data/lib/nba/league_player_on_details.rb +175 -0
- data/lib/nba/league_player_on_details_stat.rb +313 -0
- data/lib/nba/league_season_matchup_stat.rb +241 -0
- data/lib/nba/league_season_matchups.rb +181 -0
- data/lib/nba/league_standing.rb +284 -0
- data/lib/nba/league_standings.rb +159 -0
- data/lib/nba/league_wide_shot_stat.rb +62 -0
- data/lib/nba/live_action.rb +240 -0
- data/lib/nba/live_box_score.rb +143 -0
- data/lib/nba/live_connection.rb +84 -0
- data/lib/nba/live_game.rb +230 -0
- data/lib/nba/live_play_by_play.rb +120 -0
- data/lib/nba/live_player_stat.rb +276 -0
- data/lib/nba/live_scoreboard.rb +102 -0
- data/lib/nba/matchup_rollup.rb +98 -0
- data/lib/nba/matchups_rollup.rb +81 -0
- data/lib/nba/pass_stat.rb +209 -0
- data/lib/nba/play.rb +258 -0
- data/lib/nba/play_by_play.rb +85 -0
- data/lib/nba/play_by_play_v3.rb +91 -0
- data/lib/nba/play_type_stat.rb +206 -0
- data/lib/nba/player.rb +242 -24
- data/lib/nba/player_awards.rb +110 -0
- data/lib/nba/player_career_by_college.rb +86 -0
- data/lib/nba/player_career_by_college_rollup.rb +143 -0
- data/lib/nba/player_career_stats.rb +77 -0
- data/lib/nba/player_compare.rb +156 -0
- data/lib/nba/player_comparison_stat.rb +242 -0
- data/lib/nba/player_dash_pt_pass.rb +164 -0
- data/lib/nba/player_dash_pt_reb.rb +235 -0
- data/lib/nba/player_dash_pt_shot_defend.rb +119 -0
- data/lib/nba/player_dash_pt_shots.rb +279 -0
- data/lib/nba/player_dashboard.rb +259 -0
- data/lib/nba/player_dashboard_stat.rb +248 -0
- data/lib/nba/player_estimated_metrics.rb +84 -0
- data/lib/nba/player_fantasy_profile_bar_graph.rb +147 -0
- data/lib/nba/player_game_log.rb +72 -0
- data/lib/nba/player_game_logs.rb +117 -0
- data/lib/nba/player_game_streak_finder.rb +108 -0
- data/lib/nba/player_index.rb +135 -0
- data/lib/nba/player_index_entry.rb +266 -0
- data/lib/nba/player_info.rb +225 -0
- data/lib/nba/player_next_n_games.rb +64 -0
- data/lib/nba/player_profile_v2.rb +169 -0
- data/lib/nba/player_vs_player.rb +153 -0
- data/lib/nba/players.rb +107 -0
- data/lib/nba/playoff_matchup.rb +84 -0
- data/lib/nba/playoff_picture.rb +98 -0
- data/lib/nba/playoff_series.rb +76 -0
- data/lib/nba/position.rb +48 -0
- data/lib/nba/rebound_stat.rb +189 -0
- data/lib/nba/response_parser.rb +116 -0
- data/lib/nba/roster.rb +74 -0
- data/lib/nba/rotation_entry.rb +154 -0
- data/lib/nba/schedule.rb +183 -0
- data/lib/nba/schedule_international.rb +182 -0
- data/lib/nba/scheduled_game.rb +240 -0
- data/lib/nba/scoreboard.rb +183 -0
- data/lib/nba/scoreboard_v3.rb +104 -0
- data/lib/nba/shot.rb +208 -0
- data/lib/nba/shot_chart.rb +75 -0
- data/lib/nba/shot_chart_league_wide.rb +102 -0
- data/lib/nba/shot_chart_lineup_detail.rb +109 -0
- data/lib/nba/shot_stat.rb +174 -0
- data/lib/nba/standing.rb +129 -0
- data/lib/nba/standings.rb +75 -0
- data/lib/nba/static.rb +107 -0
- data/lib/nba/synergy_play_types.rb +211 -0
- data/lib/nba/team.rb +203 -127
- data/lib/nba/team_and_players_vs_players.rb +227 -0
- data/lib/nba/team_and_players_vs_players_stat.rb +155 -0
- data/lib/nba/team_dash_pt_pass.rb +157 -0
- data/lib/nba/team_dash_pt_reb.rb +216 -0
- data/lib/nba/team_dash_pt_shots.rb +244 -0
- data/lib/nba/team_dashboard.rb +275 -0
- data/lib/nba/team_dashboard_stat.rb +248 -0
- data/lib/nba/team_detail.rb +117 -0
- data/lib/nba/team_details.rb +173 -0
- data/lib/nba/team_estimated_metrics.rb +91 -0
- data/lib/nba/team_estimated_metrics_stat.rb +146 -0
- data/lib/nba/team_game_log.rb +143 -0
- data/lib/nba/team_game_log_entry.rb +246 -0
- data/lib/nba/team_game_log_stat.rb +275 -0
- data/lib/nba/team_game_logs.rb +163 -0
- data/lib/nba/team_game_streak.rb +111 -0
- data/lib/nba/team_game_streak_finder.rb +109 -0
- data/lib/nba/team_historical_leader.rb +207 -0
- data/lib/nba/team_historical_leaders.rb +98 -0
- data/lib/nba/team_historical_record.rb +139 -0
- data/lib/nba/team_info.rb +150 -0
- data/lib/nba/team_info_common.rb +177 -0
- data/lib/nba/team_on_off_overall_stat.rb +477 -0
- data/lib/nba/team_on_off_player_stat.rb +523 -0
- data/lib/nba/team_on_off_player_summary.rb +135 -0
- data/lib/nba/team_pass_stat.rb +183 -0
- data/lib/nba/team_player_dashboard.rb +212 -0
- data/lib/nba/team_player_on_off_details.rb +218 -0
- data/lib/nba/team_player_on_off_summary.rb +214 -0
- data/lib/nba/team_player_stat.rb +275 -0
- data/lib/nba/team_rebound_stat.rb +189 -0
- data/lib/nba/team_season_rank.rb +110 -0
- data/lib/nba/team_shot_stat.rb +173 -0
- data/lib/nba/team_vs_player.rb +151 -0
- data/lib/nba/team_vs_player_stat.rb +157 -0
- data/lib/nba/team_year.rb +55 -0
- data/lib/nba/team_year_by_year_stats.rb +152 -0
- data/lib/nba/team_year_stat.rb +282 -0
- data/lib/nba/teams.rb +33 -0
- data/lib/nba/upcoming_game.rb +115 -0
- data/lib/nba/utils.rb +94 -0
- data/lib/nba/version.rb +5 -2
- data/lib/nba/video_detail.rb +103 -0
- data/lib/nba/video_details.rb +118 -0
- data/lib/nba/video_details_asset.rb +115 -0
- data/lib/nba/video_details_asset_entry.rb +91 -0
- data/lib/nba/video_event.rb +83 -0
- data/lib/nba/video_event_asset.rb +91 -0
- data/lib/nba/video_events.rb +106 -0
- data/lib/nba/video_events_asset.rb +107 -0
- data/lib/nba/video_status.rb +129 -0
- data/lib/nba/video_status_entry.rb +161 -0
- data/lib/nba/vs_player_stat.rb +156 -0
- data/lib/nba/win_probability.rb +117 -0
- data/lib/nba/win_probability_point.rb +140 -0
- data/lib/nba.rb +249 -5
- data/sig/equalizer.rbs +3 -0
- data/sig/nba.rbs +7297 -0
- data/sig/shale.rbs +24 -0
- data/sig/thor.rbs +19 -0
- metadata +324 -95
- data/.gitignore +0 -18
- data/.travis.yml +0 -22
- data/Gemfile +0 -23
- data/LICENSE.md +0 -22
- data/Rakefile +0 -18
- data/bin/nba +0 -7
- data/cache/teams.json +0 -16529
- data/lib/faraday_middleware/scrape_game.rb +0 -41
- data/lib/nba/request.rb +0 -37
- data/nba.gemspec +0 -28
- data/spec/fixtures/games.html +0 -785
- data/spec/fixtures/teams.json +0 -16529
- data/spec/game_spec.rb +0 -40
- data/spec/spec_helper.rb +0 -25
- data/spec/team_spec.rb +0 -93
|
@@ -0,0 +1,485 @@
|
|
|
1
|
+
require "equalizer"
|
|
2
|
+
require "shale"
|
|
3
|
+
|
|
4
|
+
module NBA
|
|
5
|
+
# Represents cumulative team statistics for a player
|
|
6
|
+
class CumeStatsTeamPlayer < Shale::Mapper
|
|
7
|
+
include Equalizer.new(:person_id)
|
|
8
|
+
|
|
9
|
+
# @!attribute [rw] person_id
|
|
10
|
+
# Returns the player person ID
|
|
11
|
+
# @api public
|
|
12
|
+
# @example
|
|
13
|
+
# player.person_id #=> 201939
|
|
14
|
+
# @return [Integer] the player person ID
|
|
15
|
+
attribute :person_id, Shale::Type::Integer
|
|
16
|
+
|
|
17
|
+
# @!attribute [rw] player_name
|
|
18
|
+
# Returns the player name
|
|
19
|
+
# @api public
|
|
20
|
+
# @example
|
|
21
|
+
# player.player_name #=> "Stephen Curry"
|
|
22
|
+
# @return [String] the player name
|
|
23
|
+
attribute :player_name, Shale::Type::String
|
|
24
|
+
|
|
25
|
+
# @!attribute [rw] jersey_num
|
|
26
|
+
# Returns the jersey number
|
|
27
|
+
# @api public
|
|
28
|
+
# @example
|
|
29
|
+
# player.jersey_num #=> "30"
|
|
30
|
+
# @return [String] the jersey number
|
|
31
|
+
attribute :jersey_num, Shale::Type::String
|
|
32
|
+
|
|
33
|
+
# @!attribute [rw] team_id
|
|
34
|
+
# Returns the team ID
|
|
35
|
+
# @api public
|
|
36
|
+
# @example
|
|
37
|
+
# player.team_id #=> 1610612744
|
|
38
|
+
# @return [Integer] the team ID
|
|
39
|
+
attribute :team_id, Shale::Type::Integer
|
|
40
|
+
|
|
41
|
+
# @!attribute [rw] gp
|
|
42
|
+
# Returns games played
|
|
43
|
+
# @api public
|
|
44
|
+
# @example
|
|
45
|
+
# player.gp #=> 10
|
|
46
|
+
# @return [Integer] games played
|
|
47
|
+
attribute :gp, Shale::Type::Integer
|
|
48
|
+
|
|
49
|
+
# @!attribute [rw] gs
|
|
50
|
+
# Returns games started
|
|
51
|
+
# @api public
|
|
52
|
+
# @example
|
|
53
|
+
# player.gs #=> 10
|
|
54
|
+
# @return [Integer] games started
|
|
55
|
+
attribute :gs, Shale::Type::Integer
|
|
56
|
+
|
|
57
|
+
# @!attribute [rw] actual_minutes
|
|
58
|
+
# Returns total minutes played
|
|
59
|
+
# @api public
|
|
60
|
+
# @example
|
|
61
|
+
# player.actual_minutes #=> 350
|
|
62
|
+
# @return [Integer] total minutes played
|
|
63
|
+
attribute :actual_minutes, Shale::Type::Integer
|
|
64
|
+
|
|
65
|
+
# @!attribute [rw] actual_seconds
|
|
66
|
+
# Returns total seconds played
|
|
67
|
+
# @api public
|
|
68
|
+
# @example
|
|
69
|
+
# player.actual_seconds #=> 21000
|
|
70
|
+
# @return [Integer] total seconds played
|
|
71
|
+
attribute :actual_seconds, Shale::Type::Integer
|
|
72
|
+
|
|
73
|
+
# @!attribute [rw] fgm
|
|
74
|
+
# Returns field goals made
|
|
75
|
+
# @api public
|
|
76
|
+
# @example
|
|
77
|
+
# player.fgm #=> 100
|
|
78
|
+
# @return [Integer] field goals made
|
|
79
|
+
attribute :fgm, Shale::Type::Integer
|
|
80
|
+
|
|
81
|
+
# @!attribute [rw] fga
|
|
82
|
+
# Returns field goals attempted
|
|
83
|
+
# @api public
|
|
84
|
+
# @example
|
|
85
|
+
# player.fga #=> 200
|
|
86
|
+
# @return [Integer] field goals attempted
|
|
87
|
+
attribute :fga, Shale::Type::Integer
|
|
88
|
+
|
|
89
|
+
# @!attribute [rw] fg_pct
|
|
90
|
+
# Returns field goal percentage
|
|
91
|
+
# @api public
|
|
92
|
+
# @example
|
|
93
|
+
# player.fg_pct #=> 0.500
|
|
94
|
+
# @return [Float] field goal percentage
|
|
95
|
+
attribute :fg_pct, Shale::Type::Float
|
|
96
|
+
|
|
97
|
+
# @!attribute [rw] fg3m
|
|
98
|
+
# Returns three point field goals made
|
|
99
|
+
# @api public
|
|
100
|
+
# @example
|
|
101
|
+
# player.fg3m #=> 40
|
|
102
|
+
# @return [Integer] three point field goals made
|
|
103
|
+
attribute :fg3m, Shale::Type::Integer
|
|
104
|
+
|
|
105
|
+
# @!attribute [rw] fg3a
|
|
106
|
+
# Returns three point field goals attempted
|
|
107
|
+
# @api public
|
|
108
|
+
# @example
|
|
109
|
+
# player.fg3a #=> 100
|
|
110
|
+
# @return [Integer] three point field goals attempted
|
|
111
|
+
attribute :fg3a, Shale::Type::Integer
|
|
112
|
+
|
|
113
|
+
# @!attribute [rw] fg3_pct
|
|
114
|
+
# Returns three point field goal percentage
|
|
115
|
+
# @api public
|
|
116
|
+
# @example
|
|
117
|
+
# player.fg3_pct #=> 0.400
|
|
118
|
+
# @return [Float] three point field goal percentage
|
|
119
|
+
attribute :fg3_pct, Shale::Type::Float
|
|
120
|
+
|
|
121
|
+
# @!attribute [rw] ftm
|
|
122
|
+
# Returns free throws made
|
|
123
|
+
# @api public
|
|
124
|
+
# @example
|
|
125
|
+
# player.ftm #=> 80
|
|
126
|
+
# @return [Integer] free throws made
|
|
127
|
+
attribute :ftm, Shale::Type::Integer
|
|
128
|
+
|
|
129
|
+
# @!attribute [rw] fta
|
|
130
|
+
# Returns free throws attempted
|
|
131
|
+
# @api public
|
|
132
|
+
# @example
|
|
133
|
+
# player.fta #=> 90
|
|
134
|
+
# @return [Integer] free throws attempted
|
|
135
|
+
attribute :fta, Shale::Type::Integer
|
|
136
|
+
|
|
137
|
+
# @!attribute [rw] ft_pct
|
|
138
|
+
# Returns free throw percentage
|
|
139
|
+
# @api public
|
|
140
|
+
# @example
|
|
141
|
+
# player.ft_pct #=> 0.889
|
|
142
|
+
# @return [Float] free throw percentage
|
|
143
|
+
attribute :ft_pct, Shale::Type::Float
|
|
144
|
+
|
|
145
|
+
# @!attribute [rw] oreb
|
|
146
|
+
# Returns offensive rebounds
|
|
147
|
+
# @api public
|
|
148
|
+
# @example
|
|
149
|
+
# player.oreb #=> 10
|
|
150
|
+
# @return [Integer] offensive rebounds
|
|
151
|
+
attribute :oreb, Shale::Type::Integer
|
|
152
|
+
|
|
153
|
+
# @!attribute [rw] dreb
|
|
154
|
+
# Returns defensive rebounds
|
|
155
|
+
# @api public
|
|
156
|
+
# @example
|
|
157
|
+
# player.dreb #=> 50
|
|
158
|
+
# @return [Integer] defensive rebounds
|
|
159
|
+
attribute :dreb, Shale::Type::Integer
|
|
160
|
+
|
|
161
|
+
# @!attribute [rw] tot_reb
|
|
162
|
+
# Returns total rebounds
|
|
163
|
+
# @api public
|
|
164
|
+
# @example
|
|
165
|
+
# player.tot_reb #=> 60
|
|
166
|
+
# @return [Integer] total rebounds
|
|
167
|
+
attribute :tot_reb, Shale::Type::Integer
|
|
168
|
+
|
|
169
|
+
# @!attribute [rw] ast
|
|
170
|
+
# Returns assists
|
|
171
|
+
# @api public
|
|
172
|
+
# @example
|
|
173
|
+
# player.ast #=> 70
|
|
174
|
+
# @return [Integer] assists
|
|
175
|
+
attribute :ast, Shale::Type::Integer
|
|
176
|
+
|
|
177
|
+
# @!attribute [rw] pf
|
|
178
|
+
# Returns personal fouls
|
|
179
|
+
# @api public
|
|
180
|
+
# @example
|
|
181
|
+
# player.pf #=> 20
|
|
182
|
+
# @return [Integer] personal fouls
|
|
183
|
+
attribute :pf, Shale::Type::Integer
|
|
184
|
+
|
|
185
|
+
# @!attribute [rw] stl
|
|
186
|
+
# Returns steals
|
|
187
|
+
# @api public
|
|
188
|
+
# @example
|
|
189
|
+
# player.stl #=> 15
|
|
190
|
+
# @return [Integer] steals
|
|
191
|
+
attribute :stl, Shale::Type::Integer
|
|
192
|
+
|
|
193
|
+
# @!attribute [rw] tov
|
|
194
|
+
# Returns turnovers
|
|
195
|
+
# @api public
|
|
196
|
+
# @example
|
|
197
|
+
# player.tov #=> 25
|
|
198
|
+
# @return [Integer] turnovers
|
|
199
|
+
attribute :tov, Shale::Type::Integer
|
|
200
|
+
|
|
201
|
+
# @!attribute [rw] blk
|
|
202
|
+
# Returns blocks
|
|
203
|
+
# @api public
|
|
204
|
+
# @example
|
|
205
|
+
# player.blk #=> 5
|
|
206
|
+
# @return [Integer] blocks
|
|
207
|
+
attribute :blk, Shale::Type::Integer
|
|
208
|
+
|
|
209
|
+
# @!attribute [rw] pts
|
|
210
|
+
# Returns points
|
|
211
|
+
# @api public
|
|
212
|
+
# @example
|
|
213
|
+
# player.pts #=> 280
|
|
214
|
+
# @return [Integer] points
|
|
215
|
+
attribute :pts, Shale::Type::Integer
|
|
216
|
+
|
|
217
|
+
# @!attribute [rw] avg_minutes
|
|
218
|
+
# Returns average minutes per game
|
|
219
|
+
# @api public
|
|
220
|
+
# @example
|
|
221
|
+
# player.avg_minutes #=> 35.0
|
|
222
|
+
# @return [Float] average minutes per game
|
|
223
|
+
attribute :avg_minutes, Shale::Type::Float
|
|
224
|
+
|
|
225
|
+
# @!attribute [rw] fgm_pg
|
|
226
|
+
# Returns average field goals made per game
|
|
227
|
+
# @api public
|
|
228
|
+
# @example
|
|
229
|
+
# player.fgm_pg #=> 10.0
|
|
230
|
+
# @return [Float] average field goals made per game
|
|
231
|
+
attribute :fgm_pg, Shale::Type::Float
|
|
232
|
+
|
|
233
|
+
# @!attribute [rw] fga_pg
|
|
234
|
+
# Returns average field goals attempted per game
|
|
235
|
+
# @api public
|
|
236
|
+
# @example
|
|
237
|
+
# player.fga_pg #=> 20.0
|
|
238
|
+
# @return [Float] average field goals attempted per game
|
|
239
|
+
attribute :fga_pg, Shale::Type::Float
|
|
240
|
+
|
|
241
|
+
# @!attribute [rw] fg3m_pg
|
|
242
|
+
# Returns average three point field goals made per game
|
|
243
|
+
# @api public
|
|
244
|
+
# @example
|
|
245
|
+
# player.fg3m_pg #=> 4.0
|
|
246
|
+
# @return [Float] average three point field goals made per game
|
|
247
|
+
attribute :fg3m_pg, Shale::Type::Float
|
|
248
|
+
|
|
249
|
+
# @!attribute [rw] fg3a_pg
|
|
250
|
+
# Returns average three point field goals attempted per game
|
|
251
|
+
# @api public
|
|
252
|
+
# @example
|
|
253
|
+
# player.fg3a_pg #=> 10.0
|
|
254
|
+
# @return [Float] average three point field goals attempted per game
|
|
255
|
+
attribute :fg3a_pg, Shale::Type::Float
|
|
256
|
+
|
|
257
|
+
# @!attribute [rw] ftm_pg
|
|
258
|
+
# Returns average free throws made per game
|
|
259
|
+
# @api public
|
|
260
|
+
# @example
|
|
261
|
+
# player.ftm_pg #=> 8.0
|
|
262
|
+
# @return [Float] average free throws made per game
|
|
263
|
+
attribute :ftm_pg, Shale::Type::Float
|
|
264
|
+
|
|
265
|
+
# @!attribute [rw] fta_pg
|
|
266
|
+
# Returns average free throws attempted per game
|
|
267
|
+
# @api public
|
|
268
|
+
# @example
|
|
269
|
+
# player.fta_pg #=> 9.0
|
|
270
|
+
# @return [Float] average free throws attempted per game
|
|
271
|
+
attribute :fta_pg, Shale::Type::Float
|
|
272
|
+
|
|
273
|
+
# @!attribute [rw] oreb_pg
|
|
274
|
+
# Returns average offensive rebounds per game
|
|
275
|
+
# @api public
|
|
276
|
+
# @example
|
|
277
|
+
# player.oreb_pg #=> 1.0
|
|
278
|
+
# @return [Float] average offensive rebounds per game
|
|
279
|
+
attribute :oreb_pg, Shale::Type::Float
|
|
280
|
+
|
|
281
|
+
# @!attribute [rw] dreb_pg
|
|
282
|
+
# Returns average defensive rebounds per game
|
|
283
|
+
# @api public
|
|
284
|
+
# @example
|
|
285
|
+
# player.dreb_pg #=> 5.0
|
|
286
|
+
# @return [Float] average defensive rebounds per game
|
|
287
|
+
attribute :dreb_pg, Shale::Type::Float
|
|
288
|
+
|
|
289
|
+
# @!attribute [rw] reb_pg
|
|
290
|
+
# Returns average rebounds per game
|
|
291
|
+
# @api public
|
|
292
|
+
# @example
|
|
293
|
+
# player.reb_pg #=> 6.0
|
|
294
|
+
# @return [Float] average rebounds per game
|
|
295
|
+
attribute :reb_pg, Shale::Type::Float
|
|
296
|
+
|
|
297
|
+
# @!attribute [rw] ast_pg
|
|
298
|
+
# Returns average assists per game
|
|
299
|
+
# @api public
|
|
300
|
+
# @example
|
|
301
|
+
# player.ast_pg #=> 7.0
|
|
302
|
+
# @return [Float] average assists per game
|
|
303
|
+
attribute :ast_pg, Shale::Type::Float
|
|
304
|
+
|
|
305
|
+
# @!attribute [rw] pf_pg
|
|
306
|
+
# Returns average personal fouls per game
|
|
307
|
+
# @api public
|
|
308
|
+
# @example
|
|
309
|
+
# player.pf_pg #=> 2.0
|
|
310
|
+
# @return [Float] average personal fouls per game
|
|
311
|
+
attribute :pf_pg, Shale::Type::Float
|
|
312
|
+
|
|
313
|
+
# @!attribute [rw] stl_pg
|
|
314
|
+
# Returns average steals per game
|
|
315
|
+
# @api public
|
|
316
|
+
# @example
|
|
317
|
+
# player.stl_pg #=> 1.5
|
|
318
|
+
# @return [Float] average steals per game
|
|
319
|
+
attribute :stl_pg, Shale::Type::Float
|
|
320
|
+
|
|
321
|
+
# @!attribute [rw] tov_pg
|
|
322
|
+
# Returns average turnovers per game
|
|
323
|
+
# @api public
|
|
324
|
+
# @example
|
|
325
|
+
# player.tov_pg #=> 2.5
|
|
326
|
+
# @return [Float] average turnovers per game
|
|
327
|
+
attribute :tov_pg, Shale::Type::Float
|
|
328
|
+
|
|
329
|
+
# @!attribute [rw] blk_pg
|
|
330
|
+
# Returns average blocks per game
|
|
331
|
+
# @api public
|
|
332
|
+
# @example
|
|
333
|
+
# player.blk_pg #=> 0.5
|
|
334
|
+
# @return [Float] average blocks per game
|
|
335
|
+
attribute :blk_pg, Shale::Type::Float
|
|
336
|
+
|
|
337
|
+
# @!attribute [rw] pts_pg
|
|
338
|
+
# Returns average points per game
|
|
339
|
+
# @api public
|
|
340
|
+
# @example
|
|
341
|
+
# player.pts_pg #=> 28.0
|
|
342
|
+
# @return [Float] average points per game
|
|
343
|
+
attribute :pts_pg, Shale::Type::Float
|
|
344
|
+
|
|
345
|
+
# @!attribute [rw] fgm_per_min
|
|
346
|
+
# Returns field goals made per minute
|
|
347
|
+
# @api public
|
|
348
|
+
# @example
|
|
349
|
+
# player.fgm_per_min #=> 0.286
|
|
350
|
+
# @return [Float] field goals made per minute
|
|
351
|
+
attribute :fgm_per_min, Shale::Type::Float
|
|
352
|
+
|
|
353
|
+
# @!attribute [rw] fga_per_min
|
|
354
|
+
# Returns field goals attempted per minute
|
|
355
|
+
# @api public
|
|
356
|
+
# @example
|
|
357
|
+
# player.fga_per_min #=> 0.571
|
|
358
|
+
# @return [Float] field goals attempted per minute
|
|
359
|
+
attribute :fga_per_min, Shale::Type::Float
|
|
360
|
+
|
|
361
|
+
# @!attribute [rw] fg3m_per_min
|
|
362
|
+
# Returns three point field goals made per minute
|
|
363
|
+
# @api public
|
|
364
|
+
# @example
|
|
365
|
+
# player.fg3m_per_min #=> 0.114
|
|
366
|
+
# @return [Float] three point field goals made per minute
|
|
367
|
+
attribute :fg3m_per_min, Shale::Type::Float
|
|
368
|
+
|
|
369
|
+
# @!attribute [rw] fg3a_per_min
|
|
370
|
+
# Returns three point field goals attempted per minute
|
|
371
|
+
# @api public
|
|
372
|
+
# @example
|
|
373
|
+
# player.fg3a_per_min #=> 0.286
|
|
374
|
+
# @return [Float] three point field goals attempted per minute
|
|
375
|
+
attribute :fg3a_per_min, Shale::Type::Float
|
|
376
|
+
|
|
377
|
+
# @!attribute [rw] ftm_per_min
|
|
378
|
+
# Returns free throws made per minute
|
|
379
|
+
# @api public
|
|
380
|
+
# @example
|
|
381
|
+
# player.ftm_per_min #=> 0.229
|
|
382
|
+
# @return [Float] free throws made per minute
|
|
383
|
+
attribute :ftm_per_min, Shale::Type::Float
|
|
384
|
+
|
|
385
|
+
# @!attribute [rw] fta_per_min
|
|
386
|
+
# Returns free throws attempted per minute
|
|
387
|
+
# @api public
|
|
388
|
+
# @example
|
|
389
|
+
# player.fta_per_min #=> 0.257
|
|
390
|
+
# @return [Float] free throws attempted per minute
|
|
391
|
+
attribute :fta_per_min, Shale::Type::Float
|
|
392
|
+
|
|
393
|
+
# @!attribute [rw] oreb_per_min
|
|
394
|
+
# Returns offensive rebounds per minute
|
|
395
|
+
# @api public
|
|
396
|
+
# @example
|
|
397
|
+
# player.oreb_per_min #=> 0.029
|
|
398
|
+
# @return [Float] offensive rebounds per minute
|
|
399
|
+
attribute :oreb_per_min, Shale::Type::Float
|
|
400
|
+
|
|
401
|
+
# @!attribute [rw] dreb_per_min
|
|
402
|
+
# Returns defensive rebounds per minute
|
|
403
|
+
# @api public
|
|
404
|
+
# @example
|
|
405
|
+
# player.dreb_per_min #=> 0.143
|
|
406
|
+
# @return [Float] defensive rebounds per minute
|
|
407
|
+
attribute :dreb_per_min, Shale::Type::Float
|
|
408
|
+
|
|
409
|
+
# @!attribute [rw] reb_per_min
|
|
410
|
+
# Returns rebounds per minute
|
|
411
|
+
# @api public
|
|
412
|
+
# @example
|
|
413
|
+
# player.reb_per_min #=> 0.171
|
|
414
|
+
# @return [Float] rebounds per minute
|
|
415
|
+
attribute :reb_per_min, Shale::Type::Float
|
|
416
|
+
|
|
417
|
+
# @!attribute [rw] ast_per_min
|
|
418
|
+
# Returns assists per minute
|
|
419
|
+
# @api public
|
|
420
|
+
# @example
|
|
421
|
+
# player.ast_per_min #=> 0.200
|
|
422
|
+
# @return [Float] assists per minute
|
|
423
|
+
attribute :ast_per_min, Shale::Type::Float
|
|
424
|
+
|
|
425
|
+
# @!attribute [rw] pf_per_min
|
|
426
|
+
# Returns personal fouls per minute
|
|
427
|
+
# @api public
|
|
428
|
+
# @example
|
|
429
|
+
# player.pf_per_min #=> 0.057
|
|
430
|
+
# @return [Float] personal fouls per minute
|
|
431
|
+
attribute :pf_per_min, Shale::Type::Float
|
|
432
|
+
|
|
433
|
+
# @!attribute [rw] stl_per_min
|
|
434
|
+
# Returns steals per minute
|
|
435
|
+
# @api public
|
|
436
|
+
# @example
|
|
437
|
+
# player.stl_per_min #=> 0.043
|
|
438
|
+
# @return [Float] steals per minute
|
|
439
|
+
attribute :stl_per_min, Shale::Type::Float
|
|
440
|
+
|
|
441
|
+
# @!attribute [rw] tov_per_min
|
|
442
|
+
# Returns turnovers per minute
|
|
443
|
+
# @api public
|
|
444
|
+
# @example
|
|
445
|
+
# player.tov_per_min #=> 0.071
|
|
446
|
+
# @return [Float] turnovers per minute
|
|
447
|
+
attribute :tov_per_min, Shale::Type::Float
|
|
448
|
+
|
|
449
|
+
# @!attribute [rw] blk_per_min
|
|
450
|
+
# Returns blocks per minute
|
|
451
|
+
# @api public
|
|
452
|
+
# @example
|
|
453
|
+
# player.blk_per_min #=> 0.014
|
|
454
|
+
# @return [Float] blocks per minute
|
|
455
|
+
attribute :blk_per_min, Shale::Type::Float
|
|
456
|
+
|
|
457
|
+
# @!attribute [rw] pts_per_min
|
|
458
|
+
# Returns points per minute
|
|
459
|
+
# @api public
|
|
460
|
+
# @example
|
|
461
|
+
# player.pts_per_min #=> 0.800
|
|
462
|
+
# @return [Float] points per minute
|
|
463
|
+
attribute :pts_per_min, Shale::Type::Float
|
|
464
|
+
|
|
465
|
+
# Returns the player object
|
|
466
|
+
#
|
|
467
|
+
# @api public
|
|
468
|
+
# @example
|
|
469
|
+
# player.player #=> #<NBA::Player>
|
|
470
|
+
# @return [Player, nil] the player object
|
|
471
|
+
def player
|
|
472
|
+
Players.find(person_id)
|
|
473
|
+
end
|
|
474
|
+
|
|
475
|
+
# Returns the team object
|
|
476
|
+
#
|
|
477
|
+
# @api public
|
|
478
|
+
# @example
|
|
479
|
+
# player.team #=> #<NBA::Team>
|
|
480
|
+
# @return [Team, nil] the team object
|
|
481
|
+
def team
|
|
482
|
+
Teams.find(team_id)
|
|
483
|
+
end
|
|
484
|
+
end
|
|
485
|
+
end
|