Method: Core::Trans.parse_items

Defined in:
lib/translate.rb

.parse_itemsObject



114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
# File 'lib/translate.rb', line 114

def self.parse_items
  begin
    file = File.open("#{Core::LIBRARY_PATH}/def/#{Core.config[:language]}/items.trans", "r")
    block = false
    name = desc = ""
    item = nil
    file.each_line { |line|
      line.gsub!("\n", "")
      if line.start_with?("#") or line.length == 0
        if line == "#EOF"
          break
        end
        next
      end
      if line[0] == "{"
        block = true
      end
      if line[0] == "}"
        block = false
        @@items[Core.config[:language]].store(item.name, name)
        @@items[Core.config[:language]].store("#{item.name}_desc", desc)
        next
      end
      if block
        if line.start_with?("name")
          line.gsub!(/name *= */, "")
          name = line.gsub("\"", "")
        elsif line.start_with?("desc")
          line.gsub!(/desc *= */, "")
          desc = line.gsub("\"", "")
        end
      else
        item = Core::Game.find_item(line.to_sym)
      end
    }
    file.close
  rescue Errno::ENOENT
    self.handle_failed("item")
  end
end