lita-resistance 0.0.1 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9c752cba3ed1d9eac06f48b269edef791bb88da3
4
- data.tar.gz: 034812202b8841919cf2f55a6a4721aba07016f5
3
+ metadata.gz: 5cfd0b6849abf7617ce8305c56a2b0f71e120089
4
+ data.tar.gz: e0543a6a2c1d80cdb57d5bedfc6347486128d0ed
5
5
  SHA512:
6
- metadata.gz: 10c75c592404016a0d757867b339ce262ca40215cca86f1adb8932fa93fd7345d87ba382548513b19a7df75b3828b06cfe55445a1b7fd7195ae507197de3f42f
7
- data.tar.gz: 1475a251ad19675e5cd3bbef4a320d5d0b5f124b8b4e290cc890c3202acdbe20f6f33dd9ddff3dea677c604053a5323be4d5b624dd6542738713b8609ab6fcc3
6
+ metadata.gz: d092620936498b58b19e2ef2d6f35db8aec4254b8c417b9a0428c27eafaecb58f7d10675bf5823c4b4333e190bf109799c721ee2defcbdac1d7bc50ff44ed772
7
+ data.tar.gz: 778f6cd666339883a2f7257d5276808fcc2e45d72ea313ed0a5c8845750683e6de4083ae4682bc24d6c5f785e14b78e0ddfcc7dd878aadde950313109b82e940
data/.travis.yml CHANGED
@@ -1,8 +1,8 @@
1
- language: ruby
2
- rvm:
3
- - 2.0.0
4
- script: bundle exec rake
5
- before_install:
6
- - gem update --system
7
- services:
8
- - redis-server
1
+ language: ruby
2
+ rvm:
3
+ - 2.2.3
4
+ script: bundle exec rake
5
+ before_install:
6
+ - gem update --system 2.4.8
7
+ services:
8
+ - redis-server
data/Gemfile CHANGED
@@ -1,3 +1,3 @@
1
- source "https://rubygems.org"
1
+ source "http://rubygems.org"
2
2
 
3
3
  gemspec
@@ -1,61 +1,62 @@
1
- module Lita
2
- module Handlers
3
- class Resistance < Handler
4
-
5
- route(/resistance .+/, :play, command: true, help: {'resistance [users]' => 'Starts a game of resistance with the people you mention.'})
6
-
7
- def play(response)
8
- all_users = response.args.uniq
9
-
10
- if all_users.length < 5
11
- response.reply('You need at least 5 players for Resistance.')
12
- return
13
- elsif all_users.length > 10
14
- response.reply('You cannot play a game of Resistance with more than 10 players.')
15
- return
16
- end
17
-
18
- # Remove any "@" from usernames
19
- all_users.map! {|username|
20
- if username[0] == '@'
21
- username = username[1, username.length-1]
22
- else
23
- username = username
24
- end
25
- }
26
-
27
- # Ensure all people are users.
28
- unknown_users = []
29
- all_users.each do |username|
30
- user = Lita::User.find_by_mention_name(username)
31
- unknown_users.push(username) unless user
32
- end
33
-
34
- if unknown_users.any?
35
- response.reply('The following are not users. Please check your spelling and try again.')
36
- unknown_users.each do |user|
37
- response.reply(user)
38
- end and return
39
- end
40
-
41
- # Form teams
42
- spies = all_users.sample((all_users.length+2)/3)
43
- resistance = all_users - spies
44
-
45
- spies.each do |member|
46
- user = Lita::User.find_by_mention_name(member)
47
- robot.send_message(Source.new(user: user), 'You are a member of the spies.')
48
- end
49
-
50
- resistance.each do |member|
51
- user = Lita::User.find_by_mention_name(member)
52
- robot.send_message(Source.new(user: user), 'You are a member of the resistance.')
53
- end
54
-
55
- response.reply('Roles have been assigned to the selected people!')
56
- end
57
-
58
- Lita.register_handler(self)
59
- end
60
- end
61
- end
1
+ module Lita
2
+ module Handlers
3
+ class Resistance < Handler
4
+
5
+ route(/resistance .+/, :play, command: true, help: {'resistance [users]' => 'Starts a game of resistance with the people you mention.'})
6
+ def play(response)
7
+ all_users = response.args.uniq
8
+
9
+ if all_users.length < 5
10
+ response.reply('You need at least 5 players for Resistance.')
11
+ return
12
+ elsif all_users.length > 10
13
+ response.reply('You cannot play a game of Resistance with more than 10 players.')
14
+ return
15
+ end
16
+
17
+ # Remove any "@" from usernames
18
+ all_users.map! {|username|
19
+ if username[0] == '@'
20
+ username = username[1, username.length-1]
21
+ else
22
+ username = username
23
+ end
24
+ }
25
+
26
+ # Ensure all people are users.
27
+ unknown_users = []
28
+ all_users.each do |username|
29
+ user = Lita::User.find_by_mention_name(username)
30
+ unknown_users.push(username) unless user
31
+ end
32
+
33
+ if unknown_users.any?
34
+ response.reply('The following are not users. Please check your spelling and try again.')
35
+ unknown_users.each do |user|
36
+ response.reply(user)
37
+ end and return
38
+ end
39
+
40
+ gameId = rand(999999)
41
+
42
+ # Form teams
43
+ spies = all_users.sample((all_users.length+2)/3)
44
+ resistance = all_users - spies
45
+
46
+ spies.each do |member|
47
+ user = Lita::User.find_by_mention_name(member)
48
+ robot.send_message(Source.new(user: user),"@#{response.user.mention_name} has started game ID##{gameId} of Resistance. You are a member of the spies.")
49
+ end
50
+
51
+ resistance.each do |member|
52
+ user = Lita::User.find_by_mention_name(member)
53
+ robot.send_message(Source.new(user: user), "@#{response.user.mention_name} has started game ID##{gameId} of Resistance. You are a member of the resistance.")
54
+ end
55
+
56
+ response.reply("Roles have been assigned to the selected people! This is game ID##{gameId}")
57
+ end
58
+
59
+ Lita.register_handler(self)
60
+ end
61
+ end
62
+ end
@@ -1,26 +1,26 @@
1
- Gem::Specification.new do |spec|
2
- spec.name = "lita-resistance"
3
- spec.version = "0.0.1"
4
- spec.authors = ["Deon Hua"]
5
- spec.email = ["deonhbci@gmail.com"]
6
- spec.description = "Plays a game of resistance by assigning roles to users you mention in chat."
7
- spec.summary = "Plays a game of resistance by assigning roles to users you mention in chat."
8
- spec.homepage = "http://github.com/DeonHua/lita-resistance"
9
- spec.license = "MIT"
10
- spec.metadata = { "lita_plugin_type" => "handler" }
11
-
12
- spec.files = `git ls-files`.split($/)
13
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
14
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
15
- spec.require_paths = ["lib"]
16
-
17
- spec.add_runtime_dependency "lita", ">= 4.6"
18
-
19
- spec.add_development_dependency "bundler", "~> 1.3"
20
- spec.add_development_dependency "pry-byebug"
21
- spec.add_development_dependency "rake"
22
- spec.add_development_dependency "rack-test"
23
- spec.add_development_dependency "rspec", ">= 3.0.0"
24
- spec.add_development_dependency "simplecov"
25
- spec.add_development_dependency "coveralls"
26
- end
1
+ Gem::Specification.new do |spec|
2
+ spec.name = "lita-resistance"
3
+ spec.version = "0.1.0"
4
+ spec.authors = ["Deon Hua"]
5
+ spec.email = ["deonhbci@gmail.com"]
6
+ spec.description = "Plays a game of resistance by assigning roles to users you mention in chat."
7
+ spec.summary = "Plays a game of resistance by assigning roles to users you mention in chat."
8
+ spec.homepage = "http://github.com/DeonHua/lita-resistance"
9
+ spec.license = "MIT"
10
+ spec.metadata = { "lita_plugin_type" => "handler" }
11
+
12
+ spec.files = `git ls-files`.split($/)
13
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
14
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
15
+ spec.require_paths = ["lib"]
16
+
17
+ spec.add_runtime_dependency "lita", ">= 4.6"
18
+
19
+ spec.add_development_dependency "bundler", "~> 1.3"
20
+ spec.add_development_dependency "pry-byebug"
21
+ spec.add_development_dependency "rake"
22
+ spec.add_development_dependency "rack-test"
23
+ spec.add_development_dependency "rspec", ">= 3.0.0"
24
+ spec.add_development_dependency "simplecov"
25
+ spec.add_development_dependency "coveralls"
26
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lita-resistance
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Deon Hua
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-29 00:00:00.000000000 Z
11
+ date: 2016-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: lita