Module: MON
- Defined in:
- lib/monsternet.rb
Constant Summary collapse
- @@PEERS =
{}
- @@NICKS =
{}
- @@NICK =
{}
- @@TIMES =
{}
- @@LIVES =
{}
- @@SEENS =
{}
- @@LEFTS =
{}
Class Method Summary collapse
- .bye! ⇒ Object
- .get(p, i, h = {}, &b) ⇒ Object
- .hi! ⇒ Object
- .hood(&b) ⇒ Object
- .init! ⇒ Object
- .lefts ⇒ Object
- .lives ⇒ Object
- .nick ⇒ Object
- .nicks ⇒ Object
- .peer ⇒ Object
- .seens ⇒ Object
- .times ⇒ Object
- .yo(p, m, &b) ⇒ Object
Class Method Details
.bye! ⇒ Object
238 239 240 |
# File 'lib/monsternet.rb', line 238 def self.bye! leave_to_peers end |
.get(p, i, h = {}, &b) ⇒ Object
260 261 262 263 264 265 266 267 268 269 270 271 |
# File 'lib/monsternet.rb', line 260 def self.get p, i, h={}, &b if @@NICKS.has_key? p.to_s s = [] h.merge({ id: ID, nick: NICK }).each_pair { |k,v| s << %[#{k}=#{v}] } r = (@@PEERS[@@NICKS[p.to_s]], %[GET #{p} #{i} #{s.join("&")}]) if block_given? b.call(r) else return r end end end |
.hi! ⇒ Object
235 236 237 |
# File 'lib/monsternet.rb', line 235 def self.hi! announce_to_peers end |
.hood(&b) ⇒ Object
241 242 243 244 245 246 247 |
# File 'lib/monsternet.rb', line 241 def self.hood &b if block_given? $known_peers.each { |e| b.call(e) } else $known_peers end end |
.init! ⇒ Object
230 231 232 233 234 |
# File 'lib/monsternet.rb', line 230 def self.init! Thread.new { start_server; } sleep 1 announce_to_peers end |
.lefts ⇒ Object
227 228 229 |
# File 'lib/monsternet.rb', line 227 def self.lefts @@LEFTS end |
.lives ⇒ Object
219 220 221 |
# File 'lib/monsternet.rb', line 219 def self.lives @@LIVES end |
.nick ⇒ Object
211 212 213 |
# File 'lib/monsternet.rb', line 211 def self.nick @@NICK end |
.nicks ⇒ Object
207 208 209 |
# File 'lib/monsternet.rb', line 207 def self.nicks @@NICKS end |
.peer ⇒ Object
203 204 205 |
# File 'lib/monsternet.rb', line 203 def self.peer @@PEERS end |
.seens ⇒ Object
223 224 225 |
# File 'lib/monsternet.rb', line 223 def self.seens @@SEENS end |
.times ⇒ Object
215 216 217 |
# File 'lib/monsternet.rb', line 215 def self.times @@TIMES end |
.yo(p, m, &b) ⇒ Object
249 250 251 252 253 254 255 256 257 258 |
# File 'lib/monsternet.rb', line 249 def self.yo p, m, &b if @@NICKS.has_key? p.to_s r = (@@PEERS[@@NICKS[p.to_s]], %[YO [YO][#{NICK}] #{m}]) if block_given? b.call(r) else return r end end end |