File: armordefs.lua

package info (click to toggle)
spring 104.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 47,512 kB
  • sloc: cpp: 391,093; ansic: 79,943; python: 12,356; java: 12,201; awk: 5,889; sh: 1,826; xml: 655; makefile: 486; perl: 405; php: 211; objc: 194; sed: 2
file content (45 lines) | stat: -rw-r--r-- 1,430 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--
--  file:    armordefs.lua
--  brief:   armor.txt lua parser
--  author:  Dave Rodgers
--
--  Copyright (C) 2007.
--  Licensed under the terms of the GNU GPL, v2 or later.
--
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------


local tdfFile = 'armor.txt'
if (not VFS.FileExists(tdfFile)) then
  return {}
end


local TDF = VFS.Include('gamedata/parse_tdf.lua')
local armorDefs, err = TDF.Parse(tdfFile)
if (armorDefs == nil) then
  error('Error parsing armor.txt: ' .. err)
end

for categoryName, categoryTable in pairs(armorDefs) do
  local t = {}
  -- convert all ArmorDef <key,value> subtables to
  -- array-format (engine expects this as of 95.0;
  -- values were never used and had no meaning)
  for unitName,_ in pairs(categoryTable) do
    t[#t + 1] = unitName
  end

  armorDefs[categoryName] = t
end

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

return armorDefs

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------