class Core::Game::Magic

Attributes

learned[R]

Public Class Methods

new(char) click to toggle source
# File lib/game/magic.rb, line 8
def initialize(char)
  @char = char
  @learned = []
end

Public Instance Methods

cast(spell, caster, target=nil) click to toggle source
# File lib/game/magic.rb, line 21
def cast(spell, caster, target=nil)
  if @learned.include?(spell) and @char.state == Core::Game::NORMAL
    spell.cast(caster, target)
  end
end
cast_named(name, caster, target=nil) click to toggle source
# File lib/game/magic.rb, line 27
def cast_named(name, caster, target=nil)
  cast(Core::Game.find_spell(name), caster, target)
end
forget(spell) click to toggle source
# File lib/game/magic.rb, line 17
def forget(spell)
  @learned.delete(spell)
end
learn(spell) click to toggle source
# File lib/game/magic.rb, line 13
def learn(spell)
  @learned.push(spell) if !@learned.include?(spell)
end