Files
data/scripts/mods/buildcraft.coffee

74 lines
3.0 KiB
CoffeeScript

FACADE_PATTERN = /^Facade: ([^(]*)$/
GATE_PATTERN = /^.*(OR|AND|Basic) Gate$/
HOLLOW_FACADE_PATTERN = /^Facade: ([^(]*) \(item.Facade.state_hollow\)/
exports.contains = (item)->
return false if item.minecraftId.mod.indexOf('BuildCraft') is -1
return false if item.displayName.match /^tile/
return true if item.displayName.match /Stone( Hollow)? Facade/
return false if item.displayName.match /Facade/
return false if item.displayName.match /(Water|Oil) Spring$/
return true
exports.normalizeName = (item, index=1)->
name = item.gameName
if match = name.match FACADE_PATTERN
return "#{match[1]} Facade"
if match = name.match GATE_PATTERN
switch index
when 2 then return "#{name} (Autarchic Pulsar)"
when 3 then return "#{name} (Clock Timer)"
when 4 then return "#{name} (Redstone Fader)"
if match = name.match HOLLOW_FACADE_PATTERN
return "#{match[1]} Hollow Facade"
if name is 'Redstone Board'
switch index
when 1 then return "Redstone Board (Bomber)"
when 2 then return "Redstone Board (Builder)"
when 3 then return "Redstone Board (Butcher)"
when 4 then return "Redstone Board (Carrier)"
when 5 then return "Redstone Board (Crafter)"
when 6 then return "Redstone Board (Delivery)"
when 7 then return "Redstone Board (Farmer)"
when 8 then return "Redstone Board (Knight)"
when 9 then return "Redstone Board (Harvester)"
when 10 then return "Redstone Board (Leaf Cutter)"
when 11 then return "Redstone Board (Lumberjack)"
when 12 then return "Redstone Board (Miner)"
when 13 then return "Redstone Board (Picker)"
when 14 then return "Redstone Board (Planter)"
when 15 then return "Redstone Board (Pump)"
when 16 then return "Redstone Board (Shovelman)"
when 17 then return "Redstone Board (Stripes)"
when 18 then return "Redstone Board (Tank)"
if name is 'Robot'
switch index
when 1 then return "Robot (Bomber)"
when 2 then return "Robot (Builder)"
when 3 then return "Robot (Butcher)"
when 4 then return "Robot (Carrier)"
when 5 then return "Robot (Crafter)"
when 6 then return "Robot (Delivery)"
when 7 then return "Robot (Farmer)"
when 8 then return "Robot (Knight)"
when 9 then return "Robot (Harvester)"
when 10 then return "Robot (Leaf Cutter)"
when 11 then return "Robot (Lumberjack)"
when 12 then return "Robot (Miner)"
when 13 then return "Robot (Picker)"
when 14 then return "Robot (Planter)"
when 15 then return "Robot (Pump)"
when 16 then return "Robot (Shovelman)"
when 17 then return "Robot (Stripes)"
when 18 then return "Robot (Tank)"
return name