Module: Gamefic::World::Players

Includes:
Commands, Entities
Included in:
Gamefic::World
Defined in:
lib/gamefic/world/players.rb

Instance Method Summary collapse

Methods included from Commands

#actions, #disambiguate, #get_default_query, #interpret, #meta, #override, #parse, #playbook, #respond, #set_default_query, #validate, #verbs

Methods included from Entities

#cast, #destroy, #entities, #make, #pick

Instance Method Details

#make_player_characterGamefic::Actor Also known as: get_player_character

Make a character that a player will control on introduction.

Returns:



31
32
33
# File 'lib/gamefic/world/players.rb', line 31

def make_player_character
  cast player_class, name: 'yourself', synonyms: 'self myself you me', proper_named: true
end

#player_class(cls = nil) ⇒ Object



14
15
16
17
18
# File 'lib/gamefic/world/players.rb', line 14

def player_class cls = nil
  STDERR.puts "Modifying player_class this way is deprecated. Use set_player_class instead" unless cls.nil?
  @player_class = cls unless cls.nil?
  @player_class ||= Gamefic::Actor
end

#playersArray<Gamefic::Actor>

An array of entities that are currently connected to users.

Returns:



10
11
12
# File 'lib/gamefic/world/players.rb', line 10

def players
  @players ||= []
end

#set_player_class(cls) ⇒ Object

Parameters:



21
22
23
24
25
26
# File 'lib/gamefic/world/players.rb', line 21

def set_player_class cls
  unless cls < Gamefic::Active && cls <= Gamefic::Entity
    raise ArgumentError, "Player class must be an active entity"
  end
  @player_class = cls
end