update homedecor, basic_materials, led_marquee, signs_lib, unifieddyes

removed the inspector mod
master
Vanessa Dannenberg 2019-05-25 04:52:36 -04:00
parent 952f9f2b28
commit 9e49bc6167
268 changed files with 573 additions and 596 deletions

View File

@ -46,10 +46,14 @@ minetest.register_craft( {
minetest.register_craft( {
output = "basic_materials:motor 2",
recipe = {
{ "default:mese_crystal_fragment", "homedecor:copper_wire", "homedecor:plastic_sheeting" },
{ "default:copper_ingot", "default:steel_ingot", "default:steel_ingot" },
{ "default:mese_crystal_fragment", "homedecor:copper_wire", "homedecor:plastic_sheeting" }
{ "default:mese_crystal_fragment", "basic_materials:copper_wire", "basic_materials:plastic_sheet" },
{ "default:copper_ingot", "default:steel_ingot", "default:steel_ingot" },
{ "default:mese_crystal_fragment", "basic_materials:copper_wire", "basic_materials:plastic_sheet" }
},
replacements = {
{ "basic_materials:copper_wire", "basic_materials:empty_spool" },
{ "basic_materials:copper_wire", "basic_materials:empty_spool" },
}
})
minetest.register_craft( {

View File

@ -3,3 +3,5 @@ default
basic_materials
unifieddyes
building_blocks
bucket?
homedecor_fences?

View File

@ -347,7 +347,10 @@ homedecor.register("shower_head", {
on_rotate = screwdriver.disallow,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-2.0, z=pos.z})
if below and below.name == "homedecor:shower_tray" then
if below and (
below.name == "homedecor:shower_tray" or
below.name == "homedecor:bathtub_clawfoot_brass_taps" or
below.name == "homedecor:bathtub_clawfoot_chrome_taps" ) then
local particledef = {
outlet = { x = 0, y = -0.42, z = 0.1 },
velocity_x = { min = -0.15, max = 0.15 },
@ -364,6 +367,27 @@ homedecor.register("shower_head", {
end
})
local tub_sbox = {
type = "fixed",
fixed = { -0.5, -0.5, -0.5, 1.5, 0.3125, 0.5 },
}
local tub_cbox = {
type = "fixed",
fixed = {
{-0.4375, -0.0625, -0.5, 1.4375, 0.5, -0.4375}, -- NodeBox1
{-0.4375, -0.0625, 0.4375, 1.4375, 0.5, 0.5}, -- NodeBox2
{-0.5, 0.1875, -0.4375, -0.4375, 0.5, 0.4375}, -- NodeBox3
{1.4375, -0.0625, -0.4375, 1.5, 0.5, 0.4375}, -- NodeBox4
{-0.3125, -0.3125, -0.4375, -0.125, -0.0625, 0.4375}, -- NodeBox5
{1.375, -0.3125, -0.4375, 1.4375, -0.0625, 0.4375}, -- NodeBox6
{-0.125, -0.3125, 0.375, 1.375, -0.0625, 0.4375}, -- NodeBox7
{-0.125, -0.3125, -0.4375, 1.375, -0.0625, -0.375}, -- NodeBox8
{-0.125, -0.5, -0.375, 1.375, -0.3125, 0.375}, -- NodeBox9
{-0.4375, -0.0625, -0.4375, -0.3125, 0.1875, 0.4375}, -- NodeBox10
}
}
homedecor.register("bathtub_clawfoot_brass_taps", {
drawtype = "mesh",
mesh = "homedecor_bathtub_clawfoot.obj",
@ -377,10 +401,8 @@ homedecor.register("bathtub_clawfoot_brass_taps", {
},
description = S("Bathtub, clawfoot, with brass taps"),
groups = {cracky=3},
selection_box = {
type = "fixed",
fixed = { -0.5, -0.5, -0.5, 1.5, 0.3125, 0.5 },
},
selection_box = tub_sbox,
node_box = tub_cbox,
sounds = default.node_sound_stone_defaults(),
})
@ -397,10 +419,8 @@ homedecor.register("bathtub_clawfoot_chrome_taps", {
},
description = S("Bathtub, clawfoot, with chrome taps"),
groups = {cracky=3},
selection_box = {
type = "fixed",
fixed = { -0.5, -0.5, -0.5, 1.5, 0.3125, 0.5 },
},
selection_box = tub_sbox,
node_box = tub_cbox,
sounds = default.node_sound_stone_defaults(),
})
@ -531,8 +551,8 @@ minetest.register_craft({
minetest.register_craft( {
output = "homedecor:bathroom_tiles_light 4",
recipe = {
{ "group:marble", "group:marble", "" },
{ "group:marble", "group:marble", "dye:white" }
{ "group:marble", "group:marble" },
{ "group:marble", "group:marble" }
},
})
@ -593,3 +613,67 @@ minetest.register_craft({
{ "group:stick", "basic_materials:plastic_sheet", "group:stick" }
},
})
minetest.register_craft({
output = "homedecor:toilet",
recipe = {
{ "","","bucket:bucket_water"},
{ "group:marble","group:marble", "group:marble" },
{ "", "bucket:bucket_empty", "" },
},
})
minetest.register_craft({
output = "homedecor:sink",
recipe = {
{ "group:marble","bucket:bucket_empty", "group:marble" },
{ "", "group:marble", "" }
},
})
minetest.register_craft({
output = "homedecor:taps",
recipe = {
{ "default:steel_ingot","bucket:bucket_water", "default:steel_ingot" },
},
})
minetest.register_craft({
output = "homedecor:taps_brass",
recipe = {
{ "basic_materials:brass_ingot","bucket:bucket_water", "basic_materials:brass_ingot" },
},
})
minetest.register_craft({
output = "homedecor:shower_tray",
recipe = {
{ "group:marble","bucket:bucket_empty", "group:marble" },
},
})
minetest.register_craft({
output = "homedecor:shower_head",
recipe = {
{"default:steel_ingot", "bucket:bucket_water"},
},
})
minetest.register_craft({
output = "homedecor:bathtub_clawfoot_brass_taps",
recipe = {
{ "homedecor:taps_brass", "", "" },
{ "group:marble", "", "group:marble" },
{ "default:steel_ingot", "group:marble", "default:steel_ingot"},
},
})
minetest.register_craft({
output = "homedecor:bathtub_clawfoot_chrome_taps",
recipe = {
{ "homedecor:taps", "", "" },
{ "group:marble", "", "group:marble" },
{"default:steel_ingot", "group:marble", "default:steel_ingot"},
},
})

View File

@ -143,7 +143,19 @@ homedecor.register("radiator", {
})
-- crafting
minetest.register_craftitem(":homedecor:fan_blades", {
description = S("Fan blades"),
inventory_image = "homedecor_fan_blades.png"
})
minetest.register_craft( {
output = "homedecor:fan_blades 2",
recipe = {
{ "", "basic_materials:plastic_sheet", "" },
{ "", "default:steel_ingot", "" },
{ "basic_materials:plastic_sheet", "", "basic_materials:plastic_sheet" }
},
})
minetest.register_craft({
output = "homedecor:air_conditioner",

Binary file not shown.

After

Width:  |  Height:  |  Size: 372 B

View File

@ -1,4 +1,5 @@
homedecor_common
homedecor_misc?
default
basic_materials
dye

View File

@ -2,293 +2,139 @@
local S = homedecor.gettext
local function N_(x) return x end
-- new doors using minetest_game doors API
local m_rules
if minetest.global_exists("mesecon") then
m_rules = mesecon and mesecon.rules and mesecon.rules.pplate
end
-- doors
local function isSolid(pos, adjust)
local adj = {x = adjust[1], y = adjust[2], z = adjust[3]}
local node = minetest.get_node(vector.add(pos,adj))
if node then
local idef = minetest.registered_nodes[minetest.get_node(vector.add(pos,adj)).name]
if idef then
return idef.walkable
end
end
return false
end
local function countSolids(pos,node,level)
local solids = 0
for x = -1, 1 do
for z = -1, 1 do
local y = (node.param2 == 5) and -level or level
-- special cases when x == z == 0
if x == 0 and z == 0 then
if level == 1 then
-- when looking past the trap door, cannot be solid in center
if isSolid(pos,{x,y,z}) then
return false
end
-- no else. it doesn't matter if x == y == z is solid, that's us.
end
elseif isSolid(pos,{x,y,z}) then
solids = solids + 1
end
end
end
return solids
end
local function calculateClosed(pos)
local node = minetest.get_node(pos)
-- the door is considered closed if it is closing off something.
local direction = node.param2 % 6
local isTrap = direction == 0 or direction == 5
if isTrap then
-- the trap door is considered closed when all nodes on its sides are solid
-- or all nodes in the 3x3 above/below it are solid except the center
for level = 0, 1 do
local solids = countSolids(pos,node,level)
if solids == 8 then
return true
end
end
return false
else
-- the door is considered closed when the nodes on its sides are solid
-- or the 3 nodes in its facing direction are solid nonsolid solid
-- if the door has two levels (i.e. not a gate) then this must
-- be true for the top node as well.
-- sorry I dunno the math to figure whether to x or z
if direction == 1 or direction == 2 then
if isSolid(pos,{0,0,-1}) and isSolid(pos,{0,0,1}) then
if string.find(node.name,'_bottom_') then
return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z})
else
return true
end
end
local x = (direction == 1) and 1 or -1
if isSolid(pos,{x,0,-1}) and not isSolid(pos,{x,0,0}) and isSolid(pos,{x,0,1}) then
if string.find(node.name,'_bottom_') then
return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z})
else
return true
end
end
return false
else
-- direction == 3 or 4
if isSolid(pos,{-1,0,0}) and isSolid(pos,{1,0,0}) then
if string.find(node.name,'_bottom_') then
return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z})
else
return true
end
end
local z = (direction == 3) and 1 or -1
if isSolid(pos,{-1,0,z}) and not isSolid(pos,{0,0,z}) and isSolid(pos,{1,0,z}) then
if string.find(node.name,'_bottom_') then
return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z})
else
return true
end
end
return false
end
end
end
-- isClosed flag, is 0 or 1 0 = open, 1 = closed
local function getClosed(pos)
local isClosed = minetest.get_meta(pos):get_string('closed')
if isClosed=='' then
return calculateClosed(pos)
else
isClosed = tonumber(isClosed)
-- may be closed or open (1 or 0)
return isClosed == 1
end
end
local function addDoorNode(pos,def,isClosed)
minetest.set_node(pos, def)
minetest.get_meta(pos):set_int('closed', isClosed and 1 or 0)
end
local door_model_list = {
{ name = "closet_mahogany",
description = N_("Mahogany Closet Door (@1 opening)"),
mesh = "homedecor_door_closet.obj"
},
{ name = "closet_oak",
description = N_("Oak Closet Door (@1 opening)"),
mesh = "homedecor_door_closet.obj"
local door_list = {
{ name = "wood_plain",
description = "Plain Wooden Door",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_wood_defaults(),
open = "homedecor_door_open",
close = "homedecor_door_close",
}
},
{ name = "exterior_fancy",
description = N_("Fancy Wood/Glass Door (@1 opening)"),
mesh = "homedecor_door_fancy.obj",
tiles = {
"homedecor_door_exterior_fancy.png",
"homedecor_door_exterior_fancy_insert.png"
description = "Fancy Wood/Glass Door",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_wood_defaults(),
open = "homedecor_door_open",
close = "homedecor_door_close",
},
usealpha = true
backface = true,
alpha = true
},
{ name = "wood_glass_oak",
description = N_("Glass and Wood, Oak-colored (@1 opening)"),
mesh = "homedecor_door_wood_glass.obj",
tiles = {
"homedecor_door_wood_glass_oak.png",
"homedecor_door_wood_glass_insert.png",
}
description = "Glass and Wood, Oak-colored",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_glass_defaults(),
},
},
{ name = "wood_glass_mahogany",
description = N_("Glass and Wood, Mahogany-colored (@1 opening)"),
mesh = "homedecor_door_wood_glass.obj",
tiles = {
"homedecor_door_wood_glass_mahogany.png",
"homedecor_door_wood_glass_insert.png",
}
description = "Glass and Wood, Mahogany-colored",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_glass_defaults(),
},
},
{ name = "wood_glass_white",
description = N_("Glass and Wood, White (@1 opening)"),
mesh = "homedecor_door_wood_glass.obj",
tiles = {
"homedecor_door_wood_glass_white.png",
"homedecor_door_wood_glass_insert.png",
}
},
{ name = "wood_plain",
description = N_("Plain Wooden Door (@1 opening)"),
mesh = "homedecor_door_plain.obj"
description = "Glass and Wood, White",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_glass_defaults(),
},
},
{ name = "bedroom",
description = N_("White Bedroom Door (@1 opening)"),
mesh = "homedecor_door_plain.obj"
description = "White Bedroom Door",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_wood_defaults(),
open = "homedecor_door_open",
close = "homedecor_door_close",
}
},
{ name = "wrought_iron",
description = N_("Wrought Iron Gate/Door (@1 opening)"),
mesh = "homedecor_door_wrought_iron.obj"
description = "Wrought Iron Gate/Door",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_metal_defaults(),
open = "doors_steel_door_open",
close = "doors_steel_door_close",
},
backface = true,
},
{ name = "woodglass",
description = N_("Wooden door with glass insert (@1 opening)"),
mesh = "homedecor_door_woodglass_typea.obj",
tiles = {
"homedecor_door_woodglass_typea.png",
"homedecor_door_woodglass_typea_insert.png",
description = "Wooden door with glass insert",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_wood_defaults(),
open = "homedecor_door_open",
close = "homedecor_door_close",
},
usealpha = true
backface = true,
alpha = true
},
{ name = "woodglass2",
description = N_("Wooden door with glass insert, type 2 (@1 opening)"),
mesh = "homedecor_door_plain.obj",
usealpha = true
description = "Wooden door with glass insert, type 2",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_wood_defaults(),
open = "homedecor_door_open",
close = "homedecor_door_close",
},
backface = true,
alpha = true
},
{ name = "closet_mahogany",
description = "Mahogany Closet Door",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_wood_defaults(),
}
},
{ name = "closet_oak",
description = "Oak Closet Door",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = {
main = default.node_sound_wood_defaults(),
}
},
}
local def_selbox = {
type = "fixed",
fixed = { -0.5, -0.5, 0.375, 0.5, 1.5, 0.5 }
}
local old_doors = {}
local sides = { N_("left"), N_("right") }
for i, side in ipairs(sides) do
for _, door_model in ipairs(door_model_list) do
local doorname = door_model.name
local selbox = door_model.selectbox or def_selbox
local colbox = door_model.collisionbox or door_model.selectbox or def_selbox
local mesh = door_model.mesh
local groups = {snappy = 3}
if side == "right" then
mesh = string.gsub(door_model.mesh, ".obj", "_right.obj")
groups = {snappy = 3, not_in_creative_inventory = 1}
end
minetest.register_node(":homedecor:door_"..doorname.."_"..side, {
description = S(door_model.description, S(side)),
drawtype = "mesh",
mesh = mesh,
tiles = door_model.tiles or { "homedecor_door_"..doorname..".png" },
inventory_image = "homedecor_door_"..doorname.."_inv.png",
wield_image = "homedecor_door_"..doorname.."_inv.png",
paramtype = "light",
paramtype2 = "facedir",
groups = groups,
sounds = default.node_sound_wood_defaults(),
use_texture_alpha = door_model.usealpha,
selection_box = selbox,
collision_box = colbox,
on_rotate = screwdriver.rotate_simple,
on_place = function(itemstack, placer, pointed_thing)
return homedecor.stack_wing(itemstack, placer, pointed_thing,
"homedecor:door_"..doorname.."_left", "air",
"homedecor:door_"..doorname.."_right", "air")
end,
on_construct = function(pos)
minetest.get_meta(pos):set_int("closed", 1)
end,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
homedecor.flip_door(pos, node, clicker, doorname, side)
return itemstack
end,
-- both left and right doors may be used for open or closed doors
-- so they have to have both action_on and action_off and just
-- check when that action is invoked if to continue
on_punch = function(pos, node, puncher)
minetest.get_meta(pos):set_string('closed',nil)
end,
drop = "homedecor:door_"..doorname.."_left",
mesecons = {
effector = {
rules = m_rules,
action_on = function(pos,node)
local isClosed = getClosed(pos)
if isClosed then
homedecor.flip_door(pos,node,nil,doorname,side,isClosed)
end
end,
action_off = function(pos,node)
local isClosed = getClosed(pos)
if not isClosed then
homedecor.flip_door(pos,node,nil,doorname,side,isClosed)
end
end
}
}
for _, door in ipairs(door_list) do
doors.register(door.name, {
tiles = {{ name = "homedecor_door_"..door.name..".png", backface_culling = door.backface }},
description = door.description,
inventory_image = "homedecor_door_"..door.name.."_inv.png",
groups = table.copy(door.groups),
sounds = door.sounds.main,
sound_open = door.sounds.open,
sound_close = door.sounds.close
})
if door.alpha then
minetest.override_item("doors:"..door.name.."_a", {
use_texture_apha = true
})
minetest.register_alias("homedecor:door_"..doorname.."_top_"..side, "air")
minetest.register_alias("homedecor:door_"..doorname.."_bottom_"..side, "homedecor:door_"..doorname.."_"..side)
end
minetest.register_alias("homedecor:door_wood_glass_top_"..side, "air")
minetest.register_alias("homedecor:door_wood_glass_bottom_"..side, "homedecor:door_wood_glass_oak_"..side)
minetest.override_item("doors:"..door.name.."_b", {
use_texture_apha = true
})
end
old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_left"
old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_right"
end
-- Gates
@ -451,56 +297,11 @@ minetest.register_alias("homedecor:fence_picket_gate_closed", "homedecor:g
minetest.register_alias("homedecor:fence_picket_gate_white_open", "homedecor:gate_picket_white_open")
minetest.register_alias("homedecor:fence_picket_gate_white_closed", "homedecor:gate_picket_white_closed")
-- to open a door, you switch left for right and subtract from param2, or vice versa right for left
-- that is to say open "right" doors become left door nodes, and open left doors right door nodes.
-- also adjusting param2 so the node is at 90 degrees.
function homedecor.flip_door(pos, node, player, name, side, isClosed)
if isClosed == nil then
isClosed = getClosed(pos)
end
-- this is where we swap the isClosed status!
-- i.e. if isClosed, we're adding an open door
-- and if not isClosed, a closed door
isClosed = not isClosed
local rside
local nfdir
local ofdir = node.param2 or 0
if side == "left" then
rside = "right"
nfdir=ofdir - 1
if nfdir < 0 then nfdir = 3 end
else
rside = "left"
nfdir=ofdir + 1
if nfdir > 3 then nfdir = 0 end
end
local sound = isClosed and 'close' or 'open'
minetest.sound_play("homedecor_door_"..sound, {
pos=pos,
max_hear_distance = 5,
gain = 2,
})
-- XXX: does the top half have to remember open/closed too?
minetest.set_node({x=pos.x, y=pos.y+1, z=pos.z}, { name = "homedecor:door_"..name.."_top_"..rside, param2=nfdir})
addDoorNode(pos,{ name = "homedecor:door_"..name.."_bottom_"..rside, param2=nfdir },isClosed)
end
function homedecor.flip_gate(pos, node, player, gate, oc)
local isClosed = getClosed(pos);
minetest.sound_play("homedecor_gate_open_close", {
pos=pos,
max_hear_distance = 5,
gain = 2,
})
local fdir = node.param2 or 0
-- since right facing gates use "open" nodes for closed, we need an
-- isClosed flag to tell if it's "really" closed.
local gateresult
if oc == "closed" then
gateresult = "homedecor:gate_"..gate.."_open"
@ -508,12 +309,14 @@ function homedecor.flip_gate(pos, node, player, gate, oc)
gateresult = "homedecor:gate_"..gate.."_closed"
end
local def = {name=gateresult, param2=fdir}
addDoorNode(pos, def, isClosed)
minetest.set_node(pos, {name = gateresult, param2 = fdir})
minetest.sound_play("homedecor_gate_open_close", {
pos=pos,
max_hear_distance = 5,
gain = 2,
})
-- the following opens and closes gates below and above in sync with this one
-- (without three gate open/close sounds)
local above = {x=pos.x, y=pos.y+1, z=pos.z}
local below = {x=pos.x, y=pos.y-1, z=pos.z}
@ -521,69 +324,15 @@ function homedecor.flip_gate(pos, node, player, gate, oc)
local nodebelow = minetest.get_node(below)
if string.find(nodeabove.name, "homedecor:gate_"..gate) then
addDoorNode(above, def, isClosed)
minetest.set_node(above, {name = gateresult, param2 = fdir})
end
if string.find(nodebelow.name, "homedecor:gate_"..gate) then
addDoorNode(below, def, isClosed)
minetest.set_node(below, {name = gateresult, param2 = fdir})
end
end
-- Japanese-style wood/paper wall pieces and door
local jp_cbox = {
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, 0.5, 0.0625},
}
minetest.register_node(":homedecor:japanese_wall_top", {
description = S("Japanese wall (top)"),
drawtype = "mesh",
mesh = "homedecor_wall_japanese_top.obj",
tiles = {
homedecor.lux_wood,
"homedecor_japanese_paper.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {snappy=3},
selection_box = jp_cbox,
collision_box = jp_cbox,
sounds = default.node_sound_wood_defaults(),
})
minetest.register_node(":homedecor:japanese_wall_middle", {
description = S("Japanese wall"),
drawtype = "mesh",
mesh = "homedecor_wall_japanese_middle.obj",
tiles = {
homedecor.lux_wood,
"homedecor_japanese_paper.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {snappy=3},
selection_box = jp_cbox,
collision_box = jp_cbox,
sounds = default.node_sound_wood_defaults(),
})
minetest.register_node(":homedecor:japanese_wall_bottom", {
description = S("Japanese wall (bottom)"),
drawtype = "mesh",
mesh = "homedecor_wall_japanese_bottom.obj",
tiles = {
homedecor.lux_wood,
"homedecor_japanese_paper.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {snappy=3},
selection_box = jp_cbox,
collision_box = jp_cbox,
sounds = default.node_sound_wood_defaults(),
})
-- Japanese-style wood/paper door
homedecor.register("door_japanese_closed", {
description = S("Japanese-style door"),
inventory_image = "homedecor_door_japanese_inv.png",
@ -636,6 +385,44 @@ homedecor.register("door_japanese_open", {
-- crafting
-- half-doors
minetest.register_craft( {
type = "shapeless",
output = "homedecor:gate_half_door_closed 4",
recipe = {
"homedecor:door_wood_plain_left",
"homedecor:door_wood_plain_left"
},
})
minetest.register_craft( {
type = "shapeless",
output = "homedecor:gate_half_door_closed 4",
recipe = {
"homedecor:door_wood_plain_right",
"homedecor:door_wood_plain_right"
},
})
minetest.register_craft( {
type = "shapeless",
output = "homedecor:gate_half_door_white_closed 4",
recipe = {
"homedecor:door_bedroom_left",
"homedecor:door_bedroom_left"
},
})
minetest.register_craft( {
type = "shapeless",
output = "homedecor:gate_half_door_white_closed 4",
recipe = {
"homedecor:door_bedroom_right",
"homedecor:door_bedroom_right"
},
})
-- Gates
minetest.register_craft( {
@ -882,3 +669,25 @@ minetest.register_alias("homedecor:jpn_door_bottom_open", "homedecor:door_japane
minetest.register_alias("homedecor:door_glass_right", "doors:door_glass_b")
minetest.register_alias("homedecor:door_glass_left", "doors:door_glass_a")
-- flip old homedecor doors around, since they use minetest_game doors API now
minetest.register_lbm({
name = ":homedecor:convert_doors",
label = "Convert Homedecor doors to mtg doors API",
nodenames = old_doors,
run_at_every_load = false,
action = function(pos, node)
-- old doors param2: N=0, E=1, S=2, W=3
local newparam2 = (node.param2 + 2) % 4
local e = string.find(node.name, "_", -7)
local dir = string.sub(node.name, e+1)
local newname = "doors:"..string.sub(node.name, 16, e-1)
if dir == "right" then
minetest.set_node(pos, {name = newname.."_a", param2 = newparam2 })
else
minetest.set_node(pos, {name = newname.."_b", param2 = newparam2 })
end
minetest.set_node({x=pos.x, y=pos.y+1, z=pos.z}, {name = "doors:hidden"})
end
})

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 563 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

@ -425,13 +425,12 @@ minetest.register_craft({
}
})
minetest.register_craft( {
output = "homedecor:dishwasher",
recipe = {
{ "basic_materials:ic", "homedecor:fence_chainlink", "default:steel_ingot", },
{ "default:steel_ingot", "homedecor:shower_head", "basic_materials:motor" },
{ "default:steel_ingot", "basic_materials:heating_element", "bucket:bucket_water" }
{ "basic_materials:ic", "building_blocks:slab_grate_1", "default:steel_ingot", },
{ "default:steel_ingot", "homedecor:shower_head", "basic_materials:motor" },
{ "default:steel_ingot", "basic_materials:heating_element", "bucket:bucket_water" }
},
})
@ -517,6 +516,15 @@ minetest.register_craft( {
},
})
minetest.register_craft( {
output = "homedecor:kitchen_faucet",
recipe = {
{ "default:steel_ingot","" },
{ "", "default:steel_ingot" },
{ "", "homedecor:taps" }
},
})
minetest.register_craft( {
output = "homedecor:cutlery_set",
recipe = {

View File

@ -836,6 +836,64 @@ minetest.register_node(":homedecor:chandelier_brass", {
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(":homedecor:rope_light_on_floor", {
description = "Rope lighting (on floor)",
inventory_image = "homedecor_rope_light_on_floor.png",
paramtype = "light",
light_source = default.LIGHT_MAX-3,
walkable = false,
sunlight_propagates = true,
tiles = { "homedecor_table_standing_lamp_lightbulb.png" },
drawtype = "nodebox",
node_box = {
type = "connected",
fixed = {},
connect_front = { -1/16, -8/16, -8/16, 1/16, -6/16, 1/16 },
connect_left = { -8/16, -8/16, -1/16, 1/16, -6/16, 1/16 },
connect_back = { -1/16, -8/16, -1/16, 1/16, -6/16, 8/16 },
connect_right = { -1/16, -8/16, -1/16, 8/16, -6/16, 1/16 },
disconnected_sides = {
{ -6/16, -8/16, -6/16, -4/16, -6/16, 6/16 },
{ 4/16, -8/16, -6/16, 6/16, -6/16, 6/16 },
{ -6/16, -8/16, -6/16, 6/16, -6/16, -4/16 },
{ -6/16, -8/16, 4/16, 6/16, -6/16, 6/16 }
},
},
connects_to = { "homedecor:rope_light_on_floor" },
mesh = "homedecor_chandelier.obj",
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(":homedecor:rope_light_on_ceiling", {
description = "Rope lighting (on ceiling)",
inventory_image = "homedecor_rope_light_on_ceiling.png",
paramtype = "light",
light_source = default.LIGHT_MAX-3,
walkable = false,
sunlight_propagates = true,
tiles = { "homedecor_table_standing_lamp_lightbulb.png" },
drawtype = "nodebox",
node_box = {
type = "connected",
fixed = {},
connect_front = { -1/16, 8/16, -8/16, 1/16, 6/16, 1/16 },
connect_left = { -8/16, 8/16, -1/16, 1/16, 6/16, 1/16 },
connect_back = { -1/16, 8/16, -1/16, 1/16, 6/16, 8/16 },
connect_right = { -1/16, 8/16, -1/16, 8/16, 6/16, 1/16 },
disconnected_sides = {
{ -6/16, 8/16, -6/16, -4/16, 6/16, 6/16 },
{ 4/16, 8/16, -6/16, 6/16, 6/16, 6/16 },
{ -6/16, 8/16, -6/16, 6/16, 6/16, -4/16 },
{ -6/16, 8/16, 4/16, 6/16, 6/16, 6/16 }
},
},
connects_to = { "homedecor:rope_light_on_ceiling" },
mesh = "homedecor_chandelier.obj",
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
-- crafting
minetest.register_craft({
@ -1188,6 +1246,79 @@ minetest.register_craft({
},
})
minetest.register_craft({
output = "homedecor:standing_lamp_off",
recipe = {
{"homedecor:table_lamp_off"},
{"group:stick"},
{"group:stick"},
},
})
unifieddyes.register_color_craft({
output = "homedecor:standing_lamp_off",
palette = "extended",
type = "shapeless",
neutral_node = "homedecor:standing_lamp_off",
recipe = {
"NEUTRAL_NODE",
"MAIN_DYE"
}
})
minetest.register_craft({
type = "fuel",
recipe = "homedecor:table_lamp_off",
burntime = 10,
})
minetest.register_craft({
output = "homedecor:table_lamp_off",
recipe = {
{ "wool:white", "default:torch", "wool:white"},
{ "", "group:stick", ""},
{ "", "stairs:slab_wood", "" },
},
})
minetest.register_craft({
output = "homedecor:table_lamp_off",
recipe = {
{ "cottages:wool", "default:torch", "cottages:wool"},
{ "", "group:stick", ""},
{ "", "stairs:slab_wood", "" },
},
})
minetest.register_craft({
output = "homedecor:table_lamp_off",
recipe = {
{ "wool:white", "default:torch", "wool:white"},
{ "", "group:stick", ""},
{ "", "moreblocks:slab_wood", "" },
},
})
minetest.register_craft({
output = "homedecor:table_lamp_off",
recipe = {
{ "cottages:wool", "default:torch", "cottages:wool"},
{ "", "group:stick", ""},
{ "", "moreblocks:slab_wood", "" },
},
})
unifieddyes.register_color_craft({
output = "homedecor:table_lamp_off",
palette = "extended",
type = "shapeless",
neutral_node = "homedecor:table_lamp_off",
recipe = {
"NEUTRAL_NODE",
"MAIN_DYE"
}
})
-- aliases
minetest.register_alias("chains:chain_top", "homedecor:chain_steel_top")

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -999,3 +999,58 @@ unifieddyes.register_color_craft({
"MAIN_DYE",
}
})
-- Japanese-style wood/paper wall pieces and door
local jp_cbox = {
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, 0.5, 0.0625},
}
minetest.register_node(":homedecor:japanese_wall_top", {
description = S("Japanese wall (top)"),
drawtype = "mesh",
mesh = "homedecor_wall_japanese_top.obj",
tiles = {
homedecor.lux_wood,
"homedecor_japanese_paper.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {snappy=3},
selection_box = jp_cbox,
collision_box = jp_cbox,
sounds = default.node_sound_wood_defaults(),
})
minetest.register_node(":homedecor:japanese_wall_middle", {
description = S("Japanese wall"),
drawtype = "mesh",
mesh = "homedecor_wall_japanese_middle.obj",
tiles = {
homedecor.lux_wood,
"homedecor_japanese_paper.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {snappy=3},
selection_box = jp_cbox,
collision_box = jp_cbox,
sounds = default.node_sound_wood_defaults(),
})
minetest.register_node(":homedecor:japanese_wall_bottom", {
description = S("Japanese wall (bottom)"),
drawtype = "mesh",
mesh = "homedecor_wall_japanese_bottom.obj",
tiles = {
homedecor.lux_wood,
"homedecor_japanese_paper.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {snappy=3},
selection_box = jp_cbox,
collision_box = jp_cbox,
sounds = default.node_sound_wood_defaults(),
})

View File

@ -1 +0,0 @@
fsc

View File

@ -1 +0,0 @@
An in-game tool to inspect node parameters and metadata.

View File

@ -1,151 +0,0 @@
--[[
Copyright (C) 2015 - Auke Kok <sofar@foo-projects.org>
"inspector" is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation; either version 2.1
of the license, or (at your option) any later version.
--]]
local function make_fs(title, desc)
return "size[12,8]"..
"label[0.2,0.2;"..title.."]"..
"textlist[0.2,1.0;11.5,7;;"..
desc:gsub("\n", ",").."]"..
"button_exit[11.1,0.2;0.8,0.8;close;x]"
end
local function inspect_pos(pos)
local node = minetest.get_node(pos)
local desc = "===== node data =====\n"
desc = desc .. "name = " .. node.name .. "\n"
desc = desc .. "param1 = " .. node.param1 .. "\n"
desc = desc .. "param2 = " .. node.param2 .. "\n"
local light = minetest.get_node_light({x = pos.x, y = pos.y + 1, z = pos.x}, nil)
if light then
desc = desc .. "light = " .. light .. "\n"
end
local timer = minetest.get_node_timer(pos)
if timer:get_timeout() ~= 0 then
desc = desc .. "==== node timer ====\n"
desc = desc .. "timeout = " .. timer:get_timeout() .. "\n"
desc = desc .. "elapsed = " .. timer:get_elapsed() .. "\n"
end
local nodedef = minetest.registered_items[node.name]
local meta = minetest.get_meta(pos)
local table = meta:to_table()
local fields = minetest.serialize(table.fields)
desc = desc .. "==== meta ====\n"
desc = desc .. "meta.fields = " .. fields .. "\n"
desc = desc .. "\n"
local inventory = meta:get_inventory()
desc = desc .. "meta.inventory = \n"
for key, list in pairs(inventory:get_lists()) do
desc = desc .. key .. " : \n"
local size = #list
for i = 1, size do
local stack = list[i]
if not stack:is_empty() then
desc = desc .. "\"" .. stack:get_name() .. "\" - " .. stack:get_count() .. "\n"
end
end
end
if nodedef then -- Some built in nodes have no nodedef
desc = desc .. "==== nodedef ====\n"
desc = desc .. dump(nodedef) .. "\n"
end
return desc
end
minetest.register_tool("inspector:inspector", {
description = "Inspector Tool",
inventory_image = "inspector.png",
liquids_pointable = true, -- makes it hard to use underwater.
on_use = function(itemstack, user, pointed_thing)
local desc = ""
if pointed_thing.type == "nothing" then
return
elseif pointed_thing.type == "node" then
local pos = pointed_thing.under
if pointed_thing.type ~= "node" then
desc = "..."
else
desc = inspect_pos(pos)
end
elseif pointed_thing.type == "object" then
local ref = pointed_thing.ref
local entity = ref:get_luaentity()
desc = dump(entity)
end
local formspec = "size[12,8]"..
"label[0.5,0.5;Node Information]"..
"textarea[0.5,1.5;11.5,7;text;Contents:;"..
minetest.formspec_escape(desc).."]"..
"button_exit[2.5,7.5;3,1;close;Close]"
fsc.show(user:get_player_name(), formspec, {}, function() end)
end,
on_place = function(itemstack, user, pointed_thing)
local desc = ""
if pointed_thing.type == "nothing" then
return
elseif pointed_thing.type == "node" then
local pos = pointed_thing.above
if pointed_thing.type ~= "node" then
desc = "..."
else
desc = inspect_pos(pos)
end
elseif pointed_thing.type == "object" then
local ref = pointed_thing.ref
local entity = ref:get_luaentity()
desc = dump(entity)
end
local formspec = "size[12,8]"..
"label[0.5,0.5;Node Information]"..
"textarea[0.5,1.5;11.5,7;text;Contents:;"..
minetest.formspec_escape(desc).."]"..
"button_exit[2.5,7.5;3,1;close;Close]"
fsc.show(user:get_player_name(), formspec, {}, function() end)
end
})
minetest.register_chatcommand("inspect", {
params = "inspect",
description = "inspect a pos",
privs = {server = true},
func = function(name, param)
local paramlist = {}
for p in string.gmatch(param, "%S+") do
paramlist[#paramlist + 1] = p
end
local pos = {x = paramlist[1], y = paramlist[2], z = paramlist[3]}
if not pos.x or not pos.y or not pos.z then
return false, "Need 3 parameters for X, Y and Z"
end
local desc = inspect_pos(pos)
local formspec = "size[12,8]"..
"label[0.5,0.5;Node Information]"..
"textarea[0.5,1.5;11.5,7;text;Contents:;"..
minetest.formspec_escape(desc).."]"..
"button_exit[2.5,7.5;3,1;close;Close]"
fsc.show(name, formspec, {}, function() end)
return true
end,
})

View File

@ -1,3 +0,0 @@
name = inspector
description = An in-game tool to inspect node parameters and metadata.
depends = fsc

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 B

View File

@ -369,23 +369,17 @@ for i = 31, 255 do
local groups = { cracky = 2, not_in_creative_inventory = 1}
local light = LIGHT_MAX-2
local description = S("LED marquee panel ("..i..")")
local tiles = {
{ name="led_marquee_base.png", color="white"},
{ name="led_marquee_leds_off.png", color="white"},
"led_marquee_char_"..i..".png",
}
local leds = "led_marquee_char_"..i..".png^[mask:led_marquee_leds_on.png"
if i == 31 then
tiles = {
{ name="led_marquee_base.png", color="white"},
{ name="led_marquee_leds_off.png", color="white"},
{
name = "led_marquee_char_31.png",
animation = {type = "vertical_frames", aspect_w = 32, aspect_h = 32, length = 0.75}
}
leds ={
name = "led_marquee_char_31.png^[mask:led_marquee_leds_on_cursor.png",
animation = {type = "vertical_frames", aspect_w = 32, aspect_h = 32, length = 0.75}
}
end
local wimage
if i == 32 then
groups = {cracky = 2}
light = nil
@ -397,7 +391,11 @@ for i = 31, 255 do
description = description,
drawtype = "mesh",
mesh = "led_marquee.obj",
tiles = tiles,
tiles = {
{ name = "led_marquee_base.png", color = "white" },
{ name = "led_marquee_leds_off.png", color = "white" }
},
overlay_tiles = { "", leds },
inventory_image = wimage,
wield_image = wimage,
palette="led_marquee_palette.png",

View File

@ -21,10 +21,6 @@ v -0.500000 -0.453125 0.468750
v -0.500000 -0.453125 -0.468750
v -0.500000 -0.437500 -0.484375
v -0.500000 -0.437500 -0.500000
v 0.500000 -0.449125 -0.468750
v -0.500000 -0.449125 -0.468750
v -0.500000 -0.449125 0.468750
v 0.500000 -0.449125 0.468750
vt 0.681855 0.961799
vt 0.723891 0.992824
vt 0.723891 0.000000
@ -69,10 +65,6 @@ vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000
vn 1.0000 0.0000 0.0000
vn 0.0000 -1.0000 -0.0000
vn -1.0000 0.0000 0.0000
@ -106,7 +98,5 @@ f 7/26/8 6/38/8 19/19/8
f 19/19/6 6/38/6 5/20/6
f 15/22/6 10/39/6 9/23/6
f 8/25/7 17/40/7 16/24/7
g Cube_Cube_LEDs_Cube_Cube_LEDs_leds_off
g Cube_Cube_LEDs_Cube_Cube_LEDs_base_led_marquee_leds_off.png
f 1/41/6 2/42/6 3/43/6 4/44/6
g Cube_Cube_LEDs_Cube_Cube_LEDs_leds_on
f 21/45/6 22/46/6 23/47/6 24/48/6

Binary file not shown.

Before

Width:  |  Height:  |  Size: 419 B

After

Width:  |  Height:  |  Size: 208 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 B

After

Width:  |  Height:  |  Size: 89 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 495 B

After

Width:  |  Height:  |  Size: 94 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 485 B

After

Width:  |  Height:  |  Size: 98 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 493 B

After

Width:  |  Height:  |  Size: 92 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 437 B

After

Width:  |  Height:  |  Size: 86 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 449 B

After

Width:  |  Height:  |  Size: 90 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 451 B

After

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 B

After

Width:  |  Height:  |  Size: 89 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 420 B

After

Width:  |  Height:  |  Size: 85 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 594 B

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 424 B

After

Width:  |  Height:  |  Size: 82 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 429 B

After

Width:  |  Height:  |  Size: 85 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 472 B

After

Width:  |  Height:  |  Size: 87 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 492 B

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 441 B

After

Width:  |  Height:  |  Size: 84 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 450 B

After

Width:  |  Height:  |  Size: 89 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 454 B

After

Width:  |  Height:  |  Size: 89 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 416 B

After

Width:  |  Height:  |  Size: 81 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 B

After

Width:  |  Height:  |  Size: 87 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 486 B

After

Width:  |  Height:  |  Size: 93 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 473 B

After

Width:  |  Height:  |  Size: 93 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 344 B

After

Width:  |  Height:  |  Size: 86 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 453 B

After

Width:  |  Height:  |  Size: 86 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 445 B

After

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 371 B

After

Width:  |  Height:  |  Size: 79 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 447 B

After

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 400 B

After

Width:  |  Height:  |  Size: 81 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 568 B

After

Width:  |  Height:  |  Size: 93 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 348 B

After

Width:  |  Height:  |  Size: 94 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 338 B

After

Width:  |  Height:  |  Size: 89 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 210 B

After

Width:  |  Height:  |  Size: 76 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 279 B

After

Width:  |  Height:  |  Size: 79 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 262 B

After

Width:  |  Height:  |  Size: 78 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 274 B

After

Width:  |  Height:  |  Size: 78 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 276 B

After

Width:  |  Height:  |  Size: 83 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 268 B

After

Width:  |  Height:  |  Size: 84 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 302 B

After

Width:  |  Height:  |  Size: 83 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 268 B

After

Width:  |  Height:  |  Size: 81 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 451 B

After

Width:  |  Height:  |  Size: 84 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 B

After

Width:  |  Height:  |  Size: 83 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 84 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 305 B

After

Width:  |  Height:  |  Size: 84 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 302 B

After

Width:  |  Height:  |  Size: 81 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 342 B

After

Width:  |  Height:  |  Size: 84 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 268 B

After

Width:  |  Height:  |  Size: 75 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 336 B

After

Width:  |  Height:  |  Size: 95 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

After

Width:  |  Height:  |  Size: 92 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 314 B

After

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 309 B

After

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 323 B

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 316 B

After

Width:  |  Height:  |  Size: 90 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 359 B

After

Width:  |  Height:  |  Size: 96 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 352 B

After

Width:  |  Height:  |  Size: 95 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 244 B

After

Width:  |  Height:  |  Size: 83 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 325 B

After

Width:  |  Height:  |  Size: 95 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 B

After

Width:  |  Height:  |  Size: 102 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 379 B

After

Width:  |  Height:  |  Size: 99 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 494 B

After

Width:  |  Height:  |  Size: 102 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 518 B

After

Width:  |  Height:  |  Size: 105 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 500 B

After

Width:  |  Height:  |  Size: 101 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 B

After

Width:  |  Height:  |  Size: 71 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 336 B

After

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 367 B

After

Width:  |  Height:  |  Size: 95 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 399 B

After

Width:  |  Height:  |  Size: 102 B

Some files were not shown because too many files have changed in this diff Show More