kag-gather 1.4.0 → 1.4.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.
@@ -19,6 +19,7 @@ module KAG
19
19
  _ensure_data
20
20
  if reported?
21
21
  if can_report?
22
+ KAG::User::User.add_stat(user,:reports_others)
22
23
  if past_threshold?
23
24
  ignore
24
25
  else
@@ -59,6 +60,7 @@ module KAG
59
60
  data[:reported][self[:authname].to_sym] = c
60
61
  data.save
61
62
 
63
+ KAG::User::User.add_stat(user,:reports_others)
62
64
  self.gather.reply self.message,"User #{self[:nick]} reported." if self.gather.class == KAG::Gather
63
65
  end
64
66
 
@@ -31,7 +31,7 @@ module KAG
31
31
  self[:players].each do |player|
32
32
  u = User(player.to_s)
33
33
  if u
34
- KAG::User::User.add_match(u)
34
+ KAG::User::User.add_stat(u,:matches)
35
35
  end
36
36
  end
37
37
 
@@ -144,10 +144,11 @@ module KAG
144
144
  self[:subs_needed].length > 0
145
145
  end
146
146
 
147
- def sub_in(nick)
147
+ def sub_in(user)
148
148
  placement = false
149
149
  if needs_sub?
150
150
  placement = self[:subs_needed].shift
151
+ KAG::User::User.add_stat(m.user,:substitutions)
151
152
  end
152
153
  placement
153
154
  end
@@ -75,10 +75,10 @@ module KAG
75
75
  unless is_banned?(m.user)
76
76
  @matches.each do |k,match|
77
77
  if match.needs_sub?
78
- placement = match.sub_in(m.user.nick)
78
+ placement = match.sub_in(m.user)
79
79
  if placement
80
80
  reply m,placement[:channel_msg]
81
- User(m.user.nick).send placement[:private_msg]
81
+ m.user.send placement[:private_msg]
82
82
  end
83
83
  end
84
84
  end
@@ -89,6 +89,7 @@ module KAG
89
89
  summary: "Add yourself to the active queue for the next match"
90
90
  def add(m)
91
91
  unless is_banned?(m.user)
92
+ KAG::User::User.add_stat(m.user,:adds)
92
93
  add_user_to_queue(m,m.user.nick)
93
94
  end
94
95
  end
@@ -102,8 +103,9 @@ module KAG
102
103
  match.remove_player(m.user)
103
104
  send_channels_msg "#{m.user.nick} has left the match at #{match.server[:key]}! You can sub in by typing !sub"
104
105
  elsif @queue.key?(m.user.nick)
106
+ KAG::User::User.add_stat(m.user,:rems)
105
107
  unless remove_user_from_queue(m.user.nick)
106
- debug "#{nick} is not in the queue."
108
+ debug "#{m.user.nick} is not in the queue."
107
109
  end
108
110
  end
109
111
  end
@@ -65,7 +65,8 @@ module KAG
65
65
  sub[:private_msg] = "Please #{self.match.server.text_join} | #{sub[:cls]} on the #{self[:name]} Team"
66
66
  self[:players].delete(user.nick)
67
67
 
68
- KAG::User::User.subtract_match(user)
68
+ KAG::User::User.subtract_stat(user,:matches)
69
+ KAG::User::User.add_stat(m.user,:desertions)
69
70
 
70
71
  if self.match and self.match.server
71
72
  self.match.server.kick(user.nick)
data/lib/kag/user/user.rb CHANGED
@@ -28,19 +28,21 @@ module KAG
28
28
  end
29
29
  end
30
30
 
31
- def self.add_match(user)
31
+ def self.add_stat(user,stat,increment = 1)
32
+ stat = stat.to_sym
32
33
  u = KAG::User::User.new(user)
33
- u[:matches] = 0 unless u[:matches]
34
- u[:matches] = u[:matches].to_i + 1
34
+ u[stat] = 0 unless u[stat]
35
+ u[stat] = u[stat].to_i + increment.to_i
35
36
  u.save
36
37
  end
37
38
 
38
- def self.subtract_match(user)
39
+ def self.subtract_stat(user,stat,decrement = 1)
40
+ stat = stat.to_sym
39
41
  u = KAG::User::User.new(user)
40
- if u[:matches]
41
- u[:matches] = u[:matches].to_i + 1
42
+ if u[stat]
43
+ u[stat] = u[stat].to_i - decrement.to_i
42
44
  else
43
- u[:matches] = 0
45
+ u[stat] = 0
44
46
  end
45
47
  u.save
46
48
  end
data/lib/kag/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module KAG
2
- VERSION = '1.4.0'
2
+ VERSION = '1.4.1'
3
3
  def self.version
4
4
  VERSION
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kag-gather
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.4.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: