Fix trapdoor side textures and orientations

Previously, opening a trapdoor caused the side textures to flip.

Fix the incorrect textures.
Also add a texture transform to a tile of the open trapdoor, such
that the closed trapdoor sides use the lower part of the texture
and the open trapdoor sides use the higher part.

Clean up some codestyle issues.
This commit is contained in:
Paramat 2019-05-03 23:49:07 +01:00 committed by GitHub
parent f21bab2ff9
commit 5c48c76aa2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 27 additions and 11 deletions

View File

@ -214,6 +214,8 @@ The doors mod allows modders to register custom doors and trapdoors.
inventory_image = "mod_door_inv.png", inventory_image = "mod_door_inv.png",
groups = {choppy = 2}, groups = {choppy = 2},
tiles = {"mod_door.png"}, -- UV map. tiles = {"mod_door.png"}, -- UV map.
-- The front and back of the door must be identical in appearence as they swap on
-- open/close.
recipe = craftrecipe, recipe = craftrecipe,
sounds = default.node_sound_wood_defaults(), -- optional sounds = default.node_sound_wood_defaults(), -- optional
sound_open = sound play for open door, -- optional sound_open = sound play for open door, -- optional
@ -228,7 +230,12 @@ The doors mod allows modders to register custom doors and trapdoors.
inventory_image = "mod_trapdoor_inv.png", inventory_image = "mod_trapdoor_inv.png",
groups = {choppy = 2}, groups = {choppy = 2},
tile_front = "doors_trapdoor.png", -- the texture for the front and back of the trapdoor tile_front = "doors_trapdoor.png", -- the texture for the front and back of the trapdoor
tile_side = "doors_trapdoor_side.png", -- the tiles of the four side parts of the trapdoor tile_side = "doors_trapdoor_side.png",
-- The texture for the four sides of the trapdoor.
-- The texture should have the trapdoor side drawn twice, in the lowest and highest
-- 1/8ths of the texture, both upright. The area between is not used.
-- The lower 1/8th will be used for the closed trapdoor, the higher 1/8th will be used
-- for the open trapdoor.
sounds = default.node_sound_wood_defaults(), -- optional sounds = default.node_sound_wood_defaults(), -- optional
sound_open = sound play for open door, -- optional sound_open = sound play for open door, -- optional
sound_close = sound play for close door, -- optional sound_close = sound play for close door, -- optional

View File

@ -40,8 +40,10 @@ Following textures created by PenguinDad (CC BY-SA 4.0):
Following textures created by sofar (CC-BY-SA-3.0): Following textures created by sofar (CC-BY-SA-3.0):
doors_trapdoor_steel.png doors_trapdoor_steel.png
doors_trapdoor_steel_side.png
Following textures created by paramat (CC-BY-SA-3.0):
door_trapdoor_side.png door_trapdoor_side.png
doors_trapdoor_steel_side.png
Obsidian door textures by red-001 based on textures by Pilzadam and BlockMen (CC BY-SA 3.0): Obsidian door textures by red-001 based on textures by Pilzadam and BlockMen (CC BY-SA 3.0):
door_obsidian_glass.png door_obsidian_glass.png

View File

@ -642,10 +642,14 @@ function doors.register_trapdoor(name, def)
type = "fixed", type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -6/16, 0.5} fixed = {-0.5, -0.5, -0.5, 0.5, -6/16, 0.5}
} }
def_closed.tiles = {def.tile_front, def_closed.tiles = {
def.tile_front,
def.tile_front .. '^[transformFY', def.tile_front .. '^[transformFY',
def.tile_side, def.tile_side, def.tile_side,
def.tile_side, def.tile_side} def.tile_side,
def.tile_side,
def.tile_side
}
def_opened.node_box = { def_opened.node_box = {
type = "fixed", type = "fixed",
@ -655,11 +659,14 @@ function doors.register_trapdoor(name, def)
type = "fixed", type = "fixed",
fixed = {-0.5, -0.5, 6/16, 0.5, 0.5, 0.5} fixed = {-0.5, -0.5, 6/16, 0.5, 0.5, 0.5}
} }
def_opened.tiles = {def.tile_side, def.tile_side, def_opened.tiles = {
def.tile_side,
def.tile_side .. '^[transform2',
def.tile_side .. '^[transform3', def.tile_side .. '^[transform3',
def.tile_side .. '^[transform1', def.tile_side .. '^[transform1',
def.tile_front .. '^[transform46', def.tile_front .. '^[transform46',
def.tile_front .. '^[transform6'} def.tile_front .. '^[transform6'
}
def_opened.drop = name_closed def_opened.drop = name_closed
def_opened.groups.not_in_creative_inventory = 1 def_opened.groups.not_in_creative_inventory = 1

Binary file not shown.

Before

Width:  |  Height:  |  Size: 169 B

After

Width:  |  Height:  |  Size: 118 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 B

After

Width:  |  Height:  |  Size: 98 B