class ClasslessMud::Client
Attributes
player[R]
Public Class Methods
new()
click to toggle source
# File lib/classless_mud/client.rb, line 16 def initialize @callbacks = [] end
Public Instance Methods
on(&callback)
click to toggle source
# File lib/classless_mud/client.rb, line 39 def on &callback @callbacks.push callback end
puts(message)
click to toggle source
# File lib/classless_mud/client.rb, line 43 def puts message send_data "#{message}\n" end
receive_data(data)
click to toggle source
# File lib/classless_mud/client.rb, line 28 def receive_data data data = data.chomp if @callbacks.any? callback = @callbacks.pop callback.call(data) else player.handle_message(data) end player.display_prompt if player end
start(game)
click to toggle source
# File lib/classless_mud/client.rb, line 20 def start game @game = game send_data MOTD ::ClasslessMud::AccountBuilder.create(self, game) { |player| @player = player } end