Update creative and mainmenu formspec

master
Maksim 2019-05-15 02:11:47 +02:00 committed by MoNTE48
parent fb348ef435
commit d14587b282
45 changed files with 228 additions and 208 deletions

View File

@ -100,7 +100,7 @@ function ui.update()
"label[0.5,0;" .. error_title ..
"]textlist[0.2,0.8;11.5,3.5;;" .. formspec ..
"]button[6,4.6;3,0.5;btn_reconnect_no;" .. fgettext("Main menu") .. "]" ..
"button[3,4.6;3,0.5;btn_reconnect_yes;" .. fgettext("Reconnect") .. "]
"button[3,4.6;3,0.5;btn_reconnect_yes;" .. fgettext("Restart") .. "]"
else
local active_toplevel_ui_elements = 0
for key,value in pairs(ui.childlist) do

View File

@ -235,7 +235,6 @@ core.register_entity(":__builtin:item", {
maxexptime = 6,
minsize = 2,
maxsize = 4,
collisiondetection = true,
texture = "item_smoke.png"
})
return

View File

@ -20,9 +20,9 @@
local multicraft_developers = {
"Maksim Gamarnik (MoNTE48) <MoNTE48@mail.ua>",
"Bektur Mambetov (ubulem) <berkut87@gmail.com>",
"Alexander Zavrin (Ransom.00)",
"Alexander Zavrin (Ransom.00)",
"sfan5 <sfan5@live.de>",
"stujones11 Stuart Jones <stujones111@gmail.com>",
"Stuart Jones (stujones11) <stujones111@gmail.com>",
"paramat",
"And other people who helped make the world better!",
}
@ -96,11 +96,10 @@ return {
caption = fgettext("Credits"),
cbf_formspec = function(tabview, name, tabdata)
local version = core.get_version()
-- return "label[0.1,0;MultiCraft Open Source Project, ver. " .. version.string .. "]" ..
return "label[0.1,0;MultiCraft Open Source Project]" ..
"label[0.1,0.3;]" ..
"label[0.1,0.5;https://github.com/MultiCraftProject]" ..
"label[0.1,1.0;LGPLv3.0+ and CC-BY-SA 3.0]" ..
return "label[0.1,0;MultiCraft Open Source Project, ver. " .. version.string .. "]" ..
"label[0.1,0.25;Copyright (c) 2014-2019 MultiCraft Developement Team]" ..
"label[0.1,0.5;Home page: https://github.com/MultiCraftProject/MultiCraft]" ..
"label[0.1,0.75;Licence: LGPLv3.0+ and CC-BY-SA 3.0]" ..
"tablecolumns[color;text]" ..
"tableoptions[background=#999999;highlight=#00000000;border=true]" ..
"table[0,1.6;11.8,3.8;list_credits;" ..

View File

@ -33,37 +33,40 @@ local function get_formspec(tabview, name, tabdata)
local retval =
-- Search
"field[0.2,0.1;5.81,1;te_search;;" .. core.formspec_escape(tabdata.search_for) .. "]" ..
"button[5.62,-0.22;1.5,1;btn_mp_search;" .. fgettext("Search") .. "]" ..
"image_button[6.97,-0.125;.83,.83;" .. core.formspec_escape(defaulttexturedir .. "refresh.png")
"field[0.2,0.1;5.71,1;te_search;;" .. core.formspec_escape(tabdata.search_for) .. "]" ..
"image_button[5.52,-0.125;0.85,0.85;" .. core.formspec_escape(defaulttexturedir .. "search.png")
.. ";btn_mp_search;" .. "]" ..
"image_button[6.26,-0.125;0.85,0.85;" .. core.formspec_escape(defaulttexturedir .. "refresh.png")
.. ";btn_mp_refresh;" .. "]" ..
-- Address / Port
"label[7.75,-0.3;" .. fgettext("Address / Port") .. "]" ..
"field[8,0.6;3.2,0.5;te_address;;" ..
"label[7.1,-0.3;" .. fgettext("Address:") .. "]" ..
"label[10.22,-0.3;" .. fgettext("Port:") .. "]" ..
"field[7.4,0.6;3.2,0.5;te_address;;" ..
core.formspec_escape(core.settings:get("address")) .. "]" ..
"field[11.1,0.6;1.35,0.5;te_port;;" ..
"field[10.5,0.6;1.85,0.5;te_port;;" ..
core.formspec_escape(core.settings:get("remote_port")) .. "]" ..
-- Name / Password
"label[7.75,0.85;" .. fgettext("Name / Password") .. "]" ..
"field[8,1.75;2.85,0.5;te_name;;" ..
"label[7.1,0.85;" .. fgettext("Name:") .. "]" ..
"label[10.22,0.85;" .. fgettext("Password:") .. "]" ..
"field[7.4,1.75;2.86,0.5;te_name;;" ..
core.formspec_escape(core.settings:get("name")) .. "]" ..
"pwdfield[10.73,1.75;1.72,0.5;te_pwd;]" ..
"pwdfield[10.5,1.8;1.86,0.5;te_pwd;]" ..
-- Description Background
"box[7.7,2.1;4.25,2.65;#999999]"..
"box[7.1,2.1;4.8,2.65;#999999]"..
-- Connect
"button[9.9,5;2.25,0.5;btn_mp_connect;" .. fgettext("Connect") .. "]"
"button[9.4,5;2.7,0.5;btn_mp_connect;" .. fgettext("Connect") .. "]"
if tabdata.fav_selected and fav_selected then
if gamedata.fav then
retval = retval .. "button[7.7,5;2.3,0.5;btn_delete_favorite;" ..
retval = retval .. "button[7.1,5;2.3,0.5;btn_delete_favorite;" ..
fgettext("Del. Favorite") .. "]"
end
if fav_selected.description then
retval = retval .. "textarea[8.1,2.3;4.23,2.9;;" ..
retval = retval .. "textarea[7.5,2.3;4.8,2.9;;" ..
core.formspec_escape((gamedata.serverdescription or ""), true) .. ";]"
end
end
@ -81,7 +84,7 @@ local function get_formspec(tabview, name, tabdata)
image_column(fgettext("PvP enabled"), "pvp") .. ",padding=0.25;" ..
"color,span=1;" ..
"text,padding=1]" ..
"table[-0.09,0.7;7.7,4.9;favourites;"
"table[-0.09,0.7;7,4.9;favourites;"
if menudata.search_result then
for i = 1, #menudata.search_result do

View File

@ -6,7 +6,7 @@ beds.spawn = {}
beds.formspec = "size[8,11;true]" ..
"no_prepend[]" ..
"bgcolor[#080808BB;true]" ..
"bgcolor[#08080880;true]" ..
"button_exit[2,10;4,0.75;leave;Leave Bed]"
local modpath = minetest.get_modpath("beds")

View File

@ -752,7 +752,7 @@ Frame Root {
96.078431;
0.500000; 0.500000; 0.500000;;
0.000000; 0.000000; 0.000000;;
TextureFilename {"default_wood.png";}
TextureFilename {"default_pine_wood.png";}
}
} // End of Cube_000 material list
} // End of Cube_000 mesh

View File

@ -36,12 +36,17 @@ end
-- inventory_image = texture of the new bucket item (ignored if itemname == nil)
-- name = text description of the bucket item
-- groups = (optional) groups of the bucket item, for example {water_bucket = 1}
-- force_renew = (optional) bool. Force the liquid source to renew if it has a
-- source neighbour, even if defined as 'liquid_renewable = false'.
-- Needed to avoid creating holes in sloping rivers.
-- This function can be called from any mod (that depends on bucket).
function bucket.register_liquid(source, flowing, itemname, inventory_image, name, groups)
function bucket.register_liquid(source, flowing, itemname, inventory_image, name,
groups, force_renew)
bucket.liquids[source] = {
source = source,
flowing = flowing,
itemname = itemname,
force_renew = force_renew,
}
bucket.liquids[flowing] = bucket.liquids[source]
@ -52,6 +57,7 @@ function bucket.register_liquid(source, flowing, itemname, inventory_image, name
stack_max = 1,
liquids_pointable = true,
groups = groups,
on_place = function(itemstack, user, pointed_thing)
-- Must be pointing to node
if pointed_thing.type ~= "node" then
@ -59,47 +65,46 @@ function bucket.register_liquid(source, flowing, itemname, inventory_image, name
end
local node = minetest.get_node_or_nil(pointed_thing.under)
local ndef
if node then
ndef = minetest.registered_nodes[node.name]
end
local ndef = node and minetest.registered_nodes[node.name]
-- Call on_rightclick if the pointed node defines it
if ndef and ndef.on_rightclick and
user and not user:get_player_control().sneak then
not (user and user:is_player() and
user:get_player_control().sneak) then
return ndef.on_rightclick(
pointed_thing.under,
node, user,
itemstack) or itemstack
itemstack)
end
local place_liquid = function(pos, node, source, flowing)
if check_protection(pos,
user and user:get_player_name() or "",
"place "..source) then
return
end
minetest.add_node(pos, {name=source})
end
local lpos
-- Check if pointing to a buildable node
if ndef and ndef.buildable_to then
-- buildable; replace the node
place_liquid(pointed_thing.under, node,
source, flowing)
lpos = pointed_thing.under
else
-- not buildable to; place the liquid above
-- check if the node above can be replaced
local node = minetest.get_node_or_nil(pointed_thing.above)
if node and minetest.registered_nodes[node.name].buildable_to then
place_liquid(pointed_thing.above,
node, source,
flowing)
else
lpos = pointed_thing.above
node = minetest.get_node_or_nil(lpos)
local above_ndef = node and minetest.registered_nodes[node.name]
if not above_ndef or not above_ndef.buildable_to then
-- do not remove the bucket with the liquid
return
return itemstack
end
end
return {name="bucket:bucket_empty"}
if check_protection(lpos, user
and user:get_player_name()
or "", "place "..source) then
return
end
minetest.set_node(lpos, {name = source})
return ItemStack("bucket:bucket_empty")
end
})
end
@ -110,8 +115,11 @@ minetest.register_craftitem("bucket:bucket_empty", {
inventory_image = "bucket.png",
liquids_pointable = true,
on_use = function(itemstack, user, pointed_thing)
-- Must be pointing to node
if pointed_thing.type ~= "node" then
if pointed_thing.type == "object" then
pointed_thing.ref:punch(user, 1.0, { full_punch_interval=1.0 }, nil)
return user:get_wielded_item()
elseif pointed_thing.type ~= "node" then
-- do nothing if it's neither object nor node
return
end
-- Check if pointing to a liquid source
@ -139,9 +147,9 @@ minetest.register_craftitem("bucket:bucket_empty", {
if inv:room_for_item("main", {name=liquiddef.itemname}) then
inv:add_item("main", liquiddef.itemname)
else
local pos = user:getpos()
local pos = user:get_pos()
pos.y = math.floor(pos.y + 0.5)
core.add_item(pos, liquiddef.itemname)
minetest.add_item(pos, liquiddef.itemname)
end
-- set to return empty buckets minus 1
@ -149,9 +157,24 @@ minetest.register_craftitem("bucket:bucket_empty", {
end
-- force_renew requires a source neighbour
local source_neighbor = false
if liquiddef.force_renew then
source_neighbor =
minetest.find_node_near(pointed_thing.under, 1, liquiddef.source)
end
if not (source_neighbor and liquiddef.force_renew) then
minetest.add_node(pointed_thing.under, {name="air"})
end
return ItemStack(giving_back)
else
-- non-liquid nodes will have their on_punch triggered
local node_def = minetest.registered_nodes[node.name]
if node_def then
node_def.on_punch(pointed_thing.under, node, user, pointed_thing)
end
return user:get_wielded_item()
end
end,
})
@ -165,13 +188,20 @@ bucket.register_liquid(
{water_bucket = 1}
)
-- River water source is 'liquid_renewable = false' to avoid horizontal spread
-- of water sources in sloping rivers that can cause water to overflow
-- riverbanks and cause floods.
-- River water source is instead made renewable by the 'force renew' option
-- used here.
bucket.register_liquid(
"default:river_water_source",
"default:river_water_flowing",
"bucket:bucket_river_water",
"bucket_river_water.png",
"River Water Bucket",
{water_bucket = 1}
{water_bucket = 1},
true
)
bucket.register_liquid(

View File

@ -19,8 +19,8 @@ rot["combat"] = ""
rot["matr"] = ""
rot["brew"] = ""
ofs_tab["all"] = "10.05,0.84"
ofs_tab["inv"] = "10.05,6.93"
ofs_tab["all"] = "10.08,0.84"
ofs_tab["inv"] = "10.08,6.93"
ofs_tab["blocks"] = "-0.29,-0.32"
ofs_tab["deco"] = "0.74,-0.32"
ofs_tab["mese"] = "1.78,-0.32"
@ -169,8 +169,8 @@ creative.formspec_add = ""
local function get_creative_formspec(player_name, start_i, pagenum, page, pagemax)
pagenum = math.floor(pagenum) or 1
pagemax = (pagemax and pagemax ~= 0) and pagemax or 1
local slider_height = 4 / pagemax
local slider_pos = slider_height * (pagenum - 1) + 2.15
local slider_height = 4 / pagemax - 0.03
local slider_pos = 4 / pagemax * (pagenum - 1) + 2.17
local formspec = ""
local main_list = "list[detached:creative_" .. player_name ..
";main;0,1.69;9,5;"..tostring(start_i).."]"
@ -187,34 +187,34 @@ local function get_creative_formspec(player_name, start_i, pagenum, page, pagema
end
local formspec = "image_button_exit[10.4,-0.1;0.75,0.75;close.png;exit;;true;true;]"..
"background[-0.19,-0.25;11.5,8.5;inventory_creative.png]"..
"bgcolor[#080808BB;true]"..
sfinv.gui_bg..
"listcolors[#9990;#FFF7;#FFF0;#160816;#D4D2FF]"..
"label[-5,-5;"..name.."]"..
"image_button[-0.16,-0.15;1,1;"..bg["blocks"]..";build;;;false]".. --build blocks
"image_button[0.87,-0.15;1,1;"..bg["deco"]..";deco;;;false]".. --decoration blocks
"image_button[1.92,-0.15;1,1;"..bg["mese"]..";mese;;;false]".. --bluestone
"image_button[2.96,-0.15;1,1;"..bg["rail"]..";rail;;;false]".. --transportation
"image_button[4,-0.15;1,1;"..bg["misc"]..";misc;;;false]".. --miscellaneous
"image_button[0.87,-0.15;1,1;"..bg["deco"]..";deco;;;false]".. --decoration blocks
"image_button[1.92,-0.15;1,1;"..bg["mese"]..";mese;;;false]".. --bluestone
"image_button[2.96,-0.15;1,1;"..bg["rail"]..";rail;;;false]".. --transportation
"image_button[4,-0.15;1,1;"..bg["misc"]..";misc;;;false]".. --miscellaneous
"image[0,0.95;5,0.75;fnt_"..name..".png]"..
"list[current_player;main;0,6.955;9,1;]"..main_list..
"image_button[9.02,1.69;0.98,0.6;creative_up.png;creative_prev;]"..
"image_button[9.02,6.08;0.98,0.6;creative_down.png;creative_next;]"..
"image_button[5.05,-0.15;1,1;"..bg["food"]..";food;;;false]".. --foodstuff
"image_button[6.1,-0.15;1,1;"..bg["tools"]..";tools;;;false]".. --tools
"image_button[9.13,1.69;0.8,0.6;creative_up.png;creative_prev;]"..
"image_button[9.13,6.11;0.8,0.6;creative_down.png;creative_next;]"..
"image_button[5.05,-0.15;1,1;"..bg["food"]..";food;;;false]".. --foodstuff
"image_button[6.1,-0.15;1,1;"..bg["tools"]..";tools;;;false]".. --tools
"image_button[7.15,-0.15;1,1;"..bg["combat"]..";combat;;;false]".. --combat
"image_button[8.17,-0.15;1,1;"..bg["matr"]..";matr;;;false]".. --materials
"image_button[9.2,-0.15;1,1;"..bg["brew"]..";brew;;;false]".. --brewing
"image_button[10.27,1;1,1;"..bg["all"]..";default;;;false]".. --all items
"image_button[10.27,7.15;1,1;"..bg["inv"]..";inv;;;false]".. --inventory
"image_button[8.17,-0.15;1,1;"..bg["matr"]..";matr;;;false]".. --materials
"image_button[9.2,-0.15;1,1;"..bg["brew"]..";brew;;;false]".. --brewing
"image_button[10.27,1;1,1;"..bg["all"]..";default;;;false]".. --all items
"image_button[10.27,7.15;1,1;"..bg["inv"]..";inv;;;false]".. --inventory
"list[detached:creative_trash;main;9.02,6.955;1,1;]"..
"image["..ofs_tab[name]..";1.45,1.45;creative_active.png"..rot[name].."]"..
"image["..ofs_img[name]..";1,1;"..bg[name].."]"..
"image[9.04," .. tostring(slider_pos) .. ";0.93,"..tostring(slider_height) .. ";creative_slider.png]"
"image[9.15," .. tostring(slider_pos) .. ";0.69,"..tostring(slider_height) .. ";creative_slider.png]"
if name == "all" then
formspec = formspec .. "field_close_on_enter[search;false]"..
"field[5.3,1.27;4,0.75;search;;]"..
"image_button[9.02,0.93;1,0.8;creative_search.png;creative_search;;;false]"
"image_button[9.13,0.94;0.8,0.8;creative_search.png;creative_search;;;false]"
end
if pagenum ~= nil then
formspec = formspec .. "p"..tostring(pagenum)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 B

After

Width:  |  Height:  |  Size: 212 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 B

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 178 B

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@ -30,7 +30,7 @@ default.chest_formspec =
"size[9,9.75]"..
"image_button_exit[8.4,-0.1;0.75,0.75;close.png;exit;;true;true;]"..
"background[-0.19,-0.25;9.41,10.48;formspec_chest.png]"..
"bgcolor[#080808BB;true]"..
"bgcolor[#08080880;true]"..
"listcolors[#9990;#FFF7;#FFF0;#160816;#D4D2FF]"..
"list[current_name;main;0,0.5;9,4;]"..
"list[current_player;main;0,5.5;9,3;9]"..

View File

@ -54,14 +54,6 @@ minetest.register_craft({
}
})
minetest.register_craft({
output = 'fences:fence_wood 2',
recipe = {
{'default:stick', 'default:stick', 'default:stick'},
{'default:stick', 'default:stick', 'default:stick'},
}
})
minetest.register_craft({
output = 'signs:sign 3',
recipe = {

View File

@ -579,16 +579,8 @@ end
-- Snowball entity
local snowball_entity = {
physical = false,
textures = {
"default_snow.png",
"default_snow.png",
"default_snow.png",
"default_snow.png",
"default_snow.png",
"default_snow.png",
},
visual = "cube",
visual_size = {x=0.25, y=0.25},
textures = {"default_snowball.png",},
visual = "sprite",
thrower = nil,
timer = 0,
lastpos = {},

View File

@ -8,7 +8,7 @@ local function active_formspec(fuel_percent, item_percent)
"size[9,8.75]"..
"image_button_exit[8.4,-0.1;0.75,0.75;close.png;exit;;true;true;]"..
"background[-0.19,-0.25;9.41,9.49;formspec_furnace.png]"..
"bgcolor[#080808BB;true]"..
sfinv.gui_bg..
"listcolors[#9990;#FFF7;#FFF0;#160816;#D4D2FF]"..
"list[current_player;main;0,4.5;9,3;9]"..
"list[current_player;main;0,7.74;9,1;]"..
@ -24,7 +24,7 @@ local inactive_formspec =
"size[9,8.75]"..
"image_button_exit[8.4,-0.1;0.75,0.75;close.png;exit;;true;true;]"..
"background[-0.19,-0.25;9.41,9.49;formspec_furnace.png]"..
"bgcolor[#080808BB;true]"..
"bgcolor[#08080880;true]"..
"listcolors[#9990;#FFF7;#FFF0;#160816;#D4D2FF]"..
"list[current_player;main;0,4.5;9,3;9]"..
"list[current_player;main;0,7.74;9,1;]"..

View File

@ -220,7 +220,7 @@ minetest.register_node("default:snow", {
},
groups = {crumbly = 3, falling_node = 1, snowy = 1, puts_out_fire = 1, misc = 1},
sounds = default.node_sound_snow_defaults(),
-- on_use = snow_shoot_snowball,
on_use = snow_shoot_snowball,
on_construct = function(pos)
pos.y = pos.y - 1
if minetest.get_node(pos).name == "default:dirt_with_grass" then
@ -308,12 +308,12 @@ minetest.register_node("default:sapling", {
})
minetest.register_node("default:leaves", {
description = "Leaves",
description = "Apple Tree Leaves",
drawtype = "allfaces_optional",
waving = 1,
visual_scale = 1.3,
tiles = {"default_leaves.png"},
paramtype = "light",
walkable = false,
is_ground_content = false,
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1},
drop = {
@ -405,9 +405,9 @@ minetest.register_node("default:jungleleaves", {
description = "Jungle Tree Leaves",
drawtype = "allfaces_optional",
waving = 1,
visual_scale = 1.3,
tiles = {"default_jungleleaves.png"},
paramtype = "light",
walkable = false,
is_ground_content = false,
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1},
drop = {
@ -483,7 +483,6 @@ minetest.register_node("default:pine_wood", {
minetest.register_node("default:pine_needles",{
description = "Pine Needles",
drawtype = "allfaces_optional",
visual_scale = 1.3,
tiles = {"default_pine_needles.png"},
waving = 1,
paramtype = "light",
@ -563,10 +562,10 @@ minetest.register_node("default:acacia_wood", {
minetest.register_node("default:acacia_leaves", {
description = "Acacia Tree Leaves",
drawtype = "allfaces_optional",
visual_scale = 1.3,
tiles = {"default_acacia_leaves.png"},
waving = 1,
paramtype = "light",
walkable = false,
is_ground_content = false,
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1},
drop = {
@ -801,6 +800,27 @@ minetest.register_node("default:diamondblock", {
groups = {cracky = 1, level = 3, building = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default:dry_shrub", {
description = "Dry Shrub",
drawtype = "plantlike",
waving = 1,
tiles = {"default_dry_shrub.png"},
paramtype = "light",
paramtype2 = "meshoptions",
place_param2 = 4,
sunlight_propagates = true,
walkable = false,
buildable_to = true,
groups = {snappy = 3, flammable = 3, attached_node=1, decorative = 1},
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "fixed",
fixed = {-1/3, -1/2, -1/3, 1/3, 1/6, 1/3},
},
})
minetest.register_node("default:junglegrass", {
description = "Jungle Grass",
drawtype = "plantlike",
@ -812,28 +832,27 @@ minetest.register_node("default:junglegrass", {
paramtype = "light",
sunlight_propagates = true,
walkable = false,
drop = {
buildable_to = true,
drop = {
max_items = 1,
items = {
--{items = {'farming:seed_cotton'}, rarity = 8},
{items = {'default:junglegrass'}},
}
},
buildable_to = true,
groups = {snappy = 3, flammable = 2, flora = 1, attached_node = 1},
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1},
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},
},
})
minetest.register_node("default:grass", {
description = "Grass",
drawtype = "plantlike",
waving = 1,
tiles = {"default_tallgrass.png"},
inventory_image = "default_tallgrass.png",
wield_image = "default_tallgrass.png",
paramtype = "light",
sunlight_propagates = true,
walkable = false,
buildable_to = true,
drop = {
@ -844,14 +863,26 @@ minetest.register_node("default:grass", {
}
},
paramtype = "light",
groups = {snappy = 3, flammable = 3,attached_node=1,dig_immediate = 3, decorative=1, grass=1},
groups = {snappy = 3, flora = 1, attached_node = 1, grass = 1,
flammable = 1, dig_immediate = 3, decorative = 1},
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node("default:dry_grass", {
description = "Dry Grass",
drawtype = "plantlike",
waving = 1,
tiles = {"default_dry_tallgrass.png"},
inventory_image = "default_dry_tallgrass.png",
wield_image = "default_dry_tallgrass.png",
paramtype = "light",
sunlight_propagates = true,
walkable = false,
buildable_to = true,
groups = {snappy = 3, flammable = 3, flora = 1, attached_node = 1,
not_in_creative_inventory=1, dry_grass = 1, dig_immediate = 3, decorative = 1},
sounds = default.node_sound_leaves_defaults(),
after_dig_node = function(pos, oldnode, oldmetadata, user)
local item = user:get_wielded_item()
if item:get_name() == "default:shears" then
user:get_inventory():add_item("main", ItemStack(oldnode.name))
end
end
})
--
@ -1411,9 +1442,6 @@ minetest.register_node("default:vine", {
drop = "",
after_dig_node = function(pos, oldnode, oldmetadata, user)
local item = user:get_wielded_item()
if item:get_name() == "default:shears" then
user:get_inventory():add_item("main", ItemStack(oldnode.name))
end
local next_find = true
local down = 1
while next_find == true do
@ -1462,41 +1490,6 @@ minetest.register_node("default:brick", {
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default:dry_shrub", {
description = "Dry Shrub",
drawtype = "plantlike",
visual_scale = 1.0,
tiles = {"default_dry_shrub.png"},
paramtype = "light",
walkable = false,
groups = {snappy = 3, flammable = 3,attached_node=1, decorative = 1},
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "fixed",
fixed = {-1/3, -1/2, -1/3, 1/3, 1/6, 1/3},
},
})
minetest.register_node("default:dry_grass", {
description = "Dry Grass",
drawtype = "plantlike",
tiles = {"default_dry_tallgrass.png"},
inventory_image = "default_dry_tallgrass.png",
wield_image = "default_dry_tallgrass.png",
walkable = false,
buildable_to = true,
paramtype = "light",
groups = {snappy = 3, flammable = 3, attached_node=1, dig_immediate = 3, decorative=1, grass=1},
sounds = default.node_sound_leaves_defaults(),
after_dig_node = function(pos, oldnode, oldmetadata, user)
local item = user:get_wielded_item()
if item:get_name() == "default:shears" then
user:get_inventory():add_item("main", ItemStack(oldnode.name))
end
end
})
minetest.register_node("default:glowstone", {
description = "Glowstone",
tiles = {"default_glowstone.png"},

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1015 B

After

Width:  |  Height:  |  Size: 484 B

View File

@ -9,7 +9,7 @@ local function set_workbench(player)
local workbench = "size[9,8.75]" ..
"image_button_exit[8.4,-0.1;0.75,0.75;close.png;exit;;true;true;]"..
"background[-0.19,-0.25;9.41,9.49;formspec_workbench.png]" ..
"bgcolor[#080808BB;true]" ..
"bgcolor[#08080880;true]" ..
"listcolors[#9990;#FFF7;#FFF0;#160816;#D4D2FF]" ..
"list[detached:split;main;8,3.15;1,1;]"..
"list[current_player;main;0,4.5;9,3;9]" ..

View File

@ -1,2 +1 @@
default

View File

@ -1,5 +1,3 @@
local override_original = true --change to "true" if you want original and placed fences replaced
local function dockable(nodename)
if nodename == "default:wood" or string.find(nodename, "wallet:wall") or nodename == "default:brick" or nodename == "default:cobble" or nodename == "default:dirt" or nodename == "default:sandstone" or nodename == "default:stone" or string.find(nodename, "fences:fence_wood") or string.find(nodename, "fences:fencegate") then
return true
@ -96,16 +94,15 @@ local bx21 = {5/16, 1/2-1/16, -1/16, 5/16, 1/2+8/16, -1/16} --oben_block(quer)
minetest.register_node("fences:fence_wood", {
description = "Wooden Fence",
tiles = {"default_wood.png"},
inventory_image = "default_fence.png",
wield_image = "default_fence.png",
inventory_image = "fences_fence.png",
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1, decorative = 1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, decorative = 1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {p0,p1,p2,p4,p5,}
fixed = {p0,p1,p2,p4,p5,}
},
selection_box = {
type = "fixed",
@ -129,14 +126,15 @@ minetest.register_node("fences:fence_wood", {
minetest.register_node("fences:fence_wood_1", {
tiles = {"default_wood.png"},
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p5,
p0,p1,p2,p4,p5,
z1,z12,
bz1,bz11,
}
@ -156,14 +154,15 @@ minetest.register_node("fences:fence_wood_1", {
minetest.register_node("fences:fence_wood_2", {
tiles = {"default_wood.png"},
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z2,z22,
bz2,bz21,
}
@ -183,14 +182,15 @@ minetest.register_node("fences:fence_wood_2", {
minetest.register_node("fences:fence_wood_3", { --left+right(3)
tiles = {"default_wood.png"},
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z1,z12,z2,z22,
bz1,bz11,bz2,bz21,
}
@ -210,14 +210,15 @@ minetest.register_node("fences:fence_wood_3", { --left+right(3)
minetest.register_node("fences:fence_wood_11", { --top
tiles = {"default_wood.png"},
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
x1,x12,
bx1,bx11,
}
@ -240,11 +241,12 @@ minetest.register_node("fences:fence_wood_21", { --bottom
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
x2,x22,
bx2,bx21,
}
@ -268,11 +270,12 @@ minetest.register_node("fences:fence_wood_32", { --top+bottom(32)
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
x1,x12,x2,x22,
bx1,bx11,bx2,bx21,
}
@ -295,11 +298,12 @@ minetest.register_node("fences:fence_wood_14", { --left+right(3)+ top(11) =14
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z1,z12,z2,z22,x1,x12,
bz1,bz11,bz2,bz21,bx1,bx11,
}
@ -322,11 +326,12 @@ minetest.register_node("fences:fence_wood_24", { --left+right(3)+ bottom(21) =2
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z1,z12,z2,z22,x2,x22,
bz1,bz11,bz2,bz21,bx2,bx21,
}
@ -349,11 +354,12 @@ minetest.register_node("fences:fence_wood_35", { --left+right(3)+top+bottom(32)
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
x1,x12,x2,x22,z1,z12,z2,z22,
bz1,bz11,bz2,bz21,bx1,bx11,bx2,bx21,
}
@ -376,11 +382,12 @@ minetest.register_node("fences:fence_wood_12", { --left(1)+top(11)=12
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z1,z12,x1,x12,
bz1,bz11,bx1,bx11,
}
@ -403,11 +410,12 @@ minetest.register_node("fences:fence_wood_22", { --left(1)+bottom(21)=22
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z1,z12,x2,x22,
bz1,bz11,bx2,bx21,
}
@ -430,12 +438,13 @@ minetest.register_node("fences:fence_wood_33", { --left(1)+top+bottom(32)=33
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
z1,z12,x1,x12,x2,
p0,p1,p2,p4,p5,
z1,z12,x1,x12,x2,
bz1,bz11,bx1,bx11,bx2,bx21,
}
},
@ -454,14 +463,15 @@ minetest.register_node("fences:fence_wood_33", { --left(1)+top+bottom(32)=33
minetest.register_node("fences:fence_wood_34", { --right(2)+top+bottom(32)=34
tiles = {"default_wood.png"},
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z2,z22,x1,x12,x2,x22,
bz2,bz21,bx1,bx11,bx2,bx21,
}
@ -481,14 +491,15 @@ minetest.register_node("fences:fence_wood_34", { --right(2)+top+bottom(32)=34
minetest.register_node("fences:fence_wood_23", { --right(2)+bottom(21)=23
tiles = {"default_wood.png"},
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z2,z22,x2,x22,
bz2,bz21,bx2,bx21,
}
@ -508,14 +519,15 @@ minetest.register_node("fences:fence_wood_23", { --right(2)+bottom(21)=23
minetest.register_node("fences:fence_wood_13", { --right(2)+top(11)=13
tiles = {"default_wood.png"},
paramtype = "light",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1},
drop = 'fences:fence_wood',
sunlight_propagates = true,
sounds = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
p0,p1,p2,p4,p5,
p0,p1,p2,p4,p5,
z2,z22,x1,x12,
bz1,bz11,bx1,bx11,
}
@ -532,7 +544,6 @@ minetest.register_node("fences:fence_wood_13", { --right(2)+top(11)=13
end
})
minetest.register_alias("default:fence_wood", "fences:fence")
minetest.register_craft({
output = 'fences:fence_wood 2',
@ -579,13 +590,11 @@ end
minetest.register_node("fences:fencegate_open", {
tiles = {"default_wood.png"},
inventory_image = "default_fence.png",
wield_image = "default_fence.png",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
walkable = true,
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,fences=1,not_in_inventory=1,mesecon_effector_on=1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, fences=1, not_in_inventory=1, mesecon_effector_on=1},
drop = 'fences:fencegate',
drawtype = "nodebox",
node_box = {
@ -604,7 +613,8 @@ minetest.register_node("fences:fencegate_open", {
selection_box = {
type = "fixed",
fixed = {
{-1/2, -1/2+5/16, -1/16, 1/2, 1/2, 1/16}, --gate
{-1/2, -1/2+5/16, -1/16, -1/2+2/16, 1/2, 1/2}, --links
{1/2, -1/2+5/16, -1/16, 1/2, 1/2, 1/2-2/16}, --rechts
}
},
--on_punch = function(pos, node, puncher)
@ -631,7 +641,7 @@ minetest.register_node("fences:fencegate", {
paramtype2 = "facedir",
sunlight_propagates = true,
walkable = true,
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,mesecon_effector_on=1,fences=1, mese = 1},
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, mesecon_effector_on=1, fences=1, mese = 1},
drop = 'fences:fencegate',
drawtype = "nodebox",
node_box = {
@ -645,7 +655,7 @@ minetest.register_node("fences:fencegate", {
{-2/16, -1/2+6/16, 1/16, -1/2, -1/2+9/16, -1/16}, --unten(quer) -z
{2/16, 1/2-4/16, -1/16, 1/2, 1/2-1/16, 1/16}, --oben(quer) z
{2/16, -1/2+6/16, -1/16, 1/2, -1/2+9/16, 1/16}, --unten(quer) z
p1,p2,p4,p5,
p1,p2,p4,p5,
bx1,bx11,bx2,bx21,
}
},
@ -675,16 +685,18 @@ minetest.register_node("fences:fencegate", {
end
})
minetest.register_craft({
output = 'fences:fence_wood 2',
recipe = {
{'default:stick', 'default:stick', 'default:stick'},
{'default:stick', 'default:stick', 'default:stick'},
}
})
if override_original == true then
minetest.register_abm({
nodenames = {"default:fence_wood"},
interval = 1.0,
chance = 1,
action = function(pos, node, active_object_count, active_object_count_wider)
local tmp_node3 = {name="fences:fence_wood"}
minetest.set_node(pos, tmp_node3)
minetest.punch_node(pos)
end
})
end
minetest.register_craft({
type = "fuel",
recipe = "fences:fence_wood",
burntime = 15,
})
minetest.register_alias("default:fence_wood", "fences:fence_wood")

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 512 B

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -361,6 +361,7 @@ if fire_enabled then
maxexptime = 6,
minsize = 2,
maxsize = 4,
texture = "item_smoke.png"
})
minetest.check_for_falling(p)
end

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -111,7 +111,7 @@ railcart:register_entity("railcart:cart_entity", {
local cart = self.cart or {}
if cart.id and name then
local formspec = "size[8,9]"..
default.gui_bg..default.gui_bg_img..default.gui_slots..
--default.gui_bg..default.gui_bg_img..default.gui_slots..
"list[detached:railcart_"..cart.id..";main;0,0.3;8,4;]"..
"list[current_player;main;0,4.85;8,1;]"..
"list[current_player;main;0,6.08;8,3;8]"..

View File

@ -3,9 +3,9 @@ sfinv = {
pages_unordered = {},
contexts = {},
enabled = true,
gui_bg = "bgcolor[#080808BB;true]",
gui_bg = "bgcolor[#08080880;true]",
gui_bg_img = "",
gui_slots = "listcolors[#9990;#FFF7;#FFF0;#160816;#D4D2FF]",
gui_slots = "",
}
function sfinv.register_page(name, def)
@ -41,7 +41,7 @@ function sfinv.get_nav_fs(player, context, nav, current_idx)
return ""
end
local theme_main = "bgcolor[#080808BB;true]" .. sfinv.gui_bg ..
local theme_main = sfinv.gui_bg ..
sfinv.gui_bg_img
local theme_inv = sfinv.gui_slots .. [[

View File

@ -83,7 +83,7 @@ local function check_text(pos, wall)
end
if not found then
local p2 = minetest.get_node(pos).param2
if not p2 then return end
if not p2 or p2 > 3 or p2 < 0 then return end
if wall then
local obj = minetest.add_entity(vector.add(pos,
signs.wall_sign_positions[p2][1]), "signs:sign_text")

Binary file not shown.

Before

Width:  |  Height:  |  Size: 286 B

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 B

After

Width:  |  Height:  |  Size: 285 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 289 B

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 288 B

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 283 B

After

Width:  |  Height:  |  Size: 280 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 271 B

After

Width:  |  Height:  |  Size: 275 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 283 B

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 289 B

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 288 B

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 577 B

After

Width:  |  Height:  |  Size: 180 B

BIN
textures/base/search.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 B