This commit is contained in:
arpruss 2015-10-02 08:33:52 -05:00
parent 4e00c0429f
commit c48463d259
2 changed files with 487 additions and 460 deletions

View File

@ -1,432 +1,463 @@
local block = {}
function block.Block(id,meta)
if meta == nil then meta = 0 end
return id + 0x1000 * meta
if minetest.request_insecure_environment then
ie=minetest.request_insecure_environment()
else
ie=_G
end
block.AIR = block.Block(0)
block.STONE = block.Block(1)
block.GRASS = block.Block(2)
block.DIRT = block.Block(3)
block.COBBLESTONE = block.Block(4)
block.WOOD_PLANKS = block.Block(5)
block.SAPLING = block.Block(6)
block.BEDROCK = block.Block(7)
block.WATER_FLOWING = block.Block(8)
block.WATER_STATIONARY = block.Block(9)
block.LAVA_FLOWING = block.Block(10)
block.LAVA_STATIONARY = block.Block(11)
block.SAND = block.Block(12)
block.GRAVEL = block.Block(13)
block.GOLD_ORE = block.Block(14)
block.IRON_ORE = block.Block(15)
block.COAL_ORE = block.Block(16)
block.WOOD = block.Block(17)
block.LEAVES = block.Block(18)
block.GLASS = block.Block(20)
block.LAPIS_LAZULI_ORE = block.Block(21)
block.LAPIS_LAZULI_BLOCK = block.Block(22)
block.SANDSTONE = block.Block(24)
block.BED = block.Block(26)
block.COBWEB = block.Block(30)
block.GRASS_TALL = block.Block(31)
block.WOOL = block.Block(35)
block.FLOWER_YELLOW = block.Block(37)
block.FLOWER_CYAN = block.Block(38)
block.MUSHROOM_BROWN = block.Block(39)
block.MUSHROOM_RED = block.Block(40)
block.GOLD_BLOCK = block.Block(41)
block.IRON_BLOCK = block.Block(42)
block.STONE_SLAB_DOUBLE = block.Block(43)
block.STONE_SLAB = block.Block(44)
block.BRICK_BLOCK = block.Block(45)
block.TNT = block.Block(46)
block.BOOKSHELF = block.Block(47)
block.MOSS_STONE = block.Block(48)
block.OBSIDIAN = block.Block(49)
block.TORCH = block.Block(50)
block.FIRE = block.Block(51)
block.STAIR_WOOD = block.Block(53)
block.CHEST = block.Block(54)
block.DIAMOND_ORE = block.Block(56)
block.DIAMOND_BLOCK = block.Block(57)
block.CRAFTING_TABLE = block.Block(58)
block.FARMLAND = block.Block(60)
block.FURNACE_INACTIVE = block.Block(61)
block.FURNACE_ACTIVE = block.Block(62)
block.DOOR_WOOD = block.Block(64)
block.LADDER = block.Block(65)
block.STAIR_COBBLESTONE = block.Block(67)
block.DOOR_IRON = block.Block(71)
block.REDSTONE_ORE = block.Block(73)
block.STONE_BUTTON = block.Block(77)
block.SNOW = block.Block(78)
block.ICE = block.Block(79)
block.SNOW_BLOCK = block.Block(80)
block.CACTUS = block.Block(81)
block.CLAY = block.Block(82)
block.SUGAR_CANE = block.Block(83)
block.FENCE = block.Block(85)
block.GLOWSTONE_BLOCK = block.Block(89)
block.BEDROCK_INVISIBLE = block.Block(95)
block.STAINED_GLASS = block.Block(95)
block.TRAPDOOR = block.Block(96)
block.IRON_TRAPDOOR = block.Block(167)
block.STONE_BRICK = block.Block(98)
block.GLASS_PANE = block.Block(102)
block.MELON = block.Block(103)
block.FENCE_GATE = block.Block(107)
block.WATERLILY = block.Block(111)
block.WOOD_SLAB_DOUBLE = block.Block(125)
block.WOOD_SLAB = block.Block(126)
block.WOOD_BUTTON = block.Block(143)
block.REDSTONE_BLOCK = block.Block(152)
block.QUARTZ_BLOCK = block.Block(155)
block.HARDENED_CLAY_STAINED = block.Block(159)
block.SEA_LANTERN = block.Block(169)
block.CARPET = block.Block(171)
block.COAL_BLOCK = block.Block(173)
block.REDSTONE_LAMP_INACTIVE = block.Block(123)
block.REDSTONE_LAMP_ACTIVE = block.Block(124)
block.SUNFLOWER = block.Block(175,0)
block.LILAC = block.Block(175,1)
block.DOUBLE_TALLGRASS = block.Block(175,2)
block.LARGE_FERN = block.Block(175,3)
block.ROSE_BUSH = block.Block(175,4)
block.PEONY = block.Block(175,5)
block.WOOL_WHITE = block.Block(block.WOOL, 0)
block.WOOL_ORANGE = block.Block(block.WOOL, 1)
block.WOOL_MAGENTA = block.Block(block.WOOL, 2)
block.WOOL_LIGHT_BLUE = block.Block(block.WOOL, 3)
block.WOOL_YELLOW = block.Block(block.WOOL, 4)
block.WOOL_LIME = block.Block(block.WOOL, 5)
block.WOOL_PINK = block.Block(block.WOOL, 6)
block.WOOL_GRAY = block.Block(block.WOOL, 7)
block.WOOL_LIGHT_GRAY = block.Block(block.WOOL, 8)
block.WOOL_CYAN = block.Block(block.WOOL, 9)
block.WOOL_PURPLE = block.Block(block.WOOL, 10)
block.WOOL_BLUE = block.Block(block.WOOL, 11)
block.WOOL_BROWN = block.Block(block.WOOL, 12)
block.WOOL_GREEN = block.Block(block.WOOL, 13)
block.WOOL_RED = block.Block(block.WOOL, 14)
block.WOOL_BLACK = block.Block(block.WOOL, 15)
block.CARPET_WHITE = block.Block(block.CARPET, 0)
block.CARPET_ORANGE = block.Block(block.CARPET, 1)
block.CARPET_MAGENTA = block.Block(block.CARPET, 2)
block.CARPET_LIGHT_BLUE = block.Block(block.CARPET, 3)
block.CARPET_YELLOW = block.Block(block.CARPET, 4)
block.CARPET_LIME = block.Block(block.CARPET, 5)
block.CARPET_PINK = block.Block(block.CARPET, 6)
block.CARPET_GRAY = block.Block(block.CARPET, 7)
block.CARPET_LIGHT_GRAY = block.Block(block.CARPET, 8)
block.CARPET_CYAN = block.Block(block.CARPET, 9)
block.CARPET_PURPLE = block.Block(block.CARPET, 10)
block.CARPET_BLUE = block.Block(block.CARPET, 11)
block.CARPET_BROWN = block.Block(block.CARPET, 12)
block.CARPET_GREEN = block.Block(block.CARPET, 13)
block.CARPET_RED = block.Block(block.CARPET, 14)
block.CARPET_BLACK = block.Block(block.CARPET, 15)
block.STAINED_GLASS_WHITE = block.Block(block.STAINED_GLASS, 0)
block.STAINED_GLASS_ORANGE = block.Block(block.STAINED_GLASS, 1)
block.STAINED_GLASS_MAGENTA = block.Block(block.STAINED_GLASS, 2)
block.STAINED_GLASS_LIGHT_BLUE = block.Block(block.STAINED_GLASS, 3)
block.STAINED_GLASS_YELLOW = block.Block(block.STAINED_GLASS, 4)
block.STAINED_GLASS_LIME = block.Block(block.STAINED_GLASS, 5)
block.STAINED_GLASS_PINK = block.Block(block.STAINED_GLASS, 6)
block.STAINED_GLASS_GRAY = block.Block(block.STAINED_GLASS, 7)
block.STAINED_GLASS_LIGHT_GRAY = block.Block(block.STAINED_GLASS, 8)
block.STAINED_GLASS_CYAN = block.Block(block.STAINED_GLASS, 9)
block.STAINED_GLASS_PURPLE = block.Block(block.STAINED_GLASS, 10)
block.STAINED_GLASS_BLUE = block.Block(block.STAINED_GLASS, 11)
block.STAINED_GLASS_BROWN = block.Block(block.STAINED_GLASS, 12)
block.STAINED_GLASS_GREEN = block.Block(block.STAINED_GLASS, 13)
block.STAINED_GLASS_RED = block.Block(block.STAINED_GLASS, 14)
block.STAINED_GLASS_BLACK = block.Block(block.STAINED_GLASS, 15)
block.HARDENED_CLAY_STAINED_WHITE = block.Block(block.HARDENED_CLAY_STAINED, 0)
block.HARDENED_CLAY_STAINED_ORANGE = block.Block(block.HARDENED_CLAY_STAINED, 1)
block.HARDENED_CLAY_STAINED_MAGENTA = block.Block(block.HARDENED_CLAY_STAINED, 2)
block.HARDENED_CLAY_STAINED_LIGHT_BLUE = block.Block(block.HARDENED_CLAY_STAINED, 3)
block.HARDENED_CLAY_STAINED_YELLOW = block.Block(block.HARDENED_CLAY_STAINED, 4)
block.HARDENED_CLAY_STAINED_LIME = block.Block(block.HARDENED_CLAY_STAINED, 5)
block.HARDENED_CLAY_STAINED_PINK = block.Block(block.HARDENED_CLAY_STAINED, 6)
block.HARDENED_CLAY_STAINED_GRAY = block.Block(block.HARDENED_CLAY_STAINED, 7)
block.HARDENED_CLAY_STAINED_LIGHT_GRAY = block.Block(block.HARDENED_CLAY_STAINED, 8)
block.HARDENED_CLAY_STAINED_CYAN = block.Block(block.HARDENED_CLAY_STAINED, 9)
block.HARDENED_CLAY_STAINED_PURPLE = block.Block(block.HARDENED_CLAY_STAINED, 10)
block.HARDENED_CLAY_STAINED_BLUE = block.Block(block.HARDENED_CLAY_STAINED, 11)
block.HARDENED_CLAY_STAINED_BROWN = block.Block(block.HARDENED_CLAY_STAINED, 12)
block.HARDENED_CLAY_STAINED_GREEN = block.Block(block.HARDENED_CLAY_STAINED, 13)
block.HARDENED_CLAY_STAINED_RED = block.Block(block.HARDENED_CLAY_STAINED, 14)
block.HARDENED_CLAY_STAINED_BLACK = block.Block(block.HARDENED_CLAY_STAINED, 15)
block.LEAVES_OAK_DECAYABLE = block.Block(block.LEAVES, 0)
block.LEAVES_SPRUCE_DECAYABLE = block.Block(block.LEAVES, 1)
block.LEAVES_BIRCH_DECAYABLE = block.Block(block.LEAVES, 2)
block.LEAVES_JUNGLE_DECAYABLE = block.Block(block.LEAVES, 3)
block.LEAVES_SPRUCE_DECAYABLE_CD = block.Block(block.LEAVES, 9)
block.LEAVES_JUNGLE_DECAYABLE_CD = block.Block(block.LEAVES, 11)
block.LEAVES_OAK_PERMANENT = block.Block(block.LEAVES, 4)
block.LEAVES_SPRUCE_PERMANENT = block.Block(block.LEAVES, 5)
block.LEAVES_BIRCH_PERMANENT = block.Block(block.LEAVES, 6)
block.LEAVES_JUNGLE_PERMANENT = block.Block(block.LEAVES, 7)
block.LEAVES_OAK_PERMANENT_CD = block.Block(block.LEAVES, 12)
block.LEAVES_SPRUCE_PERMANENT_CD = block.Block(block.LEAVES, 13)
block.LEAVES_BIRCH_PERMANENT_CD = block.Block(block.LEAVES, 14)
block.LEAVES_JUNGLE_PERMANENT_CD = block.Block(block.LEAVES, 15)
block.LEAVES2 = block.Block(161)
block.LEAVES_ACACIA_DECAYABLE = block.Block(block.LEAVES2, 0)
block.LEAVES_DARK_OAK_DECAYABLE = block.Block(block.LEAVES2, 1)
block.LEAVES_ACACIA_PERMANENT = block.Block(block.LEAVES2, 4)
block.LEAVES_DARK_OAK_PERMANENT = block.Block(block.LEAVES2, 5)
block.LEAVES_ACACIA_DECAYABLE_CD = block.Block(block.LEAVES2, 8)
block.LEAVES_DARK_OAK_DECAYABLE_CD = block.Block(block.LEAVES2, 9)
block.LEAVES_ACACIA_PERMANENT_CD = block.Block(block.LEAVES2, 12)
block.LEAVES_DARK_OAK_PERMANENT_CD = block.Block(block.LEAVES2, 13)
local bit=ie.require("bit")
block.BLOCK = {}
block.BLOCK[block.AIR] = {name="air"}
block.BLOCK[block.STONE] = {name="default:stone"}
block.BLOCK[block.GRASS] = {name="default:dirt_with_grass"}
block.BLOCK[block.DIRT] = {name="default:dirt"}
block.BLOCK[block.COBBLESTONE] = {name="default:cobble"}
block.BLOCK[block.WOOD_PLANKS]={name="default:wood"}
block.BLOCK[block.SAPLING]={name="default:sapling"}
block.BLOCK[block.BEDROCK]={name="default:obsidian"}
block.BLOCK[block.WATER_FLOWING]={name="default:water_flowing"}
block.BLOCK[block.WATER_STATIONARY]={name="default:water_source"}
block.BLOCK[block.LAVA_FLOWING]={name="default:lava_flowing"}
block.BLOCK[block.LAVA_STATIONARY]={name="default:lava_source"}
block.BLOCK[block.SAND]={name="default:sand"}
block.BLOCK[block.GRAVEL]={name="default:gravel"}
block.BLOCK[block.GOLD_ORE]={name="default:stone_with_gold"}
block.BLOCK[block.IRON_ORE]={name="default:stone_with_iron"}
block.BLOCK[block.COAL_ORE]={name="default:stone_with_coal"}
block.BLOCK[block.WOOD]={name="default:wood"}
block.BLOCK[block.LEAVES]={name="default:leaves"}
block.BLOCK[block.GLASS]={name="default:glass"}
block.BLOCK[block.LAPIS_LAZULI_ORE]={name="wool:blue"} -- fix
block.BLOCK[block.LAPIS_LAZULI_BLOCK]={name="wool:blue"}
block.BLOCK[block.SANDSTONE]={name="default:sandstone"}
-- block.BLOCK[block.BED]={name="default:"}
-- block.BLOCK[block.COBWEB]={name="default:"}
block.BLOCK[block.GRASS_TALL]={name="default:junglegrass"}
block.BLOCK[block.WOOL]={name="wool:white"}
block.BLOCK[block.WATERLILY]={name="flowers:dandelion_white"} --fix
block.BLOCK[block.FLOWER_YELLOW]={name="flowers:dandelion_yellow"}
block.BLOCK[block.FLOWER_CYAN]={name="flowers:geranium"}
block.BLOCK[block.MUSHROOM_BROWN]={name="flowers:mushroom_brown"}
block.BLOCK[block.MUSHROOM_RED]={name="flowers:mushroom_red"}
block.BLOCK[block.GOLD_BLOCK]={name="default:goldblock"}
block.BLOCK[block.IRON_BLOCK]={name="default:steelblock"}
--block.BLOCK[block.STONE_SLAB_DOUBLE]={name="default:"}
block.BLOCK[block.BRICK_BLOCK]={name="default:brick"}
block.BLOCK[block.TNT]={name="tnt:tnt"}
block.BLOCK[block.BOOKSHELF]={name="default:bookshelf"}
block.BLOCK[block.MOSS_STONE]={name="default:mossycobble"}
block.BLOCK[block.OBSIDIAN]={name="default:obsidian"}
block.BLOCK[block.TORCH]={name="default:torch"}
block.BLOCK[block.FIRE]={name="fire:basic_flame"}
block.BLOCK[block.CHEST]={name="default:chest"}
block.BLOCK[block.DIAMOND_ORE]={name="default:stone_with_diamond"}
block.BLOCK[block.DIAMOND_BLOCK]={name="default:diamondblock"}
--block.BLOCK[block.CRAFTING_TABLE]={name="default:"}
block.BLOCK[block.FARMLAND]={name="farming:soil"}
block.BLOCK[block.FURNACE_INACTIVE]={name="default:furnace"}
block.BLOCK[block.FURNACE_ACTIVE]={name="default:furnace_active"}
block.BLOCK[block.LADDER]={name="default:ladder"}
block.BLOCK[block.REDSTONE_ORE]={name="wool:red"} -- fix
--block.BLOCK[block.STONE_BUTTON]={name="default:"}
block.BLOCK[block.SNOW]={name="default:snow"}
block.BLOCK[block.ICE]={name="default:ice"}
block.BLOCK[block.SNOW_BLOCK]={name="default:snowblock"}
block.BLOCK[block.CACTUS]={name="default:cactus"}
block.BLOCK[block.CLAY]={name="default:clay"}
block.BLOCK[block.SUGAR_CANE]={name="farming:straw"} -- fix
block.BLOCK[block.FENCE]={name="default:fence_wood"}
block.BLOCK[block.GLOWSTONE_BLOCK]={name="default:meselamp"} -- fix
--block.BLOCK[block.BEDROCK_INVISIBLE]={name="default:"}
block.BLOCK[block.STONE_BRICK]={name="default:stonebrick"}
block.BLOCK[block.GLASS_PANE]={name="default:glass"} -- fix
--block.BLOCK[block.MELON]={name="default:"}
block.BLOCK[block.WOOD_SLAB_DOUBLE]={name="default:wood"} --fix
--block.BLOCK[block.FENCE_GATE]={name="default:"}
--block.BLOCK[block.WOOD_BUTTON]={name="default:"}
block.BLOCK[block.REDSTONE_BLOCK]={name="wool:red"} -- fix
block.BLOCK[block.QUARTZ_BLOCK]={name="wool:white"}
block.BLOCK[block.HARDENED_CLAY_STAINED]={name="wool:white"} --fix
block.BLOCK[block.SEA_LANTERN]={name="default:meselamp"}
block.BLOCK[block.CARPET]={name="wool:white"} -- fix
block.BLOCK[block.COAL_BLOCK]={name="default:coalblock"}
--block.BLOCK[block.REDSTONE_LAMP_INACTIVE]={name="default:"}
block.BLOCK[block.REDSTONE_LAMP_ACTIVE]={name="default:meselamp"}
block.BLOCK[block.SUNFLOWER]={name="flowers:tulip"}
block.BLOCK[block.LILAC]={name="flowers:viola"}
block.BLOCK[block.DOUBLE_TALLGRASS]={name="default:grass_2"} --fix
--block.BLOCK[block.LARGE_FERN]={name="default:"}
block.BLOCK[block.ROSE_BUSH]={name="flowers:rose"}
block.BLOCK[block.PEONY]={name="flowers:rose"} --fix
block.BLOCK[block.WOOL_WHITE]={name="wool:white"}
block.BLOCK[block.WOOL_ORANGE]={name="wool:orange"}
block.BLOCK[block.WOOL_MAGENTA]={name="wool:magenta"}
block.BLOCK[block.WOOL_LIGHT_BLUE]={name="wool:cyan"} --fix
block.BLOCK[block.WOOL_YELLOW]={name="wool:yellow"}
block.BLOCK[block.WOOL_LIME]={name="wool:green"}
block.BLOCK[block.WOOL_PINK]={name="wool:pink"}
block.BLOCK[block.WOOL_GRAY]={name="wool:dark_grey"}
block.BLOCK[block.WOOL_LIGHT_GRAY]={name="wool:grey"}
block.BLOCK[block.WOOL_CYAN]={name="wool:cyan"}
block.BLOCK[block.WOOL_PURPLE]={name="wool:violet"}
block.BLOCK[block.WOOL_BLUE]={name="wool:blue"}
block.BLOCK[block.WOOL_BROWN]={name="wool:brown"}
block.BLOCK[block.WOOL_GREEN]={name="wool:dark_green"}
block.BLOCK[block.WOOL_RED]={name="wool:red"}
block.BLOCK[block.WOOL_BLACK]={name="wool:black"}
block.BLOCK[block.CARPET_WHITE]={name="wool:white"}
block.BLOCK[block.CARPET_ORANGE]={name="wool:orange"}
block.BLOCK[block.CARPET_MAGENTA]={name="wool:magenta"}
block.BLOCK[block.CARPET_LIGHT_BLUE]={name="wool:cyan"} --fix
block.BLOCK[block.CARPET_YELLOW]={name="wool:yellow"}
block.BLOCK[block.CARPET_LIME]={name="wool:green"}
block.BLOCK[block.CARPET_PINK]={name="wool:pink"}
block.BLOCK[block.CARPET_GRAY]={name="wool:dark_grey"}
block.BLOCK[block.CARPET_LIGHT_GRAY]={name="wool:grey"}
block.BLOCK[block.CARPET_CYAN]={name="wool:cyan"}
block.BLOCK[block.CARPET_PURPLE]={name="wool:violet"}
block.BLOCK[block.CARPET_BLUE]={name="wool:blue"}
block.BLOCK[block.CARPET_BROWN]={name="wool:brown"}
block.BLOCK[block.CARPET_GREEN]={name="wool:dark_green"}
block.BLOCK[block.CARPET_RED]={name="wool:red"}
block.BLOCK[block.CARPET_BLACK]={name="wool:black"}
block.BLOCK[block.HARDENED_CLAY_STAINED_WHITE]={name="wool:white"}
block.BLOCK[block.HARDENED_CLAY_STAINED_ORANGE]={name="wool:orange"}
block.BLOCK[block.HARDENED_CLAY_STAINED_MAGENTA]={name="wool:magenta"}
block.BLOCK[block.HARDENED_CLAY_STAINED_LIGHT_BLUE]={name="wool:cyan"} --fix
block.BLOCK[block.HARDENED_CLAY_STAINED_YELLOW]={name="wool:yellow"}
block.BLOCK[block.HARDENED_CLAY_STAINED_LIME]={name="wool:green"}
block.BLOCK[block.HARDENED_CLAY_STAINED_PINK]={name="wool:pink"}
block.BLOCK[block.HARDENED_CLAY_STAINED_GRAY]={name="wool:dark_grey"}
block.BLOCK[block.HARDENED_CLAY_STAINED_LIGHT_GRAY]={name="wool:grey"}
block.BLOCK[block.HARDENED_CLAY_STAINED_CYAN]={name="wool:cyan"}
block.BLOCK[block.HARDENED_CLAY_STAINED_PURPLE]={name="wool:violet"}
block.BLOCK[block.HARDENED_CLAY_STAINED_BLUE]={name="wool:blue"}
block.BLOCK[block.HARDENED_CLAY_STAINED_BROWN]={name="wool:brown"}
block.BLOCK[block.HARDENED_CLAY_STAINED_GREEN]={name="wool:dark_green"}
block.BLOCK[block.HARDENED_CLAY_STAINED_RED]={name="wool:red"}
block.BLOCK[block.HARDENED_CLAY_STAINED_BLACK]={name="wool:black"}
local block={}
block.BLOCK[block.STAINED_GLASS_WHITE]={name="stained_glass:faint_aqua"} --fix
block.BLOCK[block.STAINED_GLASS_ORANGE]={name="stained_glass:orange"}
block.BLOCK[block.STAINED_GLASS_MAGENTA]={name="stained_glass:magenta"}
block.BLOCK[block.STAINED_GLASS_LIGHT_BLUE]={name="stained_glass:faint_blue"}
block.BLOCK[block.STAINED_GLASS_YELLOW]={name="stained_glass:yellow"}
block.BLOCK[block.STAINED_GLASS_LIME]={name="stained_glass:lime"}
block.BLOCK[block.STAINED_GLASS_PINK]={name="stained_glass:faint_red"}
block.BLOCK[block.STAINED_GLASS_GRAY]={name="stained_glass:dark_blue"} --fix
block.BLOCK[block.STAINED_GLASS_LIGHT_GRAY]={name="stained_glass:medium_blue"} --fix
block.BLOCK[block.STAINED_GLASS_CYAN]={name="stained_glass:cyan"}
block.BLOCK[block.STAINED_GLASS_PURPLE]={name="stained_glass:violet"}
block.BLOCK[block.STAINED_GLASS_BLUE]={name="stained_glass:blue"}
block.BLOCK[block.STAINED_GLASS_BROWN]={name="stained_glass:dark_red"}
block.BLOCK[block.STAINED_GLASS_GREEN]={name="stained_glass:green"}
block.BLOCK[block.STAINED_GLASS_RED]={name="stained_glass:red"}
block.BLOCK[block.STAINED_GLASS_BLACK]={name="stained_glass:dark_green"} --fix
local function Block(id,meta)
if meta == nil then meta=0 end
return meta + id * 16
end
--block.BLOCK[block.LEAVES_OAK_DECAYABLE]={name="default:leaves"}
block.BLOCK[block.LEAVES_SPRUCE_DECAYABLE]={name="default:pine_needles"}
--block.BLOCK[block.LEAVES_BIRCH_DECAYABLE]={name="default:leaves"}
block.BLOCK[block.LEAVES_JUNGLE_DECAYABLE]={name="default:jungleleaves"}
block.BLOCK[block.LEAVES_OAK_PERMANENT]={name="default:leaves", param2=1}
block.BLOCK[block.LEAVES_SPRUCE_PERMANENT]={name="default:pine_needles", param2=1}
block.BLOCK[block.LEAVES_BIRCH_PERMANENT]={name="default:leaves", param2=1}
block.BLOCK[block.LEAVES_SPRUCE_DECAYABLE_CD]={name="default:pine_needles"}
block.BLOCK[block.LEAVES_JUNGLE_DECAYABLE_CD]={name="default:jungleleaves"}
block.BLOCK[block.LEAVES_JUNGLE_PERMANENT]={name="default:jungleleaves", param2=1}
block.BLOCK[block.LEAVES_OAK_PERMANENT_CD]={name="default:leaves", param2=1}
block.BLOCK[block.LEAVES_SPRUCE_PERMANENT_CD]={name="default:pine_needles", param2=1}
block.BLOCK[block.LEAVES_BIRCH_PERMANENT_CD]={name="default:leaves", param2=1}
block.BLOCK[block.LEAVES_JUNGLE_PERMANENT_CD]={name="default:jungleleaves", param2=1}
block.BLOCK[block.LEAVES2] = {name="default:leaves"}
block.BLOCK[block.LEAVES_ACACIA_DECAYABLE] = {name="default:acacia_leaves"}
--block.BLOCK[block.LEAVES_DARK_OAK_DECAYABLE] =
block.BLOCK[block.LEAVES_ACACIA_PERMANENT] = {name="default:acacia_leaves", param2=1}
block.BLOCK[block.LEAVES_DARK_OAK_PERMANENT] = {name="default:leaves", param2=1}
block.BLOCK[block.LEAVES_ACACIA_PERMANENT_CD] = {name="default:acacia_leaves", param2=1}
block.BLOCK[block.LEAVES_DARK_OAK_PERMANENT_CD] = {name="default:leaves", param2=1}
local function unBlock(value)
return bit.rshift(value, 4),bit.band(value, 0x000F)
end
block.BLOCK[block.Block(228)] = {name="air"}
block.BLOCK[block.Block(229)] = {name="air"}
block.BLOCK[block.Block(236)] = {name="air"}
block.BLOCK[block.Block(254)] = {name="air"}
block.AIR =Block(0)
block.STONE =Block(1)
block.GRASS =Block(2)
block.DIRT =Block(3)
block.COBBLESTONE =Block(4)
block.WOOD_PLANKS =Block(5)
block.SAPLING =Block(6)
block.BEDROCK =Block(7)
block.WATER_FLOWING =Block(8)
block.WATER_STATIONARY =Block(9)
block.LAVA_FLOWING =Block(10)
block.LAVA_STATIONARY =Block(11)
block.SAND =Block(12)
block.GRAVEL =Block(13)
block.GOLD_ORE =Block(14)
block.IRON_ORE =Block(15)
block.COAL_ORE =Block(16)
block.WOOD =Block(17)
block.LEAVES =Block(18)
block.GLASS =Block(20)
block.LAPIS_LAZULI_ORE =Block(21)
block.LAPIS_LAZULI_BLOCK =Block(22)
block.SANDSTONE =Block(24)
block.BED =Block(26)
block.COBWEB =Block(30)
block.GRASS_TALL =Block(31)
block.WOOL =Block(35)
block.FLOWER_YELLOW =Block(37)
block.FLOWER_CYAN =Block(38)
block.MUSHROOM_BROWN =Block(39)
block.MUSHROOM_RED =Block(40)
block.GOLD_BLOCK =Block(41)
block.IRON_BLOCK =Block(42)
block.STONE_SLAB_DOUBLE =Block(43)
block.STONE_SLAB =Block(44)
block.BRICK_BLOCK =Block(45)
block.TNT =Block(46)
block.BOOKSHELF =Block(47)
block.MOSS_STONE =Block(48)
block.OBSIDIAN =Block(49)
block.TORCH =Block(50)
block.FIRE =Block(51)
block.STAIR_WOOD =Block(53)
block.CHEST =Block(54)
block.DIAMOND_ORE =Block(56)
block.DIAMOND_BLOCK =Block(57)
block.CRAFTING_TABLE =Block(58)
block.FARMLAND =Block(60)
block.FURNACE_INACTIVE =Block(61)
block.FURNACE_ACTIVE =Block(62)
block.DOOR_WOOD =Block(64)
block.LADDER =Block(65)
block.STAIR_COBBLESTONE =Block(67)
block.DOOR_IRON =Block(71)
block.REDSTONE_ORE =Block(73)
block.STONE_BUTTON =Block(77)
block.SNOW =Block(78)
block.ICE =Block(79)
block.SNOW_BLOCK =Block(80)
block.CACTUS =Block(81)
block.CLAY =Block(82)
block.SUGAR_CANE =Block(83)
block.FENCE =Block(85)
block.GLOWSTONE_BLOCK =Block(89)
block.BEDROCK_INVISIBLE =Block(95)
block.STAINED_GLASS= Block(95)
block.TRAPDOOR =Block(96)
block.IRON_TRAPDOOR =Block(167)
block.STONE_BRICK =Block(98)
block.GLASS_PANE =Block(102)
block.MELON =Block(103)
block.FENCE_GATE =Block(107)
block.WATERLILY =Block(111)
block.WOOD_SLAB_DOUBLE =Block(125)
block.WOOD_SLAB =Block(126)
block.WOOD_BUTTON =Block(143)
block.REDSTONE_BLOCK =Block(152)
block.QUARTZ_BLOCK =Block(155)
block.HARDENED_CLAY_STAINED=Block(159)
block.SEA_LANTERN =Block(169)
block.CARPET =Block(171)
block.COAL_BLOCK =Block(173)
block.REDSTONE_LAMP_INACTIVE=Block(123)
block.REDSTONE_LAMP_ACTIVE =Block(124)
block.SUNFLOWER =Block(175,0)
block.LILAC =Block(175,1)
block.DOUBLE_TALLGRASS=Block(175,2)
block.LARGE_FERN =Block(175,3)
block.ROSE_BUSH =Block(175,4)
block.PEONY =Block(175,5)
block.WOOL_WHITE=Block(block.WOOL, 0)
block.WOOL_ORANGE=Block(block.WOOL, 1)
block.WOOL_MAGENTA=Block(block.WOOL, 2)
block.WOOL_LIGHT_BLUE=Block(block.WOOL, 3)
block.WOOL_YELLOW=Block(block.WOOL, 4)
block.WOOL_LIME=Block(block.WOOL, 5)
block.WOOL_PINK=Block(block.WOOL, 6)
block.WOOL_GRAY=Block(block.WOOL, 7)
block.WOOL_LIGHT_GRAY=Block(block.WOOL, 8)
block.WOOL_CYAN=Block(block.WOOL, 9)
block.WOOL_PURPLE=Block(block.WOOL, 10)
block.WOOL_BLUE=Block(block.WOOL, 11)
block.WOOL_BROWN=Block(block.WOOL, 12)
block.WOOL_GREEN=Block(block.WOOL, 13)
block.WOOL_RED=Block(block.WOOL, 14)
block.WOOL_BLACK=Block(block.WOOL, 15)
block.CARPET_WHITE=Block(block.CARPET, 0)
block.CARPET_ORANGE=Block(block.CARPET, 1)
block.CARPET_MAGENTA=Block(block.CARPET, 2)
block.CARPET_LIGHT_BLUE=Block(block.CARPET, 3)
block.CARPET_YELLOW=Block(block.CARPET, 4)
block.CARPET_LIME=Block(block.CARPET, 5)
block.CARPET_PINK=Block(block.CARPET, 6)
block.CARPET_GRAY=Block(block.CARPET, 7)
block.CARPET_LIGHT_GRAY=Block(block.CARPET, 8)
block.CARPET_CYAN=Block(block.CARPET, 9)
block.CARPET_PURPLE=Block(block.CARPET, 10)
block.CARPET_BLUE=Block(block.CARPET, 11)
block.CARPET_BROWN=Block(block.CARPET, 12)
block.CARPET_GREEN=Block(block.CARPET, 13)
block.CARPET_RED=Block(block.CARPET, 14)
block.CARPET_BLACK=Block(block.CARPET, 15)
block.STAINED_GLASS_WHITE=Block(block.STAINED_GLASS, 0)
block.STAINED_GLASS_ORANGE=Block(block.STAINED_GLASS, 1)
block.STAINED_GLASS_MAGENTA=Block(block.STAINED_GLASS, 2)
block.STAINED_GLASS_LIGHT_BLUE=Block(block.STAINED_GLASS, 3)
block.STAINED_GLASS_YELLOW=Block(block.STAINED_GLASS, 4)
block.STAINED_GLASS_LIME=Block(block.STAINED_GLASS, 5)
block.STAINED_GLASS_PINK=Block(block.STAINED_GLASS, 6)
block.STAINED_GLASS_GRAY=Block(block.STAINED_GLASS, 7)
block.STAINED_GLASS_LIGHT_GRAY=Block(block.STAINED_GLASS, 8)
block.STAINED_GLASS_CYAN=Block(block.STAINED_GLASS, 9)
block.STAINED_GLASS_PURPLE=Block(block.STAINED_GLASS, 10)
block.STAINED_GLASS_BLUE=Block(block.STAINED_GLASS, 11)
block.STAINED_GLASS_BROWN=Block(block.STAINED_GLASS, 12)
block.STAINED_GLASS_GREEN=Block(block.STAINED_GLASS, 13)
block.STAINED_GLASS_RED=Block(block.STAINED_GLASS, 14)
block.STAINED_GLASS_BLACK=Block(block.STAINED_GLASS, 15)
block.HARDENED_CLAY_STAINED_WHITE=Block(block.HARDENED_CLAY_STAINED, 0)
block.HARDENED_CLAY_STAINED_ORANGE=Block(block.HARDENED_CLAY_STAINED, 1)
block.HARDENED_CLAY_STAINED_MAGENTA=Block(block.HARDENED_CLAY_STAINED, 2)
block.HARDENED_CLAY_STAINED_LIGHT_BLUE=Block(block.HARDENED_CLAY_STAINED, 3)
block.HARDENED_CLAY_STAINED_YELLOW=Block(block.HARDENED_CLAY_STAINED, 4)
block.HARDENED_CLAY_STAINED_LIME=Block(block.HARDENED_CLAY_STAINED, 5)
block.HARDENED_CLAY_STAINED_PINK=Block(block.HARDENED_CLAY_STAINED, 6)
block.HARDENED_CLAY_STAINED_GRAY=Block(block.HARDENED_CLAY_STAINED, 7)
block.HARDENED_CLAY_STAINED_LIGHT_GRAY=Block(block.HARDENED_CLAY_STAINED, 8)
block.HARDENED_CLAY_STAINED_CYAN=Block(block.HARDENED_CLAY_STAINED, 9)
block.HARDENED_CLAY_STAINED_PURPLE=Block(block.HARDENED_CLAY_STAINED, 10)
block.HARDENED_CLAY_STAINED_BLUE=Block(block.HARDENED_CLAY_STAINED, 11)
block.HARDENED_CLAY_STAINED_BROWN=Block(block.HARDENED_CLAY_STAINED, 12)
block.HARDENED_CLAY_STAINED_GREEN=Block(block.HARDENED_CLAY_STAINED, 13)
block.HARDENED_CLAY_STAINED_RED=Block(block.HARDENED_CLAY_STAINED, 14)
block.HARDENED_CLAY_STAINED_BLACK=Block(block.HARDENED_CLAY_STAINED, 15)
block.LEAVES_OAK_DECAYABLE=Block(block.LEAVES, 0)
block.LEAVES_SPRUCE_DECAYABLE=Block(block.LEAVES, 1)
block.LEAVES_BIRCH_DECAYABLE=Block(block.LEAVES, 2)
block.LEAVES_JUNGLE_DECAYABLE=Block(block.LEAVES, 3)
block.LEAVES_SPRUCE_DECAYABLE_CD=Block(block.LEAVES, 9)
block.LEAVES_JUNGLE_DECAYABLE_CD=Block(block.LEAVES, 11)
block.LEAVES_OAK_PERMANENT=Block(block.LEAVES, 4)
block.LEAVES_SPRUCE_PERMANENT=Block(block.LEAVES, 5)
block.LEAVES_BIRCH_PERMANENT=Block(block.LEAVES, 6)
block.LEAVES_JUNGLE_PERMANENT=Block(block.LEAVES, 7)
block.LEAVES_OAK_PERMANENT_CD=Block(block.LEAVES, 12)
block.LEAVES_SPRUCE_PERMANENT_CD=Block(block.LEAVES, 13)
block.LEAVES_BIRCH_PERMANENT_CD=Block(block.LEAVES, 14)
block.LEAVES_JUNGLE_PERMANENT_CD=Block(block.LEAVES, 15)
block.LEAVES2=Block(161)
block.LEAVES_ACACIA_DECAYABLE=Block(block.LEAVES2, 0)
block.LEAVES_DARK_OAK_DECAYABLE=Block(block.LEAVES2, 1)
block.LEAVES_ACACIA_PERMANENT=Block(block.LEAVES2, 4)
block.LEAVES_DARK_OAK_PERMANENT=Block(block.LEAVES2, 5)
block.LEAVES_ACACIA_DECAYABLE_CD=Block(block.LEAVES2, 8)
block.LEAVES_DARK_OAK_DECAYABLE_CD=Block(block.LEAVES2, 9)
block.LEAVES_ACACIA_PERMANENT_CD=Block(block.LEAVES2, 12)
block.LEAVES_DARK_OAK_PERMANENT_CD=Block(block.LEAVES2, 13)
block.BLOCK[block.Block(block.WOOD_SLAB,0)] = {name="stairs:slab_wood", param2=0}
block.BLOCK[block.Block(block.WOOD_SLAB,8)] = {name="stairs:slab_wood", param2=20}
block.BLOCK[block.Block(block.WOOD_SLAB,1)] = {name="stairs:slab_pine_wood", param2=0}
block.BLOCK[block.Block(block.WOOD_SLAB,9)] = {name="stairs:slab_pine_wood", param2=20}
block.BLOCK[block.Block(block.WOOD_SLAB,2)] = {name="stairs:slab_wood", param2=0} -- FIX: birch
block.BLOCK[block.Block(block.WOOD_SLAB,10)] = {name="stairs:slab_wood", param2=20}
block.BLOCK[block.Block(block.WOOD_SLAB,3)] = {name="stairs:slab_junglewood", param2=0}
block.BLOCK[block.Block(block.WOOD_SLAB,11)] = {name="stairs:slab_junglewood", param2=20}
block.BLOCK[block.Block(block.WOOD_SLAB,4)] = {name="stairs:slab_acacia_wood", param2=0}
block.BLOCK[block.Block(block.WOOD_SLAB,12)] = {name="stairs:slab_acacia_wood", param2=20}
block.BLOCK[block.Block(block.WOOD_SLAB,5)] = {name="stairs:slab_wood", param2=0} -- FIX: dark oak
block.BLOCK[block.Block(block.WOOD_SLAB,13)] = {name="stairs:slab_wood", param2=20}
local to_node={}
local from_node={}
block.BLOCK[block.Block(block.STONE_SLAB,0)] = {name="stairs:slab_stone", param2=0}
block.BLOCK[block.Block(block.STONE_SLAB,8)] = {name="stairs:slab_stone", param2=20}
block.BLOCK[block.Block(block.STONE_SLAB,1)] = {name="stairs:slab_sandstone", param2=0}
block.BLOCK[block.Block(block.STONE_SLAB,9)] = {name="stairs:slab_sandstone", param2=20}
block.BLOCK[block.Block(block.STONE_SLAB,2)] = {name="stairs:slab_wood", param2=0}
block.BLOCK[block.Block(block.STONE_SLAB,10)] = {name="stairs:slab_wood", param2=20}
block.BLOCK[block.Block(block.STONE_SLAB,3)] = {name="stairs:slab_cobble", param2=0}
block.BLOCK[block.Block(block.STONE_SLAB,11)] = {name="stairs:slab_cobble", param2=20}
block.BLOCK[block.Block(block.STONE_SLAB,4)] = {name="stairs:slab_brick", param2=0}
block.BLOCK[block.Block(block.STONE_SLAB,12)] = {name="stairs:slab_brick", param2=20}
block.BLOCK[block.Block(block.STONE_SLAB,6)] = {name="stairs:slab_stonebrick", param2=0}
block.BLOCK[block.Block(block.STONE_SLAB,13)] = {name="stairs:slab_stonebrick", param2=20}
block.BLOCK[block.Block(block.STONE_SLAB,7)] = {name="stairs:slab_desert_stonebrick", param2=0} -- FIX: nether brick
block.BLOCK[block.Block(block.STONE_SLAB,14)] = {name="stairs:slab_desert_stonebrick", param2=20}
block.BLOCK[block.Block(block.STONE_SLAB,8)] = {name="stairs:slab_desert_stone", param2=0} -- FIX: quartz
block.BLOCK[block.Block(block.STONE_SLAB,15)] = {name="stairs:slab_desert_stone", param2=20}
local function translate(id, name,param2)
if not param2 then param2=0 end
if not minetest.registered_nodes[name] then
if name.sub(1,14)=="stained_glass:" then
name="default:glass"
else
name="default:stone"
end
end
to_node[id]={name=name,param2=param2}
local key=name.." "..param2
if not from_node[key] then
from_node[key]=id
end
end
translate(block.AIR,"air")
translate(block.STONE,"default:stone")
translate(block.GRASS,"default:dirt_with_grass")
translate(block.DIRT,"default:dirt")
translate(block.COBBLESTONE,"default:cobble")
translate(block.WOOD_PLANKS,"default:wood")
translate(block.SAPLING,"default:sapling")
translate(block.BEDROCK,"default:obsidian")
translate(block.WATER_FLOWING,"default:water_flowing")
translate(block.WATER_STATIONARY,"default:water_source")
translate(block.LAVA_FLOWING,"default:lava_flowing")
translate(block.LAVA_STATIONARY,"default:lava_source")
translate(block.SAND,"default:sand")
translate(block.GRAVEL,"default:gravel")
translate(block.GOLD_ORE,"default:stone_with_gold")
translate(block.IRON_ORE,"default:stone_with_iron")
translate(block.COAL_ORE,"default:stone_with_coal")
translate(block.WOOD,"default:wood")
translate(block.LEAVES,"default:leaves")
translate(block.GLASS,"default:glass")
translate(block.LAPIS_LAZULI_ORE,"wool:blue") -- fix
translate(block.LAPIS_LAZULI_BLOCK,"wool:blue")
translate(block.SANDSTONE,"default:sandstone")
-- translate(block.BED,"default:")
-- translate(block.COBWEB,"default:")
translate(block.GRASS_TALL,"default:junglegrass")
translate(block.WOOL,"wool:white")
translate(block.WATERLILY,"flowers:dandelion_white") --fix
translate(block.FLOWER_YELLOW,"flowers:dandelion_yellow")
translate(block.FLOWER_CYAN,"flowers:geranium")
translate(block.MUSHROOM_BROWN,"flowers:mushroom_brown")
translate(block.MUSHROOM_RED,"flowers:mushroom_red")
translate(block.GOLD_BLOCK,"default:goldblock")
translate(block.IRON_BLOCK,"default:steelblock")
--translate(block.STONE_SLAB_DOUBLE,"default:")
translate(block.BRICK_BLOCK,"default:brick")
translate(block.TNT,"tnt:tnt")
translate(block.BOOKSHELF,"default:bookshelf")
translate(block.MOSS_STONE,"default:mossycobble")
translate(block.OBSIDIAN,"default:obsidian")
translate(block.TORCH,"default:torch")
translate(block.FIRE,"fire:basic_flame")
translate(block.CHEST,"default:chest")
translate(block.DIAMOND_ORE,"default:stone_with_diamond")
translate(block.DIAMOND_BLOCK,"default:diamondblock")
--translate(block.CRAFTING_TABLE,"default:")
translate(block.FARMLAND,"farming:soil")
translate(block.FURNACE_INACTIVE,"default:furnace")
translate(block.FURNACE_ACTIVE,"default:furnace_active")
translate(block.LADDER,"default:ladder")
translate(block.REDSTONE_ORE,"wool:red") -- fix
--translate(block.STONE_BUTTON,"default:")
translate(block.SNOW,"default:snow")
translate(block.ICE,"default:ice")
translate(block.SNOW_BLOCK,"default:snowblock")
translate(block.CACTUS,"default:cactus")
translate(block.CLAY,"default:clay")
translate(block.SUGAR_CANE,"farming:straw") -- fix
translate(block.FENCE,"default:fence_wood")
translate(block.GLOWSTONE_BLOCK,"default:meselamp") -- fix
--translate(block.BEDROCK_INVISIBLE,"default:")
translate(block.STONE_BRICK,"default:stonebrick")
translate(block.GLASS_PANE,"default:glass") -- fix
--translate(block.MELON,"default:")
translate(block.WOOD_SLAB_DOUBLE,"default:wood") --fix
--translate(block.FENCE_GATE,"default:")
--translate(block.WOOD_BUTTON,"default:")
translate(block.REDSTONE_BLOCK,"wool:red") -- fix
translate(block.QUARTZ_BLOCK,"wool:white")
translate(block.HARDENED_CLAY_STAINED,"wool:white") --fix
translate(block.SEA_LANTERN,"default:meselamp")
translate(block.CARPET,"wool:white") -- fix
translate(block.COAL_BLOCK,"default:coalblock")
--translate(block.REDSTONE_LAMP_INACTIVE,"default:")
translate(block.REDSTONE_LAMP_ACTIVE,"default:meselamp")
translate(block.SUNFLOWER,"flowers:tulip")
translate(block.LILAC,"flowers:viola")
translate(block.DOUBLE_TALLGRASS,"default:grass_2") --fix
--translate(block.LARGE_FERN,"default:")
translate(block.ROSE_BUSH,"flowers:rose")
translate(block.PEONY,"flowers:rose") --fix
translate(block.WOOL_WHITE,"wool:white")
translate(block.WOOL_ORANGE,"wool:orange")
translate(block.WOOL_MAGENTA,"wool:magenta")
translate(block.WOOL_LIGHT_BLUE,"wool:cyan") --fix
translate(block.WOOL_YELLOW,"wool:yellow")
translate(block.WOOL_LIME,"wool:green")
translate(block.WOOL_PINK,"wool:pink")
translate(block.WOOL_GRAY,"wool:dark_grey")
translate(block.WOOL_LIGHT_GRAY,"wool:grey")
translate(block.WOOL_CYAN,"wool:cyan")
translate(block.WOOL_PURPLE,"wool:violet")
translate(block.WOOL_BLUE,"wool:blue")
translate(block.WOOL_BROWN,"wool:brown")
translate(block.WOOL_GREEN,"wool:dark_green")
translate(block.WOOL_RED,"wool:red")
translate(block.WOOL_BLACK,"wool:black")
translate(block.CARPET_WHITE,"wool:white")
translate(block.CARPET_ORANGE,"wool:orange")
translate(block.CARPET_MAGENTA,"wool:magenta")
translate(block.CARPET_LIGHT_BLUE,"wool:cyan") --fix
translate(block.CARPET_YELLOW,"wool:yellow")
translate(block.CARPET_LIME,"wool:green")
translate(block.CARPET_PINK,"wool:pink")
translate(block.CARPET_GRAY,"wool:dark_grey")
translate(block.CARPET_LIGHT_GRAY,"wool:grey")
translate(block.CARPET_CYAN,"wool:cyan")
translate(block.CARPET_PURPLE,"wool:violet")
translate(block.CARPET_BLUE,"wool:blue")
translate(block.CARPET_BROWN,"wool:brown")
translate(block.CARPET_GREEN,"wool:dark_green")
translate(block.CARPET_RED,"wool:red")
translate(block.CARPET_BLACK,"wool:black")
translate(block.HARDENED_CLAY_STAINED_WHITE,"wool:white")
translate(block.HARDENED_CLAY_STAINED_ORANGE,"wool:orange")
translate(block.HARDENED_CLAY_STAINED_MAGENTA,"wool:magenta")
translate(block.HARDENED_CLAY_STAINED_LIGHT_BLUE,"wool:cyan") --fix
translate(block.HARDENED_CLAY_STAINED_YELLOW,"wool:yellow")
translate(block.HARDENED_CLAY_STAINED_LIME,"wool:green")
translate(block.HARDENED_CLAY_STAINED_PINK,"wool:pink")
translate(block.HARDENED_CLAY_STAINED_GRAY,"wool:dark_grey")
translate(block.HARDENED_CLAY_STAINED_LIGHT_GRAY,"wool:grey")
translate(block.HARDENED_CLAY_STAINED_CYAN,"wool:cyan")
translate(block.HARDENED_CLAY_STAINED_PURPLE,"wool:violet")
translate(block.HARDENED_CLAY_STAINED_BLUE,"wool:blue")
translate(block.HARDENED_CLAY_STAINED_BROWN,"wool:brown")
translate(block.HARDENED_CLAY_STAINED_GREEN,"wool:dark_green")
translate(block.HARDENED_CLAY_STAINED_RED,"wool:red")
translate(block.HARDENED_CLAY_STAINED_BLACK,"wool:black")
translate(block.STAINED_GLASS_WHITE,"stained_glass:faint_aqua") --fix
translate(block.STAINED_GLASS_ORANGE,"stained_glass:orange")
translate(block.STAINED_GLASS_MAGENTA,"stained_glass:magenta")
translate(block.STAINED_GLASS_LIGHT_BLUE,"stained_glass:faint_blue")
translate(block.STAINED_GLASS_YELLOW,"stained_glass:yellow")
translate(block.STAINED_GLASS_LIME,"stained_glass:lime")
translate(block.STAINED_GLASS_PINK,"stained_glass:faint_red")
translate(block.STAINED_GLASS_GRAY,"stained_glass:dark_blue") --fix
translate(block.STAINED_GLASS_LIGHT_GRAY,"stained_glass:medium_blue") --fix
translate(block.STAINED_GLASS_CYAN,"stained_glass:cyan")
translate(block.STAINED_GLASS_PURPLE,"stained_glass:violet")
translate(block.STAINED_GLASS_BLUE,"stained_glass:blue")
translate(block.STAINED_GLASS_BROWN,"stained_glass:dark_red")
translate(block.STAINED_GLASS_GREEN,"stained_glass:green")
translate(block.STAINED_GLASS_RED,"stained_glass:red")
translate(block.STAINED_GLASS_BLACK,"stained_glass:dark_green") --fix
--translate(block.LEAVES_OAK_DECAYABLE,"default:leaves")
translate(block.LEAVES_SPRUCE_DECAYABLE,"default:pine_needles")
--translate(block.LEAVES_BIRCH_DECAYABLE,"default:leaves")
translate(block.LEAVES_JUNGLE_DECAYABLE,"default:jungleleaves")
translate(block.LEAVES_OAK_PERMANENT,"default:leaves",1)
translate(block.LEAVES_SPRUCE_PERMANENT,"default:pine_needles",1)
translate(block.LEAVES_BIRCH_PERMANENT,"default:leaves",1)
translate(block.LEAVES_SPRUCE_DECAYABLE_CD,"default:pine_needles")
translate(block.LEAVES_JUNGLE_DECAYABLE_CD,"default:jungleleaves")
translate(block.LEAVES_JUNGLE_PERMANENT,"default:jungleleaves",1)
translate(block.LEAVES_OAK_PERMANENT_CD,"default:leaves",1)
translate(block.LEAVES_SPRUCE_PERMANENT_CD,"default:pine_needles",1)
translate(block.LEAVES_BIRCH_PERMANENT_CD,"default:leaves",1)
translate(block.LEAVES_JUNGLE_PERMANENT_CD,"default:jungleleaves",1)
translate(block.LEAVES2,"default:leaves")
translate(block.LEAVES_ACACIA_DECAYABLE,"default:acacia_leaves")
--block.to_node[block.LEAVES_DARK_OAK_DECAYABLE] =
translate(block.LEAVES_ACACIA_PERMANENT,"default:acacia_leaves",1)
translate(block.LEAVES_DARK_OAK_PERMANENT,"default:leaves",1)
translate(block.LEAVES_ACACIA_PERMANENT_CD,"default:acacia_leaves",1)
translate(block.LEAVES_DARK_OAK_PERMANENT_CD,"default:leaves",1)
translate(Block(228),"air")
translate(Block(229),"air")
translate(Block(236),"air")
translate(Block(254),"air")
translate(Block(block.WOOD_SLAB,0),"stairs:slab_wood",0)
translate(Block(block.WOOD_SLAB,8),"stairs:slab_wood",20)
translate(Block(block.WOOD_SLAB,1),"stairs:slab_pine_wood",0)
translate(Block(block.WOOD_SLAB,9),"stairs:slab_pine_wood",20)
translate(Block(block.WOOD_SLAB,2),"stairs:slab_wood",0) -- FIX: birch
translate(Block(block.WOOD_SLAB,10),"stairs:slab_wood",20)
translate(Block(block.WOOD_SLAB,3),"stairs:slab_junglewood",0)
translate(Block(block.WOOD_SLAB,11),"stairs:slab_junglewood",20)
translate(Block(block.WOOD_SLAB,4),"stairs:slab_acacia_wood",0)
translate(Block(block.WOOD_SLAB,12),"stairs:slab_acacia_wood",20)
translate(Block(block.WOOD_SLAB,5),"stairs:slab_wood",0) -- FIX: dark oak
translate(Block(block.WOOD_SLAB,13),"stairs:slab_wood",20)
translate(Block(block.STONE_SLAB,0),"stairs:slab_stone",0)
translate(Block(block.STONE_SLAB,8),"stairs:slab_stone",20)
translate(Block(block.STONE_SLAB,1),"stairs:slab_sandstone",0)
translate(Block(block.STONE_SLAB,9),"stairs:slab_sandstone",20)
translate(Block(block.STONE_SLAB,2),"stairs:slab_wood",0)
translate(Block(block.STONE_SLAB,10),"stairs:slab_wood",20)
translate(Block(block.STONE_SLAB,3),"stairs:slab_cobble",0)
translate(Block(block.STONE_SLAB,11),"stairs:slab_cobble",20)
translate(Block(block.STONE_SLAB,4),"stairs:slab_brick",0)
translate(Block(block.STONE_SLAB,12),"stairs:slab_brick",20)
translate(Block(block.STONE_SLAB,6),"stairs:slab_stonebrick",0)
translate(Block(block.STONE_SLAB,13),"stairs:slab_stonebrick",20)
translate(Block(block.STONE_SLAB,7),"stairs:slab_desert_stonebrick",0) -- FIX: nether brick
translate(Block(block.STONE_SLAB,14),"stairs:slab_desert_stonebrick",20)
translate(Block(block.STONE_SLAB,8),"stairs:slab_desert_stone",0) -- FIX: quartz
translate(Block(block.STONE_SLAB,15),"stairs:slab_desert_stone",20)
local function defineTrapdoor(base_num,base_name)
block.BLOCK[block.Block(base_num,0)] = {name=base_name, param2=2}
block.BLOCK[block.Block(base_num,1)] = {name=base_name, param2=0}
block.BLOCK[block.Block(base_num,2)] = {name=base_name, param2=1}
block.BLOCK[block.Block(base_num,3)] = {name=base_name, param2=3}
block.BLOCK[block.Block(base_num,4+0)] = {name=base_name.."_open", param2=2}
block.BLOCK[block.Block(base_num,4+1)] = {name=base_name.."_open", param2=0}
block.BLOCK[block.Block(base_num,4+2)] = {name=base_name.."_open", param2=1}
block.BLOCK[block.Block(base_num,4+3)] = {name=base_name.."_open", param2=3}
block.BLOCK[block.Block(base_num,8+0)] = {name=base_name, param2=22}
block.BLOCK[block.Block(base_num,8+1)] = {name=base_name, param2=20}
block.BLOCK[block.Block(base_num,8+2)] = {name=base_name, param2=23}
block.BLOCK[block.Block(base_num,8+3)] = {name=base_name, param2=21}
block.BLOCK[block.Block(base_num,4+8+0)] = {name=base_name.."_open", param2=22}
block.BLOCK[block.Block(base_num,4+8+1)] = {name=base_name.."_open", param2=20}
block.BLOCK[block.Block(base_num,4+8+2)] = {name=base_name.."_open", param2=23}
block.BLOCK[block.Block(base_num,4+8+3)] = {name=base_name.."_open", param2=21}
translate(Block(base_num,0),base_name,2)
translate(Block(base_num,1),base_name,0)
translate(Block(base_num,2),base_name,1)
translate(Block(base_num,3),base_name,3)
translate(Block(base_num,4+0),base_name.."_open",2)
translate(Block(base_num,4+1),base_name.."_open",0)
translate(Block(base_num,4+2),base_name.."_open",1)
translate(Block(base_num,4+3),base_name.."_open",3)
translate(Block(base_num,8+0),base_name,22)
translate(Block(base_num,8+1),base_name,20)
translate(Block(base_num,8+2),base_name,23)
translate(Block(base_num,8+3),base_name,21)
translate(Block(base_num,4+8+0),base_name.."_open",22)
translate(Block(base_num,4+8+1),base_name.."_open",20)
translate(Block(base_num,4+8+2),base_name.."_open",23)
translate(Block(base_num,4+8+3),base_name.."_open",21)
end
defineTrapdoor(block.TRAPDOOR,"doors:trapdoor")
defineTrapdoor(block.IRON_TRAPDOOR,"doors:trapdoor")
local function defineDoor(base_num,base_name)
block.BLOCK[block.Block(base_num,0)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,1)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,2)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,3)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,4+0)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,4+1)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,4+2)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,4+3)] = {name=base_name.."_b_2"}
block.BLOCK[block.Block(base_num,8+0)] = {name=base_name.."_t_2"}
block.BLOCK[block.Block(base_num,8+1)] = {name=base_name.."_t_2"}
block.BLOCK[block.Block(base_num,8+2)] = {name=base_name.."_t_2"}
block.BLOCK[block.Block(base_num,8+3)] = {name=base_name.."_t_2"}
block.BLOCK[block.Block(base_num,4+8+0)] = {name=base_name.."_t_2"}
block.BLOCK[block.Block(base_num,4+8+1)] = {name=base_name.."_t_2"}
block.BLOCK[block.Block(base_num,4+8+2)] = {name=base_name.."_t_2"}
block.BLOCK[block.Block(base_num,4+8+3)] = {name=base_name.."_t_2"}
translate(Block(base_num,0),base_name.."_b_2")
translate(Block(base_num,1),base_name.."_b_2")
translate(Block(base_num,2),base_name.."_b_2")
translate(Block(base_num,3),base_name.."_b_2")
translate(Block(base_num,4+0),base_name.."_b_2")
translate(Block(base_num,4+1),base_name.."_b_2")
translate(Block(base_num,4+2),base_name.."_b_2")
translate(Block(base_num,4+3),base_name.."_b_2")
translate(Block(base_num,8+0),base_name.."_t_2")
translate(Block(base_num,8+1),base_name.."_t_2")
translate(Block(base_num,8+2),base_name.."_t_2")
translate(Block(base_num,8+3),base_name.."_t_2")
translate(Block(base_num,4+8+0),base_name.."_t_2")
translate(Block(base_num,4+8+1),base_name.."_t_2")
translate(Block(base_num,4+8+2),base_name.."_t_2")
translate(Block(base_num,4+8+3),base_name.."_t_2")
-- lots of fixes to be done!
-- it might not be doable as MC upper doors don't have directional data
end
@ -435,15 +466,15 @@ defineDoor(block.DOOR_WOOD, "doors:door_wood")
defineDoor(block.DOOR_IRON, "doors:door_steel")
local function defineStair(base_num,base_name)
block.BLOCK[block.Block(base_num,0)] = {name=base_name, param2=1}
block.BLOCK[block.Block(base_num,1)] = {name=base_name, param2=3}
block.BLOCK[block.Block(base_num,2)] = {name=base_name, param2=2}
block.BLOCK[block.Block(base_num,3)] = {name=base_name, param2=0}
translate(Block(base_num,0),base_name,1)
translate(Block(base_num,1),base_name,3)
translate(Block(base_num,2),base_name,2)
translate(Block(base_num,3),base_name,0)
block.BLOCK[block.Block(base_num,4)] = {name=base_name, param2=17}
block.BLOCK[block.Block(base_num,5)] = {name=base_name, param2=21}
block.BLOCK[block.Block(base_num,6)] = {name=base_name, param2=22}
block.BLOCK[block.Block(base_num,7)] = {name=base_name, param2=20}
translate(Block(base_num,4),base_name,17)
translate(Block(base_num,5),base_name,21)
translate(Block(base_num,6),base_name,22)
translate(Block(base_num,7),base_name,20)
end
defineStair(block.STAIR_WOOD, "stairs:stair_wood")
@ -461,17 +492,34 @@ defineStair(164, "stairs:stair_wood") -- fix: dark oak
defineStair(180, "stairs:stair_sandstone") -- fix: red sandstone
defineStair(203, "stairs:stair_wood") -- fix: purpur
minetest.log("info", "Checking for missing blocks")
for id,entry in pairs(block.BLOCK) do
if not minetest.registered_nodes[entry.name] then
minetest.log("error", "Missing block "..entry.name)
if entry.name.sub(1,14) == "stained_glass:" then
entry.name = "default:glass"
else
entry.name = "default:stone"
entry.param2 = "0"
end
end
function block.node_to_id_meta(node)
if node.name == "air" or node.name == "ignore" then
return "0"
end
local entry=node.name .. " " .. node.param2
if from_node[entry] then
return unBlock(from_node[entry])
end
entry=node.name .. " 0"
if from_node[entry] then
return unBlock(from_node[entry])
end
return unBlock(block.STONE)
end
function block.id_meta_to_node(id, meta)
if id == 0 then
return {name="air"}
end
local value=Block(id, meta)
if to_node[value] then
return to_node[value]
elseif to_node[id] then
return to_node[id]
else
return {name="stone"}
end
end
return block

View File

@ -350,20 +350,13 @@ function handle_entity(cmd, id, args)
end
function parse_node(args, start)
local nodenum
local id, meta
if #args < start then
nodenum = 0
return {name="air"}
elseif #args == start then
nodenum = block.Block(tonumber(args[start]),0)
return block.id_meta_to_node(tonumber(args[start]),0)
else
nodenum = block.Block(tonumber(args[start]),tonumber(args[start+1]))
end
local node = block.BLOCK[nodenum]
if node == nil then
node = block.BLOCK[bit.band(nodenum,0xFFF)]
if not node then
node = {name="default:stone"}
end
return block.id_meta_to_node(tonumber(args[start]),tonumber(args[start+1]))
end
return node
end
@ -424,25 +417,11 @@ function handle_world(cmd, args)
return node.name .. "," .. node.param2
elseif cmd == "getBlockWithData" or cmd == "getBlock" then
local node = minetest.get_node({x=tonumber(args[1]),y=tonumber(args[2]),z=-tonumber(args[3])})
local id, meta
if node == "ignore" then
id = block.AIR
meta = 0
else
id = block.STONE
meta = 0
for key,value in pairs(block.BLOCK) do
if value.name == node.name then
id = math.floor(bit.band(key,0xFFF))
meta = math.floor(bit.rshift(key,12))
break
end
end
end
local id, meta = block.node_to_id_meta(node)
if cmd == "getBlock" then
return ""..id
return tostring(id)
else
return ""..id..","..meta
return id..","..meta
end
elseif cmd == "getHeight" then
return tonumber(get_height(tonumber(args[1]),-tonumber(args[2])))