1
0
mirror of https://github.com/sys4-fr/server-nalc.git synced 2024-11-15 23:10:31 +01:00

Reverted moreblocks and maptools updates

This commit is contained in:
LeMagnesium 2015-01-15 21:06:57 +01:00
parent c430709474
commit 195e9ccee5
103 changed files with 756 additions and 1624 deletions

View File

@ -1,9 +1,8 @@
zlib license +---- zlib/libpng license ----+
============
Copyright (c) 2012-2015 Calinou and contributors Copyright (c) 2013 Calinou
**This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.** This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

View File

@ -1,45 +0,0 @@
Item names for spawning the items using /give or /giveme
========================================================
Items
-----
* `admin_pick:` magenta pickaxe, infinite durability, mines everything including unbreakable blocks instantly. No drops. Don't put this pickaxe in the hands of a griefer, of course.
* `admin_pick_with_drops:` same as admin pickaxe, but drops stuff.
* `infinite_fuel:` fuel lasting for a (near)-infinite time. Don't worry about the "near" * it lasts for about 50 in-real-life years.
* `super_apple:` a yellow apple which heals 20 HP.
* `copper_coin,`
* `silver_coin,`
* `gold_coin:` these have nothing to do with the More Ores mod; they can be used as a currency for trading, or as an universal currency for mods that add shops.
Blocks
------
**[!]** denotes an unpointable, unbreakable block; be very careful with them, they cannot be removed by hand (they can only be removed with WorldEdit or similar).
* `(block)_u` : unbreakable, non-flammable, non-falling, non-decaying blocks, most common blocks have their unbreakable form (examples: maptools:stone or maptools:wood for unbreakable stone/wood). Examples: `stone_u`, `wood_u`, `glass_u`, …
* `full_grass:` unbreakable block with the grass texture on all sides.
* `player_clip:` **[!]** invisible block, not pointable.
* `full_clip:` invisible block, pointable. Also available as a thin face: full_clip_face.
* `smoke_block:` some smoke (does not harm players or entities).
* `no_build:` **[!]** very basic building prevention.
* `no_interact:` prevents interacting through the block (opening chests, furnaces, attacking entities, …).
* `damage_(1…5):` **[!]** damaging blocks. The damage is in half hearts and ranges from 1 to 5 (0.5 to 2.5 hearts damage every second).
* `kill:` **[!]** instant kill (deals 10 heart damage) blocks.
* `light_block:` **[!]** invisible non-solid block, prevents light from passing through.
* `light_bulb:` **[!]** invisible non-solid block, emitting a good amount of light.

View File

@ -1,11 +0,0 @@
Map Tools
=========
Map Tools for Minetest <http://minetest.net>, a free/libre infinite
world block sandbox game.
To install, just clone this repository into your "mods" directory.
Map Tools code is licensed under the zlib license, textures are by Calinou and are licensed under CC BY-SA 3.0 Unported.
**Forum topic:** <https://forum.minetest.net/viewtopic.php?f=11&t=1882>

22
mods/maptools/README.txt Normal file
View File

@ -0,0 +1,22 @@
Calinou's Minetest Mods
=====================
Calinou's Mods for Minetest [http://minetest.net], a free and opensource Minecraft-like game.
This Git repository is mostly made for servers; it allows easy updating.
To install, just clone this repository somewhere, then copy the "calinou_mods" folder in the "mods/minetest" folder of Minetest's installation folder.
Misc stuff
=====================
All these mods' source codes, except More Ores are under the zlib/libpng license. More Ores is under the GNU GPLv3; the mods' textures are under the CC BY-SA 3.0 Unported.
Mods' forum threads:
More Blocks: http://minetest.net/forum/viewtopic.php?id=509
More Ores: http://minetest.net/forum/viewtopic.php?id=549
Map Tools: http://minetest.net/forum/viewtopic.php?id=1882
Doors+: http://minetest.net/forum/viewtopic.php?id=2059
Stairs+: http://minetest.net/forum/viewtopic.php?id=2092

53
mods/maptools/_README.txt Normal file
View File

@ -0,0 +1,53 @@
*** Item names for spawning the items using /give or /giveme ***
Items:
- admin_pick
Purple pickaxe, infinite durability, mines everything including unbreakable blocks instantly. Don't put this pickaxe in the hands of a griefer, of course. :)
- infinitefuel
Fuel lasting for a (near)-infinite time. Don't worry about the "near" - it lasts for about 50 in-real-life years.
- superapple
An apple which heals all 10 hearts.
- copper_coin
- silver_coin
- gold_coin
These have nothing to do with the More Ores mod; they can be used as a currency for trading, or as an universal currency for mods that add shops.
Blocks:
A /!\ denotes an unpointable, unbreakable block; be very careful with them, they cannot be removed by hand (they can only be removed with WorldEdit).
- (insert block name here)_u -- example: stone_u
Unbreakable, non-flammable, non-falling, non-decaying blocks, most common blocks have their unbreakable form (examples: maptools:stone or maptools:wood for unbreakable stone/wood).
- fullgrass
Unbrakable block with the "grass" texture on all sides.
- playerclip
/!\ Invisible block, not pointable.
- fullclip
Invisible block, pointable.
- smoke_block
Some smoke (does not harm players or entities).
- nobuild
/!\ Very basic building prevention.
- nointeract
Prevents interacting through the block (interacting as in opening chests, furnaces, attacking entities...).
- damage_(insert damage in half hearts here)
/!\ Damaging blocks. The damage is in half hearts and ranges from 1 to 5 (0.5 to 2.5 hearts damage every second).
- killblock
/!\ Instant kill (deals 10 heart damage) blocks.
- lightblock
/!\ Invisible non-solid block, prevents light from passing through.
- lightbulb
/!\ Invisible non-solid block, emitting a good amount of light.

View File

@ -1,9 +1,4 @@
--[[ -- Aliases
Map Tools: alias definitions
Copyright (c) 2012-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
minetest.register_alias("adminpick", "maptools:pick_admin") minetest.register_alias("adminpick", "maptools:pick_admin")
minetest.register_alias("adminpickaxe", "maptools:pick_admin") minetest.register_alias("adminpickaxe", "maptools:pick_admin")
@ -74,6 +69,8 @@ minetest.register_alias("fake_fire", "maptools:fake_fire")
minetest.register_alias("ffire", "maptools:fake_fire") minetest.register_alias("ffire", "maptools:fake_fire")
minetest.register_alias("igniter", "maptools:igniter") minetest.register_alias("igniter", "maptools:igniter")
-- Unbreakable block aliases
minetest.register_alias("stone_u", "maptools:stone") minetest.register_alias("stone_u", "maptools:stone")
minetest.register_alias("tree_u", "maptools:tree") minetest.register_alias("tree_u", "maptools:tree")
minetest.register_alias("cobble_u", "maptools:cobble") minetest.register_alias("cobble_u", "maptools:cobble")

View File

@ -1,29 +0,0 @@
--[[
Map Tools: configuration handling
Copyright (c) 2012-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
maptools.config = {}
local function getbool_default(setting, default)
local value = minetest.setting_getbool(setting)
if value == nil then
value = default
end
return value
end
local function setting(settingtype, name, default)
if settingtype == "bool" then
maptools.config[name] =
getbool_default("maptools." .. name, default)
else
maptools.config[name] =
minetest.setting_get("maptools." .. name) or default
end
end
-- Show Map Tools stuff in creative inventory (1 or 0):
setting("integer", "hide_from_creative_inventory", 1)

View File

@ -1,47 +0,0 @@
--[[
Map Tools: item definitions
Copyright (c) 2012-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local S = maptools.intllib
maptools.creative = maptools.config["hide_from_creative_inventory"]
minetest.register_craftitem("maptools:copper_coin", {
description = S("Copper Coin"),
inventory_image = "maptools_copper_coin.png",
wield_scale = {x = 0.5, y = 0.5, z = 0.25},
stack_max = 10000,
groups = {not_in_creative_inventory = maptools.creative},
})
minetest.register_craftitem("maptools:silver_coin", {
description = S("Silver Coin"),
inventory_image = "maptools_silver_coin.png",
wield_scale = {x = 0.5, y = 0.5, z = 0.25},
stack_max = 10000,
groups = {not_in_creative_inventory = maptools.creative},
})
minetest.register_craftitem("maptools:gold_coin", {
description = S("Gold Coin"),
inventory_image = "maptools_gold_coin.png",
wield_scale = {x = 0.5, y = 0.5, z = 0.25},
stack_max = 10000,
groups = {not_in_creative_inventory = maptools.creative},
})
minetest.register_craftitem("maptools:infinitefuel", {
description = S("Infinite Fuel"),
inventory_image = "maptools_infinitefuel.png",
stack_max = 10000,
groups = {not_in_creative_inventory = maptools.creative},
})
minetest.register_craft({
type = "fuel",
recipe = "maptools:infinitefuel",
burntime = 1000000000,
})

View File

@ -1,13 +1,10 @@
--[[ local S
Map Tools: unbreakable default nodes if (minetest.get_modpath("intllib")) then
dofile(minetest.get_modpath("intllib").."/intllib.lua")
Copyright (c) 2012-2015 Calinou and contributors. S = intllib.Getter(minetest.get_current_modname())
Licensed under the zlib license. See LICENSE.md for more information. else
--]] S = function ( s ) return s end
end
local S = maptools.intllib
maptools.creative = maptools.config["hide_from_creative_inventory"]
minetest.register_node("maptools:stone", { minetest.register_node("maptools:stone", {
description = S("Unbreakable Stone"), description = S("Unbreakable Stone"),
@ -15,7 +12,7 @@ minetest.register_node("maptools:stone", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_stone.png"}, tiles = {"default_stone.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -25,7 +22,7 @@ minetest.register_node("maptools:stonebrick", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_stone_brick.png"}, tiles = {"default_stone_brick.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -35,7 +32,7 @@ minetest.register_node("maptools:tree", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"}, tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
on_place = minetest.rotate_node on_place = minetest.rotate_node
}) })
@ -46,7 +43,7 @@ minetest.register_node("maptools:jungletree", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_jungletree_top.png", "default_jungletree_top.png", "default_jungletree.png"}, tiles = {"default_jungletree_top.png", "default_jungletree_top.png", "default_jungletree.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
on_place = minetest.rotate_node on_place = minetest.rotate_node
}) })
@ -57,7 +54,7 @@ minetest.register_node("maptools:cactus", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_side.png"}, tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_side.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
on_place = minetest.rotate_node on_place = minetest.rotate_node
}) })
@ -78,7 +75,7 @@ minetest.register_node("maptools:papyrus", {
type = "fixed", type = "fixed",
fixed = {-0.375, -0.5, -0.375, 0.375, 0.5, 0.375} fixed = {-0.375, -0.5, -0.375, 0.375, 0.5, 0.375}
}, },
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_leaves_defaults(), sounds = default.node_sound_leaves_defaults(),
}) })
@ -88,7 +85,7 @@ minetest.register_node("maptools:dirt", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_dirt.png"}, tiles = {"default_dirt.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_dirt_defaults(), sounds = default.node_sound_dirt_defaults(),
}) })
@ -98,7 +95,7 @@ minetest.register_node("maptools:wood", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_wood.png"}, tiles = {"default_wood.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
}) })
@ -108,7 +105,7 @@ minetest.register_node("maptools:junglewood", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_junglewood.png"}, tiles = {"default_junglewood.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
}) })
@ -121,7 +118,7 @@ minetest.register_node("maptools:glass", {
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_glass_defaults(), sounds = default.node_sound_glass_defaults(),
}) })
@ -133,7 +130,7 @@ minetest.register_node("maptools:leaves", {
tiles = {"default_leaves.png"}, tiles = {"default_leaves.png"},
paramtype = "light", paramtype = "light",
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_leaves_defaults(), sounds = default.node_sound_leaves_defaults(),
}) })
@ -143,7 +140,7 @@ minetest.register_node("maptools:sand", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_sand.png"}, tiles = {"default_sand.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_sand_defaults(), sounds = default.node_sound_sand_defaults(),
}) })
@ -153,7 +150,7 @@ minetest.register_node("maptools:gravel", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_gravel.png"}, tiles = {"default_gravel.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_dirt_defaults({ sounds = default.node_sound_dirt_defaults({
footstep = {name="default_gravel_footstep", gain=0.35}, footstep = {name="default_gravel_footstep", gain=0.35},
dug = {name="default_gravel_footstep", gain=0.6}, dug = {name="default_gravel_footstep", gain=0.6},
@ -166,7 +163,7 @@ minetest.register_node("maptools:clay", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_clay.png"}, tiles = {"default_clay.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_dirt_defaults(), sounds = default.node_sound_dirt_defaults(),
}) })
@ -176,7 +173,7 @@ minetest.register_node("maptools:desert_sand", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_desert_sand.png"}, tiles = {"default_desert_sand.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_sand_defaults(), sounds = default.node_sound_sand_defaults(),
}) })
@ -186,7 +183,7 @@ minetest.register_node("maptools:sandstone", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_sandstone.png"}, tiles = {"default_sandstone.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -196,7 +193,7 @@ minetest.register_node("maptools:sandstone_brick", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_sandstone_brick.png"}, tiles = {"default_sandstone_brick.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -206,7 +203,7 @@ minetest.register_node("maptools:desert_stone", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_desert_stone.png"}, tiles = {"default_desert_stone.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -216,7 +213,7 @@ minetest.register_node("maptools:desert_cobble", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_desert_cobble.png"}, tiles = {"default_desert_cobble.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -226,7 +223,7 @@ minetest.register_node("maptools:desert_stonebrick", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_desert_stone_brick.png"}, tiles = {"default_desert_stone_brick.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -237,7 +234,7 @@ minetest.register_node("maptools:grass", {
tiles = {"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"}, tiles = {"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"},
paramtype2 = "facedir", paramtype2 = "facedir",
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_dirt_defaults({ sounds = default.node_sound_dirt_defaults({
footstep = {name="default_grass_footstep", gain = 0.4}, footstep = {name="default_grass_footstep", gain = 0.4},
}), }),
@ -249,7 +246,7 @@ minetest.register_node("maptools:fullgrass", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_grass.png"}, tiles = {"default_grass.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_dirt_defaults({ sounds = default.node_sound_dirt_defaults({
footstep = {name="default_grass_footstep", gain=0.4}, footstep = {name="default_grass_footstep", gain=0.4},
}), }),
@ -270,7 +267,7 @@ for slab_num = 1,3,1 do
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain = 0.4}}), sounds = default.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain = 0.4}}),
}) })
end end
@ -281,7 +278,7 @@ minetest.register_node("maptools:cobble", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_cobble.png"}, tiles = {"default_cobble.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -291,7 +288,7 @@ minetest.register_node("maptools:mossycobble", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_mossycobble.png"}, tiles = {"default_mossycobble.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -301,7 +298,7 @@ minetest.register_node("maptools:brick", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_brick.png"}, tiles = {"default_brick.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -311,7 +308,7 @@ minetest.register_node("maptools:coalblock", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_coal_block.png"}, tiles = {"default_coal_block.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -322,7 +319,7 @@ minetest.register_node("maptools:steelblock", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_steel_block.png"}, tiles = {"default_steel_block.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -332,7 +329,7 @@ minetest.register_node("maptools:goldblock", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_gold_block.png"}, tiles = {"default_gold_block.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -342,7 +339,7 @@ minetest.register_node("maptools:copperblock", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_copper_block.png"}, tiles = {"default_copper_block.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -352,7 +349,7 @@ minetest.register_node("maptools:bronzeblock", {
stack_max = 10000, stack_max = 10000,
tiles = {"default_bronze_block.png"}, tiles = {"default_bronze_block.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -360,9 +357,9 @@ minetest.register_node("maptools:diamondblock", {
description = S("Unbreakable Diamond Block"), description = S("Unbreakable Diamond Block"),
range = 12, range = 12,
stack_max = 10000, stack_max = 10000,
tiles = {"default_steel_block.png"}, tiles = {"default_diamond_block.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
@ -374,7 +371,7 @@ minetest.register_node("maptools:soil_wet", {
stack_max = 10000, stack_max = 10000,
tiles = {"farming_soil_wet.png", "farming_soil_wet_side.png"}, tiles = {"farming_soil_wet.png", "farming_soil_wet_side.png"},
drop = "", drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative, soil = 3, wet = 1, grassland = 1}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative, soil = 3, wet = 1, grassland = 1},
sounds = default.node_sound_dirt_defaults(), sounds = default.node_sound_dirt_defaults(),
}) })
@ -384,6 +381,6 @@ minetest.register_node("maptools:desert_sand_soil_wet", {
stack_max = 10000, stack_max = 10000,
drop = "", drop = "",
tiles = {"farming_desert_sand_soil_wet.png", "farming_desert_sand_soil_wet_side.png"}, tiles = {"farming_desert_sand_soil_wet.png", "farming_desert_sand_soil_wet_side.png"},
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative, soil = 3, wet = 1, desert = 1}, groups = {unbreakable = 1, not_in_creative_inventory = maptools_creative, soil = 3, wet = 1, desert = 1},
sounds = default.node_sound_sand_defaults(), sounds = default.node_sound_sand_defaults(),
}) })

View File

@ -1,32 +1,551 @@
--[[ MAPTOOLS_CREATIVE = 1 -- Set this to 0 if you want Map Tools nodes and items to appear in the creative inventory.
=====================================================================
** Map Tools **
By Calinou.
Copyright (c) 2012-2015 Calinou and contributors. -- Load translation library if intllib is installed
Licensed under the zlib license. See LICENSE.md for more information.
=====================================================================
--]]
maptools = {}
local S local S
if minetest.get_modpath("intllib") then if (minetest.get_modpath("intllib")) then
S = intllib.Getter() dofile(minetest.get_modpath("intllib").."/intllib.lua")
else S = intllib.Getter(minetest.get_current_modname())
S = function(s) return s end else
S = function ( s ) return s end
end end
maptools.intllib = S
local modpath = minetest.get_modpath("maptools") dofile(minetest.get_modpath("maptools").."/aliases.lua")
dofile(minetest.get_modpath("maptools").."/default_nodes.lua")
dofile(modpath .. "/config.lua") --[[
dofile(modpath .. "/aliases.lua") Map Tools by Calinou
dofile(modpath .. "/craftitems.lua") Licensed under the zlib license for code and CC BY-SA 3.0 for textures, see LICENSE.txt for info.
dofile(modpath .. "/default_nodes.lua") --]]
dofile(modpath .. "/nodes.lua")
dofile(modpath .. "/tools.lua") -- Redefine cloud so that the admin pickaxe can mine it.
minetest.register_node(":default:cloud", {
description = S("Cloud"),
tiles = {"default_cloud.png"},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
sounds = default.node_sound_defaults(),
})
-- Items
minetest.register_craft({
type = "fuel",
recipe = "maptools:infinitefuel",
burntime = 1000000000,
})
-- Nodes
minetest.register_node("maptools:black", {
description = S("Black"),
range = 12,
stack_max = 10000,
tiles = {"black.png"},
drop = "",
post_effect_color = {a=255, r=0, g=0, b=0},
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("maptools:white", {
description = S("White"),
range = 12,
stack_max = 10000,
tiles = {"white.png"},
drop = "",
post_effect_color = {a=255, r=128, g=128, b=128},
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("maptools:playerclip", {
description = S("Player Clip"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_green.png",
drawtype = "airlike",
paramtype = "light",
pointable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:fake_walkable", {
description = S("Player Clip"),
drawtype = "nodebox",
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_green.png",
drawtype = "airlike",
paramtype = "light",
pointable = false,
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{0, 0, 0, 0, 0, 0},
},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:fullclip", {
description = S("Full Clip"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_blue.png",
drawtype = "airlike",
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:fake_walkable_pointable", {
description = S("Player Clip"),
drawtype = "nodebox",
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_green.png",
drawtype = "airlike",
paramtype = "light",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{0, 0, 0, 0, 0, 0},
},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:ignore_like", {
description = S("Ignore-like"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_pink.png",
tiles = {"invisible.png"},
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:ignore_like_no_clip", {
description = S("Ignore-like (no clip)"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_purple.png",
tiles = {"invisible.png"},
paramtype = "light",
walkable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:ignore_like_no_point", {
description = S("Ignore-like (no point)"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_purple.png",
tiles = {"invisible.png"},
paramtype = "light",
pointable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:ignore_like_no_clip_no_point", {
description = S("Ignore-like (no clip, no point)"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_pink.png",
tiles = {"invisible.png"},
paramtype = "light",
walkable = false,
pointable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:fullclip_face", {
description = S("Full Clip Face"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_white.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.4999, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE, fall_damage_add_percent=-100},
})
minetest.register_node("maptools:playerclip_bottom", {
description = S("Player Clip Bottom Face"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_orange.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
pointable = false,
paramtype = "light",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.4999, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE, fall_damage_add_percent=-100},
})
minetest.register_node("maptools:playerclip_top", {
description = S("Player Clip Top Face"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_yellow.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
pointable = false,
paramtype = "light",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, 0.4999, -0.5, 0.5, 0.5, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE, fall_damage_add_percent=-100},
})
for pusher_num=1,10,1 do
minetest.register_node("maptools:pusher_" .. pusher_num, {
description = S("Pusher (%s)"):format(pusher_num),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_apple.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.4999, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE, fall_damage_add_percent=-100, bouncy=pusher_num*100},
})
end
minetest.register_node("maptools:lightbulb", {
description = S("Light Bulb"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_mese_crystal_fragment.png",
drawtype = "airlike",
walkable = false,
pointable = false,
light_source = 15,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:nobuild", {
description = S("Build Prevention"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^bones_bones.png",
drawtype = "airlike",
walkable = false,
pointable = false,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:nointeract", {
description = S("Interact Prevention"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_scorched_stuff.png",
drawtype = "airlike",
walkable = false,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:climb", {
description = S("Climb Block"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_ladder.png",
drawtype = "airlike",
walkable = false,
climbable = true,
pointable = false,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
for damage_num=1,5,1 do
minetest.register_node("maptools:damage_" .. damage_num, {
description = S("Damaging Block (%s)"):format(damage_num),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^farming_cotton_" .. damage_num .. ".png",
drawtype = "airlike",
walkable = false,
pointable = false,
damage_per_second = damage_num,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
end
minetest.register_node("maptools:kill", {
description = S("Kill Block"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_black.png",
drawtype = "airlike",
walkable = false,
pointable = false,
damage_per_second = 20,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_node("maptools:smoke", {
description = S("Smoke Block"),
range = 12,
stack_max = 10000,
tiles = {"maptools_smoke.png"},
drawtype = "allfaces_optional",
walkable = false,
paramtype = "light",
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
post_effect_color = {a=192, r=96, g=96, b=96},
})
minetest.register_node("maptools:ladder", {
description = S("Fake Ladder"),
range = 12,
stack_max = 10000,
drawtype = "signlike",
tiles = {"default_ladder.png"},
inventory_image = "default_ladder.png",
wield_image = "default_ladder.png",
paramtype = "light",
paramtype2 = "wallmounted",
walkable = false,
sunlight_propagates = true,
selection_box = {
type = "wallmounted",
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
sounds = default.node_sound_wood_defaults(),
})
minetest.register_node("maptools:permanent_fire", {
description = S("Permanent Fire"),
range = 12,
stack_max = 10000,
drawtype = "plantlike",
paramtype = "light",
tiles = {{
name="fire_basic_flame_animated.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1},
}},
inventory_image = "fire_basic_flame.png",
light_source = 14,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
sunlight_propagates = true,
walkable = false,
damage_per_second = 4,
})
minetest.register_node("maptools:fake_fire", {
description = S("Fake Fire"),
range = 12,
stack_max = 10000,
drawtype = "plantlike",
paramtype = "light",
tiles = {{
name="fire_basic_flame_animated.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1},
}},
inventory_image = "fire_basic_flame.png",
light_source = 14,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
sunlight_propagates = true,
walkable = false,
})
minetest.register_node("maptools:igniter", {
drawtype = "airlike",
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^crosshair.png",
description = S("Igniter"),
paramtype = "light",
inventory_image = "fire_basic_flame.png",
drop = "",
groups = {igniter=2, unbreakable = 1, not_in_creative_inventory = MAPTOOLS_CREATIVE},
sunlight_propagates = true,
pointable = false,
walkable = false,
})
minetest.register_node("maptools:superapple", {
description = S("Super Apple"),
range = 12,
stack_max = 99,
drawtype = "nodebox",
visual_scale = 1.0,
tiles = {"maptools_super_apple_top.png","maptools_super_apple_bottom.png","maptools_super_apple_side.png"},
inventory_image = "maptools_superapple.png",
paramtype = "light",
sunlight_propagates = true,
walkable = false,
node_box = {
type = "fixed",
fixed = {
{-3/16, -7/16, -3/16, 3/16, 1/16, 3/16},
{-4/16, -6/16, -3/16, 4/16, 0, 3/16},
{-3/16, -6/16, -4/16, 3/16, 0, 4/16},
{-1/32, 1/16, -1/32, 1/32, 4/16, 1/32},
{-1/16, 1.6/16, 0, 1/16, 1.8/16, 1/16},
{-2/16, 1.4/16, 1/16, 1/16, 1.6/16, 2/16},
{-2/16, 1.2/16, 2/16, 0, 1.4/16, 3/16},
{-1.5/16, 1/16, .5/16, 0.5/16, 1.2/16, 2.5/16},
}
},
is_ground_content = true,
groups = {fleshy = 3, dig_immediate = 3, not_in_creative_inventory = 0, flammable = 2, leafdecay = 3, leafdecay_drop = 1},
on_use = minetest.item_eat(20),
sounds = default.node_sound_leaves_defaults(),
after_place_node = function(pos, placer, itemstack)
if placer:is_player() then
minetest.set_node(pos, {name = "maptools:superapple", param2= 1})
end
end,
})
-- Items
minetest.register_craftitem("maptools:copper_coin", {
description = S("Copper Coin"),
inventory_image = "maptools_copper_coin.png",
wield_scale = {x = 0.5, y = 0.5, z = 0.25},
stack_max = 10000,
groups = {not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_craftitem("maptools:silver_coin", {
description = S("Silver Coin"),
inventory_image = "maptools_silver_coin.png",
wield_scale = {x = 0.5, y = 0.5, z = 0.25},
stack_max = 10000,
groups = {not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_craftitem("maptools:gold_coin", {
description = S("Gold Coin"),
inventory_image = "maptools_gold_coin.png",
wield_scale = {x = 0.5, y = 0.5, z = 0.25},
stack_max = 10000,
groups = {not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
minetest.register_craftitem("maptools:infinitefuel", {
description = S("Infinite Fuel"),
inventory_image = "maptools_infinitefuel.png",
stack_max = 10000,
groups = {not_in_creative_inventory = MAPTOOLS_CREATIVE},
})
-- Tools
minetest.register_tool("maptools:pick_admin", {
description = S("Admin Pickaxe"),
range = 12,
inventory_image = "maptools_adminpick.png",
groups = {not_in_creative_inventory = MAPTOOLS_CREATIVE},
tool_capabilities = {
full_punch_interval = 0.1,
max_drop_level = 3,
groupcaps= {
unbreakable = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
fleshy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
choppy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
bendy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
cracky = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
crumbly = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
snappy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
},
damage_groups = {fleshy = 1000},
},
})
minetest.register_tool("maptools:pick_admin_with_drops", {
description = S("Admin Pickaxe with Drops"),
range = 12,
inventory_image = "maptools_adminpick_with_drops.png",
groups = {not_in_creative_inventory = MAPTOOLS_CREATIVE},
tool_capabilities = {
full_punch_interval = 0.35,
max_drop_level = 3,
groupcaps = {
unbreakable = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
fleshy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
choppy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
bendy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
cracky = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
crumbly = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
snappy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
},
damage_groups = {fleshy = 1000},
},
})
minetest.register_on_punchnode(function(pos, node, puncher)
if puncher:get_wielded_item():get_name() == "maptools:pick_admin"
and minetest.get_node(pos).name ~= "air" then
minetest.log("action", puncher:get_player_name() .. " digs " .. minetest.get_node(pos).name .. " at " .. minetest.pos_to_string(pos) .. " using an Admin Pickaxe.")
minetest.remove_node(pos) -- The node is removed directly, which means it even works on non-empty containers and group-less nodes.
nodeupdate(pos) -- Run node update actions like falling nodes.
end
end)
if minetest.setting_getbool("log_mods") then if minetest.setting_getbool("log_mods") then
minetest.log("action", S("[maptools] loaded.")) minetest.log("action", "Carbone: [maptools] loaded.")
end end

View File

@ -1,429 +0,0 @@
--[[
Map Tools: node definitions
Copyright (c) 2012-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local S = maptools.intllib
maptools.creative = maptools.config["hide_from_creative_inventory"]
-- Redefine cloud so that the admin pickaxe can mine it:
minetest.register_node(":default:cloud", {
description = S("Cloud"),
tiles = {"default_cloud.png"},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
sounds = default.node_sound_defaults(),
})
-- Nodes
-- =====
minetest.register_node("maptools:black", {
description = S("Black"),
range = 12,
stack_max = 10000,
tiles = {"black.png"},
drop = "",
post_effect_color = {a=255, r=0, g=0, b=0},
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("maptools:white", {
description = S("White"),
range = 12,
stack_max = 10000,
tiles = {"white.png"},
drop = "",
post_effect_color = {a=255, r=128, g=128, b=128},
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("maptools:playerclip", {
description = S("Player Clip"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_green.png",
drawtype = "airlike",
paramtype = "light",
pointable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:fake_walkable", {
description = S("Player Clip"),
drawtype = "nodebox",
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_green.png",
drawtype = "airlike",
paramtype = "light",
pointable = false,
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{0, 0, 0, 0, 0, 0},
},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:fullclip", {
description = S("Full Clip"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_blue.png",
drawtype = "airlike",
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:fake_walkable_pointable", {
description = S("Player Clip"),
drawtype = "nodebox",
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_green.png",
drawtype = "airlike",
paramtype = "light",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{0, 0, 0, 0, 0, 0},
},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:ignore_like", {
description = S("Ignore-like"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_pink.png",
tiles = {"invisible.png"},
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:ignore_like_no_clip", {
description = S("Ignore-like (no clip)"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_purple.png",
tiles = {"invisible.png"},
paramtype = "light",
walkable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:ignore_like_no_point", {
description = S("Ignore-like (no point)"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_purple.png",
tiles = {"invisible.png"},
paramtype = "light",
pointable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:ignore_like_no_clip_no_point", {
description = S("Ignore-like (no clip, no point)"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_pink.png",
tiles = {"invisible.png"},
paramtype = "light",
walkable = false,
pointable = false,
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:fullclip_face", {
description = S("Full Clip Face"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_white.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.4999, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative, fall_damage_add_percent=-100},
})
minetest.register_node("maptools:playerclip_bottom", {
description = S("Player Clip Bottom Face"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_orange.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
pointable = false,
paramtype = "light",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.4999, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative, fall_damage_add_percent=-100},
})
minetest.register_node("maptools:playerclip_top", {
description = S("Player Clip Top Face"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_yellow.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
pointable = false,
paramtype = "light",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, 0.4999, -0.5, 0.5, 0.5, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative, fall_damage_add_percent=-100},
})
for pusher_num=1,10,1 do
minetest.register_node("maptools:pusher_" .. pusher_num, {
description = S("Pusher (%s)"):format(pusher_num),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_apple.png",
drawtype = "nodebox",
tiles = {"invisible.png"},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.4999, 0.5},
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative, fall_damage_add_percent=-100, bouncy=pusher_num*100},
})
end
minetest.register_node("maptools:lightbulb", {
description = S("Light Bulb"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_mese_crystal_fragment.png",
drawtype = "airlike",
walkable = false,
pointable = false,
light_source = 15,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:nobuild", {
description = S("Build Prevention"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^bones_bones.png",
drawtype = "airlike",
walkable = false,
pointable = false,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:nointeract", {
description = S("Interact Prevention"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_scorched_stuff.png",
drawtype = "airlike",
walkable = false,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:climb", {
description = S("Climb Block"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^default_ladder.png",
drawtype = "airlike",
walkable = false,
climbable = true,
pointable = false,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
for damage_num=1,5,1 do
minetest.register_node("maptools:damage_" .. damage_num, {
description = S("Damaging Block (%s)"):format(damage_num),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^farming_cotton_" .. damage_num .. ".png",
drawtype = "airlike",
walkable = false,
pointable = false,
damage_per_second = damage_num,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
end
minetest.register_node("maptools:kill", {
description = S("Kill Block"),
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^dye_black.png",
drawtype = "airlike",
walkable = false,
pointable = false,
damage_per_second = 20,
paramtype = "light",
sunlight_propagates = true,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
})
minetest.register_node("maptools:smoke", {
description = S("Smoke Block"),
range = 12,
stack_max = 10000,
tiles = {"maptools_smoke.png"},
drawtype = "allfaces_optional",
walkable = false,
paramtype = "light",
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
post_effect_color = {a=192, r=96, g=96, b=96},
})
minetest.register_node("maptools:ladder", {
description = S("Fake Ladder"),
range = 12,
stack_max = 10000,
drawtype = "signlike",
tiles = {"default_ladder.png"},
inventory_image = "default_ladder.png",
wield_image = "default_ladder.png",
paramtype = "light",
paramtype2 = "wallmounted",
walkable = false,
sunlight_propagates = true,
selection_box = {
type = "wallmounted",
},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
sounds = default.node_sound_wood_defaults(),
})
minetest.register_node("maptools:permanent_fire", {
description = S("Permanent Fire"),
range = 12,
stack_max = 10000,
drawtype = "plantlike",
paramtype = "light",
tiles = {{
name="fire_basic_flame_animated.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1},
}},
inventory_image = "fire_basic_flame.png",
light_source = 14,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
sunlight_propagates = true,
walkable = false,
damage_per_second = 4,
})
minetest.register_node("maptools:fake_fire", {
description = S("Fake Fire"),
range = 12,
stack_max = 10000,
drawtype = "plantlike",
paramtype = "light",
tiles = {{
name="fire_basic_flame_animated.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1},
}},
inventory_image = "fire_basic_flame.png",
light_source = 14,
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = maptools.creative},
sunlight_propagates = true,
walkable = false,
})
minetest.register_node("maptools:igniter", {
drawtype = "airlike",
range = 12,
stack_max = 10000,
inventory_image = "default_steel_block.png^crosshair.png",
description = S("Igniter"),
paramtype = "light",
inventory_image = "fire_basic_flame.png",
drop = "",
groups = {igniter=2, unbreakable = 1, not_in_creative_inventory = maptools.creative},
sunlight_propagates = true,
pointable = false,
walkable = false,
})
minetest.register_node("maptools:superapple", {
description = S("Super Apple"),
range = 12,
stack_max = 10000,
drawtype = "plantlike",
visual_scale = 1.0,
tiles = {"maptools_superapple.png"},
inventory_image = "maptools_superapple.png",
paramtype = "light",
sunlight_propagates = true,
selection_box = {
type = "fixed",
fixed = {-0.2, -0.5, -0.2, 0.2, 0, 0.2}
},
walkable = false,
groups = {fleshy=3, dig_immediate=3, not_in_creative_inventory = maptools.creative},
on_use = minetest.item_eat(20),
sounds = default.node_sound_defaults(),
})

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 498 B

View File

@ -1,61 +0,0 @@
--[[
Map Tools: tool definitions
Copyright (c) 2012-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local S = maptools.intllib
maptools.creative = maptools.config["hide_from_creative_inventory"]
minetest.register_tool("maptools:pick_admin", {
description = S("Admin Pickaxe"),
range = 12,
inventory_image = "maptools_adminpick.png",
groups = {not_in_creative_inventory = maptools.creative},
tool_capabilities = {
full_punch_interval = 0.1,
max_drop_level = 3,
groupcaps= {
unbreakable = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
fleshy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
choppy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
bendy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
cracky = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
crumbly = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
snappy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
},
damage_groups = {fleshy = 1000},
},
})
minetest.register_tool("maptools:pick_admin_with_drops", {
description = S("Admin Pickaxe with Drops"),
range = 12,
inventory_image = "maptools_adminpick_with_drops.png",
groups = {not_in_creative_inventory = maptools.creative},
tool_capabilities = {
full_punch_interval = 0.35,
max_drop_level = 3,
groupcaps = {
unbreakable = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
fleshy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
choppy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
bendy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
cracky = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
crumbly = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
snappy = {times={[1] = 0, [2] = 0, [3] = 0}, uses = 0, maxlevel = 3},
},
damage_groups = {fleshy = 1000},
},
})
minetest.register_on_punchnode(function(pos, node, puncher)
if puncher:get_wielded_item():get_name() == "maptools:pick_admin"
and minetest.get_node(pos).name ~= "air" then
minetest.log("action", puncher:get_player_name() .. " digs " .. minetest.get_node(pos).name .. " at " .. minetest.pos_to_string(pos) .. " using an Admin Pickaxe.")
minetest.remove_node(pos) -- The node is removed directly, which means it even works on non-empty containers and group-less nodes.
nodeupdate(pos) -- Run node update actions like falling nodes.
end
end)

View File

@ -1,9 +1,8 @@
zlib license +---- zlib/libpng license ----+
============
Copyright (c) 2011-2015 Calinou and contributors Copyright (c) 2013-2014 Calinou and contributors
**This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.** This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

View File

@ -1,11 +0,0 @@
More Blocks
===========
More Blocks for Minetest <http://minetest.net>, a free/libre infinite
world block sandbox game.
To install, just clone this repository into your "mods" directory.
More Blocks code is licensed under the zlib license, textures are by Calinou and are licensed under CC BY-SA 3.0 Unported.
**Forum topic:** <https://forum.minetest.net/viewtopic.php?f=11&t=509>

12
mods/moreblocks/README.txt Executable file
View File

@ -0,0 +1,12 @@
More Blocks
==========
More Blocks for Minetest (http://minetest.net), a free and open source infinite
world block sandbox game.
To install, just clone this repository into your "mods" directory.
More Blocks code is under the zlib license, textures are under CC BY-SA 3.0 unported.
Forum topic: http://forum.minetest.net/viewtopic.php?id=509

21
mods/moreblocks/aliases.lua Normal file → Executable file
View File

@ -1,28 +1,24 @@
--[[ -- More Blocks aliases
More Blocks: alias definitions
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
-- More Blocks aliases:
minetest.register_alias("sweeper", "moreblocks:sweeper") minetest.register_alias("sweeper", "moreblocks:sweeper")
minetest.register_alias("circular_saw", "moreblocks:circular_saw") minetest.register_alias("circular_saw", "moreblocks:circular_saw")
minetest.register_alias("jungle_stick", "moreblocks:jungle_stick") minetest.register_alias("jungle_stick", "moreblocks:jungle_stick")
-- Old block/item replacement: -- Old block/item replacement
minetest.register_alias("moreblocks:oerkkiblock", "default:mossycobble") minetest.register_alias("moreblocks:oerkkiblock", "default:mossycobble")
minetest.register_alias("moreblocks:screwdriver", "screwdriver:screwdriver") minetest.register_alias("moreblocks:screwdriver", "screwdriver:screwdriver")
-- Node and item renaming: -- Node and item renaming
minetest.register_alias("moreblocks:stone_bricks", "default:stonebrick") minetest.register_alias("moreblocks:stone_bricks", "default:stonebrick")
minetest.register_alias("moreblocks:stonebrick", "default:stonebrick") minetest.register_alias("moreblocks:stonebrick", "default:stonebrick")
minetest.register_alias("moreblocks:junglewood", "default:junglewood") minetest.register_alias("moreblocks:junglewood", "default:junglewood")
minetest.register_alias("moreblocks:jungle_wood", "default:junglewood") minetest.register_alias("moreblocks:jungle_wood", "default:junglewood")
for _, t in pairs(circular_saw.names) do for _, t in pairs(circular_saw.names) do
minetest.register_alias("moreblocks:" .. t[1] .. "_jungle_wood" .. t[2], minetest.register_alias("moreblocks:" ..t[1].. "_jungle_wood" ..t[2],
"moreblocks:" .. t[1] .. "_junglewood" .. t[2]) "moreblocks:" ..t[1].. "_junglewood" ..t[2])
end end
minetest.register_alias("moreblocks:horizontaltree", "moreblocks:horizontal_tree") minetest.register_alias("moreblocks:horizontaltree", "moreblocks:horizontal_tree")
minetest.register_alias("moreblocks:horizontaljungletree", "moreblocks:horizontal_jungle_tree") minetest.register_alias("moreblocks:horizontaljungletree", "moreblocks:horizontal_jungle_tree")
@ -55,7 +51,8 @@ minetest.register_alias("moreblocks:junglestick", "moreblocks:jungle_stick")
minetest.register_alias("moreblocks:splitstonesquare","moreblocks:split_stone_tile") minetest.register_alias("moreblocks:splitstonesquare","moreblocks:split_stone_tile")
minetest.register_alias("moreblocks:allfacestree","moreblocks:all_faces_tree") minetest.register_alias("moreblocks:allfacestree","moreblocks:all_faces_tree")
-- ABM for horizontal trees (fix facedir): -- ABM for horizontal trees (fix facedir).
local horizontal_tree_convert_facedir = {7, 12, 9, 18} local horizontal_tree_convert_facedir = {7, 12, 9, 18}
minetest.register_abm({ minetest.register_abm({

10
mods/moreblocks/circular_saw.lua Normal file → Executable file
View File

@ -1,12 +1,4 @@
--[[ local S = moreblocks.gettext
More Blocks: circular saw
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local S = moreblocks.intllib
circular_saw = {} circular_saw = {}
circular_saw.known_stairs = setmetatable({}, { circular_saw.known_stairs = setmetatable({}, {

7
mods/moreblocks/config.lua Normal file → Executable file
View File

@ -1,10 +1,3 @@
--[[
More Blocks: configuration handling
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
moreblocks.config = {} moreblocks.config = {}
local function getbool_default(setting, default) local function getbool_default(setting, default)

7
mods/moreblocks/crafting.lua Normal file → Executable file
View File

@ -1,9 +1,4 @@
--[[ -- Crafting
More Blocks: crafting recipes
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
minetest.register_craft({ minetest.register_craft({
output = "default:stick", output = "default:stick",

0
mods/moreblocks/depends.txt Normal file → Executable file
View File

23
mods/moreblocks/init.lua Normal file → Executable file
View File

@ -1,22 +1,20 @@
--[[ --[[
===================================================================== -- More Blocks (moreblocks) by Calinou
** More Blocks ** -- Licensed under the zlib/ license for code and CC BY-SA 3.0 for textures, see LICENSE.txt for info.
By Calinou, with the help of ShadowNinja and VanessaE.
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
=====================================================================
--]] --]]
moreblocks = {} moreblocks = {}
local S -- Load translation library if intllib is installed
if minetest.get_modpath("intllib") then
S = intllib.Getter() local S -- Load translation library if intllib is installed:
if (minetest.get_modpath("intllib")) then
dofile(minetest.get_modpath("intllib").."/intllib.lua")
S = intllib.Getter(minetest.get_current_modname())
else else
S = function(s) return s end S = function(s) return s end
end end
moreblocks.intllib = S moreblocks.gettext = S
local modpath = minetest.get_modpath("moreblocks") local modpath = minetest.get_modpath("moreblocks")
@ -29,5 +27,6 @@ dofile(modpath .. "/crafting.lua")
dofile(modpath .. "/aliases.lua") dofile(modpath .. "/aliases.lua")
if minetest.setting_getbool("log_mods") then if minetest.setting_getbool("log_mods") then
minetest.log("action", S("[moreblocks] loaded.")) print(S("[moreblocks] loaded."))
end end

0
mods/moreblocks/locale/de.txt Normal file → Executable file
View File

0
mods/moreblocks/locale/es.txt Normal file → Executable file
View File

0
mods/moreblocks/locale/fr.txt Normal file → Executable file
View File

0
mods/moreblocks/locale/template.txt Normal file → Executable file
View File

View File

@ -1,21 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_slope_onetexture.blend'
# www.blender.org
mtllib slope_test_slope_onetexture.mtl
o Cube_Cube.002
v 0.500000 0.500000 0.500000
v -0.500000 0.500000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 -0.500000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
usemtl None
s off
f 1/1 2/2 3/3 4/4
f 4/3 3/4 5/1 6/2
f 2/1 5/3 3/4
f 1/2 4/3 6/4
f 2/1 1/2 6/3 5/4

View File

@ -1,23 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_slope_long_fronthalf_onetexture.blend'
# www.blender.org
mtllib slope_test_slope_long_fronthalf_onetexture.mtl
o Cube_Cube.002
v 0.500000 -0.000000 0.500000
v -0.500000 -0.000000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 -0.500000
vt 1.000000 0.500000
vt 0.000000 0.500000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000
usemtl None
s off
f 1/1 2/2 3/3 4/4
f 4/3 3/4 5/5 6/6
f 2/1 5/3 3/4
f 1/2 4/3 6/4
f 2/5 1/6 6/3 5/4

View File

@ -1,26 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_slope_long_backhalf_onetexture.blend'
# www.blender.org
mtllib slope_test_slope_long_backhalf_onetexture.mtl
o Cube
v -0.500000 -0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 0.500000 0.500000
v -0.500000 0.000000 -0.500000
v 0.500000 0.000000 -0.500000
v 0.500000 0.500000 0.500000
vt 1.000000 1.000000
vt 0.000000 0.500000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 0.500000
vt 0.000000 1.000000
usemtl None
s off
f 5/1 6/2 2/3 1/4
f 6/5 7/2 3/3 2/4
f 7/5 8/6 4/3 3/4
f 8/1 5/6 1/3 4/4
f 1/4 2/1 3/6 4/3
f 8/6 7/3 6/4 5/1

View File

@ -1,26 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_icorner_onetexture.blend'
# www.blender.org
o Cube_Cube.000
v 0.500000 0.500000 0.500000
v -0.500000 0.500000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 0.500000 -0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 -0.500000 -0.500000
v -0.500000 -0.500000 -0.500000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
s off
f 6/1 1/2 7/3 8/4
f 2/1 5/3 3/4
f 2/1 1/2 5/4
f 6/2 8/3 9/4
f 9/1 8/2 7/3 3/4
f 3/3 7/4 1/1 2/2
f 1/1 6/2 9/3
l 1 4
l 3 4

View File

@ -1,28 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_icorner_half_short_onetexture.blend'
# www.blender.org
mtllib slope_test_icorner_half_short_onetexture.mtl
o Cube_Cube.000
v 0.500000 -0.000000 0.500000
v -0.500000 -0.000000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.000000 -0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 -0.500000 -0.500000
v -0.500000 -0.500000 -0.500000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
usemtl None
s off
f 6/1 1/2 7/3 8/4
f 2/1 5/3 3/4
f 2/1 1/2 5/4
f 6/2 8/3 9/4
f 9/1 8/2 7/3 3/4
f 3/3 7/4 1/1 2/2
f 1/1 6/2 9/3
l 1 4
l 3 4

View File

@ -1,31 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_icorner_half_tall_onetexture.blend'
# www.blender.org
mtllib slope_test_icorner_half_tall_onetexture.mtl
o Cube_Cube.000
v 0.500000 0.500000 0.500000
v -0.500000 0.500000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 0.000000 -0.500000
v 0.500000 0.500000 -0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 -0.500000 -0.500000
v -0.500000 0.000000 -0.500000
v -0.500000 -0.500000 -0.500000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 0.500000
vt 0.000000 0.500000
usemtl None
s off
f 6/1 1/2 7/3 8/4
f 2/1 1/2 5/4
f 3/3 7/4 1/1 2/2
f 1/2 6/3 9/4
f 3/1 10/2 8/3 7/4
f 8/3 10/4 5/5 6/2
f 3/4 2/1 5/6 10/3
l 1 4
l 3 4

View File

@ -1,18 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_ocorner_onetexture.blend'
# www.blender.org
o Cube_Cube.002
v 0.500000 0.500000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 -0.500000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
s off
f 3/1 2/2 4/3 5/4
f 1/2 3/3 5/4
f 1/1 2/3 3/4
f 1/1 4/3 2/4
f 1/2 5/3 4/4

View File

@ -1,19 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_corner_pyramid_tall_2_onetexture.blend'
# www.blender.org
mtllib slope_test_corner_pyramid_tall_2_onetexture.mtl
o Cube
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 0.500000 0.500000
vt 1.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 0.000000 1.000000
vt 0.500000 1.000000
usemtl None
s off
f 4/1 1/2 3/3
f 2/3 4/4 3/2
f 3/2 1/3 2/4
f 1/3 4/5 2/2

View File

@ -1,20 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_corner_pyramid_short_2_onetexture.blend'
# www.blender.org
mtllib slope_test_corner_pyramid_short_2_onetexture.mtl
o Cube
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 0.000000 0.500000
vt 1.000000 0.500000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 0.000000 0.500000
vt 0.000000 1.000000
vt 0.500000 1.000000
usemtl None
s off
f 4/1 1/2 3/3
f 2/3 4/4 3/2
f 3/2 1/3 2/5
f 1/3 4/6 2/2

View File

@ -1,23 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_corner_pyramid_short_3_onetexture.blend'
# www.blender.org
mtllib slope_test_corner_pyramid_short_3_onetexture.mtl
o Cube_Cube.002
v -0.500000 -0.000000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 0.500000 0.500000
v 0.500000 -0.500000 -0.500000
v 0.500000 -0.000000 -0.500000
vt 0.000000 0.500000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 1.000000 0.500000
usemtl None
s off
f 1/1 2/2 3/3 4/4
f 4/5 3/2 5/3 6/6
f 2/5 5/3 3/4
f 1/2 4/3 6/4
f 2/3 1/6 6/1 5/2

View File

@ -1,22 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_corner_pyramid_short_1_onetexture.blend'
# www.blender.org
mtllib slope_test_corner_pyramid_short_1_onetexture.mtl
o Cube
v -0.500000 -0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 -0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 0.000000 0.500000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 0.500000
vt 0.000000 0.500000
usemtl None
s off
f 1/1 2/2 3/3 4/4
f 5/5 1/3 4/4
f 3/4 5/6 4/3
f 2/4 5/2 3/3
f 1/4 5/1 2/3

View File

@ -1,27 +0,0 @@
# Blender v2.69 (sub 0) OBJ File: 'slope_test_corner_pyramid_tall_3_onetexture.blend'
# www.blender.org
mtllib slope_test_corner_pyramid_tall_3_onetexture.mtl
o Cube_Cube.002
v -0.500000 -0.000000 0.500000
v -0.500000 -0.500000 0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 0.500000 0.500000
v 0.500000 -0.500000 -0.500000
v 0.500000 -0.000000 -0.500000
v -0.500000 -0.500000 -0.500000
v -0.500000 -0.000000 -0.500000
vt 0.000000 0.500000
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 1.000000 0.500000
usemtl None
s off
f 1/1 2/2 3/3 4/4
f 4/5 3/2 5/3 6/6
f 8/3 4/5 6/2
f 1/6 8/1 7/2 2/3
f 4/5 8/3 1/4
f 6/1 5/2 7/3 8/6
f 5/5 3/2 2/3 7/4

14
mods/moreblocks/nodes.lua Normal file → Executable file
View File

@ -1,11 +1,4 @@
--[[ local S = moreblocks.gettext
More Blocks: node definitions
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local S = moreblocks.intllib
local sound_wood = default.node_sound_wood_defaults() local sound_wood = default.node_sound_wood_defaults()
local sound_stone = default.node_sound_stone_defaults() local sound_stone = default.node_sound_stone_defaults()
@ -123,11 +116,6 @@ local nodes = {
groups = {cracky = 2}, groups = {cracky = 2},
sounds = sound_stone, sounds = sound_stone,
}, },
["cobble_compressed"] = {
description = S("Compressed Cobblestone"),
groups = {cracky = 1},
sounds = sound_stone,
},
["plankstone"] = { ["plankstone"] = {
description = S("Plankstone"), description = S("Plankstone"),
groups = {cracky = 3}, groups = {cracky = 3},

6
mods/moreblocks/ownership.lua Normal file → Executable file
View File

@ -1,9 +1,3 @@
--[[
More Blocks: ownership handling
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local S = moreblocks.gettext local S = moreblocks.gettext

12
mods/moreblocks/redefinitions.lua Normal file → Executable file
View File

@ -1,10 +1,3 @@
--[[
More Blocks: redefinitions of default stuff
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
-- Redefinitions of some default crafting recipes: -- Redefinitions of some default crafting recipes:
minetest.register_craft({ minetest.register_craft({
@ -78,11 +71,6 @@ minetest.override_item("default:papyrus", {
sunlight_propagates = true, sunlight_propagates = true,
}) })
minetest.override_item("default:fence_wood", {
paramtype = "light",
sunlight_propagates = true,
})
minetest.override_item("default:junglegrass", { minetest.override_item("default:junglegrass", {
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,

3
mods/moreblocks/stairsplus/API.md Normal file → Executable file
View File

@ -1,5 +1,6 @@
API documentation for Stairs+ API documentation for Stairs+
============================= ================================
- - - - - - - - - - - - - - - -
* `stairsplus:register_all(modname, subname, recipeitem, fields)` * `stairsplus:register_all(modname, subname, recipeitem, fields)`
Registers a stair, slab, panel, microblock, and any other types of Registers a stair, slab, panel, microblock, and any other types of

8
mods/moreblocks/stairsplus/aliases.lua Normal file → Executable file
View File

@ -1,9 +1,3 @@
--[[
More Blocks: alias definitions
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local function register_stairsplus_alias(modname, origname, newname) local function register_stairsplus_alias(modname, origname, newname)
minetest.register_alias(modname.. ":slab_" ..origname, "moreblocks:slab_" ..newname) minetest.register_alias(modname.. ":slab_" ..origname, "moreblocks:slab_" ..newname)
@ -39,14 +33,12 @@ end
register_stairsplus_alias("stairsplus", "stone", "stone") register_stairsplus_alias("stairsplus", "stone", "stone")
register_stairsplus_alias("stairsplus", "wood", "wood") register_stairsplus_alias("stairsplus", "wood", "wood")
register_stairsplus_alias("stairsplus", "pinewood", "pinewood")
register_stairsplus_alias("stairsplus", "cobble", "cobble") register_stairsplus_alias("stairsplus", "cobble", "cobble")
register_stairsplus_alias("stairsplus", "brick", "brick") register_stairsplus_alias("stairsplus", "brick", "brick")
register_stairsplus_alias("stairsplus", "sandstone", "sandstone") register_stairsplus_alias("stairsplus", "sandstone", "sandstone")
register_stairsplus_alias("stairsplus", "glass", "glass") register_stairsplus_alias("stairsplus", "glass", "glass")
register_stairsplus_alias("stairsplus", "tree", "tree") register_stairsplus_alias("stairsplus", "tree", "tree")
register_stairsplus_alias("stairsplus", "jungletree", "jungletree") register_stairsplus_alias("stairsplus", "jungletree", "jungletree")
register_stairsplus_alias("stairsplus", "pinetree", "pinetree")
register_stairsplus_alias("stairsplus", "desert_stone", "desert_stone") register_stairsplus_alias("stairsplus", "desert_stone", "desert_stone")
register_stairsplus_alias("stairsplus", "steelblock", "steelblock") register_stairsplus_alias("stairsplus", "steelblock", "steelblock")
register_stairsplus_alias("stairsplus", "mossycobble", "mossycobble") register_stairsplus_alias("stairsplus", "mossycobble", "mossycobble")

7
mods/moreblocks/stairsplus/conversion.lua Normal file → Executable file
View File

@ -1,10 +1,3 @@
--[[
More Blocks: conversion
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
-- Function to convert all stairs/slabs/etc nodes from -- Function to convert all stairs/slabs/etc nodes from
-- inverted, wall, etc to regular + 6d facedir -- inverted, wall, etc to regular + 6d facedir

19
mods/moreblocks/stairsplus/init.lua Normal file → Executable file
View File

@ -1,10 +1,3 @@
--[[
More Blocks: Stairs+
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
-- Nodes will be called <modname>:{stair,slab,panel,micro}_<subname> -- Nodes will be called <modname>:{stair,slab,panel,micro}_<subname>
local modpath = minetest.get_modpath("moreblocks").. "/stairsplus" local modpath = minetest.get_modpath("moreblocks").. "/stairsplus"
@ -25,7 +18,6 @@ function stairsplus:register_all(modname, subname, recipeitem, fields)
end end
self:register_stair(modname, subname, recipeitem, fields) self:register_stair(modname, subname, recipeitem, fields)
self:register_slab (modname, subname, recipeitem, fields) self:register_slab (modname, subname, recipeitem, fields)
self:register_slope(modname, subname, recipeitem, fields)
self:register_panel(modname, subname, recipeitem, fields) self:register_panel(modname, subname, recipeitem, fields)
self:register_micro(modname, subname, recipeitem, fields) self:register_micro(modname, subname, recipeitem, fields)
-- self:register_6dfacedir_conversion(modname, subname) -- Not needed as of Q3 2013, uncomment to fix old maps. -- self:register_6dfacedir_conversion(modname, subname) -- Not needed as of Q3 2013, uncomment to fix old maps.
@ -44,9 +36,8 @@ end
-- dofile(modpath.. "/aliases.lua") -- Not needed as of Q2 2013, uncomment to fix old maps. -- dofile(modpath.. "/aliases.lua") -- Not needed as of Q2 2013, uncomment to fix old maps.
-- dofile(modpath.. "/conversion.lua") -- Not needed as of Q2 2013, uncomment to fix old maps. -- dofile(modpath.. "/conversion.lua") -- Not needed as of Q2 2013, uncomment to fix old maps.
dofile(modpath .. "/stairs.lua") dofile(modpath.. "/stairs.lua")
dofile(modpath .. "/slabs.lua") dofile(modpath.. "/slabs.lua")
dofile(modpath .. "/slopes.lua") dofile(modpath.. "/panels.lua")
dofile(modpath .. "/panels.lua") dofile(modpath.. "/microblocks.lua")
dofile(modpath .. "/microblocks.lua") dofile(modpath.. "/registrations.lua")
dofile(modpath .. "/registrations.lua")

15
mods/moreblocks/stairsplus/microblocks.lua Normal file → Executable file
View File

@ -1,11 +1,10 @@
--[[ local S -- Load translation library if intllib is installed:
More Blocks: microblock definitions if (minetest.get_modpath("intllib")) then
dofile(minetest.get_modpath("intllib").."/intllib.lua")
Copyright (c) 2011-2015 Calinou and contributors. S = intllib.Getter(minetest.get_current_modname())
Licensed under the zlib license. See LICENSE.md for more information. else
--]] S = function(s) return s end
end
local S = moreblocks.intllib
-- Node will be called <modname>:micro_<subname> -- Node will be called <modname>:micro_<subname>

15
mods/moreblocks/stairsplus/panels.lua Normal file → Executable file
View File

@ -1,11 +1,10 @@
--[[ local S -- Load translation library if intllib is installed:
More Blocks: panel definitions if (minetest.get_modpath("intllib")) then
dofile(minetest.get_modpath("intllib").."/intllib.lua")
Copyright (c) 2011-2015 Calinou and contributors. S = intllib.Getter(minetest.get_current_modname())
Licensed under the zlib license. See LICENSE.md for more information. else
--]] S = function(s) return s end
end
local S = moreblocks.intllib
-- Node will be called <modname>:panel_<subname> -- Node will be called <modname>:panel_<subname>

11
mods/moreblocks/stairsplus/registrations.lua Normal file → Executable file
View File

@ -1,10 +1,3 @@
--[[
More Blocks: registrations
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local default_nodes = { -- Default stairs/slabs/panels/microblocks: local default_nodes = { -- Default stairs/slabs/panels/microblocks:
"stone", "stone",
"cobble", "cobble",
@ -17,14 +10,12 @@ local default_nodes = { -- Default stairs/slabs/panels/microblocks:
"bronzeblock", "bronzeblock",
"diamondblock", "diamondblock",
"desert_stone", "desert_stone",
"desert_cobble", -- "desert_cobble",
"glass", "glass",
"tree", "tree",
"wood", "wood",
"jungletree", "jungletree",
"junglewood", "junglewood",
"pinetree",
"pinewood",
"obsidian", "obsidian",
"obsidian_glass", "obsidian_glass",
"stonebrick", "stonebrick",

21
mods/moreblocks/stairsplus/slabs.lua Normal file → Executable file
View File

@ -1,11 +1,10 @@
--[[ local S -- Load translation library if intllib is installed:
More Blocks: slab definitions if (minetest.get_modpath("intllib")) then
dofile(minetest.get_modpath("intllib").."/intllib.lua")
Copyright (c) 2011-2015 Calinou and contributors. S = intllib.Getter(minetest.get_current_modname())
Licensed under the zlib license. See LICENSE.md for more information. else
--]] S = function(s) return s end
end
local S = moreblocks.intllib
-- Node will be called <modname>:slab_<subname> -- Node will be called <modname>:slab_<subname>
@ -76,11 +75,11 @@ function stairsplus:register_slab(modname, subname, recipeitem, fields)
end end
def.description = desc def.description = desc
if fields.drop then if fields.drop then
def.drop = modname.. ":slab_" .. fields.drop .. alternate def.drop = modname.. ":slab_" ..fields.drop..alternate
end end
minetest.register_node(":" .. modname .. ":slab_" .. subname .. alternate, def) minetest.register_node(":" ..modname.. ":slab_" ..subname..alternate, def)
end end
minetest.register_alias("stairs:slab_" .. subname, modname .. ":slab_" .. subname) minetest.register_alias("stairs:slab_" ..subname, modname.. ":slab_" ..subname)
-- Some saw-less recipes: -- Some saw-less recipes:

View File

@ -1,459 +0,0 @@
--[[
More Blocks: slope definitions
Copyright (c) 2011-2015 Calinou and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
local S = moreblocks.intllib
local box_slope = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.25, 0.5},
{-0.5, -0.25, -0.25, 0.5, 0, 0.5},
{-0.5, 0, 0, 0.5, 0.25, 0.5},
{-0.5, 0.25, 0.25, 0.5, 0.5, 0.5}
}
}
local box_slope_half = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.375, 0.5},
{-0.5, -0.375, -0.25, 0.5, -0.25, 0.5},
{-0.5, -0.25, 0, 0.5, -0.125, 0.5},
{-0.5, -0.125, 0.25, 0.5, 0, 0.5},
}
}
local box_slope_half_raised = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0.125, 0.5},
{-0.5, 0.125, -0.25, 0.5, 0.25, 0.5},
{-0.5, 0.25, 0, 0.5, 0.375, 0.5},
{-0.5, 0.375, 0.25, 0.5, 0.5, 0.5},
}
}
--==============================================================
local box_slope_inner = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.25, 0.5},
{-0.5, -0.5, -0.25, 0.5, 0, 0.5},
{-0.5, -0.5, -0.5, 0.25, 0, 0.5},
{-0.5, 0, -0.5, 0, 0.25, 0.5},
{-0.5, 0, 0, 0.5, 0.25, 0.5},
{-0.5, 0.25, 0.25, 0.5, 0.5, 0.5},
{-0.5, 0.25, -0.5, -0.25, 0.5, 0.5},
}
}
local box_slope_inner_half = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.375, 0.5},
{-0.5, -0.375, -0.25, 0.5, -0.25, 0.5},
{-0.5, -0.375, -0.5, 0.25, -0.25, 0.5},
{-0.5, -0.25, -0.5, 0, -0.125, 0.5},
{-0.5, -0.25, 0, 0.5, -0.125, 0.5},
{-0.5, -0.125, 0.25, 0.5, 0, 0.5},
{-0.5, -0.125, -0.5, -0.25, 0, 0.5},
}
}
local box_slope_inner_half_raised = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0.125, 0.5},
{-0.5, 0.125, -0.25, 0.5, 0.25, 0.5},
{-0.5, 0.125, -0.5, 0.25, 0.25, 0.5},
{-0.5, 0.25, -0.5, 0, 0.375, 0.5},
{-0.5, 0.25, 0, 0.5, 0.375, 0.5},
{-0.5, 0.375, 0.25, 0.5, 0.5, 0.5},
{-0.5, 0.375, -0.5, -0.25, 0.5, 0.5},
}
}
--==============================================================
local box_slope_outer = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.25, 0.5},
{-0.5, -0.25, -0.25, 0.25, 0, 0.5},
{-0.5, 0, 0, 0, 0.25, 0.5},
{-0.5, 0.25, 0.25, -0.25, 0.5, 0.5}
}
}
local box_slope_outer_half = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.375, 0.5},
{-0.5, -0.375, -0.25, 0.25, -0.25, 0.5},
{-0.5, -0.25, 0, 0, -0.125, 0.5},
{-0.5, -0.125, 0.25, -0.25, 0, 0.5}
}
}
local box_slope_outer_half_raised = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0.125, 0.5},
{-0.5, 0.125, -0.25, 0.25, 0.25, 0.5},
{-0.5, 0.25, 0, 0, 0.375, 0.5},
{-0.5, 0.375, 0.25, -0.25, 0.5, 0.5}
}
}
-- Node will be called <modname>:slope_<subname>
function register_slope(modname, subname, recipeitem, groups, images, description, drop, light)
return stairsplus:register_slope(modname, subname, recipeitem, {
groups = groups,
tiles = images,
description = description,
drop = drop,
light_source = light,
sounds = default.node_sound_stone_defaults(),
})
end
function stairsplus:register_slope(modname, subname, recipeitem, fields)
local defs = {
[""] = {
mesh = "moreblocks_slope.obj",
collision_box = box_slope,
selection_box = box_slope,
},
["_half"] = {
mesh = "moreblocks_slope_half.obj",
collision_box = box_slope_half,
selection_box = box_slope_half,
},
["_half_raised"] = {
mesh = "moreblocks_slope_half_raised.obj",
collision_box = box_slope_half_raised,
selection_box = box_slope_half_raised,
},
--==============================================================
["_inner"] = {
mesh = "moreblocks_slope_inner.obj",
collision_box = box_slope_inner,
selection_box = box_slope_inner,
},
["_inner_half"] = {
mesh = "moreblocks_slope_inner_half.obj",
collision_box = box_slope_inner_half,
selection_box = box_slope_inner_half,
},
["_inner_half_raised"] = {
mesh = "moreblocks_slope_inner_half_raised.obj",
collision_box = box_slope_inner_half_raised,
selection_box = box_slope_inner_half_raised,
},
--==============================================================
["_outer"] = {
mesh = "moreblocks_slope_outer.obj",
collision_box = box_slope_outer,
selection_box = box_slope_outer,
},
["_outer_half"] = {
mesh = "moreblocks_slope_outer_half.obj",
collision_box = box_slope_outer_half,
selection_box = box_slope_outer_half,
},
["_outer_half_raised"] = {
mesh = "moreblocks_slope_outer_half_raised.obj",
collision_box = box_slope_outer_half_raised,
selection_box = box_slope_outer_half_raised,
},
--==============================================================
["_outer_cut"] = {
mesh = "moreblocks_slope_outer_cut.obj",
collision_box = box_slope_outer,
selection_box = box_slope_outer,
},
["_outer_cut_half"] = {
mesh = "moreblocks_slope_outer_cut_half.obj",
collision_box = box_slope_outer_half,
selection_box = box_slope_outer_half,
},
["_outer_cut_half_raised"] = {
mesh = "moreblocks_slope_outer_cut_half_raised.obj",
collision_box = box_slope_outer_half_raised,
selection_box = box_slope_outer_half_raised,
},
}
local desc = S("%s Slope"):format(fields.description)
for alternate, def in pairs(defs) do
def.drawtype = "mesh"
def.paramtype = "light"
def.paramtype2 = "facedir"
def.on_place = minetest.rotate_node
for k, v in pairs(fields) do
def[k] = v
end
def.description = desc
if fields.drop then
def.drop = modname.. ":slope_" ..fields.drop..alternate
end
minetest.register_node(":" ..modname.. ":slope_" ..subname..alternate, def)
end
-- Some saw-less recipes:
minetest.register_craft({
output = modname .. ":slope_" .. subname .. " 7",
recipe = {
{modname .. ":panel_" .. subname, "", ""},
{recipeitem, modname .. ":panel_" .. subname, ""},
{recipeitem, recipeitem, modname .. ":panel_" .. subname},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. " 7",
recipe = {
{"", "", modname .. ":panel_" .. subname},
{"", modname .. ":panel_" .. subname, recipeitem},
{modname .. ":panel_" .. subname, recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_half 10",
recipe = {
{modname .. ":panel_" .. subname, "", ""},
{recipeitem, recipeitem, modname .. ":panel_" .. subname},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_half 10",
recipe = {
{"", "", modname .. ":panel_" .. subname},
{modname .. ":panel_" .. subname, recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_half_raised 7",
recipe = {
{modname .. ":panel_" .. subname, "", ""},
{recipeitem, recipeitem, modname .. ":panel_" .. subname},
{recipeitem, recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_half_raised 7",
recipe = {
{"", "", modname .. ":panel_" .. subname},
{modname .. ":panel_" .. subname, recipeitem, recipeitem},
{recipeitem, recipeitem, recipeitem},
},
})
--===================================================== Inner ==
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_inner 7",
recipe = {
{modname .. ":stair_" .. subname .. "_half", "", ""},
{recipeitem, modname .. ":stair_" .. subname .. "_half", ""},
{recipeitem, recipeitem, modname .. ":stair_" .. subname .. "_half"},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_inner 7",
recipe = {
{"", "", modname .. ":stair_" .. subname .. "_half"},
{"", modname .. ":stair_" .. subname .. "_half", recipeitem},
{modname .. ":stair_" .. subname .. "_half", recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_inner_half 10",
recipe = {
{modname .. ":stair_" .. subname .. "_half", "", ""},
{recipeitem, recipeitem, modname .. ":stair_" .. subname .. "_half"},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_inner_half 10",
recipe = {
{"", "", modname .. ":stair_" .. subname .. "_half"},
{modname .. ":stair_" .. subname .. "_half", recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_inner_half_raised 7",
recipe = {
{modname .. ":stair_" .. subname .. "_half", "", ""},
{recipeitem, recipeitem, modname .. ":stair_" .. subname .. "_half"},
{recipeitem, recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_inner_half_raised 7",
recipe = {
{"", "", modname .. ":stair_" .. subname .. "_half"},
{modname .. ":stair_" .. subname .. "_half", recipeitem, recipeitem},
{recipeitem, recipeitem, recipeitem},
},
})
--===================================================== Outer ==
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_outer 7",
recipe = {
{modname .. ":micro_" .. subname, "", ""},
{recipeitem, modname .. ":micro_" .. subname, ""},
{recipeitem, recipeitem, modname .. ":micro_" .. subname},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_outer 7",
recipe = {
{"", "", modname .. ":micro_" .. subname},
{"", modname .. ":micro_" .. subname, recipeitem},
{modname .. ":micro_" .. subname, recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_outer_half 10",
recipe = {
{modname .. ":micro_" .. subname, "", ""},
{recipeitem, recipeitem, modname .. ":micro_" .. subname},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_outer_half 10",
recipe = {
{"", "", modname .. ":micro_" .. subname},
{modname .. ":micro_" .. subname, recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_outer_half_raised 7",
recipe = {
{modname .. ":micro_" .. subname, "", ""},
{recipeitem, recipeitem, modname .. ":micro_" .. subname},
{recipeitem, recipeitem, recipeitem},
},
})
minetest.register_craft({
output = modname .. ":slope_" .. subname .. "_outer_half_raised 7",
recipe = {
{"", "", modname .. ":micro_" .. subname},
{modname .. ":micro_" .. subname, recipeitem, recipeitem},
{recipeitem, recipeitem, recipeitem},
},
})
--================================================= Shapeless ==
minetest.register_craft({
type = "shapeless",
output = recipeitem,
recipe = {modname .. ":slope_" .. subname, modname .. ":slope_" .. subname},
})
minetest.register_craft({
type = "shapeless",
output = recipeitem,
recipe = {modname .. ":slope_" .. subname .. "_outer_cut", modname .. ":slope_" .. subname .. "_outer_cut"},
})
minetest.register_craft({
type = "shapeless",
output = recipeitem,
recipe = {modname .. ":slope_" .. subname .. "_half", modname .. ":slope_" .. subname .. "_half_raised"},
})
minetest.register_craft({
type = "shapeless",
output = recipeitem,
recipe = {modname .. ":slope_" .. subname .. "_half", modname .. ":slope_" .. subname .. "_half",
modname .. ":slope_" .. subname .. "_half", modname .. ":slope_" .. subname .. "_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slab_" .. subname,
recipe = {modname .. ":slope_" .. subname .. "_half", modname .. ":slope_" .. subname .. "_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_half_raised",
recipe = {modname .. ":slope_" .. subname .. "_half", modname .. ":slope_" .. subname .. "_half",
modname .. ":slope_" .. subname .. "_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_half_raised",
recipe = {modname .. ":slab_" .. subname, modname .. ":slope_" .. subname .. "_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_inner_half_raised",
recipe = {modname .. ":slab_" .. subname, modname .. ":slope_" .. subname .. "_inner_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_outer_half_raised",
recipe = {modname .. ":slab_" .. subname, modname .. ":slope_" .. subname .. "_outer_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_outer_cut_half_raised",
recipe = {modname .. ":slab_" .. subname, modname .. ":slope_" .. subname .. "_outer_cut_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_outer_cut",
recipe = {modname .. ":slope_" .. subname .. "_outer"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_outer_cut_half",
recipe = {modname .. ":slope_" .. subname .. "_outer_half"},
})
minetest.register_craft({
type = "shapeless",
output = modname .. ":slope_" .. subname .. "_outer_cut_half_raised",
recipe = {modname .. ":slope_" .. subname .. "_outer_half_raised"},
})
end

21
mods/moreblocks/stairsplus/stairs.lua Normal file → Executable file
View File

@ -1,11 +1,10 @@
--[[ local S -- Load translation library if intllib is installed:
More Blocks: stair definitions if (minetest.get_modpath("intllib")) then
dofile(minetest.get_modpath("intllib").."/intllib.lua")
Copyright (c) 2011-2015 Calinou and contributors. S = intllib.Getter(minetest.get_current_modname())
Licensed under the zlib license. See LICENSE.md for more information. else
--]] S = function(s) return s end
end
local S = moreblocks.intllib
-- Node will be called <modname>:stair_<subname> -- Node will be called <modname>:stair_<subname>
@ -117,11 +116,11 @@ function stairsplus:register_stair(modname, subname, recipeitem, fields)
end end
def.description = desc def.description = desc
if fields.drop then if fields.drop then
def.drop = modname .. ":stair_" .. fields.drop .. alternate def.drop = modname.. ":stair_" ..fields.drop..alternate
end end
minetest.register_node(":" .. modname .. ":stair_" .. subname .. alternate, def) minetest.register_node(":" ..modname.. ":stair_" ..subname..alternate, def)
end end
minetest.register_alias("stairs:stair_" .. subname, modname .. ":stair_" .. subname) minetest.register_alias(":stairs:stair_" ..subname, modname.. ":stair_" ..subname)
-- Some saw-less recipes: -- Some saw-less recipes:

0
mods/moreblocks/textures/default_brick.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 716 B

After

Width:  |  Height:  |  Size: 716 B

0
mods/moreblocks/textures/default_fence_overlay.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 285 B

After

Width:  |  Height:  |  Size: 285 B

0
mods/moreblocks/textures/invisible.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 68 B

After

Width:  |  Height:  |  Size: 68 B

0
mods/moreblocks/textures/moreblocks_cactus_brick.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 718 B

After

Width:  |  Height:  |  Size: 718 B

0
mods/moreblocks/textures/moreblocks_cactus_checker.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 693 B

After

Width:  |  Height:  |  Size: 693 B

View File

Before

Width:  |  Height:  |  Size: 448 B

After

Width:  |  Height:  |  Size: 448 B

View File

Before

Width:  |  Height:  |  Size: 579 B

After

Width:  |  Height:  |  Size: 579 B

View File

Before

Width:  |  Height:  |  Size: 478 B

After

Width:  |  Height:  |  Size: 478 B

View File

Before

Width:  |  Height:  |  Size: 441 B

After

Width:  |  Height:  |  Size: 441 B

0
mods/moreblocks/textures/moreblocks_clean_glass.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 177 B

After

Width:  |  Height:  |  Size: 177 B

0
mods/moreblocks/textures/moreblocks_coal_checker.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 744 B

After

Width:  |  Height:  |  Size: 744 B

0
mods/moreblocks/textures/moreblocks_coal_glass.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 155 B

After

Width:  |  Height:  |  Size: 155 B

View File

Before

Width:  |  Height:  |  Size: 166 B

After

Width:  |  Height:  |  Size: 166 B

0
mods/moreblocks/textures/moreblocks_coal_stone.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 229 B

After

Width:  |  Height:  |  Size: 229 B

View File

Before

Width:  |  Height:  |  Size: 484 B

After

Width:  |  Height:  |  Size: 484 B

View File

Before

Width:  |  Height:  |  Size: 585 B

After

Width:  |  Height:  |  Size: 585 B

View File

Before

Width:  |  Height:  |  Size: 204 B

After

Width:  |  Height:  |  Size: 204 B

0
mods/moreblocks/textures/moreblocks_fence_wood.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 480 B

After

Width:  |  Height:  |  Size: 480 B

0
mods/moreblocks/textures/moreblocks_glass.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 210 B

After

Width:  |  Height:  |  Size: 210 B

View File

Before

Width:  |  Height:  |  Size: 215 B

After

Width:  |  Height:  |  Size: 215 B

0
mods/moreblocks/textures/moreblocks_glow_glass.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 157 B

After

Width:  |  Height:  |  Size: 157 B

View File

Before

Width:  |  Height:  |  Size: 169 B

After

Width:  |  Height:  |  Size: 169 B

0
mods/moreblocks/textures/moreblocks_grey_bricks.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 725 B

After

Width:  |  Height:  |  Size: 725 B

0
mods/moreblocks/textures/moreblocks_iron_checker.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 850 B

After

Width:  |  Height:  |  Size: 850 B

0
mods/moreblocks/textures/moreblocks_iron_glass.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 158 B

After

Width:  |  Height:  |  Size: 158 B

View File

Before

Width:  |  Height:  |  Size: 169 B

After

Width:  |  Height:  |  Size: 169 B

0
mods/moreblocks/textures/moreblocks_iron_stone.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 230 B

After

Width:  |  Height:  |  Size: 230 B

View File

Before

Width:  |  Height:  |  Size: 485 B

After

Width:  |  Height:  |  Size: 485 B

0
mods/moreblocks/textures/moreblocks_junglestick.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 122 B

After

Width:  |  Height:  |  Size: 122 B

View File

Before

Width:  |  Height:  |  Size: 144 B

After

Width:  |  Height:  |  Size: 144 B

0
mods/moreblocks/textures/moreblocks_plankstone.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 335 B

After

Width:  |  Height:  |  Size: 335 B

0
mods/moreblocks/textures/moreblocks_plankstone_2.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 354 B

After

Width:  |  Height:  |  Size: 354 B

0
mods/moreblocks/textures/moreblocks_rope.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 356 B

After

Width:  |  Height:  |  Size: 356 B

View File

Before

Width:  |  Height:  |  Size: 273 B

After

Width:  |  Height:  |  Size: 273 B

View File

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 306 B

View File

Before

Width:  |  Height:  |  Size: 279 B

After

Width:  |  Height:  |  Size: 279 B

0
mods/moreblocks/textures/moreblocks_stone_tile.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 271 B

After

Width:  |  Height:  |  Size: 271 B

View File

Before

Width:  |  Height:  |  Size: 154 B

After

Width:  |  Height:  |  Size: 154 B

View File

Before

Width:  |  Height:  |  Size: 171 B

After

Width:  |  Height:  |  Size: 171 B

0
mods/moreblocks/textures/moreblocks_sweeper.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 310 B

After

Width:  |  Height:  |  Size: 310 B

0
mods/moreblocks/textures/moreblocks_tar.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 270 B

After

Width:  |  Height:  |  Size: 270 B

0
mods/moreblocks/textures/moreblocks_trap_glass.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 170 B

After

Width:  |  Height:  |  Size: 170 B

View File

Before

Width:  |  Height:  |  Size: 170 B

After

Width:  |  Height:  |  Size: 170 B

0
mods/moreblocks/textures/moreblocks_trap_stone.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 333 B

After

Width:  |  Height:  |  Size: 333 B

View File

Before

Width:  |  Height:  |  Size: 170 B

After

Width:  |  Height:  |  Size: 170 B

View File

Before

Width:  |  Height:  |  Size: 311 B

After

Width:  |  Height:  |  Size: 311 B

0
mods/moreblocks/textures/moreblocks_wood_tile.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 396 B

After

Width:  |  Height:  |  Size: 396 B

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