smite_ruby 1.4.5 → 1.4.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/smite.rb +20 -18
- data/lib/smite/client.rb +8 -4
- data/lib/smite/competitor.rb +31 -0
- data/lib/smite/data_transform.rb +40 -4
- data/lib/smite/full_match.rb +57 -0
- data/lib/smite/game.rb +5 -4
- data/lib/smite/god_rank.rb +11 -7
- data/lib/smite/god_stats.rb +28 -15
- data/lib/smite/item_effect.rb +2 -2
- data/lib/smite/match_achievements.rb +7 -0
- data/lib/smite/match_summary.rb +31 -0
- data/lib/smite/player.rb +4 -4
- data/smite_ruby.gemspec +2 -2
- data/spec/ability_spec.rb +3 -2
- data/spec/achievements_spec.rb +3 -2
- data/spec/client_spec.rb +2 -5
- data/spec/friend_spec.rb +8 -1
- data/spec/{match_spec.rb → full_match_spec.rb} +1 -1
- data/spec/game_spec.rb +5 -7
- data/spec/god_rank_spec.rb +54 -1
- data/spec/god_spec.rb +0 -2
- data/spec/god_stats_spec.rb +56 -1
- data/spec/item_effect_spec.rb +13 -1
- data/spec/item_spec.rb +0 -2
- data/spec/match_summary_spec.rb +28 -0
- data/spec/player_spec.rb +3 -5
- data/spec/responses/getmatchdetails.json +861 -1
- data/spec/responses/getplayerachievements.json +27 -0
- data/spec/spec_helper.rb +4 -2
- metadata +9 -7
- data/lib/smite/getgods.json +0 -151
- data/lib/smite/match.rb +0 -14
- data/lib/smite/recent_match.rb +0 -18
- data/spec/responses/getachievements.json +0 -11
@@ -0,0 +1,27 @@
|
|
1
|
+
{
|
2
|
+
"AssistedKills" : 43355,
|
3
|
+
"CampsCleared" : 14397,
|
4
|
+
"DivineSpree" : 222,
|
5
|
+
"DoubleKills" : 5049,
|
6
|
+
"FireGiantKills" : 121,
|
7
|
+
"FirstBloods" : 1339,
|
8
|
+
"GodLikeSpree" : 49,
|
9
|
+
"GoldFuryKills" : 219,
|
10
|
+
"Id" : 2784051,
|
11
|
+
"ImmortalSpree" : 99,
|
12
|
+
"KillingSpree" : 2366,
|
13
|
+
"MinionKills" : 702410,
|
14
|
+
"Name" : "Adapting",
|
15
|
+
"PentaKills" : 20,
|
16
|
+
"PhoenixKills" : 371,
|
17
|
+
"PlayerKills" : 45065,
|
18
|
+
"QuadraKills" : 131,
|
19
|
+
"RampageSpree" : 1045,
|
20
|
+
"ShutdownSpree" : 274,
|
21
|
+
"SiegeJuggernautKills" : 17,
|
22
|
+
"TowerKills" : 4421,
|
23
|
+
"TripleKills" : 769,
|
24
|
+
"UnstoppableSpree" : 482,
|
25
|
+
"WildJuggernautKills" : 10,
|
26
|
+
"ret_msg" : null
|
27
|
+
}
|
data/spec/spec_helper.rb
CHANGED
@@ -34,18 +34,20 @@ RSpec.configure do |config|
|
|
34
34
|
getteamplayers
|
35
35
|
gettopmatches
|
36
36
|
getmatchdetails
|
37
|
-
|
37
|
+
getplayerachievements
|
38
38
|
getfriends
|
39
39
|
getgodranks
|
40
40
|
getplayer
|
41
41
|
getmatchhistory
|
42
42
|
getsearchteams
|
43
43
|
).each do |method|
|
44
|
-
WebMock.stub_request(:get,
|
44
|
+
WebMock.stub_request(:get, /smiteapi\.svc\/#{method}json\//).to_return(
|
45
45
|
body: response_body(method),
|
46
46
|
headers: { content_type: 'application/json' },
|
47
47
|
status: 200
|
48
48
|
)
|
49
49
|
end
|
50
|
+
|
51
|
+
Smite::Game.authenticate!(1234, 'ABCD')
|
50
52
|
end
|
51
53
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smite_ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- NcUltimate
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -81,21 +81,22 @@ files:
|
|
81
81
|
- lib/smite/ability.rb
|
82
82
|
- lib/smite/achievements.rb
|
83
83
|
- lib/smite/client.rb
|
84
|
+
- lib/smite/competitor.rb
|
84
85
|
- lib/smite/data_transform.rb
|
85
86
|
- lib/smite/friend.rb
|
87
|
+
- lib/smite/full_match.rb
|
86
88
|
- lib/smite/game.rb
|
87
|
-
- lib/smite/getgods.json
|
88
89
|
- lib/smite/god.rb
|
89
90
|
- lib/smite/god_rank.rb
|
90
91
|
- lib/smite/god_stats.rb
|
91
92
|
- lib/smite/item.rb
|
92
93
|
- lib/smite/item_effect.rb
|
93
|
-
- lib/smite/
|
94
|
+
- lib/smite/match_achievements.rb
|
95
|
+
- lib/smite/match_summary.rb
|
94
96
|
- lib/smite/motd.rb
|
95
97
|
- lib/smite/object.rb
|
96
98
|
- lib/smite/player.rb
|
97
99
|
- lib/smite/queue.rb
|
98
|
-
- lib/smite/recent_match.rb
|
99
100
|
- lib/smite/recommended_items.rb
|
100
101
|
- smite_ruby.gemspec
|
101
102
|
- spec/ability_spec.rb
|
@@ -103,16 +104,16 @@ files:
|
|
103
104
|
- spec/client_spec.rb
|
104
105
|
- spec/data_transform_spec.rb
|
105
106
|
- spec/friend_spec.rb
|
107
|
+
- spec/full_match_spec.rb
|
106
108
|
- spec/game_spec.rb
|
107
109
|
- spec/god_rank_spec.rb
|
108
110
|
- spec/god_spec.rb
|
109
111
|
- spec/god_stats_spec.rb
|
110
112
|
- spec/item_effect_spec.rb
|
111
113
|
- spec/item_spec.rb
|
112
|
-
- spec/
|
114
|
+
- spec/match_summary_spec.rb
|
113
115
|
- spec/player_spec.rb
|
114
116
|
- spec/responses/createsession.json
|
115
|
-
- spec/responses/getachievements.json
|
116
117
|
- spec/responses/getdataused.json
|
117
118
|
- spec/responses/getesportsproleaguedetails.json
|
118
119
|
- spec/responses/getfriends.json
|
@@ -128,6 +129,7 @@ files:
|
|
128
129
|
- spec/responses/getmatchplayerdetails.json
|
129
130
|
- spec/responses/getmotd.json
|
130
131
|
- spec/responses/getplayer.json
|
132
|
+
- spec/responses/getplayerachievements.json
|
131
133
|
- spec/responses/getplayerstatus.json
|
132
134
|
- spec/responses/getqueuestats.json
|
133
135
|
- spec/responses/getsearchteams.json
|
data/lib/smite/getgods.json
DELETED
@@ -1,151 +0,0 @@
|
|
1
|
-
[
|
2
|
-
{
|
3
|
-
"Ability1" : "Noxious Fumes",
|
4
|
-
"Ability2" : "Flame Wave",
|
5
|
-
"Ability3" : "Path of Flames",
|
6
|
-
"Ability4" : "Rain Fire",
|
7
|
-
"Ability5" : "Combustion",
|
8
|
-
"AbilityId1" : 7812,
|
9
|
-
"AbilityId2" : 7811,
|
10
|
-
"AbilityId3" : 7818,
|
11
|
-
"AbilityId4" : 7824,
|
12
|
-
"AbilityId5" : 7822,
|
13
|
-
"Ability_1" :
|
14
|
-
{"Description" :
|
15
|
-
{"itemDescription" :
|
16
|
-
{"cooldown" : "12s",
|
17
|
-
"cost" : "60/70/80/90/100",
|
18
|
-
"description" :
|
19
|
-
"Agni summons a cloud of noxious fumes at his ground target location, doing damage every second. Firing any of Agni's abilities into the fumes detonates the gas, Stunning all enemies in the radius.",
|
20
|
-
"menuitems" :
|
21
|
-
[{"description" : "Ability:", "value" : "Ground Target"},
|
22
|
-
{"description" : "Affects:", "value" : "Enemy"},
|
23
|
-
{"description" : "Damage:", "value" : "Magical"},
|
24
|
-
{"description" : "Radius:", "value" : "20"}],
|
25
|
-
"rankitems" :
|
26
|
-
[{"description" : "Damage per Tick:", "value" : "10/20/30/40/50 (+5% of your Magical Power)"},
|
27
|
-
{"description" : "Fumes Duration:", "value" : "10s"},
|
28
|
-
{"description" : "Stun Duration:", "value" : "1s"}],
|
29
|
-
"secondaryDescription" : ""}},
|
30
|
-
"Id" : 7812,
|
31
|
-
"Summary" : "Noxious Fumes",
|
32
|
-
"URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78121.jpg"},
|
33
|
-
"Ability_2" :
|
34
|
-
{"Description" :
|
35
|
-
{"itemDescription" :
|
36
|
-
{"cooldown" : "15/14/13/12/11s",
|
37
|
-
"cost" : "60/70/80/90/100",
|
38
|
-
"description" : "Agni summons a wave of fire in front of him that scorches all enemies in its path. Ignites Noxious Fumes.",
|
39
|
-
"menuitems" :
|
40
|
-
[{"description" : "Ability:", "value" : "Line"},
|
41
|
-
{"description" : "Affects:", "value" : "Enemy"},
|
42
|
-
{"description" : "Damage:", "value" : "Magical"}],
|
43
|
-
"rankitems" : [{"description" : "Damage:", "value" : "90/140/190/240/290 (+50% of your Magical Power)"}],
|
44
|
-
"secondaryDescription" : ""}},
|
45
|
-
"Id" : 7811,
|
46
|
-
"Summary" : "Flame Wave",
|
47
|
-
"URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78111.jpg"},
|
48
|
-
"Ability_3" :
|
49
|
-
{"Description" :
|
50
|
-
{"itemDescription" :
|
51
|
-
{"cooldown" : "15s",
|
52
|
-
"cost" : "70/75/80/85/90",
|
53
|
-
"description" :
|
54
|
-
"Agni blazes a path forward in a quick dash, leaving flames trailing behind him. Any enemies passing through the flames catch fire and burn for damage every .5s for 2s. Ignites Noxious Fumes. Agni is immune to Knockback while dashing.",
|
55
|
-
"menuitems" :
|
56
|
-
[{"description" : "Ability:", "value" : "Dash"},
|
57
|
-
{"description" : "Affects:", "value" : "Enemy"},
|
58
|
-
{"description" : "Damage:", "value" : "Magical"}],
|
59
|
-
"rankitems" :
|
60
|
-
[{"description" : "Damage per Tick:", "value" : "20/30/40/50/60 (+15% of your Magical Power)"},
|
61
|
-
{"description" : "Path Duration:", "value" : "3s"}],
|
62
|
-
"secondaryDescription" : ""}},
|
63
|
-
"Id" : 7818,
|
64
|
-
"Summary" : "Path of Flames",
|
65
|
-
"URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78181.jpg"},
|
66
|
-
"Ability_4" :
|
67
|
-
{"Description" :
|
68
|
-
{"itemDescription" :
|
69
|
-
{"cooldown" : "Dependent on Halos",
|
70
|
-
"cost" : "0",
|
71
|
-
"description" :
|
72
|
-
"Every 20 seconds, Agni gains a flaming halo that can be expended to summon a giant meteor at his ground target location. He can summon 1 every .8 seconds. Ignites Noxious Fumes.",
|
73
|
-
"menuitems" :
|
74
|
-
[{"description" : "Ability:", "value" : "Ground Target"},
|
75
|
-
{"description" : "Affects:", "value" : "Enemy"},
|
76
|
-
{"description" : "Damage:", "value" : "Magical"},
|
77
|
-
{"description" : "Radius:", "value" : "20"}],
|
78
|
-
"rankitems" :
|
79
|
-
[{"description" : "Damage:", "value" : "160/195/230/265/300 (+60% of your Magical Power)"},
|
80
|
-
{"description" : "Max Halos:", "value" : "3"}],
|
81
|
-
"secondaryDescription" : ""}},
|
82
|
-
"Id" : 7824,
|
83
|
-
"Summary" : "Rain Fire",
|
84
|
-
"URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78241.jpg"},
|
85
|
-
"Ability_5" :
|
86
|
-
{"Description" :
|
87
|
-
{"itemDescription" :
|
88
|
-
{"cooldown" : "",
|
89
|
-
"cost" : "",
|
90
|
-
"description" :
|
91
|
-
"After hitting with 4 Basic Attacks, Agni will gain a Buff. On the next cast of Flame Wave or Rain Fire, all enemies hit by those abilities will be additionally set ablaze, taking damage every .5s for 3s.",
|
92
|
-
"menuitems" : [{"description" : "Affects:", "value" : "Enemy"}, {"description" : "Damage:", "value" : "Magical"}],
|
93
|
-
"rankitems" : [{"description" : "Damage per Tick:", "value" : "5 (+10% of your Magical Power)"}],
|
94
|
-
"secondaryDescription" : ""}},
|
95
|
-
"Id" : 7822,
|
96
|
-
"Summary" : "Combustion",
|
97
|
-
"URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78221.jpg"},
|
98
|
-
"AttackSpeed" : 0.86,
|
99
|
-
"AttackSpeedPerLevel" : 0.009,
|
100
|
-
"Cons" : "",
|
101
|
-
"HP5PerLevel" : 0.47,
|
102
|
-
"Health" : 360,
|
103
|
-
"HealthPerFive" : 7,
|
104
|
-
"HealthPerLevel" : 71,
|
105
|
-
"Lore" : "There are few elements as destructive or as purifying as fire. Agni, God of Fire, is the embodiment of both of these qualities, with a head for each.\\n\\nThough the source of his origin warrants debate - for there are many tales of his parentage ranging from two simple sticks rubbed together, to the cosmic energy that made all things at the beginning of time - Agni is a pivotal and important God with many duties to the Pantheon. He is the twin brother to Indra, God of the Heavens and Rains and chief among warriors. Conversely, Agni is chief among priests, acting as messenger between mortals and Gods. Every Hindu ritual and prayer is performed in front of a fire of some kind, so Agni carries the words and sacrifices, traveling between the Earth and the Heavens. He is welcome in every home and every hearth and much beloved by the Faithful.\\n\\nThrough his flames, Agni provides heat and light, but also cleanses impurities. Smoke from his pyres create the air and hold the Heavens aloft. The sun, a source of fire itself, brings life-giving energy to the world, and his lightning streaks the sky during storms.\\n\\nFor all his kindness and service, Agni has two faces. One is the face of kindness and purity, turned towards the people and Gods. His other face, grim and resolute, guides the God of Fire, to play his role in the cosmic cycle of creation and destruction, to burn and blacken all the atrocities of the world to ash.",
|
106
|
-
"MP5PerLevel" : 0.37,
|
107
|
-
"MagicProtection" : 30,
|
108
|
-
"MagicProtectionPerLevel" : 0,
|
109
|
-
"MagicalPower" : 170,
|
110
|
-
"MagicalPowerPerLevel" : 7.5,
|
111
|
-
"Mana" : 255,
|
112
|
-
"ManaPerFive" : 4.7,
|
113
|
-
"ManaPerLevel" : 45,
|
114
|
-
"Name" : "Agni",
|
115
|
-
"OnFreeRotation" : "",
|
116
|
-
"Pantheon" : "Hindu",
|
117
|
-
"PhysicalPower" : 0,
|
118
|
-
"PhysicalPowerPerLevel" : 0,
|
119
|
-
"PhysicalProtection" : 11,
|
120
|
-
"PhysicalProtectionPerLevel" : 2.6,
|
121
|
-
"Pros" : " High Area Damage",
|
122
|
-
"Roles" : " Mage",
|
123
|
-
"Speed" : 350,
|
124
|
-
"Title" : "God of Fire",
|
125
|
-
"Type" : " Ranged, Magical",
|
126
|
-
"abilityDescription1" : {},
|
127
|
-
"abilityDescription2" : {},
|
128
|
-
"abilityDescription3" : {},
|
129
|
-
"abilityDescription4" : {},
|
130
|
-
"abilityDescription5" : {},
|
131
|
-
"basicAttack" :
|
132
|
-
{"itemDescription" :
|
133
|
-
{"cooldown" : "",
|
134
|
-
"cost" : "",
|
135
|
-
"description" : "",
|
136
|
-
"menuitems" :
|
137
|
-
[{"description" : "Damage:", "value" : "34 + 1.5/Lvl (+20% of Magical Power)"}, {"description" : "Progression:", "value" : "None"}],
|
138
|
-
"rankitems" : [],
|
139
|
-
"secondaryDescription" : ""}},
|
140
|
-
"godAbility1_URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78121.jpg",
|
141
|
-
"godAbility2_URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78111.jpg",
|
142
|
-
"godAbility3_URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78181.jpg",
|
143
|
-
"godAbility4_URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78241.jpg",
|
144
|
-
"godAbility5_URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/1737_78221.jpg",
|
145
|
-
"godCard_URL" : "https://hzweb.hi-rezgame.net/smite-web/wp-content/uploads/2015/05/standardagni_card.jpg",
|
146
|
-
"godIcon_URL" : "http://hirezstudios.blob.core.windows.net/sitefinity/smite-god-icons/1737.jpg",
|
147
|
-
"id" : 1737,
|
148
|
-
"latestGod" : "n",
|
149
|
-
"ret_msg" : null
|
150
|
-
}
|
151
|
-
]
|
data/lib/smite/match.rb
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
module Smite
|
2
|
-
class Match < Smite::Object
|
3
|
-
def initialize(data)
|
4
|
-
super
|
5
|
-
@data = DataTransform.transform_gods(@data)
|
6
|
-
@data = DataTransform.transform_items(@data)
|
7
|
-
@data = DataTransform.transform_match(@data)
|
8
|
-
end
|
9
|
-
|
10
|
-
def inspect
|
11
|
-
"#<Smite::Match '#{queue}' '#{win_status}'>"
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
data/lib/smite/recent_match.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
module Smite
|
2
|
-
class RecentMatch < Smite::Object
|
3
|
-
def initialize(data)
|
4
|
-
super
|
5
|
-
@data = DataTransform.transform_gods(@data)
|
6
|
-
@data = DataTransform.transform_items(@data)
|
7
|
-
@data = DataTransform.transform_recent_match(@data)
|
8
|
-
end
|
9
|
-
|
10
|
-
def id
|
11
|
-
match
|
12
|
-
end
|
13
|
-
|
14
|
-
def inspect
|
15
|
-
"#<Smite::RecentMatch #{match} '#{queue}' (#{win_status})>"
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|