quakelive_api 0.0.1
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.
- data/.gitignore +21 -0
- data/.travis.yml +9 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +76 -0
- data/Rakefile +14 -0
- data/lib/quakelive_api/base.rb +52 -0
- data/lib/quakelive_api/error/player_not_found.rb +6 -0
- data/lib/quakelive_api/error/request_error.rb +6 -0
- data/lib/quakelive_api/game_time.rb +34 -0
- data/lib/quakelive_api/items/award.rb +7 -0
- data/lib/quakelive_api/items/competitor.rb +7 -0
- data/lib/quakelive_api/items/favourite.rb +7 -0
- data/lib/quakelive_api/items/model.rb +7 -0
- data/lib/quakelive_api/items/recent_game.rb +7 -0
- data/lib/quakelive_api/items/record.rb +7 -0
- data/lib/quakelive_api/items/structurable.rb +13 -0
- data/lib/quakelive_api/items/weapon.rb +7 -0
- data/lib/quakelive_api/parser/awards.rb +50 -0
- data/lib/quakelive_api/parser/base.rb +33 -0
- data/lib/quakelive_api/parser/statistics.rb +81 -0
- data/lib/quakelive_api/parser/summary.rb +174 -0
- data/lib/quakelive_api/profile/awards/base.rb +24 -0
- data/lib/quakelive_api/profile/awards/career_milestones.rb +14 -0
- data/lib/quakelive_api/profile/awards/experience.rb +14 -0
- data/lib/quakelive_api/profile/awards/mad_skillz.rb +14 -0
- data/lib/quakelive_api/profile/awards/social_life.rb +15 -0
- data/lib/quakelive_api/profile/awards/sweet_success.rb +14 -0
- data/lib/quakelive_api/profile/statistics.rb +18 -0
- data/lib/quakelive_api/profile/summary.rb +35 -0
- data/lib/quakelive_api/profile.rb +43 -0
- data/lib/quakelive_api/version.rb +3 -0
- data/lib/quakelive_api.rb +38 -0
- data/quakelive_api.gemspec +28 -0
- data/test/fixtures/awards/career.txt +382 -0
- data/test/fixtures/awards/experience.txt +769 -0
- data/test/fixtures/awards/mad_skillz.txt +915 -0
- data/test/fixtures/awards/social_life.txt +155 -0
- data/test/fixtures/awards/sweet_success.txt +684 -0
- data/test/fixtures/profile/error.txt +24 -0
- data/test/fixtures/profile/not_found.txt +36 -0
- data/test/fixtures/profile/summary.txt +383 -0
- data/test/fixtures/statistics/emqz.txt +431 -0
- data/test/fixtures/statistics/xsi.txt +558 -0
- data/test/fixtures/summary/emqz.txt +304 -0
- data/test/fixtures/summary/mariano.txt +380 -0
- data/test/quakelive_api/game_time_test.rb +51 -0
- data/test/quakelive_api/profile/awards/career_milestones_test.rb +38 -0
- data/test/quakelive_api/profile/awards/experience_test.rb +38 -0
- data/test/quakelive_api/profile/awards/mad_skillz_test.rb +38 -0
- data/test/quakelive_api/profile/awards/social_life_test.rb +38 -0
- data/test/quakelive_api/profile/awards/sweet_success_test.rb +38 -0
- data/test/quakelive_api/profile/statistics_test.rb +75 -0
- data/test/quakelive_api/profile/summary_test.rb +97 -0
- data/test/quakelive_api/profile_test.rb +67 -0
- data/test/test_helper.rb +47 -0
- metadata +220 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
module QuakeliveApi
|
2
|
+
class Profile
|
3
|
+
module Awards
|
4
|
+
class Base < ::QuakeliveApi::Base
|
5
|
+
attr_accessor :earned, :unearned
|
6
|
+
|
7
|
+
private
|
8
|
+
|
9
|
+
def page
|
10
|
+
raise NotImplementedError
|
11
|
+
end
|
12
|
+
|
13
|
+
def url
|
14
|
+
"/profile/awards/#{player_name}/#{page}"
|
15
|
+
end
|
16
|
+
|
17
|
+
def setup_variables
|
18
|
+
@earned = parser.earned
|
19
|
+
@unearned = parser.unearned
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module QuakeliveApi
|
2
|
+
class Profile
|
3
|
+
class Statistics < ::QuakeliveApi::Base
|
4
|
+
attr_reader :weapons, :records
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def url
|
9
|
+
"/profile/statistics/#{player_name}"
|
10
|
+
end
|
11
|
+
|
12
|
+
def setup_variables
|
13
|
+
@weapons = parser.weapons
|
14
|
+
@records = parser.records
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module QuakeliveApi
|
2
|
+
class Profile
|
3
|
+
class Summary < ::QuakeliveApi::Base
|
4
|
+
attr_reader :country, :nick, :clan, :model, :member_since,
|
5
|
+
:last_game, :time_played, :wins, :losses, :quits, :frags,
|
6
|
+
:deaths, :hits, :shots, :accuracy, :favourite, :recent_awards,
|
7
|
+
:recent_games, :recent_competitors
|
8
|
+
|
9
|
+
private
|
10
|
+
|
11
|
+
def url
|
12
|
+
"/profile/summary/#{player_name}"
|
13
|
+
end
|
14
|
+
|
15
|
+
def setup_variables
|
16
|
+
@country = parser.country
|
17
|
+
@nick = parser.nick
|
18
|
+
@clan = parser.clan
|
19
|
+
@model = parser.model
|
20
|
+
@member_since = parser.member_since
|
21
|
+
@last_game = parser.last_game
|
22
|
+
@time_played = parser.time_played
|
23
|
+
@wins = parser.wins
|
24
|
+
@accuracy = parser.accuracy
|
25
|
+
@losses, @quits = parser.losses_quits
|
26
|
+
@frags, @deaths = parser.frags_deaths
|
27
|
+
@hits, @shots = parser.hits_shots
|
28
|
+
@favourite = parser.favourites
|
29
|
+
@recent_awards = parser.awards
|
30
|
+
@recent_games = parser.recent_games
|
31
|
+
@recent_competitors = parser.recent_competitors
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
module QuakeliveApi
|
2
|
+
class Profile
|
3
|
+
attr_accessor :player_name
|
4
|
+
|
5
|
+
def initialize(player_name)
|
6
|
+
@player_name = player_name
|
7
|
+
end
|
8
|
+
|
9
|
+
def summary
|
10
|
+
@summary ||= Summary.new(player_name)
|
11
|
+
end
|
12
|
+
|
13
|
+
def statistics
|
14
|
+
@statistics ||= Statistics.new(player_name)
|
15
|
+
end
|
16
|
+
|
17
|
+
def awards_milestones
|
18
|
+
@awards_milestones ||= Awards::CareerMilestones.new(player_name)
|
19
|
+
end
|
20
|
+
|
21
|
+
def awards_experience
|
22
|
+
@awards_experience ||= Awards::Experience.new(player_name)
|
23
|
+
end
|
24
|
+
|
25
|
+
def awards_skillz
|
26
|
+
@awards_skillz ||= Awards::MadSkillz.new(player_name)
|
27
|
+
end
|
28
|
+
|
29
|
+
def awards_social
|
30
|
+
@awards_social ||= Awards::SocialLife.new(player_name)
|
31
|
+
end
|
32
|
+
|
33
|
+
def awards_success
|
34
|
+
@awards_success ||= Awards::SweetSuccess.new(player_name)
|
35
|
+
end
|
36
|
+
|
37
|
+
def each_award(&block)
|
38
|
+
%w(awards_milestones awards_experience awards_skillz awards_social awards_success).each do |awards|
|
39
|
+
block.call(send(awards))
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require "quakelive_api/version"
|
2
|
+
require "quakelive_api/base"
|
3
|
+
require "quakelive_api/game_time"
|
4
|
+
require "quakelive_api/items/structurable"
|
5
|
+
require "quakelive_api/items/award"
|
6
|
+
require "quakelive_api/items/favourite"
|
7
|
+
require "quakelive_api/items/recent_game"
|
8
|
+
require "quakelive_api/items/competitor"
|
9
|
+
require "quakelive_api/items/model"
|
10
|
+
require "quakelive_api/items/weapon"
|
11
|
+
require "quakelive_api/items/record"
|
12
|
+
require "quakelive_api/parser/base"
|
13
|
+
require "quakelive_api/parser/summary"
|
14
|
+
require "quakelive_api/parser/statistics"
|
15
|
+
require "quakelive_api/parser/awards"
|
16
|
+
require "quakelive_api/profile"
|
17
|
+
require "quakelive_api/profile/statistics"
|
18
|
+
require "quakelive_api/profile/summary"
|
19
|
+
require "quakelive_api/profile/awards/base"
|
20
|
+
require "quakelive_api/profile/awards/career_milestones"
|
21
|
+
require "quakelive_api/profile/awards/experience"
|
22
|
+
require "quakelive_api/profile/awards/mad_skillz"
|
23
|
+
require "quakelive_api/profile/awards/social_life"
|
24
|
+
require "quakelive_api/profile/awards/sweet_success"
|
25
|
+
require "quakelive_api/error/player_not_found"
|
26
|
+
require "quakelive_api/error/request_error"
|
27
|
+
require "net/http"
|
28
|
+
require "nokogiri"
|
29
|
+
require "date"
|
30
|
+
require "time"
|
31
|
+
|
32
|
+
module QuakeliveApi
|
33
|
+
|
34
|
+
def self.site
|
35
|
+
"http://www.quakelive.com"
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'quakelive_api/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "quakelive_api"
|
8
|
+
spec.version = QuakeliveApi::VERSION
|
9
|
+
spec.authors = ["Rafal Wojsznis"]
|
10
|
+
spec.email = ["rafal.wojsznis@gmail.com"]
|
11
|
+
spec.description = %q{Pseudo API for QuakeLive}
|
12
|
+
spec.summary = %q{Fetch some basic information from QuakeLive site}
|
13
|
+
spec.homepage = "https://github.com/emq/quakelive_api"
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_dependency "nokogiri", ">= 1.5"
|
22
|
+
|
23
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
24
|
+
spec.add_development_dependency "rake"
|
25
|
+
spec.add_development_dependency "minitest", "~> 5.0.0"
|
26
|
+
spec.add_development_dependency "webmock", "~> 1.12.0"
|
27
|
+
spec.add_development_dependency "simplecov", "~> 0.8.0.pre"
|
28
|
+
end
|
@@ -0,0 +1,382 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Server: nginx/0.7.67
|
3
|
+
Date: Sat, 03 Aug 2013 14:15:13 GMT
|
4
|
+
Content-Type: text/html
|
5
|
+
Transfer-Encoding: chunked
|
6
|
+
Connection: close
|
7
|
+
X-Powered-By: PHP/5.3.3
|
8
|
+
X-QL-IDENT: 0 standard
|
9
|
+
|
10
|
+
<div class="detailArea awardId53">
|
11
|
+
<img alt="" title="It takes something special to post 10K. Props." src="http://cdn.quakelive.com/web/2013071600/images/awards/md/fear_me_v2013071600.0.png" width="61" height="61" class="fl" />
|
12
|
+
<p class="fl ml15 w247">
|
13
|
+
<span class="bigRedTxt">Fear Me</span>
|
14
|
+
<br />
|
15
|
+
<span class="blktxt_11">Accumulate 10,000 frags.</span>
|
16
|
+
</p>
|
17
|
+
|
18
|
+
<ul class="fl">
|
19
|
+
<li class="blkbullets blktxt_11">Date awarded: 05/03/2012<!-- (999 days after joining) --></li>
|
20
|
+
<li class="blkbullets blktxt_11">
|
21
|
+
24 friends (70% of total) have earned this award
|
22
|
+
</li>
|
23
|
+
<li class="blkbullets blktxt_11">
|
24
|
+
28705 players (< 1% of total) have earned this award
|
25
|
+
</li>
|
26
|
+
</ul>
|
27
|
+
|
28
|
+
<div class="cl"></div>
|
29
|
+
</div>
|
30
|
+
<div class="detailArea awardId168">
|
31
|
+
<img alt="" title="True dedication to the game. Go start some matches!" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/pro_subscriber_v2013071600.0.png" width="61" height="61" class="fl" />
|
32
|
+
<p class="fl ml15 w247">
|
33
|
+
<span class="bigRedTxt">Pro Subscriber</span>
|
34
|
+
<br />
|
35
|
+
<span class="blktxt_11">Purchase a pro subscription to QUAKE LIVE.</span>
|
36
|
+
</p>
|
37
|
+
|
38
|
+
<ul class="fl">
|
39
|
+
<li class="blkbullets blktxt_11">Date awarded: 02/02/2011<!-- (999 days after joining) --></li>
|
40
|
+
<li class="blkbullets blktxt_11">
|
41
|
+
</li>
|
42
|
+
<li class="blkbullets blktxt_11">
|
43
|
+
</li>
|
44
|
+
</ul>
|
45
|
+
|
46
|
+
<div class="cl"></div>
|
47
|
+
</div>
|
48
|
+
<div class="detailArea awardId62">
|
49
|
+
<img alt="" title="Yes, that's also 500 frags in 8 minutes and 18 seconds." src="http://cdn.quakelive.com/web/2013071600/images/awards/md/2_in_2_v2013071600.0.png" width="61" height="61" class="fl" />
|
50
|
+
<p class="fl ml15 w247">
|
51
|
+
<span class="bigRedTxt">2 in 2</span>
|
52
|
+
<br />
|
53
|
+
<span class="blktxt_11">Accumulate 250 "Excellent" Medals.</span>
|
54
|
+
</p>
|
55
|
+
|
56
|
+
<ul class="fl">
|
57
|
+
<li class="blkbullets blktxt_11">Date awarded: 08/24/2009<!-- (999 days after joining) --></li>
|
58
|
+
<li class="blkbullets blktxt_11">
|
59
|
+
23 friends (67% of total) have earned this award
|
60
|
+
</li>
|
61
|
+
<li class="blkbullets blktxt_11">
|
62
|
+
41844 players (1% of total) have earned this award
|
63
|
+
</li>
|
64
|
+
</ul>
|
65
|
+
|
66
|
+
<div class="cl"></div>
|
67
|
+
</div>
|
68
|
+
<div class="detailArea awardId52">
|
69
|
+
<img alt="" title="You've got some serious game." src="http://cdn.quakelive.com/web/2013071600/images/awards/md/dangerous_v2013071600.0.png" width="61" height="61" class="fl" />
|
70
|
+
<p class="fl ml15 w247">
|
71
|
+
<span class="bigRedTxt">Dangerous</span>
|
72
|
+
<br />
|
73
|
+
<span class="blktxt_11">Accumulate 2500 frags.</span>
|
74
|
+
</p>
|
75
|
+
|
76
|
+
<ul class="fl">
|
77
|
+
<li class="blkbullets blktxt_11">Date awarded: 07/24/2009<!-- (999 days after joining) --></li>
|
78
|
+
<li class="blkbullets blktxt_11">
|
79
|
+
27 friends (79% of total) have earned this award
|
80
|
+
</li>
|
81
|
+
<li class="blkbullets blktxt_11">
|
82
|
+
56027 players (1% of total) have earned this award
|
83
|
+
</li>
|
84
|
+
</ul>
|
85
|
+
|
86
|
+
<div class="cl"></div>
|
87
|
+
</div>
|
88
|
+
<div class="detailArea awardId63">
|
89
|
+
<img alt="" title="When people call you a "camper," challenge them to instagib." src="http://cdn.quakelive.com/web/2013071600/images/awards/md/assassin_v2013071600.0.png" width="61" height="61" class="fl" />
|
90
|
+
<p class="fl ml15 w247">
|
91
|
+
<span class="bigRedTxt">Assassin</span>
|
92
|
+
<br />
|
93
|
+
<span class="blktxt_11">Accumulate 250 "Impressive" Medals.</span>
|
94
|
+
</p>
|
95
|
+
|
96
|
+
<ul class="fl">
|
97
|
+
<li class="blkbullets blktxt_11">Date awarded: 07/09/2009<!-- (999 days after joining) --></li>
|
98
|
+
<li class="blkbullets blktxt_11">
|
99
|
+
28 friends (82% of total) have earned this award
|
100
|
+
</li>
|
101
|
+
<li class="blkbullets blktxt_11">
|
102
|
+
50359 players (1% of total) have earned this award
|
103
|
+
</li>
|
104
|
+
</ul>
|
105
|
+
|
106
|
+
<div class="cl"></div>
|
107
|
+
</div>
|
108
|
+
<div class="detailArea awardId59">
|
109
|
+
<img alt="" title="All you need now is an ear-piece, black suit and shades." src="http://cdn.quakelive.com/web/2013071600/images/awards/md/guardian_v2013071600.0.png" width="61" height="61" class="fl" />
|
110
|
+
<p class="fl ml15 w247">
|
111
|
+
<span class="bigRedTxt">Guardian</span>
|
112
|
+
<br />
|
113
|
+
<span class="blktxt_11">Accumulate 100 Capture the Flag Defend Medals.</span>
|
114
|
+
</p>
|
115
|
+
|
116
|
+
<ul class="fl">
|
117
|
+
<li class="blkbullets blktxt_11">Date awarded: 07/09/2009<!-- (999 days after joining) --></li>
|
118
|
+
<li class="blkbullets blktxt_11">
|
119
|
+
18 friends (52% of total) have earned this award
|
120
|
+
</li>
|
121
|
+
<li class="blkbullets blktxt_11">
|
122
|
+
26365 players (< 1% of total) have earned this award
|
123
|
+
</li>
|
124
|
+
</ul>
|
125
|
+
|
126
|
+
<div class="cl"></div>
|
127
|
+
</div>
|
128
|
+
<div class="detailArea awardId51">
|
129
|
+
<img alt="" title="Just a taste of life in the arena." src="http://cdn.quakelive.com/web/2013071600/images/awards/md/fraggin_great_v2013071600.0.png" width="61" height="61" class="fl" />
|
130
|
+
<p class="fl ml15 w247">
|
131
|
+
<span class="bigRedTxt">Fraggin' Great</span>
|
132
|
+
<br />
|
133
|
+
<span class="blktxt_11">Accumulate 1000 total frags.</span>
|
134
|
+
</p>
|
135
|
+
|
136
|
+
<ul class="fl">
|
137
|
+
<li class="blkbullets blktxt_11">Date awarded: 07/06/2009<!-- (999 days after joining) --></li>
|
138
|
+
<li class="blkbullets blktxt_11">
|
139
|
+
28 friends (82% of total) have earned this award
|
140
|
+
</li>
|
141
|
+
<li class="blkbullets blktxt_11">
|
142
|
+
76957 players (2% of total) have earned this award
|
143
|
+
</li>
|
144
|
+
</ul>
|
145
|
+
|
146
|
+
<div class="cl"></div>
|
147
|
+
</div>
|
148
|
+
<div class="detailArea awardId74">
|
149
|
+
<img alt="" title="The start of something great." src="http://cdn.quakelive.com/web/2013071600/images/awards/md/impressive_v2013071600.0.png" width="61" height="61" class="fl" />
|
150
|
+
<p class="fl ml15 w247">
|
151
|
+
<span class="bigRedTxt">Impressive</span>
|
152
|
+
<br />
|
153
|
+
<span class="blktxt_11">Accumulate 250 total frags.</span>
|
154
|
+
</p>
|
155
|
+
|
156
|
+
<ul class="fl">
|
157
|
+
<li class="blkbullets blktxt_11">Date awarded: 06/11/2009<!-- (999 days after joining) --></li>
|
158
|
+
<li class="blkbullets blktxt_11">
|
159
|
+
29 friends (85% of total) have earned this award
|
160
|
+
</li>
|
161
|
+
<li class="blkbullets blktxt_11">
|
162
|
+
118582 players (3% of total) have earned this award
|
163
|
+
</li>
|
164
|
+
</ul>
|
165
|
+
|
166
|
+
<div class="cl"></div>
|
167
|
+
</div>
|
168
|
+
<a class="unearnedAwardsLabel" href="javascript:;" onclick="$('.unearnedAwardType3').show();$(this).hide()">Show unearned awards</a>
|
169
|
+
|
170
|
+
<div class="detailArea_off unearnedAwardType3">
|
171
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/premium_subscriber_v2013071600.0.png" width="61" height="61" class="fl" />
|
172
|
+
<p class="fl ml15 w247">
|
173
|
+
<span class="bigRedTxt">Premium Subscriber</span>
|
174
|
+
<br />
|
175
|
+
<span class="blktxt_11">Purchase a premium subscription to QUAKE LIVE.</span>
|
176
|
+
</p>
|
177
|
+
|
178
|
+
<ul class="fl">
|
179
|
+
|
180
|
+
<li class="blkbullets blktxt_11">
|
181
|
+
</li>
|
182
|
+
</ul>
|
183
|
+
|
184
|
+
<div class="cl"></div>
|
185
|
+
|
186
|
+
</div>
|
187
|
+
|
188
|
+
<div class="detailArea_off unearnedAwardType3">
|
189
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/dev_love_v2013071600.0.png" width="61" height="61" class="fl" />
|
190
|
+
<p class="fl ml15 w247">
|
191
|
+
<span class="bigRedTxt">Dev Love</span>
|
192
|
+
<br />
|
193
|
+
<span class="blktxt_11">Play a DevPick match.</span>
|
194
|
+
</p>
|
195
|
+
|
196
|
+
<ul class="fl">
|
197
|
+
<li class="blkbullets blktxt_11">
|
198
|
+
6 friends (17% of total) have earned this award
|
199
|
+
</li>
|
200
|
+
|
201
|
+
<li class="blkbullets blktxt_11">
|
202
|
+
8425 players (< 1% of total) have earned this award
|
203
|
+
</li>
|
204
|
+
</ul>
|
205
|
+
|
206
|
+
<div class="cl"></div>
|
207
|
+
|
208
|
+
</div>
|
209
|
+
|
210
|
+
<div class="detailArea_off unearnedAwardType3">
|
211
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/sidekick_v2013071600.0.png" width="61" height="61" class="fl" />
|
212
|
+
<p class="fl ml15 w247">
|
213
|
+
<span class="bigRedTxt">Sidekick</span>
|
214
|
+
<br />
|
215
|
+
<span class="blktxt_11">Accumulate 100 Capture the Flag Assist Medals.</span>
|
216
|
+
</p>
|
217
|
+
|
218
|
+
<ul class="fl">
|
219
|
+
<li class="blkbullets blktxt_11">
|
220
|
+
7 friends (20% of total) have earned this award
|
221
|
+
</li>
|
222
|
+
|
223
|
+
<li class="blkbullets blktxt_11">
|
224
|
+
10041 players (< 1% of total) have earned this award
|
225
|
+
</li>
|
226
|
+
</ul>
|
227
|
+
|
228
|
+
<div class="cl"></div>
|
229
|
+
|
230
|
+
</div>
|
231
|
+
|
232
|
+
<div class="detailArea_off unearnedAwardType3">
|
233
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/color_guard_v2013071600.0.png" width="61" height="61" class="fl" />
|
234
|
+
<p class="fl ml15 w247">
|
235
|
+
<span class="bigRedTxt">Color Guard</span>
|
236
|
+
<br />
|
237
|
+
<span class="blktxt_11">Accumulate 100 Capture Medals.</span>
|
238
|
+
</p>
|
239
|
+
|
240
|
+
<ul class="fl">
|
241
|
+
<li class="blkbullets blktxt_11">
|
242
|
+
8 friends (23% of total) have earned this award
|
243
|
+
</li>
|
244
|
+
|
245
|
+
<li class="blkbullets blktxt_11">
|
246
|
+
11620 players (< 1% of total) have earned this award
|
247
|
+
</li>
|
248
|
+
</ul>
|
249
|
+
|
250
|
+
<div class="cl"></div>
|
251
|
+
|
252
|
+
</div>
|
253
|
+
|
254
|
+
<div class="detailArea_off unearnedAwardType3">
|
255
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/mvp_v2013071600.0.png" width="61" height="61" class="fl" />
|
256
|
+
<p class="fl ml15 w247">
|
257
|
+
<span class="bigRedTxt">MVP</span>
|
258
|
+
<br />
|
259
|
+
<span class="blktxt_11">Accumulate 1000 total Capture the Flag Medals (Caps, Def, and Asst combined).</span>
|
260
|
+
</p>
|
261
|
+
|
262
|
+
<ul class="fl">
|
263
|
+
<li class="blkbullets blktxt_11">
|
264
|
+
8 friends (23% of total) have earned this award
|
265
|
+
</li>
|
266
|
+
|
267
|
+
<li class="blkbullets blktxt_11">
|
268
|
+
9506 players (< 1% of total) have earned this award
|
269
|
+
</li>
|
270
|
+
</ul>
|
271
|
+
|
272
|
+
<div class="cl"></div>
|
273
|
+
|
274
|
+
</div>
|
275
|
+
|
276
|
+
<div class="detailArea_off unearnedAwardType3">
|
277
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/fragaholic_v2013071600.0.png" width="61" height="61" class="fl" />
|
278
|
+
<p class="fl ml15 w247">
|
279
|
+
<span class="bigRedTxt">Fragaholic</span>
|
280
|
+
<br />
|
281
|
+
<span class="blktxt_11">Accumulate 50,000 frags.</span>
|
282
|
+
</p>
|
283
|
+
|
284
|
+
<ul class="fl">
|
285
|
+
<li class="blkbullets blktxt_11">
|
286
|
+
10 friends (29% of total) have earned this award
|
287
|
+
</li>
|
288
|
+
|
289
|
+
<li class="blkbullets blktxt_11">
|
290
|
+
6265 players (< 1% of total) have earned this award
|
291
|
+
</li>
|
292
|
+
</ul>
|
293
|
+
|
294
|
+
<div class="cl"></div>
|
295
|
+
|
296
|
+
</div>
|
297
|
+
|
298
|
+
<div class="detailArea_off unearnedAwardType3">
|
299
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/merciless_v2013071600.0.png" width="61" height="61" class="fl" />
|
300
|
+
<p class="fl ml15 w247">
|
301
|
+
<span class="bigRedTxt">Merciless</span>
|
302
|
+
<br />
|
303
|
+
<span class="blktxt_11">Accumulate 100,000 frags.</span>
|
304
|
+
</p>
|
305
|
+
|
306
|
+
<ul class="fl">
|
307
|
+
<li class="blkbullets blktxt_11">
|
308
|
+
5 friends (14% of total) have earned this award
|
309
|
+
</li>
|
310
|
+
|
311
|
+
<li class="blkbullets blktxt_11">
|
312
|
+
1879 players (< 1% of total) have earned this award
|
313
|
+
</li>
|
314
|
+
</ul>
|
315
|
+
|
316
|
+
<div class="cl"></div>
|
317
|
+
|
318
|
+
</div>
|
319
|
+
|
320
|
+
<div class="detailArea_off unearnedAwardType3">
|
321
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/dark_angel_v2013071600.0.png" width="61" height="61" class="fl" />
|
322
|
+
<p class="fl ml15 w247">
|
323
|
+
<span class="bigRedTxt">Dark Angel</span>
|
324
|
+
<br />
|
325
|
+
<span class="blktxt_11">Accumulate 250,000 frags.</span>
|
326
|
+
</p>
|
327
|
+
|
328
|
+
<ul class="fl">
|
329
|
+
<li class="blkbullets blktxt_11">
|
330
|
+
No friends have earned this award
|
331
|
+
</li>
|
332
|
+
|
333
|
+
<li class="blkbullets blktxt_11">
|
334
|
+
154 players (< 1% of total) have earned this award
|
335
|
+
</li>
|
336
|
+
</ul>
|
337
|
+
|
338
|
+
<div class="cl"></div>
|
339
|
+
|
340
|
+
</div>
|
341
|
+
|
342
|
+
<div class="detailArea_off unearnedAwardType3">
|
343
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/azrael_500k_v2013071600.0.png" width="61" height="61" class="fl" />
|
344
|
+
<p class="fl ml15 w247">
|
345
|
+
<span class="bigRedTxt">Azrael</span>
|
346
|
+
<br />
|
347
|
+
<span class="blktxt_11">Accumulate 500,000 frags.</span>
|
348
|
+
</p>
|
349
|
+
|
350
|
+
<ul class="fl">
|
351
|
+
<li class="blkbullets blktxt_11">
|
352
|
+
No friends have earned this award
|
353
|
+
</li>
|
354
|
+
|
355
|
+
<li class="blkbullets blktxt_11">
|
356
|
+
7 players (< 1% of total) have earned this award
|
357
|
+
</li>
|
358
|
+
</ul>
|
359
|
+
|
360
|
+
<div class="cl"></div>
|
361
|
+
|
362
|
+
</div>
|
363
|
+
|
364
|
+
<div class="detailArea_off unearnedAwardType3">
|
365
|
+
<img alt="" src="http://cdn.quakelive.com/web/2013071600/images/awards/md/hell_seraph_1m_v2013071600.0.png" width="61" height="61" class="fl" />
|
366
|
+
<p class="fl ml15 w247">
|
367
|
+
<span class="bigRedTxt">Hell Seraph</span>
|
368
|
+
<br />
|
369
|
+
<span class="blktxt_11">Accumulate 1,000,000 frags.</span>
|
370
|
+
</p>
|
371
|
+
|
372
|
+
<ul class="fl">
|
373
|
+
|
374
|
+
<li class="blkbullets blktxt_11">
|
375
|
+
No players have earned this award
|
376
|
+
</li>
|
377
|
+
</ul>
|
378
|
+
|
379
|
+
<div class="cl"></div>
|
380
|
+
|
381
|
+
</div>
|
382
|
+
|