class RPG::MoveCommand

Public Class Methods

new(hash) click to toggle source
# File lib/rmxp_extractor/classnames.rb, line 362
def initialize(hash)
  @code = hash["code"]
  @parameters = []
  hash["parameters"].each_with_index do |value|
    if value.to_s.match(/#<RPG::/)
      @parameters << RPG::AudioFile.new(value)
    elsif value.to_s.match(/#<Tone:/)
      @parameters << Tone.new(value)
    elsif value.to_s.match(/#<Color:/)
      @parameters << Color.new(value)
    elsif value.to_s.match(/#<Table:/)
      @parameters << Table.new(value, false)
    else
      @parameters << value
    end
  end
end

Public Instance Methods

hash() click to toggle source
# File lib/rmxp_extractor/classnames.rb, line 380
def hash
  dump = {
    code: @code,
    parameters: [],
  }
  @parameters.each_with_index do |value|
    if value.to_s.match(/#<RPG::/) || value.to_s.match(/#<Tone:/) || value.to_s.match(/#<Color:/) || value.to_s.match(/#<Table:/)
      dump[:parameters] << value.hash
    elsif value.is_a? String
      dump[:parameters] << value.force_encoding("iso-8859-1").encode("utf-8")
    else
      dump[:parameters] << value
    end
  end
  dump
end