Skip to content
Snippets Groups Projects
Commit 109e3e73 authored by Milan's avatar Milan
Browse files

overhaul all teh code! :tada:

parent e6b35042
No related branches found
No related tags found
No related merge requests found
......@@ -3,40 +3,10 @@
-- 05-01-2016
-- License: WTFPL
-- modified by tchncs for The World of Illuna
-- 10-09-2017
local materials = {
-- nodename description tiles sounds groups
{"stone", "Stone", "default_stone", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
{"stone_block", "Stone Block", "default_stone_block", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
{"cobble", "Cobble", "default_cobble", default.node_sound_stone_defaults(), {cracky=3, stone=2},},
{"stonebrick", "Stone Brick", "default_stone_brick", default.node_sound_stone_defaults(), {cracky=2, stone=1},},
{"mossycobble", "MossyCobble", "default_mossycobble", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
{"desert_stone", "Desert Stone", "default_desert_stone", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
{"desert_stone", "Desert Stone", "default_desert_stone", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
{"desert_stone_block", "Desert Stone Block", "default_desert_stone_block", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
{"desert_cobble", "Desert Cobble", "default_desert_cobble", default.node_sound_stone_defaults(), {cracky=3, stone=2},},
{"desert_stonebrick", "Desert Stone Brick", "default_desert_stone_brick", default.node_sound_stone_defaults(), {cracky=2, stone=1},},
{"sandstone", "Sandstone", "default_sandstone", default.node_sound_stone_defaults(), {crumbly=2,cracky=3},},
{"sandstone_block", "Sandstone Block","default_sandstone_block", default.node_sound_stone_defaults(), {crumbly=2,cracky=3},},
{"sandstonebrick", "Sandstone Brick", "default_sandstone_brick", default.node_sound_stone_defaults(), {cracky=2},},
{"obsidian", "Obsidian", "default_obsidian", default.node_sound_stone_defaults(), {cracky=1,level=2},},
{"obsidian_block", "Obsidian Block", "default_obsidian_block", default.node_sound_stone_defaults(), {cracky=1,level=2},},
{"obsidianbrick", "Obsidian Brick", "default_obsidian_brick", default.node_sound_stone_defaults(), {cracky=1,level=2},},
{"wood", "Wooden", "default_wood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},},
{"junglewood", "Junglewood", "default_junglewood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},},
{"pine_wood", "Pine Wood", "default_pine_wood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},},
{"acacia_wood", "Acacia Wood", "default_acacia_wood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},},
}
local darkage_materials = {
{"marble", "Marble", "darkage_marble", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
{"serpentine", "Serpentine", "darkage_serpentine", default.node_sound_stone_defaults(), {cracky=3, stone=1},},
}
-- TODO: ALIASES!
-- convert integer coordinates to nodebox coordinates
function nb(n)
......@@ -44,15 +14,9 @@ function nb(n)
end
for i in ipairs(materials) do
local nodename = materials[i][1]
local desc = materials[i][2]
local tile = materials[i][3]
local sound = materials[i][4]
local group = materials[i][5]
minetest.register_node("pkarcs:"..nodename.."_arc", {
register_arc = function(origin, nodename, desc, tile, sound, group, nodeid)
local nodeid = origin..":"..nodename
minetest.register_node(":pkarcs:"..origin.."_"..nodename.."_arc", {
description = desc.." Arc",
paramtype = "light",
paramtype2 = "facedir",
......@@ -76,147 +40,15 @@ for i in ipairs(materials) do
groups = group,
sounds = sound,
})
minetest.register_craft({
output = "pkarcs:"..nodename.."_arc".." 5",
recipe = {
{ "default:"..nodename, "default:"..nodename, "default:"..nodename },
{ "default:"..nodename, "", "" },
{ "default:"..nodename, "", "" }
}
})
minetest.register_node("pkarcs:"..nodename.."_outer_arc", {
description = desc.." Outer Arc",
paramtype = "light",
paramtype2 = "facedir",
tiles = {tile..".png"},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{ nb(0), nb(0), nb(16), nb(1), nb(16), nb(16-1) },
{ nb(0), nb(4), nb(16), nb(2), nb(16), nb(16-2) },
{ nb(0), nb(7), nb(16), nb(3), nb(16), nb(16-3) },
{ nb(0), nb(8), nb(16), nb(4), nb(16), nb(16-4) },
{ nb(0), nb(10), nb(16), nb(5), nb(16), nb(16-5) },
{ nb(0), nb(11), nb(16), nb(6), nb(16), nb(16-6) },
{ nb(0), nb(12), nb(16), nb(8), nb(16), nb(16-8) },
{ nb(0), nb(13), nb(16), nb(9), nb(16), nb(16-9) },
{ nb(0), nb(14), nb(16), nb(12), nb(16), nb(16-12) },
{ nb(0), nb(15), nb(16), nb(16), nb(16), nb(16-16) },
}
},
groups = group,
sounds = sound,
})
minetest.register_craft({
output = "pkarcs:"..nodename.."_outer_arc".." 5",
output = "pkarcs:"..origin.."_"..nodename.."_arc".." 5",
recipe = {
{ "default:torch", "default:"..nodename, "default:"..nodename },
{ "default:"..nodename, "", "" },
{ "default:"..nodename, "", "" }
{ nodeid, nodeid, nodeid },
{ nodeid, "", "" },
{ nodeid, "", "" }
}
})
minetest.register_node("pkarcs:"..nodename.."_inner_arc", {
description = desc.." Inner Arc",
paramtype = "light",
paramtype2 = "facedir",
tiles = {tile..".png"},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{ nb(0), nb(0), nb(16), nb(1), nb(16), nb(0) },
{ nb(0), nb(0), nb(16), nb(16), nb(16), nb(16-1) },
{ nb(0), nb(4), nb(16), nb(2), nb(16), nb(0) },
{ nb(0), nb(4), nb(16), nb(16), nb(16), nb(16-2) },
{ nb(0), nb(7), nb(16), nb(3), nb(16), nb(0) },
{ nb(0), nb(7), nb(16), nb(16), nb(16), nb(16-3) },
{ nb(0), nb(8), nb(16), nb(4), nb(16), nb(0) },
{ nb(0), nb(8), nb(16), nb(16), nb(16), nb(16-4) },
{ nb(0), nb(10), nb(16), nb(5), nb(16), nb(0) },
{ nb(0), nb(10), nb(16), nb(16), nb(16), nb(16-5) },
{ nb(0), nb(11), nb(16), nb(6), nb(16), nb(0) },
{ nb(0), nb(11), nb(16), nb(16), nb(16), nb(16-6) },
{ nb(0), nb(12), nb(16), nb(8), nb(16), nb(0) },
{ nb(0), nb(12), nb(16), nb(16), nb(16), nb(16-8) },
{ nb(0), nb(13), nb(16), nb(9), nb(16), nb(0) },
{ nb(0), nb(13), nb(16), nb(16), nb(16), nb(16-9) },
{ nb(0), nb(14), nb(16), nb(12), nb(16), nb(0) },
{ nb(0), nb(14), nb(16), nb(16), nb(16), nb(16-12) },
{ nb(0), nb(15), nb(16), nb(16), nb(16), nb(16-16) },
}
},
groups = group,
sounds = sound,
})
minetest.register_craft({
output = "pkarcs:"..nodename.."_inner_arc".." 5",
recipe = {
{ "", "default:"..nodename, "default:"..nodename },
{ "default:"..nodename, "default:torch", "" },
{ "default:"..nodename, "", "" }
}
})
end
for i in ipairs(darkage_materials) do
local nodename = darkage_materials[i][1]
local desc = darkage_materials[i][2]
local tile = darkage_materials[i][3]
local sound = darkage_materials[i][4]
local group = darkage_materials[i][5]
minetest.register_node("pkarcs:"..nodename.."_arc", {
description = desc.." Arc",
paramtype = "light",
paramtype2 = "facedir",
tiles = {tile..".png"},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{ nb(0), nb(0), nb(0), nb(1), nb(16), nb(16) },
{ nb(1), nb(4), nb(0), nb(2), nb(16), nb(16) },
{ nb(2), nb(7), nb(0), nb(3), nb(16), nb(16) },
{ nb(3), nb(8), nb(0), nb(4), nb(16), nb(16) },
{ nb(4), nb(10), nb(0), nb(5), nb(16), nb(16) },
{ nb(5), nb(11), nb(0), nb(6), nb(16), nb(16) },
{ nb(6), nb(12), nb(0), nb(8), nb(16), nb(16) },
{ nb(8), nb(13), nb(0), nb(9), nb(16), nb(16) },
{ nb(9), nb(14), nb(0), nb(12), nb(16), nb(16) },
{ nb(12), nb(15), nb(0), nb(16), nb(16), nb(16) },
}
},
groups = group,
sounds = sound,
})
minetest.register_craft({
output = "pkarcs:"..nodename.."_arc".." 5",
recipe = {
{ "darkage:"..nodename, "darkage:"..nodename, "darkage:"..nodename },
{ "darkage:"..nodename, "", "" },
{ "darkage:"..nodename, "", "" }
}
})
minetest.register_node("pkarcs:"..nodename.."_outer_arc", {
minetest.register_node(":pkarcs:"..origin.."_"..nodename.."_outer_arc", {
description = desc.." Outer Arc",
paramtype = "light",
paramtype2 = "facedir",
......@@ -240,17 +72,15 @@ for i in ipairs(darkage_materials) do
groups = group,
sounds = sound,
})
minetest.register_craft({
output = "pkarcs:"..nodename.."_outer_arc".." 5",
output = "pkarcs:"..origin.."_"..nodename.."_outer_arc".." 5",
recipe = {
{ "default:torch", "darkage:"..nodename, "darkage:"..nodename },
{ "darkage:"..nodename, "", "" },
{ "darkage:"..nodename, "", "" }
{ "default:torch", nodeid, nodeid },
{ nodeid, "", ""},
{ nodeid, "", ""}
}
})
minetest.register_node("pkarcs:"..nodename.."_inner_arc", {
minetest.register_node(":pkarcs:"..origin.."_"..nodename.."_inner_arc", {
description = desc.." Inner Arc",
paramtype = "light",
paramtype2 = "facedir",
......@@ -292,15 +122,14 @@ for i in ipairs(darkage_materials) do
groups = group,
sounds = sound,
})
minetest.register_craft({
output = "pkarcs:"..nodename.."_inner_arc".." 5",
output = "pkarcs:"..origin.."_"..nodename.."_inner_arc".." 5",
recipe = {
{ "", "darkage:"..nodename, "darkage:"..nodename },
{ "darkage:"..nodename, "default:torch", "" },
{ "darkage:"..nodename, "", "" }
{ "", nodeid, nodeid },
{ nodeid, "default:torch", "" },
{ nodeid, "", "" }
}
})
end
dofile(minetest.get_modpath("pkarcs").."/registrations.lua")
## Simple Arcs [pkarcs] by PEAK
### modified for The World of Illuna by tchncs
this awesome mod has it's origin here:
* https://forum.minetest.net/viewtopic.php?f=9&t=14541
however this fork provides a sort-of API just like Moreblocks does.
You can easily register your mods nodes following this syntax:
`register_arc("mycoolmod", "nodename", "description", "imagename", "sound", "group(s)")`
this would look like this:
`register_arc("default", "stone", "Stone", "default_stone", default.node_sound_stone_defaults(), {cracky=3, stone=1})`
Please be aware of new nodeid's this fork provides for avoiding nodeconflicts,
like The World of Illuna uses a duplicate stonebrick node.
There will follow aliases for the default nodes quite soon but if you extended your copy of the original mod already and plan to replace it,
the nodenames change like:
`pkarcs:stonebrick` to `pkarcs:default_stonebrick`
![](https://git.tchncs.de/Illuna-Minetest/pkarcs/raw/master/screenshot_1.png)
register_arc("default", "stone", "Stone", "default_stone", default.node_sound_stone_defaults(), {cracky=3, stone=1})
register_arc("default", "stone_block", "Stone Block", "default_stone_block", default.node_sound_stone_defaults(), {cracky=3, stone=1})
register_arc("default", "cobble", "Cobble", "default_cobble", default.node_sound_stone_defaults(), {cracky=3, stone=2})
register_arc("default", "stonebrick", "Stone Brick", "default_stone_brick", default.node_sound_stone_defaults(), {cracky=2, stone=1})
register_arc("default", "mossycobble", "MossyCobble", "default_mossycobble", default.node_sound_stone_defaults(), {cracky=3, stone=1})
register_arc("default", "desert_stone", "Desert Stone", "default_desert_stone", default.node_sound_stone_defaults(), {cracky=3, stone=1})
register_arc("default", "desert_stone_block", "Desert Stone Block", "default_desert_stone_block", default.node_sound_stone_defaults(), {cracky=3, stone=1})
register_arc("default", "desert_cobble", "Desert Cobble", "default_desert_cobble", default.node_sound_stone_defaults(), {cracky=3, stone=2})
register_arc("default", "desert_stonebrick", "Desert Stone Brick", "default_desert_stone_brick", default.node_sound_stone_defaults(), {cracky=2, stone=1})
register_arc("default", "sandstone", "Sandstone", "default_sandstone", default.node_sound_stone_defaults(), {crumbly=2,cracky=3})
register_arc("default", "sandstone_block", "Sandstone Block","default_sandstone_block", default.node_sound_stone_defaults(), {crumbly=2,cracky=3})
register_arc("default", "sandstonebrick", "Sandstone Brick", "default_sandstone_brick", default.node_sound_stone_defaults(), {cracky=2})
register_arc("default", "obsidian", "Obsidian", "default_obsidian", default.node_sound_stone_defaults(), {cracky=1,level=2})
register_arc("default", "obsidian_block", "Obsidian Block", "default_obsidian_block", default.node_sound_stone_defaults(), {cracky=1,level=2})
register_arc("default", "obsidianbrick", "Obsidian Brick", "default_obsidian_brick", default.node_sound_stone_defaults(), {cracky=1,level=2})
register_arc("default", "wood", "Wooden", "default_wood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1})
register_arc("default", "junglewood", "Junglewood", "default_junglewood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1})
register_arc("default", "pine_wood", "Pine Wood", "default_pine_wood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1})
register_arc("default", "acacia_wood", "Acacia Wood", "default_acacia_wood", default.node_sound_wood_defaults(), {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1})
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment