class ClasslessMud::Room
Public Instance Methods
broadcast(message)
click to toggle source
# File lib/classless_mud/room.rb, line 27 def broadcast message self.players.each do |occupant| occupant.puts message end end
broadcast_say(from, message)
click to toggle source
# File lib/classless_mud/room.rb, line 33 def broadcast_say from, message self.players.each do |player| if player == from player.puts "You say '#{message}'" else player.puts "#{from.name} says '#{message}'" end end end
characters()
click to toggle source
# File lib/classless_mud/room.rb, line 18 def characters npcs.to_a + players.to_a end
enter(player)
click to toggle source
# File lib/classless_mud/room.rb, line 12 def enter player broadcast "#{player.name} entered the room" self.players << player player.look end
exit(player)
click to toggle source
# File lib/classless_mud/room.rb, line 22 def exit player self.players.delete player broadcast "#{player.name} left the room" end
find(keywords)
click to toggle source
# File lib/classless_mud/room.rb, line 47 def find keywords keywords_array = keywords.split items.detect do |item| (item.keywords.split & keywords_array).any? end end
find_character(keyword)
click to toggle source
# File lib/classless_mud/room.rb, line 54 def find_character keyword characters.detect do |character| character.name.include? keyword end end
handle_message(message)
click to toggle source
# File lib/classless_mud/room.rb, line 43 def handle_message message broadcast message end