1
0
mirror of https://github.com/adrido/darkage.git synced 2025-06-28 14:36:22 +02:00

58 Commits

Author SHA1 Message Date
51a0c9dc13 Ajoute message de chargement du mod dans le journal "action" 2018-12-25 13:18:11 +01:00
aa228814b2 Suppression de la génération du minerai de fer dans la roche du desert 2018-11-29 21:27:01 +01:00
19f2fa7435 Add alias for old darkage straw stairs 2018-06-16 11:35:20 +02:00
686d5316af Remove desert_stone reziep 2017-12-17 14:20:37 +01:00
b7cef82da8 Fix moreblocks drop problems 2017-08-10 05:22:33 +00:00
6e5953de5a Change desert stone recipe to avoid conflict with current minetest_game 2017-04-11 16:30:49 +00:00
bef0f2bf88 Correction for mapgen memory optimization 2017-04-02 18:41:09 +02:00
dec9355307 Higher Tuff Brick Recipe Output
To be consistent with minetest_game.
2017-03-02 13:05:17 +01:00
15eafe7030 Mapgen improvement 2017-03-02 10:08:14 +01:00
754e7a16da Mapgen improvement (Thanks to HybridDog) 2017-03-02 06:58:30 +01:00
19bb32d0fe Improve "shadows" on the chalked_brick texture 2017-03-01 09:22:34 +01:00
abb5239726 Reduce stone_brick recipe output.
Otherwise, you would get 9 stone_brick out of (originally) 1 stone.
2017-02-25 20:38:32 +00:00
66639b1d28 Change drawtype of wooden frame to glasslike_framed 2017-02-23 12:38:35 +01:00
1a596ef342 Added missing alias 2017-02-23 12:38:03 +01:00
0307430163 Merged master into github/master 2017-02-22 11:17:13 +01:00
13b743622b Fix wooden frame not breakable by hand 2017-02-22 11:16:56 +01:00
9750ee5f29 Added colored glass ( If unifieddyes installed)
If you have unified dyes installed and have a recent version of Minetest the glasses can colored by punching with dye.
2017-02-22 09:04:52 +01:00
cd4a46d666 Merged master into github/master 2017-01-24 14:51:26 +01:00
9c85fc158f Add stais bricks 2017-01-24 14:50:57 +01:00
c588873976 Added Block and Ruble variant to Ors, Slate, Gneiss and Basalt 2017-01-22 12:03:33 +01:00
8d678c2be2 Chalk wasn't designed to be craftable 2017-01-22 11:02:10 +01:00
132c7e80d4 Add better xdecor support 2017-01-14 07:51:10 +01:00
842968d9eb Fix undeclared global variable 2017-01-12 15:54:45 +01:00
54ce0c9276 Fix PNG warning: iCCP: known incorrect sRGB profile 2017-01-12 15:19:23 +01:00
5e5d5010f8 Resolved craft reciep conflict with stone bricks
Stone bricks are now crafted out of one Stone Block
2017-01-12 15:13:55 +01:00
57856634f1 Minor mapgen improofement 2017-01-04 10:42:54 +01:00
9dd709485b Finished renaming of ors_cobble->ors_brick 2016-10-19 14:30:32 +02:00
76684bb865 Merged in tchncs/darkage (pull request #1)
ors_brick: add aliases for the stairs mod
2016-10-16 00:20:07 +00:00
835ec72219 ors_brick: add aliases for the stairs mod 2016-10-16 00:18:32 +02:00
3a2e2f0112 Introduced Chalked Bricks
Chalked Bricks using the cobble texture of the old minetest_game that where removed in 0.4.7. Its a nice looking stonebrick alternative good to bring a bit more colors in stonebrick houses.

Texture is made by c55 and licensed under CC BY-SA 3.0
2016-09-11 14:25:16 +02:00
6f985e9fe7 Renamed ors_cobble to ors_brick, registering alias 2016-07-16 15:36:04 +02:00
e4d0438bf4 update Formspec of box and shelf to fit into minetest_game 2016-07-12 16:24:24 +02:00
15ec997551 Tidy up nodes.lua 2016-07-10 11:51:41 +02:00
fb05183e95 Tidy up init.lua 2016-07-10 11:51:40 +02:00
7baa81b17b Simplyfied/fixed furniture.lua 2016-07-10 11:51:40 +02:00
586b05da56 Rewrite building.lua simplified registration of reinforced stuff 2016-07-10 10:41:34 +02:00
b301fed084 Simplyfied generation of alias 2016-07-10 10:40:34 +02:00
dc02970d08 Simplyfied stairs registrations 2016-07-09 10:23:29 +02:00
730f23f88f Added description.txt and screenshot.png 2016-07-08 12:36:19 +02:00
39ed2c3f1f Updated Readme.md 2016-07-08 07:34:16 +02:00
778538daea Introducing Tuff and Rhyolitic Tuff
Tuff and Rhyolitic Tuff are materials used in the Medival to build churches or houses of rich people.
Tuff, Tuff bricks and tuff ruble are now available in Darkage.
2016-07-06 09:25:45 +02:00
735db2250b Shrinked textures using Optipng 2016-07-04 14:06:22 +02:00
08be6581fe Sort textures, tidy up 2016-07-04 14:02:49 +02:00
1f089ce75e Simplyfied registrations of Stairsplus 2016-07-03 14:54:43 +02:00
e7c528e1f2 README.md edited online with Bitbucket 2016-07-01 16:00:16 +00:00
d3a038bae5 Dont register serpentine_stairs twice 2016-07-01 17:31:40 +02:00
03b6237d9f Minor speed improovements 2016-07-01 17:04:50 +02:00
a7040140dc Use lua Voxelmanipulator to generate strati. Thanks to HybridDog. 2016-07-01 15:55:50 +02:00
0f5525177e Use Lua Voxelmanipulator to generate mud and silt.
Thanks to CraigyDavi.
2016-07-01 13:41:40 +02:00
c448c65fdf Use minetest.register_ore to generate desert_stone_with iron
Also converted whitespaces to tab.
2016-07-01 11:38:39 +02:00
14f1d1a8e0 Remove 2nd dofile mapgen.lua call 2016-07-01 11:25:54 +02:00
b6e95769f8 minetest.env: --> minetest. 2016-07-01 11:25:16 +02:00
729494e8af Removed Straw. Aliased darkage:straw to farming:straw. Depends now on farming 2016-06-12 11:20:51 +02:00
fe88e3bb2e Better glass texture. Thanks to @Infinatum 2016-06-12 10:55:22 +02:00
3f773bb856 Removed doubled craft reciep for chalk 2016-06-12 08:27:43 +02:00
ca0d318e44 renamed bars to reinforced_..._bars 2016-06-12 08:03:46 +02:00
f5c95744ae Added some more reinforced bars 2016-06-12 07:52:55 +02:00
f2bccb3d05 Tidy up. Added different wall types. Requires Minetest 0.4.14 2016-06-11 18:11:06 +02:00
184 changed files with 1912 additions and 1421 deletions

261
README.md
View File

@ -1,8 +1,10 @@
#DarkAge MOD for MINETEST
# DarkAge Mod for Minetest
Original mod by Master Gollum
Modified by addi and CraigyDavi
Modified by addi.
##Introduction:
Contains code from CragiDavi and HybridDog
## Introduction:
This mod adds a few new blocks that allows to create new buildings in a
pre industrial landscape. Of course, feel free to use them in any other
construction :P
@ -24,7 +26,7 @@ Modified by addi and CraigyDavi
##Release Notes
## Release Notes
Version 1.2
* corrected Sounds of Stairs
@ -82,10 +84,8 @@ Version 0.1
* 6 Nodes
PS: This document has been structured as the README.txt of PilzAdam in
his Bed MOD.
###How to install:
### How to install:
Unzip the archive an place it in minetest-base-directory/mods/
if you have a windows client or a linux run-in-place client. If you
have a linux system-wide installation place it in
@ -95,198 +95,199 @@ PS: This document has been structured as the README.txt of PilzAdam in
For further information or help see:
http://wiki.minetest.net/Installing_Mods
###Tuning:
Comments the following lines to remove what you don't like:
(To comment them just add -- at the beginning of their lines)
## BUILDING NODES
Stone Layers
dofile(minetest.get_modpath("darkage").."/mapgen.lua")
The stones will not spawn in the map.
### Adobe:
Sand and Clay mixture with Straw to build houses or walls.
Used from historical times, one of the first bricks
invented. I have to improve this texture, it is ugly :P
Furniture Nodes
dofile(minetest.get_modpath("darkage").."/furniture.lua")
Only pure stones will be provided.
##BUILDING NODES
Adobe: Sand and Clay mixture with Straw to build houses or walls
Used from historical times, one of the first bricks
invented. I have to improve this texture, it is ugly :P
CRAFT -> 4
[Sand] [Sand]
[Clay Lump] [Straw]
Basalt: a darken version of the default Stone
### Basalt:
A darken version of the default Stone
COOKING
[Basalt Cobble]
[Basalt Rubble]
Basalt Cobble: A darken version of the default Cobble
### Basalt Rubble:
A darken version of the default Cobble.
CRAFT -> 4
[Cobble] [Cobble]
[Coal Lump] [Coal Lump]
Chalk: a soft, white and porous sedimentary rock. It becomes
Chalk Powder when dug. Can't be craft, only found as
stratum.
### Chalk:
A soft, white and porous sedimentary rock. It becomes
Chalk Powder when dug. Can't be craft, only found as stratum.
Chalk Powder: pile of chalk from digging Chalk stones. Can
be used to prepare plaster. See Cobblestone with Plaster.
### Chalk Powder:
Pile of chalk from digging Chalk stones. Can
be used to prepare plaster. See Cobblestone with Plaster.
Cobblestone with Plaster: Cobbles where has been applied a
layer of white plaster.
When dug it lost the plaster layer!
### Cobblestone with Plaster:
Cobbles where has been applied a
layer of white plaster.
When dug it lost the plaster layer!
CRAFT -> 2
[Cobblestone] [Chalk Powder]
[Cobblestone] [Chalk Powder]
Dark Dirt: A darken version of the Dirt where the grass doesn't
grown, perfect for create a path in a forest. I was using
Gravel, but the noise walking was annoying to me (like
walking over iron coal with the nude feet :P), for this I
created this node.
### Dark Dirt:
A darken version of the Dirt where the grass doesn't
grown, perfect for create a path in a forest. I was using
Gravel, but the noise walking was annoying to me (like
walking over iron coal with the nude feet :P), for this I
created this node.
CRAFT -> 4
[Dirt] [Dirt]
[Gravel] [Gravel]
Desert Stone Cobble: To add more uses to the Desert Stones.
I supposed they are harder than regular Stones so it
cracks at 50% and releases the Cobbles or just regular
Desert Stones.
From dig Desert Stone
### Desert Iron Ore:
I know that others MODs add ores to the
Desert Stones, mine also does it, but just Iron, I supposed
the red color is because of the iron, so it goes with more
high probability than regular Stones and it doesn't add
Coal to them. It will not be a lot so you can keep it with
another MOD that does the same or just comment the lines that
does it.
Desert Iron Ore: I know that others MODs add ores to the
Desert Stones, mine also does it, but just Iron, I supposed
the red color is because of the iron, so it goes with more
high probability than regular Stones and it doesn't add
Coal to them. It will not be a lot so you can keep it with
another MOD that does the same or just comment the lines that
does it.
### Dry Leaves:
Just a cube of Leaves toasted :P Well I found the
Leaves are not useful so I thought to turn them into Straw, ok
it is not the same, but well, why not? Just dry them in a
Furnace and then put together to create the Straw
Dry Leaves: Just a cube of Leaves toasted :P Well I found the
Leaves are not useful so I thought to turn them into Straw, ok
it is not the same, but well, why not? Just dry them in a
Furnace and then put together to create the Straw
COOKING
[Leaves]
Gneiss: high grade metamorphic rock formed from Schist, very
common, and used in construction. It sometimes brakes in
Gneiss Cobble when being dug.
### Gneiss:
High grade metamorphic rock formed from Schist, very
common, and used in construction. It sometimes brakes in
Gneiss Rubble when being dug.
COOKING
[Schist]
Gneiss Cobble: brick version of the gneiss.
### Gneiss Rubble:
Cobble version of the gneiss.
From dig gneiss
Mud: mixture of water and some combination of soil, silt, and
clay. Used for build houses, specially in desert regions.
It brakes in 4 Mud Lumps when dug.
### Mud:
Mixture of water and some combination of soil, silt, and
clay. Used for build houses, specially in desert regions.
It brakes in 4 Mud Lumps when dug.
CRAFT -> 3
[Dirt] [Dirt]
[Clay Lump] [Silt Lump]
CRAFT -> 1
[Mud Lump] [Mud Lump]
[Mud Lump] [Mud Lump]
Old Red Sandstone: a light red sandstone, in fact it's
sandstone with iron that gives it this color.
### Old Red Sandstone:
A light red sandstone, in fact it's
sandstone with iron that gives it this color.
CRAFT -> 4
[Sandstone] [Sandstone]
[Iron Lump] [Sandstone]
COOKING
[Old Red Sandstone Cobble]
Old Red Sandstone Cobble: Cobbles of Old Red Sandstone.
COOKING
[Old Red Sandstone Rubble]
### Old Red Sandstone Rubble:
Cobbles of Old Red Sandstone.
CRAFT -> 4
[Sandstone Cobble] [Sandstone Cobble]
[Iron Lump] [Sandstone Cobble]
COOKING
[Desert Stone] --> I think I will change it in the future
release with its own Cobbles.
[Sandstone] [Sandstone]
[Iron Lump] [Sandstone]
Reinforced Cobble: brick with crossed wooden.
### Reinforced Cobble:
Brick with crossed wooden.
CRAFT -> 1
[Stick] [] [Stick]
[] [Cobble] []
[Stick] [] [Stick]
Sandstone Cobble: brick version of the Sandstone, good for
buildings with a pale color.
COOKING
[Sandstone]
Schist: medium grade metamorphic rock from Slate.
### Schist:
Medium grade metamorphic rock from Slate.
COOKING
[Slate]
Silt: granular material of a size somewhere between sand and clay.
It brakes in 4 Silt Lumps.
### Silt:
Granular material of a size somewhere between sand and clay.
It brakes in 4 Silt Lumps.
CRAFT -> 1
[Silt Lump] [Silt Lump]
[Silt Lump] [Silt Lump]
Slate: fine-grained, foliated, homogeneous metamorphic rock
derived from an original shale-type sedimentary rock through
low-grade regional metamorphism. It is used to build roof.
### Slate:
Fine-grained, foliated, homogeneous metamorphic rock
derived from an original shale-type sedimentary rock through
low-grade regional metamorphism. It is used to build roof.
COOKING
[Shale]
COOKING
[Slate Cobble]
### Slate Rubble:
Cobble obtained from Slate
Slate Cobble: Cobble obtained from Slate
From dig Slate
Slate Tile: Nice blue slate tiles for roofs. They has been used
as building traditional building material in zones where
slate is easy to find.
Note: It has stairs and slabs.
### Slate Tile:
Nice blue slate tiles for roofs. They has been used
as building traditional building material in zones where
slate is easy to find.
Note: It has stairs and slabs.
CRAFT -> 2
[Slate Cobble] [Slate Cobble]
[Slate Cobble] [Slate Cobble]
[Slate Rubble] [Slate Rubble]
[Slate Rubble] [Slate Rubble]
Straw: a cube of yellowish straw, try them in the roofs they will
be very nice. Used also as traditional building material
from ancient times.
CRAFT -> 2
[Shrub] [Shrub]
[Shrub] [Shrub]
CRAFT -> 2
[Dry Leaves] [Dry Leaves]
[Dry Leaves] [Dry Leaves]
Straw Bale: a decoration item, looks great for a farm or a
### Straw Bale:
A decoration item, looks great for a farm or a
country side house.
CRAFT -> 1
[Straw] [Straw]
[Straw] [Straw]
Desert Stone: just the default block, it can be obtained now
### Desert Stone:
Just the default block, it can be obtained now
from Desert Sand. The idea is that Desert Sand is stonier
than regular Sand, so it takes less to create a Desert
Stone than a Sandstone.
@ -299,54 +300,65 @@ PS: This document has been structured as the README.txt of PilzAdam in
##FURNITURE NODES
Just started so they are few ones
Box: a more smaller container than the Chest, but it requires
less wood. As cheep as 4 woods and have 16 slots. The craft
is a little weird but I think it makes sense and avoids
collision with the recipe of Hardwood of the MOD
building_blocks.
### Box:
A more smaller container than the Chest, but it requires
less wood. As cheep as 4 woods and have 16 slots. The craft
is a little weird but I think it makes sense and avoids
collision with the recipe of Hardwood of the MOD
building_blocks.
CRAFT -> 2
[Wood] [] [Wood]
[] [] []
[Wood] [] [Wood]
Chain: climbable chain.
### Chain:
Climbable chain.
CRAFT -> 2
[Steel Ingot]
[Steel Ingot]
[Steel Ingot]
Iron Bars: alternative window for the Glass.
### Iron Bars:
Alternative window for the Glass.
CRAFT -> 3
[Steel Ingot] [] [Steel Ingot]
[Steel Ingot] [] [Steel Ingot]
[Steel Ingot] [] [Steel Ingot]
[Iron Stick] [] [Iron Stick]
[Iron Stick] [] [Iron Stick]
[Iron Stick] [] [Iron Stick]
Iron Grille: alternative window for the Glass.
###Iron Grille:
Alternative window for the Glass.
CRAFT -> 3
[] [Iron Bars] []
[Iron Bars] [] [Iron Bars]
[] [Iron Bars] []
Wood Bars: alternative window for the Glass.
###Wood Bars:
Alternative window for the Glass.
CRAFT -> 3
[Stick] [] [Stick]
[Stick] [] [Stick]
[Stick] [] [Stick]
Wood Frame: alternative window for the Glass.
###Wood Frame:
Alternative window for the Glass.
CRAFT -> 1
[Stick] [Stick] [Stick]
[Stick] [Glass] [Stick]
[Stick] [Stick] [Stick]
Medieval Glass: a good looking glass, with small tiles
### Medieval Glass:
A good looking glass, with small tiles
CRAFT -> 8
[Glass] [steel_ingot] [Glass]
@ -357,7 +369,9 @@ Just started so they are few ones
CRAFT -> 1
[Medieval Glow Glass]
Medieval Glow Glass: a good looking glass, with small tiles which are glowing by itself
### Medieval Glow Glass:
A good looking glass, with small tiles which are glowing by itself
CRAFT -> 8
[Medieval Glass]
@ -373,6 +387,10 @@ http://minetest.net/
---
```
#!
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
@ -386,3 +404,4 @@ http://minetest.net/
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.
```

View File

@ -1,99 +1,101 @@
minetest.register_alias("darkage:sandstone_cobble","default:sandstonebrick")
minetest.register_alias("darkage:desert_stone_cobble","default:desert_stonebrick")
--[[
This function registers alias for all micro, panel, stair nodes that get registered by moreblocks
Converts all nodes from origin to new
* origin: nodename in form of "modname:oldnode"
* new: nodename in form of "modname:newnode"
]]
local function register_moreblocks_alias(origin, new)
local originmod = origin:split(":")[1]
local originnode = origin:split(":")[2]
local newmod = new:split(":")[1]
local newnode = new:split(":")[2]
local ra = minetest.register_alias
ra(originmod.. ":micro_" ..originnode.."_1", newmod..":micro_" ..newnode.."_1")
ra(originmod.. ":panel_" ..originnode.."_1", newmod..":panel_" ..newnode.."_1")
ra(originmod.. ":micro_" ..originnode.."_2", newmod..":micro_" ..newnode.."_2")
ra(originmod.. ":panel_" ..originnode.."_2", newmod..":panel_" ..newnode.."_2")
ra(originmod.. ":micro_" ..originnode.."_4", newmod..":micro_" ..newnode.."_4")
ra(originmod.. ":panel_" ..originnode.."_4", newmod..":panel_" ..newnode.."_4")
ra(originmod.. ":micro_" ..originnode, newmod..":micro_" ..newnode)
ra(originmod.. ":panel_" ..originnode, newmod..":panel_" ..newnode)
ra(originmod.. ":micro_" ..originnode.."_12", newmod..":micro_" ..newnode.."_12")
ra(originmod.. ":panel_" ..originnode.."_12", newmod..":panel_" ..newnode.."_12")
ra(originmod.. ":micro_" ..originnode.."_14", newmod..":micro_" ..newnode.."_14")
ra(originmod.. ":panel_" ..originnode.."_14", newmod..":panel_" ..newnode.."_14")
ra(originmod.. ":micro_" ..originnode.."_15", newmod..":micro_" ..newnode.."_15")
ra(originmod.. ":panel_" ..originnode.."_15", newmod..":panel_" ..newnode.."_15")
minetest.register_alias("darkage:stair_basalt_cobble_wall","darkage:stair_basalt_cobble")
minetest.register_alias("darkage:slab_basalt_cobble_inverted","darkage:slab_basalt_cobble")
minetest.register_alias("darkage:panel_basalt_cobble_top","darkage:panel_basalt_cobble")
minetest.register_alias("darkage:stair_straw_inverted","darkage:stair_straw")
ra(originmod.. ":stair_" ..originnode.."_outer", newmod..":stair_" ..newnode.."_outer")
ra(originmod.. ":stair_" ..originnode, newmod..":stair_" ..newnode)
ra(originmod.. ":stair_" ..originnode.."_inner", newmod..":stair_" ..newnode.."_inner")
minetest.register_alias("darkage:stair_desert_stone_cobble_wall_half","default:stair_desert_stonebrick_wall_half")
minetest.register_alias("darkage:slab_desert_stone_cobble_inverted","default:slab_desert_stonebrick_inverted")
minetest.register_alias("darkage:stair_desert_stone_cobble_inverted","default:stair_desert_stonebrick_inverted")
minetest.register_alias("darkage:stair_desert_stone_cobble_outer","default:stair_desert_stonebrick_outer")
minetest.register_alias("darkage:slab_desert_stone_cobble_three_quarter_wall","default:slab_desert_stonebrick_three_quarter_wall")
minetest.register_alias("darkage:slab_desert_stone_cobble_quarter","default:slab_desert_stonebrick_quarter")
minetest.register_alias("darkage:slab_desert_stone_cobble","default:slab_desert_stonebrick")
minetest.register_alias("darkage:slab_desert_stone_cobble_quarter_inverted","default:slab_desert_stonebrick_quarter_inverted")
minetest.register_alias("darkage:stair_desert_stone_cobble_wall","default:stair_desert_stonebrick_wall")
minetest.register_alias("darkage:stair_desert_stone_cobble_outer_inverted","default:stair_desert_stonebrick_outer_inverted")
minetest.register_alias("darkage:stair_desert_stone_cobble_half","default:stair_desert_stonebrick_half")
minetest.register_alias("darkage:stair_desert_stone_cobble_wall_half_inverted","default:stair_desert_stonebrick_wall_half_inverted")
minetest.register_alias("darkage:micro_desert_stone_cobble_bottom","default:micro_desert_stonebrick_bottom")
minetest.register_alias("darkage:panel_desert_stone_cobble_bottom","default:panel_desert_stonebrick_bottom")
minetest.register_alias("darkage:stair_desert_stone_cobble_half_inverted","default:stair_desert_stonebrick_half_inverted")
minetest.register_alias("darkage:micro_desert_stone_cobble_top","default:micro_desert_stonebrick_top")
minetest.register_alias("darkage:slab_desert_stone_cobble_quarter_wall","default:slab_desert_stonebrick_quarter_wall")
minetest.register_alias("darkage:stair_desert_stone_cobble_right_half","default:stair_desert_stonebrick_right_half")
minetest.register_alias("darkage:stair_desert_stone_cobble_right_half_inverted","default:stair_desert_stonebrick_right_half_inverted")
minetest.register_alias("darkage:slab_desert_stone_cobble_three_quarter","default:slab_desert_stonebrick_three_quarter")
minetest.register_alias("darkage:panel_desert_stone_cobble_top","default:panel_desert_stonebrick_top")
minetest.register_alias("darkage:stair_desert_stone_cobble_inner","default:stair_desert_stonebrick_inner")
minetest.register_alias("darkage:stair_desert_stone_cobble","default:stair_desert_stonebrick")
minetest.register_alias("darkage:panel_desert_stone_cobble_vertical","default:panel_desert_stonebrick_vertical")
minetest.register_alias("darkage:stair_desert_stone_cobble_inner_inverted","default:stair_desert_stonebrick_inner_inverted")
minetest.register_alias("darkage:slab_desert_stone_cobble_three_quarter_inverted","default:slab_desert_stonebrick_three_quarter_inverted")
ra(originmod.. ":slab_" ..originnode.."_1", newmod..":slab_" ..newnode.."_1")
ra(originmod.. ":slab_" ..originnode.."_2", newmod..":slab_" ..newnode.."_2")
ra(originmod.. ":slab_" ..originnode.."_quarter", newmod..":slab_" ..newnode.."_quarter")
ra(originmod.. ":slab_" ..originnode, newmod..":slab_" ..newnode)
ra(originmod.. ":slab_" ..originnode.."_three_quarter", newmod..":slab_" ..newnode.."_three_quarter")
ra(originmod.. ":slab_" ..originnode.."_14", newmod..":slab_" ..newnode.."_14")
ra(originmod.. ":slab_" ..originnode.."_15", newmod..":slab_" ..newnode.."_15")
ra(originmod.. ":stair_" ..originnode.."_half", newmod..":stair_" ..newnode.."_half")
ra(originmod.. ":stair_" ..originnode.."_right_half", newmod..":stair_" ..newnode.."_right_half")
ra(originmod.. ":stair_" ..originnode.."_alt_1", newmod..":stair_" ..newnode.."_alt_1")
ra(originmod.. ":stair_" ..originnode.."_alt_2", newmod..":stair_" ..newnode.."_alt_2")
ra(originmod.. ":stair_" ..originnode.."_alt_4", newmod..":stair_" ..newnode.."_alt_4")
ra(originmod.. ":stair_" ..originnode.."_alt", newmod..":stair_" ..newnode.."_alt")
ra(originmod.. ":slope_" ..originnode, newmod..":slope_" ..newnode)
ra(originmod.. ":slope_" ..originnode.."_half", newmod..":slope_" ..newnode.."_half")
ra(originmod.. ":slope_" ..originnode.."_half_raised", newmod..":slope_" ..newnode.."_half_raised")
ra(originmod.. ":slope_" ..originnode.."_inner", newmod..":slope_" ..newnode.."_inner")
ra(originmod.. ":slope_" ..originnode.."_inner_half", newmod..":slope_" ..newnode.."_inner_half")
ra(originmod.. ":slope_" ..originnode.."_inner_half_raised", newmod..":slope_" ..newnode.."_inner_half_raised")
ra(originmod.. ":slope_" ..originnode.."_inner_cut", newmod..":slope_" ..newnode.."_inner_cut")
ra(originmod.. ":slope_" ..originnode.."_inner_cut_half", newmod..":slope_" ..newnode.."_inner_cut_half")
ra(originmod.. ":slope_" ..originnode.."_inner_cut_half_raised", newmod..":slope_" ..newnode.."_inner_cut_half_raised")
ra(originmod.. ":slope_" ..originnode.."_outer", newmod..":slope_" ..newnode.."_outer")
ra(originmod.. ":slope_" ..originnode.."_outer_half", newmod..":slope_" ..newnode.."_outer_half")
ra(originmod.. ":slope_" ..originnode.."_outer_half_raised", newmod..":slope_" ..newnode.."_outer_half_raised")
ra(originmod.. ":slope_" ..originnode.."_outer_cut", newmod..":slope_" ..newnode.."_outer_cut")
ra(originmod.. ":slope_" ..originnode.."_outer_cut_half", newmod..":slope_" ..newnode.."_outer_cut_half")
ra(originmod.. ":slope_" ..originnode.."_outer_cut_half_raised", newmod..":slope_" ..newnode.."_outer_cut_half_raised")
ra(originmod.. ":slope_" ..originnode.."_cut", newmod..":slope_" ..newnode.."_cut")
end
-- Ors Brick
minetest.register_alias("darkage:ors_cobble", "darkage:ors_brick")
minetest.register_alias("stairs:slab_ors_cobble", "stairs:slab_ors_brick")
minetest.register_alias("stairs:stair_ors_cobble", "stairs:stair_ors_brick")
register_moreblocks_alias("darkage:ors_cobble", "darkage:ors_brick")
minetest.register_alias("darkage:ors_cobble_wall", "darkage:ors_rubble_wall")
-- Slate Tile
minetest.register_alias( "darkage:slate_tale", "darkage:slate_tile")
register_moreblocks_alias("darkage:slate_tale", "darkage:slate_tile")
minetest.register_alias("darkage:stair_sandstone_cobble_wall_half","default:stair_sandstonebrick_wall_half")
minetest.register_alias("darkage:slab_sandstone_cobble_inverted","default:slab_sandstonebrick_inverted")
minetest.register_alias("darkage:stair_sandstone_cobble_inverted","default:stair_sandstonebrick_inverted")
minetest.register_alias("darkage:stair_sandstone_cobble_outer","default:stair_sandstonebrick_outer")
minetest.register_alias("darkage:slab_sandstone_cobble_three_quarter_wall","default:slab_sandstonebrick_three_quarter_wall")
minetest.register_alias("darkage:slab_sandstone_cobble_quarter","default:slab_sandstonebrick_quarter")
minetest.register_alias("darkage:slab_sandstone_cobble","default:slab_sandstonebrick")
minetest.register_alias("darkage:slab_sandstone_cobble_quarter_inverted","default:slab_sandstonebrick_quarter_inverted")
minetest.register_alias("darkage:stair_sandstone_cobble_wall","default:stair_sandstonebrick_wall")
minetest.register_alias("darkage:stair_sandstone_cobble_outer_inverted","default:stair_sandstonebrick_outer_inverted")
minetest.register_alias("darkage:stair_sandstone_cobble_half","default:stair_sandstonebrick_half")
minetest.register_alias("darkage:stair_sandstone_cobble_wall_half_inverted","default:stair_sandstonebrick_wall_half_inverted")
minetest.register_alias("darkage:micro_sandstone_cobble_bottom","default:micro_sandstonebrick_bottom")
minetest.register_alias("darkage:panel_sandstone_cobble_bottom","default:panel_sandstonebrick_bottom")
minetest.register_alias("darkage:stair_sandstone_cobble_half_inverted","default:stair_sandstonebrick_half_inverted")
minetest.register_alias("darkage:micro_sandstone_cobble_top","default:micro_sandstonebrick_top")
minetest.register_alias("darkage:slab_sandstone_cobble_quarter_wall","default:slab_sandstonebrick_quarter_wall")
minetest.register_alias("darkage:stair_sandstone_cobble_right_half","default:stair_sandstonebrick_right_half")
minetest.register_alias("darkage:stair_sandstone_cobble_right_half_inverted","default:stair_sandstonebrick_right_half_inverted")
minetest.register_alias("darkage:slab_sandstone_cobble_three_quarter","default:slab_sandstonebrick_three_quarter")
minetest.register_alias("darkage:panel_sandstone_cobble_top","default:panel_sandstonebrick_top")
minetest.register_alias("darkage:stair_sandstone_cobble_inner","default:stair_sandstonebrick_inner")
minetest.register_alias("darkage:stair_sandstone_cobble","default:stair_sandstonebrick")
minetest.register_alias("darkage:panel_sandstone_cobble_vertical","default:panel_sandstonebrick_vertical")
minetest.register_alias("darkage:stair_sandstone_cobble_inner_inverted","default:stair_sandstonebrick_inner_inverted")
minetest.register_alias("darkage:slab_sandstone_cobble_three_quarter_inverted","default:slab_sandstonebrick_three_quarter_inverted")
-- Basalt Brick
minetest.register_alias("darkage:basalt_cobble", "darkage:basalt_brick")
minetest.register_alias("stairs:slab_basalt_cobble", "stairs:slab_basalt_brick")
minetest.register_alias("stairs:stair_basalt_cobble", "stairs:stair_basalt_brick")
register_moreblocks_alias("darkage:basalt_cobble", "darkage:basalt_brick")
minetest.register_alias("darkage:basalt_cobble_wall", "darkage:basalt_rubble_wall")
--Add aliases when slate_tale was renamed to slate_tile
--minetest.register_alias(oldname,newname)
minetest.register_alias("darkage:slate_tale","darkage:slate_tile")
--slab
minetest.register_alias("darkage:slab_slate_tale","darkage:slab_slate_tile")
minetest.register_alias("darkage:slab_slate_tale_inverted","darkage:slab_slate_tile_inverted")
minetest.register_alias("darkage:slab_slate_tale_wall","darkage:slab_slate_tile_wall")
minetest.register_alias("darkage:slab_slate_tale_quarter","darkage:slab_slate_tile_quarter")
minetest.register_alias("darkage:slab_slate_tale_quarter_inverted","darkage:slab_slate_tile_quarter_inverted")
minetest.register_alias("darkage:slab_slate_tale_quarter_wall","darkage:slab_slate_tile_quarter_wall")
minetest.register_alias("darkage:slab_slate_tale_three_quarter","darkage:slab_slate_tile_three_quarter")
minetest.register_alias("darkage:slab_slate_tale_three_quarter_inverted","darkage:slab_slate_tile_three_quarter_inverted")
minetest.register_alias("darkage:slab_slate_tale_three_quarter_wall","darkage:slab_slate_tile_three_quarter_wall")
--stair
minetest.register_alias("darkage:stair_slate_tale","darkage:stair_slate_tile")
minetest.register_alias("darkage:stair_slate_tale_inverted","darkage:stair_slate_tile_inverted")
minetest.register_alias("darkage:stair_slate_tale_wall","darkage:stair_slate_tile_wall")
minetest.register_alias("darkage:stair_slate_tale_wall_half","darkage:stair_slate_tile_wall_half")
minetest.register_alias("darkage:stair_slate_tale_wall_half_inverted","darkage:stair_slate_tile_wall_half_inverted")
minetest.register_alias("darkage:stair_slate_tale_half","darkage:stair_slate_tile_half")
minetest.register_alias("darkage:stair_slate_tale_half_inverted","darkage:stair_slate_tile_half_inverted")
minetest.register_alias("darkage:stair_slate_tale_right_half","darkage:stair_slate_tile_right_half")
minetest.register_alias("darkage:stair_slate_tale_right_half_inverted","darkage:stair_slate_tile_right_half_inverted")
minetest.register_alias("darkage:stair_slate_tale_wall_half","darkage:stair_slate_tile_wall_half")
minetest.register_alias("darkage:stair_slate_tale_wall_half_inverted","darkage:stair_slate_tile_wall_half_inverted")
minetest.register_alias("darkage:stair_slate_tale_inner","darkage:stair_slate_tile_inner")
minetest.register_alias("darkage:stair_slate_tale_inner_inverted","darkage:stair_slate_tile_inner_inverted")
minetest.register_alias("darkage:stair_slate_tale_outer","darkage:stair_slate_tile_outer")
minetest.register_alias("darkage:stair_slate_tale_outer_inverted","darkage:stair_slate_tile_outer_inverted")
--panel
minetest.register_alias("darkage:panel_slate_tale","darkage:panel_slate_tile")
minetest.register_alias("darkage:panel_slate_tale_bottom","darkage:panel_slate_tile_bottom")
minetest.register_alias("darkage:panel_slate_tale_top","darkage:panel_slate_tile_top")
minetest.register_alias("darkage:panel_slate_tale_vertical","darkage:panel_slate_tile_vertical")
minetest.register_alias("darkage:micro_slate_tale_bottom","darkage:micro_slate_tile_bottom")
minetest.register_alias("darkage:micro_slate_tale_top","darkage:micro_slate_tile_top")
-- Slate Brick
minetest.register_alias("darkage:slate_cobble", "darkage:slate_brick")
minetest.register_alias("stairs:slab_slate_cobble", "stairs:slab_slate_brick")
minetest.register_alias("stairs:stair_slate_cobble", "stairs:stair_slate_brick")
register_moreblocks_alias("darkage:slate_cobble", "darkage:slate_brick")
minetest.register_alias("darkage:slate_cobble_wall", "darkage:slate_rubble_wall")
-- Gneiss Brick
minetest.register_alias("darkage:gneiss_cobble", "darkage:gneiss_brick")
minetest.register_alias("stairs:slab_gneiss_cobble", "stairs:slab_gneiss_brick")
minetest.register_alias("stairs:stair_gneiss_cobble", "stairs:stair_gneiss_brick")
register_moreblocks_alias("darkage:gneis_cobble", "darkage:gneiss_brick")
minetest.register_alias("darkage:gneiss_cobble_wall", "darkage:gneiss_rubble_wall")
-- Straw
register_moreblocks_alias("darkage:straw", "moreblocks:straw")

View File

@ -1,175 +1,171 @@
minetest.register_node("darkage:glass", {
description = "Medieval Glass",
drawtype = "glasslike",
tiles = {"darkage_glass.png"},
inventory_image = minetest.inventorycube("darkage_glass.png"),
paramtype = "light",
sunlight_propagates = true,
is_ground_content = true,
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3},
sounds = default.node_sound_glass_defaults(),
})
--[[
This function registers the nodes and craft rezieps for the reinforce stuff
* name: String which is used in description and as technical name (lower letters)
* craftItem: the Item where the reinforce is crafted out of
* nodedef: Nodedefinition table as used as in minetest.register_node()
minetest.register_node("darkage:glow_glass", {
description = "Medieval Glow Glass",
drawtype = "glasslike",
tiles = {"darkage_glass.png"},
inventory_image = minetest.inventorycube("darkage_glass.png"),
paramtype = "light",
light_source = 18,
sunlight_propagates = true,
is_ground_content = true,
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3},
sounds = default.node_sound_glass_defaults(),
})
The Nodes are caled
<modname>:reinforced_<name>
<modname>:reinforced_<name>_slope
<modname>:reinforced_<name>_arrow
<modname>:reinforced_<name>_bars
minetest.register_craft({
output = 'darkage:glow_glass 1',
The modname is automatically the mod that currently calls this function.
e.g. if you call darkage.register_reinforce from the mod medieval modname will be medieval
]]
function darkage.register_reinforce(name, craftItem, nodedef)
assert(type(nodedef.tiles)=="table","ERRROR: nodedef.tiles have to be a table")
assert(nodedef.tiles[1], "ERROR: "..dump(nodedef.tiles).." requires at least 1 entry")
if nodedef.groups then
nodedef.groups["not_cuttable"] = 1;
else
nodedef.groups = {};
nodedef.groups["not_cuttable"] = 1;
end
local modname = minetest.get_current_modname();
local tname = string.gsub(name:lower()," ", "_"); -- Technical name
-- Reinforced X
local reinforced = table.copy(nodedef);
local reinforced_tname = modname..":reinforced_"..tname
reinforced.description = "Reinforced "..name
for i,tile in ipairs(reinforced.tiles) do
reinforced.tiles[i] = tile .."^darkage_reinforce.png"
end
minetest.register_node(reinforced_tname, reinforced)
minetest.register_craft({
output = reinforced_tname,
recipe = {
{'darkage:glass', '', ''},
{'default:torch', '', ''},
{'', '', ''},
{"group:stick", craftItem, "group:stick"},
{craftItem, "group:stick", craftItem},
{"group:stick", craftItem, "group:stick"},
}
})
minetest.register_craft({
output = 'darkage:glass 1',
})
-- Recycling
minetest.register_craft({
output = craftItem,
recipe = {
{'darkage:glow_glass'},
{ reinforced_tname },
}
})
})
-- Reinforced Slope
local slope = table.copy(nodedef);
local slope_tname = modname..":reinforced_"..tname.."_slope"
slope.description = "Reinforced "..name.." Slope\nHint: use the screwdriver to rotate."
slope.paramtype2 = "facedir";
local slope_tile_extend = {"^darkage_reinforce_right.png" , "^darkage_reinforce_right.png" , --top ,down
"^darkage_reinforce_right.png" , "^darkage_reinforce_right.png" , --right, left
"^darkage_reinforce_left.png" , "^darkage_reinforce_left.png"} -- front, back
for i=1,6 do
local tile = slope.tiles[i] or nodedef.tiles[1]; -- There have to be at least one tile.
slope.tiles[i] = tile ..slope_tile_extend[i]
end
minetest.register_craft({
output = 'darkage:glass 8',
minetest.register_node(slope_tname, slope)
minetest.register_craft({
output = slope_tname,
recipe = {
{'default:glass', 'default:steel_ingot', 'default:glass'},
{'default:steel_ingot', 'default:glass', 'default:steel_ingot'},
{'default:glass', 'default:steel_ingot', 'default:glass'},
{craftItem, craftItem, "group:stick"},
{craftItem, "group:stick", craftItem},
{"group:stick", craftItem, craftItem},
}
})
})
-- Flipped recipe
minetest.register_craft({
output = slope_tname,
recipe = {
{"group:stick", craftItem, craftItem},
{craftItem, "group:stick", craftItem},
{craftItem, craftItem, "group:stick"},
}
})
-- Recycling
minetest.register_craft({
output = craftItem,
recipe = {
{ slope_tname }
}
})
minetest.register_node("darkage:reinforced_chalk", {
description = "Reinforced Chalk",
tiles = {"darkage_chalk.png^darkage_reinforce.png"},
is_ground_content = true,
-- Alias to convert old nodes
minetest.register_alias(modname..":reinforced_"..tname.."_right", slope_tname)
minetest.register_alias(modname..":reinforced_"..tname.."_left", slope_tname)
-- Arrow bar
local arrow = table.copy(nodedef)
local arrow_tname = modname..":reinforced_"..tname.."_arrow"
arrow.paramtype2 = "facedir";
arrow.description = "Reinforced "..name.." Arrow \nHint: use the screwdriver to rotate."
local arrow_tile_extend = {"" , "" , --top ,down
"^(darkage_reinforce_arrow.png^[transformR90)" , "^(darkage_reinforce_arrow.png^[transformR270)" , --right, left
"^(darkage_reinforce_arrow.png^[transformR180)" , "^darkage_reinforce_arrow.png"} -- front, back
for i=1,6 do
local tile = arrow.tiles[i] or arrow.tiles[1]; -- There have to be at least one tile.
arrow.tiles[i] = tile .. arrow_tile_extend[i]
end
minetest.register_node(arrow_tname, arrow)
minetest.register_craft({
output = arrow_tname,
recipe = {
{craftItem, "group:stick", craftItem},
{"group:stick", craftItem, "group:stick"},
{"group:stick", craftItem, "group:stick"},
}
})
-- Recycling
minetest.register_craft({
output = craftItem,
recipe = {
{ arrow_tname }
}
})
-- Reinforced Bars
local bars = table.copy(nodedef)
local bars_tname = modname..":reinforced_"..tname.."_bars"
bars.description = name.." Bars"
for i,tile in ipairs(bars.tiles) do
bars.tiles[i] = tile .."^darkage_reinforce_bars.png"
end
minetest.register_node(bars_tname, bars)
minetest.register_craft({
output = bars_tname,
recipe = {
{"group:stick", craftItem, "group:stick"},
{"group:stick", craftItem, "group:stick"},
{"group:stick", craftItem, "group:stick"},
}
})
minetest.register_craft({
output = craftItem,
recipe = {
{ bars_tname }
}
})
end
darkage.register_reinforce("Chalk", "darkage:chalk_powder", {
tiles = {"darkage_chalk.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:reinforced_wood", {
description = "Reinforced Wood",
tiles = {"default_wood.png^darkage_reinforce.png"},
is_ground_content = true,
groups = {snappy=2,choppy=3,oddly_breakable_by_hand=3,flammable=3},
darkage.register_reinforce("Wood", "default:wood", {
tiles = {"default_wood.png"},
groups = {snappy=2, choppy=3, flammable=3},
sounds = default.node_sound_wood_defaults()
})
minetest.register_node("darkage:reinforced_wood_right", {
description = "Reinforced Wood Right",
tiles = {"darkage_reinforced_wood_right.png"},
is_ground_content = true,
groups = {snappy=2,choppy=3,oddly_breakable_by_hand=3,flammable=3},
sounds = default.node_sound_wood_defaults()
})
minetest.register_node("darkage:reinforced_wood_left", {
description = "Reinforced Wood Left",
tiles = {"darkage_reinforced_wood_left.png"},
is_ground_content = true,
groups = {snappy=2,choppy=3,oddly_breakable_by_hand=3,flammable=3},
sounds = default.node_sound_wood_defaults()
})
minetest.register_craft({
output = 'darkage:reinforced_chalk',
recipe = {
{'default:stick','','default:stick'},
{'','darkage:chalk',''},
{'default:stick','','default:stick'},
}
})
minetest.register_craft({
output = 'darkage:chalk',
recipe = {
{'darkage:chalk_powder','darkage:chalk_powder',''},
{'darkage:chalk_powder','darkage:chalk_powder',''},
{'','',''},
}
})
minetest.register_craft({
output = 'darkage:reinforced_wood',
recipe = {
{'default:stick','','default:stick'},
{'','default:wood',''},
{'default:stick','','default:stick'},
}
})
minetest.register_craft({
output = 'default:wood',
recipe = {
{'darkage:reinforced_wood'},
}
})
minetest.register_craft({
output = 'darkage:reinforced_wood_left',
recipe = {
{'default:stick','',''},
{'','default:wood',''},
{'','','default:stick'},
}
})
minetest.register_craft({
output = 'default:wood',
recipe = {
{'darkage:reinforced_wood_left'},
}
})
minetest.register_craft({
output = 'darkage:reinforced_wood_right',
recipe = {
{'','','default:stick'},
{'','default:wood',''},
{'default:stick','',''},
}
})
minetest.register_craft({
output = 'default:wood',
recipe = {
{'darkage:reinforced_wood_right'},
}
})
minetest.register_craft({
output = 'darkage:glow_glass 1',
recipe = {
{'darkage:glass', '', ''},
{'default:torch', '', ''},
{'', '', ''},
}
})
minetest.register_craft({
output = 'darkage:glass 1',
recipe = {
{'darkage:glow_glass'},
}
})
minetest.register_craft({
output = 'darkage:glass 8',
recipe = {
{'default:glass', 'default:steel_ingot', 'default:glass'},
{'default:steel_ingot', 'default:glass', 'default:steel_ingot'},
{'default:glass', 'default:steel_ingot', 'default:glass'},
}
darkage.register_reinforce("Chalked Bricks", "darkage:chalked_bricks", {
tiles = {"darkage_chalked_bricks.png"},
groups = {cracky = 2, stone = 1},
sounds = default.node_sound_stone_defaults()
})

View File

@ -1,3 +1,5 @@
default
farming?
farming
moreblocks?
stairs?
unifieddyes?

2
description.txt Normal file
View File

@ -0,0 +1,2 @@
DarkAge adds several new nodes and crafts to create a pre industrial landscape.
It also extends the stones and provides new construction materials.

View File

@ -6,7 +6,7 @@ minetest.register_node("darkage:chain", {
wield_image = "darkage_chain.png",
paramtype = "light",
paramtype2 = "wallmounted",
is_ground_content = true,
is_ground_content = false,
walkable = false,
climbable = true,
selection_box = {
@ -15,31 +15,34 @@ minetest.register_node("darkage:chain", {
--wall_bottom = = <default>
--wall_side = = <default>
},
groups = {snappy=1,cracky=2,oddly_breakable_by_hand=2},
groups = {snappy=1, cracky=2, oddly_breakable_by_hand=2, not_cuttable=1},
legacy_wallmounted = true
})
minetest.register_node('darkage:box', {
local box_formspec = [[
size[8,9]
list[context;main;0,0.3;8,4;]
list[current_player;main;0,4.85;8,1;]
list[current_player;main;0,6.08;8,3;8]
listring[context;main]
listring[current_player;main]
]].. darkage.formbg
minetest.register_node("darkage:box", {
description = "Box",
tiles = { 'darkage_box_top.png','darkage_box_top.png','darkage_box.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
tiles = { "darkage_box_top.png","darkage_box_top.png","darkage_box.png"},
groups = { snappy = 3, not_cuttable=1 },
sounds = default.node_sound_wood_defaults(),
on_construct = function(pos)
local meta = minetest.env:get_meta(pos)
meta:set_string("formspec",
"size[8,8]"..
"list[current_name;main;0,0;8,3;]"..
"list[current_player;main;0,4;8,4;]")
local meta = minetest.get_meta(pos)
meta:set_string("formspec", box_formspec )
meta:set_string("infotext", "Box")
local inv = meta:get_inventory()
inv:set_size("main", 16)
end,
can_dig = function(pos,player)
local meta = minetest.env:get_meta(pos);
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main")
end,
@ -57,32 +60,37 @@ minetest.register_node('darkage:box', {
end,
})
minetest.register_node('darkage:wood_shelves', {
local shelves_formspec = [[
size[8,9]
list[context;up;0,0;8,2;]
list[context;down;0,2.3;8,2;]
list[current_player;main;0,4.85;8,1;]
list[current_player;main;0,6.08;8,3;8]
listring[context;up]
listring[context;down]
listring[current_player;main]
]].. darkage.formbg
minetest.register_node("darkage:wood_shelves", {
description = "Wooden Shelves",
tiles = { 'darkage_shelves.png','darkage_shelves.png','darkage_shelves.png',
'darkage_shelves.png','darkage_shelves.png','darkage_shelves_front.png'},
sunlight_propagates = false,
paramtype = "light",
tiles = { "darkage_shelves.png","darkage_shelves.png","darkage_shelves.png",
"darkage_shelves.png","darkage_shelves.png","darkage_shelves_front.png"},
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
groups = { snappy = 3, not_cuttable=1 },
sounds = default.node_sound_wood_defaults(),
on_construct = function(pos)
local meta = minetest.env:get_meta(pos)
meta:set_string("formspec",
"size[8,10]"..
"list[context;up;0,0;8,3;]"..
"list[context;down;0,3;8,3;]"..
"list[current_player;main;0,6;8,4;]")
local meta = minetest.get_meta(pos)
meta:set_string("formspec", shelves_formspec)
meta:set_string("infotext", "Wooden Shelves")
local inv = meta:get_inventory()
inv:set_size("up", 16)
inv:set_size("down", 16)
end,
can_dig = function(pos,player)
local meta = minetest.env:get_meta(pos);
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("shape") and inv:is_empty("out") and inv:is_empty("water")
return inv:is_empty("up") and inv:is_empty("down")
end,
on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
minetest.log("action", player:get_player_name()..
@ -101,7 +109,7 @@ minetest.register_node('darkage:wood_shelves', {
--minetest.register_node("darkage:rosace", {
-- description = "Rose Window",
-- tiles = {"darkage_rosace.png"},
-- is_ground_content = true,
-- is_ground_content = false,
-- groups = {cracky=3},
-- sounds = default.node_sound_stone_defaults()
--})
@ -112,22 +120,20 @@ minetest.register_node("darkage:iron_bars", {
tiles = {"darkage_iron_bars.png"},
inventory_image = "darkage_iron_bars.png",
wield_image = "darkage_iron_bars.png",
is_ground_content = true,
is_ground_content = false,
paramtype = "light",
sunlight_propagates = true,
groups = {cracky=3},
groups = {cracky=3 , not_cuttable=1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:lamp", {
description = "Lamp",
tiles = {
"darkage_lamp.png"
},
tiles = { "darkage_lamp.png" },
paramtype = "light",
sunlight_propagates = true,
light_source = LIGHT_MAX-1,
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3,flammable=1},
light_source = default.LIGHT_MAX-1,
groups = {snappy=2, cracky=3, oddly_breakable_by_hand=3, flammable=1 , not_cuttable=1},
sounds = default.node_sound_glass_defaults(),
})
@ -137,10 +143,10 @@ minetest.register_node("darkage:iron_grille", {
tiles = {"darkage_iron_grille.png"},
inventory_image = "darkage_iron_grille.png",
wield_image = "darkage_iron_grille.png",
is_ground_content = true,
is_ground_content = false,
paramtype = "light",
sunlight_propagates = true,
groups = {cracky=3},
groups = {cracky=3 , not_cuttable=1},
sounds = default.node_sound_stone_defaults()
})
@ -150,10 +156,10 @@ minetest.register_node("darkage:wood_bars", {
tiles = {"darkage_wood_bars.png"},
inventory_image = "darkage_wood_bars.png",
wield_image = "darkage_wood_bars.png",
is_ground_content = true,
is_ground_content = false,
paramtype = "light",
sunlight_propagates = true,
groups = {snappy=1,choppy=2},
groups = {snappy=1, choppy=2, not_cuttable=1},
sounds = default.node_sound_stone_defaults()
})
@ -163,23 +169,23 @@ minetest.register_node("darkage:wood_grille", {
tiles = {"darkage_wood_grille.png"},
inventory_image = "darkage_wood_grille.png",
wield_image = "darkage_wood_grille.png",
is_ground_content = true,
is_ground_content = false,
paramtype = "light",
sunlight_propagates = true,
groups = {snappy=1,choppy=2},
groups = {snappy=1, choppy=2, not_cuttable=1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:wood_frame", {
description = "Wooden Frame",
drawtype = "glasslike",
drawtype = "glasslike_framed",
tiles = {"darkage_wood_frame.png"},
inventory_image = "darkage_wood_frame.png",
wield_image = "darkage_wood_frame.png",
is_ground_content = true,
is_ground_content = false,
paramtype = "light",
sunlight_propagates = true,
groups = {snappy=1,choppy=2},
groups = {snappy=1, choppy=2, oddly_breakable_by_hand = 3, not_cuttable=1},
sounds = default.node_sound_stone_defaults()
})
@ -193,82 +199,82 @@ minetest.register_node("darkage:wood_frame", {
----------
minetest.register_craft({
output = 'darkage:box',
output = "darkage:box",
recipe = {
{'default:wood','','default:wood'},
{'','',''},
{'default:wood','','default:wood'},
{"default:wood", "", "default:wood"},
{"", "", ""},
{"default:wood", "", "default:wood"},
}
})
minetest.register_craft({
output = 'darkage:chain 2',
output = "darkage:chain 2",
recipe = {
{'darkage:iron_stick'}, --changed reziep to avoid problems with ironbars - addi
{'darkage:iron_stick'},
{'darkage:iron_stick'},
{"darkage:iron_stick"},
{"darkage:iron_stick"},
{"darkage:iron_stick"},
}
})
minetest.register_craft({
output = 'darkage:iron_bars 2',
output = "darkage:iron_bars 2",
recipe = {
{'darkage:iron_stick','','darkage:iron_stick'}, --changed reziep to avoid problems with 3dfurniture -addi
{'darkage:iron_stick','','darkage:iron_stick'},
{'darkage:iron_stick','','darkage:iron_stick'},
{"darkage:iron_stick", "", "darkage:iron_stick"},
{"darkage:iron_stick", "", "darkage:iron_stick"},
{"darkage:iron_stick", "", "darkage:iron_stick"},
}
})
minetest.register_craft({
output = 'darkage:iron_grille 3',
output = "darkage:iron_grille 3",
recipe = {
{'','darkage:iron_bars',''},
{'darkage:iron_bars','','darkage:iron_bars'},
{'','darkage:iron_bars',''},
{"", "darkage:iron_bars", ""},
{"darkage:iron_bars", "", "darkage:iron_bars"},
{"", "darkage:iron_bars", ""},
}
})
minetest.register_craft({
output = 'darkage:lamp',
output = "darkage:lamp",
recipe = {
{'default:stick','','default:stick'},
{'','default:torch',''},
{'default:stick','','default:stick'},
{"group:stick", "", "group:stick"},
{"", "default:torch", ""},
{"group:stick", "", "group:stick"},
}
})
minetest.register_craft({
output = 'darkage:wood_bars 2',
output = "darkage:wood_bars 2",
recipe = {
{'default:stick','','default:stick'},
{'default:stick','','default:stick'},
{'default:stick','','default:stick'},
{"group:stick", "", "group:stick"},
{"group:stick", "", "group:stick"},
{"group:stick", "", "group:stick"},
}
})
minetest.register_craft({
output = 'darkage:wood_grille 3',
output = "darkage:wood_grille 3",
recipe = {
{'','darkage:wood_bars',''},
{'darkage:wood_bars','','darkage:wood_bars'},
{'','darkage:wood_bars',''},
{"", "darkage:wood_bars", ""},
{"darkage:wood_bars", "", "darkage:wood_bars"},
{"", "darkage:wood_bars", ""},
}
})
minetest.register_craft({
output = 'darkage:wood_shelves',
output = "darkage:wood_shelves",
recipe = {
{'darkage:box'},
{'darkage:box'},
{"darkage:box"},
{"darkage:box"},
}
})
minetest.register_craft({
output = 'darkage:wood_frame',
output = "darkage:wood_frame",
recipe = {
{'default:stick','','default:stick'},
{'','default:glass',''},
{'default:stick','','default:stick'},
{"group:stick", "", "group:stick"},
{"", "default:glass", ""},
{"group:stick", "", "group:stick"},
}
})

196
glass.lua Normal file
View File

@ -0,0 +1,196 @@
--[[
Medival glasses.
The glasses can be colorized using dye.
Colorization requires unifieddyes installed.
Special thanks to Semmett9 for the glass textures.
]]
minetest.register_node("darkage:glass", {
description = "Clean Medieval Glass",
drawtype = "glasslike",
tiles = {"darkage_glass.png"},
use_texture_alpha=false,
paramtype = "light",
sunlight_propagates = true,
groups = {cracky = 3, oddly_breakable_by_hand = 3, not_cuttable=1},
sounds = default.node_sound_glass_defaults(),
})
minetest.register_craft({
output = "darkage:glass 8",
recipe = {
{"default:glass", "default:steel_ingot", "default:glass"},
{"default:steel_ingot", "default:glass", "default:steel_ingot"},
{"default:glass", "default:steel_ingot", "default:glass"},
}
})
if minetest.get_modpath("unifieddyes") then
minetest.register_node("darkage:milk_glass", {
description = "Milky Medieval Glass (Good for colorization)",
drawtype = "glasslike",
tiles = {"darkage_milk_glass.png"},
use_texture_alpha=true,
paramtype = "light",
paramtype2 = "color",
palette = "unifieddyes_palette.png",
sunlight_propagates = true,
groups = {cracky = 3, oddly_breakable_by_hand = 3, not_cuttable=1, ud_param2_colorable = 1},
sounds = default.node_sound_glass_defaults(),
after_dig_node = unifieddyes.after_dig_node
})
-- Craft
minetest.register_craft({
output = "darkage:milk_glass 1",
type = "shapeless",
recipe = {"darkage:glass", "dye:white"}
})
-- Recycling
minetest.register_craft({
output = "darkage:glass 1",
recipe = {{"darkage:milk_glass"}}
})
end
--[[
Glow Glass
]]
minetest.register_node("darkage:glow_glass", {
description = "Medieval Glow Glass",
drawtype = "glasslike",
tiles = {"darkage_glass.png"},
use_texture_alpha=true,
paramtype = "light",
sunlight_propagates = true,
light_source = default.LIGHT_MAX-1,
groups = {cracky = 3, oddly_breakable_by_hand = 3, not_cuttable=1},
sounds = default.node_sound_glass_defaults(),
})
-- Craft
minetest.register_craft({
output = "darkage:glass 1",
recipe = {
{"darkage:glow_glass"},
}
})
-- Recycling
minetest.register_craft({
output = "darkage:glow_glass 1",
recipe = {
{"darkage:glass"},
{"default:torch"},
}
})
--[[
Round Glass
By Semmett9 aka Infinatum
]]
minetest.register_node("darkage:glass_round", {
description = "Round Glass",
drawtype = "glasslike",
tiles = { "darkage_glass_round.png" },
paramtype = "light",
use_texture_alpha = true,
sunlight_propagates = true,
sounds = default.node_sound_glass_defaults(),
groups = {cracky=3,oddly_breakable_by_hand=3},
})
minetest.register_craft({
output = "darkage:glass_round 8",
recipe = {
{"default:steel_ingot", "default:glass", "default:steel_ingot"},
{"default:glass", "default:glass", "default:glass"},
{"default:steel_ingot", "default:glass", "default:steel_ingot"},
}
})
-- If unifieddyes installed provide a colorizeable variant
if minetest.get_modpath("unifieddyes") then
minetest.register_node("darkage:milk_glass_round", {
description = "Milky Medieval Round Glass (Good for colorization)",
drawtype = "glasslike",
tiles = {"darkage_milk_glass_round.png"},
use_texture_alpha=true,
paramtype = "light",
paramtype2 = "color",
palette = "unifieddyes_palette.png",
sunlight_propagates = true,
groups = {cracky = 3, oddly_breakable_by_hand = 3, not_cuttable=1, ud_param2_colorable = 1},
sounds = default.node_sound_glass_defaults(),
after_dig_node = unifieddyes.after_dig_node
})
-- Craft
minetest.register_craft({
output = "darkage:milk_glass_round 1",
type = "shapeless",
recipe = {"darkage:glass_round", "dye:white"}
})
-- Recycling
minetest.register_craft({
output = "darkage:glass_round 1",
recipe = {{"darkage:milk_glass_round"}}
})
end
--[[
Square glass
By Semmett9 aka Infinatum
]]
minetest.register_node("darkage:glass_square", {
description = "Square Glass",
drawtype = "glasslike",
tiles = { "darkage_glass_square.png" },
paramtype = "light",
use_texture_alpha = true,
sunlight_propagates = true,
sounds = default.node_sound_glass_defaults(),
groups = {cracky=3,oddly_breakable_by_hand=3},
})
minetest.register_craft({
output = "darkage:glass_square 8",
recipe = {
{"default:glass", "default:steel_ingot", "default:glass"},
{"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"},
{"default:glass", "default:steel_ingot", "default:glass"},
}
})
-- If unifieddyes installed provide a colorizeable variant
if minetest.get_modpath("unifieddyes") then
minetest.register_node("darkage:milk_glass_square", {
description = "Milky Medieval Square Glass (Good for colorization)",
drawtype = "glasslike",
tiles = {"darkage_milk_glass_square.png"},
use_texture_alpha=true,
paramtype = "light",
paramtype2 = "color",
palette = "unifieddyes_palette.png",
sunlight_propagates = true,
groups = {cracky = 3, oddly_breakable_by_hand = 3, not_cuttable=1, ud_param2_colorable = 1},
sounds = default.node_sound_glass_defaults(),
after_dig_node = unifieddyes.after_dig_node
})
-- Craft
minetest.register_craft({
output = "darkage:milk_glass_square 1",
type = "shapeless",
recipe = {"darkage:glass_square", "dye:white"}
})
-- Recycling
minetest.register_craft({
output = "darkage:glass_square 1",
recipe = {{"darkage:milk_glass_square"}}
})
end

692
init.lua
View File

@ -1,254 +1,24 @@
print (" ---- Dark Age Version 1.2 is Loading! ---- ")
-- Commend this lines if you don't like some of this features
dofile(minetest.get_modpath("darkage").."/mapgen.lua")
dofile(minetest.get_modpath("darkage").."/building.lua")
dofile(minetest.get_modpath("darkage").."/furniture.lua")
dofile(minetest.get_modpath("darkage").."/aliases.lua")
if minetest.get_modpath("moreblocks") then
dofile(minetest.get_modpath("darkage").."/stairsplus.lua")--only if moreblocks installed
else
dofile(minetest.get_modpath("darkage").."/stairs.lua")
end
----------
-- Items
----------
minetest.log("action"," ---- Dark Age Version 1.3 is Loading! ---- ")
minetest.register_node("darkage:adobe", {
description = "Adobe",
tiles = {"darkage_adobe.png"},
is_ground_content = true,
groups = {crumbly=3},
sounds = default.node_sound_sand_defaults(),
})
darkage = {}; -- Create darkage namespace
minetest.register_node("darkage:basalt", {
description = "Basalt",
tiles = {"darkage_basalt.png"},
is_ground_content = true,
drop = 'darkage:basalt_cobble',
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
darkage.formbg = (default.gui_bg or "")..
(default.gui_bg_img or "")..
(default.gui_slots or "")
minetest.register_node("darkage:basalt_cobble", {
description = "Basalt Cobble",
tiles = {"darkage_basalt_cobble.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
local MODPATH = minetest.get_modpath("darkage")..DIR_DELIM
minetest.register_node("darkage:chalk", {
description = "Chalk",
tiles = {"darkage_chalk.png"},
is_ground_content = true,
drop = 'darkage:chalk_powder 2',
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults()
})
dofile(MODPATH.."nodes.lua")
dofile(MODPATH.."glass.lua")
dofile(MODPATH.."mapgen.lua")
dofile(MODPATH.."building.lua")
dofile(MODPATH.."furniture.lua")
dofile(MODPATH.."aliases.lua")
dofile(MODPATH.."walls.lua")
minetest.register_node("darkage:cobble_with_plaster", {
description = "Cobblestone With Plaster",
tiles = {"darkage_cobble_with_plaster_D.png", "darkage_cobble_with_plaster_B.png", "darkage_cobble_with_plaster_C.png",
"darkage_cobble_with_plaster_A.png", "default_cobble.png", "darkage_chalk.png"},
is_ground_content = true,
paramtype2 = "facedir",
drop = 'default:cobble',
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
dofile(MODPATH.."stairs_functions.lua")
dofile(MODPATH.."stairs.lua")
minetest.register_node("darkage:desert_stone_with_iron", {
description = "Desert Iron Ore",
tiles = {"default_desert_stone.png^darkage_mineral_iron.png"},
is_ground_content = true,
groups = {cracky=3},
drop = 'default:iron_lump',
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("darkage:darkdirt", {
description = "Dark Dirt",
tiles = {"darkage_darkdirt.png"},
is_ground_content = true,
groups = {crumbly=2},
sounds = default.node_sound_dirt_defaults(),
})
minetest.register_node("darkage:dry_leaves", {
description = "Dry Leaves",
tiles = {"darkage_dry_leaves.png"},
is_ground_content = true,
paramtype = "light",
groups = {snappy=3, flammable=2},
sounds = default.node_sound_leaves_defaults()
})
minetest.register_node("darkage:gneiss", {
description = "Gneiss",
tiles = {"darkage_gneiss.png"},
is_ground_content = true,
groups = {cracky=3},
drop = {
max_items = 1,
items = {
{
-- player will get cobbles with 1/3 chance
items = {'darkage:gneiss_cobble'},
rarity = 3,
},
{
items = {'darkage:gneiss'},
}
}
},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:gneiss_cobble", {
description = "Gneiss Cobble",
tiles = {"darkage_gneiss_cobble.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:marble", {
description = "Marble",
tiles = {"darkage_marble.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:mud", {
description = "Mud",
tiles = {"darkage_mud_up.png","darkage_mud.png"},
is_ground_content = true,
groups = {crumbly=3},
drop = 'darkage:mud_lump 4',
sounds = default.node_sound_dirt_defaults({
footstep = "",
}),
})
minetest.register_node("darkage:ors", {
description = "Old Red Sandstone",
tiles = {"darkage_ors.png"},
is_ground_content = true,
drop = 'darkage:ors_cobble',
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:ors_cobble", {
description = "Old Red Sandstone Cobble",
tiles = {"darkage_ors_cobble.png"},
is_ground_content = true,
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:serpentine", {
description = "Serpentine",
tiles = {"darkage_serpentine.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:shale", {
description = "Shale",
tiles = {"darkage_shale.png","darkage_shale.png","darkage_shale_side.png"},
is_ground_content = true,
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:schist", {
description = "Schist",
tiles = {"darkage_schist.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:silt", {
description = "Silt",
tiles = {"darkage_silt.png"},
is_ground_content = true,
groups = {crumbly=3},
drop = 'darkage:silt_lump 4',
sounds = default.node_sound_dirt_defaults({
footstep = "",
}),
})
minetest.register_node("darkage:slate", {
description = "Slate",
tiles = {"darkage_slate.png","darkage_slate.png","darkage_slate_side.png"},
is_ground_content = true,
drop = 'darkage:slate_cobble',
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:slate_cobble", {
description = "Slate Cobble",
tiles = {"darkage_slate_cobble.png"},
is_ground_content = true,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:slate_tile", {
description = "Slate Tile",
tiles = {"darkage_slate_tile.png"},
is_ground_content = true,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:straw", {
description = "Straw",
tiles = {"darkage_straw.png"},
is_ground_content = true,
groups = {snappy=3, flammable=2},
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node("darkage:stone_brick", {
description = "Stone Brick",
tiles = {"darkage_stone_brick.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:straw_bale", {
description = "Straw Bale",
tiles = {"darkage_straw_bale.png"},
is_ground_content = true,
drop = 'darkage:straw 4',
groups = {snappy=2, flammable=2},
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node("darkage:marble", {
description = "Marble",
tiles = {"darkage_marble.png"},
is_ground_content = true,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:marble_tile", {
description = "Marble Tile",
tiles = {"darkage_marble_tile.png"},
is_ground_content = true,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
---------------
-- Crafts Items
@ -279,168 +49,90 @@ minetest.register_craftitem("darkage:iron_stick", {
----------
minetest.register_craft({
output = 'darkage:adobe 4',
output = "darkage:adobe 4",
recipe = {
{'default:sand','default:sand'},
{'default:clay_lump','darkage:straw'},
{"default:sand", "default:sand"},
{"default:clay_lump", "farming:straw"},
}
})
minetest.register_craft({
output = 'darkage:basalt_cobble 4',
recipe = {
{'default:cobble','default:cobble'},
{'default:coal_lump','default:coal_lump'},
}
})
minetest.register_craft({
output = 'darkage:cobble_with_plaster 2',
recipe = {
{'default:cobble','darkage:chalk_powder'},
{'default:cobble','darkage:chalk_powder'},
}
})
minetest.register_craft({
output = 'darkage:chalk 2',
recipe = {
{'darkage:chalk_powder','darkage:chalk_powder'},
{'darkage:chalk_powder','darkage:chalk_powder'},
}
})
minetest.register_craft({
output = 'darkage:cobble_with_plaster 2',
recipe = {
{'darkage:chalk_powder','default:cobble'},
{'darkage:chalk_powder','default:cobble'},
}
})
minetest.register_craft({
output = 'darkage:darkdirt 4',
recipe = {
{'default:dirt','default:dirt'},
{'default:gravel','default:gravel'},
}
})
minetest.register_craft({
output = 'darkage:mud 3',
recipe = {
{'default:dirt','default:dirt'},
{'default:clay_lump','darkage:silt_lump'},
}
})
minetest.register_craft({
output = 'darkage:mud',
recipe = {
{'darkage:mud_lump','darkage:mud_lump'},
{'darkage:mud_lump','darkage:mud_lump'},
}
})
minetest.register_craft({
output = 'darkage:ors 4',
recipe = {
{'default:sandstone','default:sandstone'},
{'default:iron_lump','default:sandstone'},
}
})
minetest.register_craft({
output = 'darkage:silt 3',
recipe = {
{'default:sand','default:sand'},
{'default:clay_lump','default:clay_lump'},
}
})
minetest.register_craft({
output = 'darkage:silt',
recipe = {
{'darkage:silt_lump','darkage:silt_lump'},
{'darkage:silt_lump','darkage:silt_lump'},
}
})
minetest.register_craft({
output = 'darkage:slate_tile 2',
recipe = {
{'darkage:slate_cobble','darkage:slate_cobble'},
{'darkage:slate_cobble','darkage:slate_cobble'},
}
})
minetest.register_craft({
output = 'darkage:stone_brick 9',--changed bacause conflicts with moreblocks
recipe = {
{'default:cobble','default:cobble','default:cobble'},--changed bacause conflicts with moreblocks
{'default:cobble','default:cobble','default:cobble'},--changed bacause conflicts with moreblocks
{'default:cobble','default:cobble','default:cobble'},--changed bacause conflicts with moreblocks
}
})
minetest.register_craft({
output = 'darkage:straw 2',
recipe = {
{'default:dry_shrub','default:dry_shrub'},
{'default:dry_shrub','default:dry_shrub'},
}
})
minetest.register_craft({
output = 'darkage:straw 2',
recipe = {
{'darkage:dry_leaves','darkage:dry_leaves'},
{'darkage:dry_leaves','darkage:dry_leaves'},
}
})
if minetest.get_modpath("farming") then
--only if farming installed
minetest.register_craft({
output = 'darkage:straw 4',
recipe = {
{'farming:wheat_harvested','farming:wheat_harvested'},
{'farming:wheat_harvested','farming:wheat_harvested'},
}
})
else
--nothing else
end
minetest.register_craft({
output = 'darkage:straw_bale',
recipe = {
{'darkage:straw','darkage:straw'},
{'darkage:straw','darkage:straw'},
}
})
minetest.register_craft({
output = 'darkage:iron_stick 4',
recipe = {
{'default:steel_ingot'},
}
})
-- Cookings
--[[
Basalt
]]
minetest.register_craft({
type = "cooking",
output = "darkage:basalt",
recipe = "darkage:basalt_cobble",
recipe = "darkage:basalt_rubble",
})
minetest.register_craft({
type = "cooking",
output = "darkage:dry_leaves",
recipe = "default:leaves",
output = "darkage:basalt_rubble 4",
recipe = {
{"default:cobble", "default:cobble"},
{"default:coal_lump", "default:coal_lump"},
}
})
minetest.register_craft({
output = "darkage:basalt_brick 4",
recipe = {
{"darkage:basalt", "darkage:basalt"},
{"darkage:basalt", "darkage:basalt"},
}
})
minetest.register_craft({
output = "darkage:basalt_block 9",
recipe = {
{"darkage:basalt", "darkage:basalt", "darkage:basalt"},
{"darkage:basalt", "darkage:basalt", "darkage:basalt"},
{"darkage:basalt", "darkage:basalt", "darkage:basalt"},
}
})
minetest.register_craft({
output = "darkage:cobble_with_plaster 2",
recipe = {
{"default:cobble", "darkage:chalk_powder"},
{"default:cobble", "darkage:chalk_powder"},
}
})
minetest.register_craft({
output = "darkage:cobble_with_plaster 2",
recipe = {
{"darkage:chalk_powder", "default:cobble"},
{"darkage:chalk_powder", "default:cobble"},
}
})
minetest.register_craft({
output = "darkage:chalked_bricks_with_plaster 2",
recipe = {
{"darkage:chalked_bricks", "darkage:chalk_powder"},
{"darkage:chalked_bricks", "darkage:chalk_powder"},
}
})
minetest.register_craft({
output = "darkage:chalked_bricks_with_plaster 2",
recipe = {
{"darkage:chalk_powder", "darkage:chalked_bricks"},
{"darkage:chalk_powder", "darkage:chalked_bricks"},
}
})
minetest.register_craft({
output = "darkage:darkdirt 4",
recipe = {
{"default:dirt", "default:dirt"},
{"default:gravel", "default:gravel"},
}
})
--[[
Gneiss
]]
minetest.register_craft({
type = "cooking",
output = "darkage:gneiss",
@ -450,13 +142,164 @@ minetest.register_craft({
minetest.register_craft({
type = "cooking",
output = "darkage:gneiss",
recipe = "darkage:gneiss_cobble",
recipe = "darkage:gneiss_rubble",
})
minetest.register_craft({
output = "darkage:gneiss_brick 4",
recipe = {
{"darkage:gneiss", "darkage:gneiss"},
{"darkage:gneiss", "darkage:gneiss"},
}
})
minetest.register_craft({
output = "darkage:gneiss_block 9",
recipe = {
{"darkage:gneiss", "darkage:gneiss", "darkage:gneiss"},
{"darkage:gneiss", "darkage:gneiss", "darkage:gneiss"},
{"darkage:gneiss", "darkage:gneiss", "darkage:gneiss"},
}
})
minetest.register_craft({
output = "darkage:mud 3",
recipe = {
{"default:dirt", "default:dirt"},
{"default:clay_lump", "darkage:silt_lump"},
}
})
minetest.register_craft({
output = "darkage:mud",
recipe = {
{"darkage:mud_lump", "darkage:mud_lump"},
{"darkage:mud_lump", "darkage:mud_lump"},
}
})
minetest.register_craft({
output = "darkage:marble_tile 2",
recipe = {
{"darkage:marble", "darkage:marble"},
{"darkage:marble", "darkage:marble"},
}
})
--[[
Old Red Sandstone
]]
minetest.register_craft({
type = "cooking",
output = "darkage:ors",
recipe = "darkage:ors_cobble",
recipe = "darkage:ors_rubble",
})
minetest.register_craft({
output = "darkage:ors 4",
recipe = {
{"default:sandstone", "default:sandstone"},
{"default:iron_lump", "default:sandstone"},
}
})
minetest.register_craft({
output = "darkage:ors_brick 4",
recipe = {
{"darkage:ors", "darkage:ors"},
{"darkage:ors", "darkage:ors"},
}
})
minetest.register_craft({
output = "darkage:ors_block 9",
recipe = {
{"darkage:ors", "darkage:ors", "darkage:ors"},
{"darkage:ors", "darkage:ors", "darkage:ors"},
{"darkage:ors", "darkage:ors", "darkage:ors"},
}
})
minetest.register_craft({
output = "darkage:silt 3",
recipe = {
{"default:sand", "default:sand"},
{"default:clay_lump", "default:clay_lump"},
}
})
minetest.register_craft({
output = "darkage:silt",
recipe = {
{"darkage:silt_lump", "darkage:silt_lump"},
{"darkage:silt_lump", "darkage:silt_lump"},
}
})
--[[
Slate
]]
minetest.register_craft({
type = "cooking",
output = "darkage:slate",
recipe = "darkage:slate_rubble",
})
minetest.register_craft({
output = "darkage:slate_brick 4",
recipe = {
{"darkage:slate", "darkage:slate"},
{"darkage:slate", "darkage:slate"},
}
})
minetest.register_craft({
output = "darkage:slate_block 9",
recipe = {
{"darkage:slate", "darkage:slate", "darkage:slate"},
{"darkage:slate", "darkage:slate", "darkage:slate"},
{"darkage:slate", "darkage:slate", "darkage:slate"},
}
})
minetest.register_craft({
output = "darkage:slate_tile 2",
recipe = {
{"darkage:slate_brick", "darkage:slate_brick"},
{"darkage:slate_brick", "darkage:slate_brick"},
}
})
minetest.register_craft({
output = "darkage:stone_brick",
recipe = {
{"default:stone_block"},
}
})
minetest.register_craft({
output = "darkage:straw_bale",
recipe = {
{"farming:straw","farming:straw"},
{"farming:straw","farming:straw"},
}
})
minetest.register_craft({
output = "darkage:iron_stick 4",
recipe = {
{"default:steel_ingot"},
}
})
-- Cookings
minetest.register_craft({
type = "cooking",
output = "darkage:dry_leaves",
recipe = "default:leaves",
})
minetest.register_craft({
@ -480,21 +323,66 @@ minetest.register_craft({
minetest.register_craft({
type = "cooking",
output = "darkage:slate",
recipe = "darkage:slate_cobble",
recipe = "darkage:slate_rubble",
})
-- Desert
minetest.register_craft({
type = "cooking",
output = "darkage:ors_cobble",
output = "darkage:ors_brick",
recipe = "default:desert_stone",
})
-- Tuff
minetest.register_craft({
output = 'default:desert_stone 2',
output = "darkage:tuff 2",
recipe = {
{'default:desert_sand','default:desert_sand'},
{'default:desert_sand','default:desert_sand'},
{"darkage:gneiss", "default:stone"},
{"default:stone", "darkage:gneiss"},
}
})
minetest.register_craft({
type = "cooking",
output = "darkage:tuff",
recipe = "darkage:tuff_rubble",
})
minetest.register_craft({
type = "cooking",
output = "darkage:tuff",
recipe = "darkage:old_tuff_bricks",
})
minetest.register_craft({
output = "darkage:tuff_bricks 4",
recipe = {
{"darkage:tuff", "darkage:tuff"},
{"darkage:tuff", "darkage:tuff"},
}
})
-- Rhyolitic Tuff
minetest.register_craft({
output = "darkage:rhyolitic_tuff 2",
recipe = {
{"darkage:gneiss", "default:desert_stone"},
{"default:desert_stone", "darkage:gneiss"},
}
})
minetest.register_craft({
type = "cooking",
output = "darkage:rhyolitic_tuff",
recipe = "darkage:rhyolitic_tuff_rubble",
})
minetest.register_craft({
output = "darkage:rhyolitic_tuff_bricks 4",
recipe = {
{"darkage:rhyolitic_tuff", "darkage:rhyolitic_tuff"},
{"darkage:rhyolitic_tuff", "darkage:rhyolitic_tuff"},
}
})
minetest.log("action", "[darkage] loaded.")

View File

@ -1,32 +1,50 @@
-- Some local constants to use for mapgen
local c_air = minetest.CONTENT_AIR
local c_ignore = minetest.CONTENT_IGNORE
local c_stone = minetest.get_content_id("default:stone")
local c_water = minetest.get_content_id("default:water_source")
local c_sand = minetest.get_content_id("default:sand")
local c_dirt = minetest.get_content_id("default:dirt")
local c_lawn = minetest.get_content_id("default:dirt_with_grass")
local stone_and_air_assoc = {[c_stone]=true,[c_air]=true} --associative array
--Makes a stratus of rocks
--name of the rock to generate
--wherein kind of node to replace, for example default:stone
--c_wherein id of node to replace, for example minetest.get_content_id("default:stone")
--ca_ceilin associative array
--minp, maxp the corners of the map to be generated
--seed random seed
--stratus_chance inverse probability in a given radius 1:2, 1:3 etc
--radius horizontal radius of the stratus
--radius_y vertical radius of the stratus
--deep how deep can be from the ground
local function generate_stratus(name, wherein, ceilin, ceil, minp, maxp, seed, stratus_chance, radius, radius_y, deep, height_min, height_max)
if maxp.y < height_min or minp.y > height_max then
local function generate_stratus(data, area, name, c_wherein, ca_ceilin, minp, maxp, seed, stratus_chance, radius, radius_y, deep, y_min, y_max)
if maxp.y < y_min
or minp.y > y_max then
return
end
local c_node = minetest.get_content_id(name)
-- it will be only generate a stratus for every 100 m of area
local stratus_per_volume=1
local area=45
local y_min = math.max(minp.y, height_min)
local y_max = math.min(maxp.y, height_max)
local volume = ((maxp.x-minp.x+1)/area)*((y_max-y_min+1)/area)*((maxp.z-minp.z+1)/area)
local area_size = 45
local y_min = math.max(minp.y, y_min)
local y_max = math.min(maxp.y, y_max)
local volume = ((maxp.x-minp.x+1)/area_size)*((y_max-y_min+1)/area_size)*((maxp.z-minp.z+1)/area_size)
local pr = PseudoRandom(seed)
local blocks = math.floor(stratus_per_volume*volume)
print(" <<"..dump(name)..">>");
minetest.log("info", " <<"..name..">>");
if blocks == 0 then
blocks = 1
end
print(" blocks: "..dump(blocks).." in vol: "..dump(volume).." ("..dump(maxp.x-minp.x+1)..","..dump(y_max-y_min+1)..","..dump(maxp.z-minp.z+1)..")")
for i=1,blocks do
local x = pr:next(1,stratus_chance)
if x == 1 then
minetest.log("info", string.format(" blocks: %d in vol: %d (%d,%d,%d)",
blocks, volume, maxp.x-minp.x+1, y_max-y_min+1, maxp.z-minp.z+1))
for i = 1,blocks do
if pr:next(1,stratus_chance) == 1 then
-- TODO deep
local y0=y_max-radius_y+1
if y0 < y_min then
@ -46,88 +64,51 @@ local function generate_stratus(name, wherein, ceilin, ceil, minp, maxp, seed, s
else
z0 = pr:next(minp.z, z0)
end
local p0 = {x=x0, y=y0, z=z0}
local n = minetest.env:get_node(p0).name
local n = data[area:index(x0, y0, z0)]
local i = 0
--print(" upper node "..n)
x = 0
for k, v in ipairs(ceilin) do
if n == v then
x = 1
break
end
end
if x == 1 then
if ca_ceilin[n] then
-- search for the node to replace
--print(" Searching nodes to replace from "..dump(y0-1).." to "..dump(y_min))
for y1=y0-1,y_min,-1 do
p0.y=y1
n = minetest.env:get_node(p0).name
x = 0
for k, v in ipairs(wherein) do
if n == v then
x = 1
break
end
end
if x == 1 then
y0=y1-deep
if y0 < y_min then
y0 = y_min
end
local vi = area:index(x0, y0-1, z0)
for y1 = y0-1,y_min,-1 do
if data[vi] == c_wherein then
y0 = math.max(y1-deep, y_min)
break
end
vi = vi - area.ystride
end
local rx=pr:next(radius/2,radius)+1
local rz=pr:next(radius/2,radius)+1
local ry=pr:next(radius_y/2,radius_y)+1
--print(" area of generation ("..dump(rx)..","..dump(rz)..","..dump(ry)..")")
vi = area:index(x0, y0, z0)
for x1=0,rx do
rz = rz + 3 - pr:next(1,6)
if rz < 1 then
rz = 1
end
local vi = vi + x1
rz = math.max(rz + 3 - pr:next(1,6), 1)
for z1=pr:next(1,3),rz do
local ry0=ry+ pr:next(1,3)
for y1=pr:next(1,3),ry0 do
local x2 = x0+x1
local y2 = y0+y1
local z2 = z0+z1
local p2 = {x=x2, y=y2, z=z2}
n = minetest.env:get_node(p2).name
x = 0
for k, v in ipairs(wherein) do
if n == v then
x = 1
break
end
end
if x == 1 then
if ceil == nil then
minetest.env:set_node(p2, {name=name})
i = i +1
else
local p3 = {p2.x,p2.y+1,p2}
if minetest.env:get_node(p3).name == ceil then
minetest.env:set_node(p2, {name=name})
i = i +1
local vi = vi + z1 * area.zstride
for y1 = pr:next(1,3), ry + pr:next(1,3) do
local vi = vi + y1 * area.ystride
if data[vi] == c_wherein then
data[vi] = c_node
i = i + 1
end
end
end
end
end
end
print(" generated "..dump(i).." blocks in ("..dump(x0)..","..dump(y0)..","..dump(z0)..")")
end
minetest.log("info", " generated "..i.." blocks in ("..x0..","..y0..","..z0..")")
end
end
--print("generate_ore done")
end
local function generate_claylike(name, minp, maxp, seed, chance, minh, maxh, dirt)
local function generate_claylike(data, varea, name, minp, maxp, seed, chance, minh, maxh, needs_dirt)
if maxp.y >= maxh+1 and minp.y <= minh-1 then
local c_ore = minetest.get_content_id(name)
local pr = PseudoRandom(seed)
local divlen = 4
local divs = (maxp.x-minp.x)/divlen+1;
for yy=minh,maxh do
@ -137,30 +118,29 @@ local function generate_claylike(name, minp, maxp, seed, chance, minh, maxh, dir
for divz=0+1,divs-1-1 do
local cx = minp.x + math.floor((divx+0.5)*divlen)
local cz = minp.z + math.floor((divz+0.5)*divlen)
local up = minetest.env:get_node({x=cx,y=yy,z=cz}).name
local down = minetest.env:get_node({x=cx,y=yy-1,z=cz}).name
if ( up == "default:water_source" or up == "air" ) and
( down == "default:sand" or (dirt == 1 and (down == "default:dirt" or down == "default:dirt_with_grass" ))) then
local is_shallow = true
local up = data[varea:index(cx,yy,cz)]
local down = data[varea:index(cx,yy-1,cz)]
if ( up == c_water or up == c_air ) and ( down == c_sand or (needs_dirt and (down == c_dirt or down == c_lawn ))) then
local num_water_around = 0
if minetest.env:get_node({x=cx-divlen*2,y=yy,z=cz}).name == "default:water_source" then
num_water_around = num_water_around + 1 end
if minetest.env:get_node({x=cx+divlen*2,y=yy,z=cz}).name == "default:water_source" then
num_water_around = num_water_around + 1 end
if minetest.env:get_node({x=cx,y=yy,z=cz-divlen*2}).name == "default:water_source" then
num_water_around = num_water_around + 1 end
if minetest.env:get_node({x=cx,y=yy,z=cz+divlen*2}).name == "default:water_source" then
num_water_around = num_water_around + 1 end
if num_water_around >= 3 then
is_shallow = false
if data[varea:index(cx-divlen*2,yy,cz)] == c_water then
num_water_around = num_water_around + 1
end
if is_shallow then
if data[varea:index(cx+divlen*2,yy,cz)] == c_water then
num_water_around = num_water_around + 1
end
if data[varea:index(cx,yy,cz-divlen*2)] == c_water then
num_water_around = num_water_around + 1
end
if data[varea:index(cx,yy,cz+divlen*2)] == c_water then
num_water_around = num_water_around + 1
end
if num_water_around < 3 then
for x1=-divlen,divlen do
for z1=-divlen,divlen do
local p={x=cx+x1,y=yy-1,z=cz+z1}
down = minetest.env:get_node(p).name
if down == "default:sand" or (dirt == 1 and (down == "default:dirt" or down == "default:dirt_with_grass")) then
minetest.env:set_node(p, {name=name})
local i = varea:index(cx+x1,yy-1,cz+z1)
local down = data[i]
if down == c_sand or (needs_dirt and (down == c_dirt or down == c_lawn)) then
data[i] = c_ore
end
end
end
@ -173,83 +153,155 @@ local function generate_claylike(name, minp, maxp, seed, chance, minh, maxh, dir
end
end
local function generate_ore(name, wherein, minp, maxp, seed, chunks_per_volume, chunk_size, ore_per_chunk, height_min, height_max)
if maxp.y < height_min or minp.y > height_max then
return
end
local y_min = math.max(minp.y, height_min)
local y_max = math.min(maxp.y, height_max)
local volume = (maxp.x-minp.x+1)*(y_max-y_min+1)*(maxp.z-minp.z+1)
local pr = PseudoRandom(seed)
local num_chunks = math.floor(chunks_per_volume * volume)
local inverse_chance = math.floor(chunk_size*chunk_size*chunk_size / ore_per_chunk)
--print("generate_ore num_chunks: "..dump(num_chunks))
for i=1,num_chunks do
local y0 = pr:next(y_min, y_max-chunk_size+1)
if y0 >= height_min and y0 <= height_max then
local x0 = pr:next(minp.x, maxp.x-chunk_size+1)
local z0 = pr:next(minp.z, maxp.z-chunk_size+1)
local p0 = {x=x0, y=y0, z=z0}
for x1=0,chunk_size-1 do
for y1=0,chunk_size-1 do
for z1=0,chunk_size-1 do
if pr:next(1,inverse_chance) == 1 then
local x2 = x0+x1
local y2 = y0+y1
local z2 = z0+z1
local p2 = {x=x2, y=y2, z=z2}
if minetest.env:get_node(p2).name == wherein then
minetest.env:set_node(p2, {name=name})
end
end
end
end
end
end
end
--print("generate_ore done")
end
local mgparams = minetest.get_mapgen_params()
local seed = mgparams.seed
minetest.register_on_generated(function(minp, maxp, seed)
-- Generate stratus
print("DARKAGE: Generate stratus");
generate_ore("darkage:desert_stone_with_iron", "default:desert_stone", minp, maxp, seed+0, 1/7/7/7, 3, 5, -15, 40)
generate_claylike("darkage:mud", minp, maxp, seed+1, 4, 0, 2, 0)
generate_claylike("darkage:silt", minp, maxp, seed+2, 4, -1, 1, 1)
generate_stratus("darkage:chalk",
{"default:stone"},
{"default:stone","air"}, nil,
minp, maxp, seed+3, 4, 25, 8, 0, -20, 50)
generate_stratus("darkage:ors",
{"default:stone"},
{"default:stone","air","default:water_source"}, nil,
minp, maxp, seed+4, 4, 25, 7, 50, -200, 500)
generate_stratus("darkage:shale",
{"default:stone"},
{"default:stone","air"}, nil,
--[[ Generate desert stone with iron in derset.
minetest.register_ore({
ore_type = "scatter",
ore = "darkage:desert_stone_with_iron",
wherein = "default:desert_stone",
clust_scarcity = 12 * 12 * 12,
clust_num_ores = 3,
clust_size = 2,
y_min = -1,
y_max = 200,
})
]]--
-- Generate chalk inside mountains
minetest.register_ore({
ore_type = "sheet",
ore = "darkage:chalk",
wherein = {"default:stone"},
column_height_max = 30,
column_height_min = 20,
y_min = -20,
y_max = 50,
noise_threshold = 0.45,
noise_params = {
offset = 0.35,
scale = 0.2,
spread = {x = 30, y = 30, z = 30},
octaves = 1,
persistence = 0.6
},
})
minetest.register_ore({
ore_type = "sheet",
ore = "darkage:tuff",
wherein = {"default:stone", "default:needs_dirt", "default:gravel", "default:stone_with_coal"},
column_height_max = 20,
column_height_min = 15,
y_min = -200,
y_max = 200,
noise_threshold = 0.5,
noise_params = {
offset = 0.35,
scale = 0.19,
seed = seed+12,
spread = {x = 45, y = 45, z = 45},
octaves = 1,
persistence = 0.6
},
})
minetest.register_ore({
ore_type = "sheet",
ore = "darkage:rhyolitic_tuff",
wherein = {"default:stone", "default:needs_dirt", "default:gravel", "default:stone_with_coal"},
column_height_max = 20,
column_height_min = 15,
y_min = -2000,
y_max = 200,
noise_threshold = 0.53,
noise_params = {
offset = 0.35,
scale = 0.2,
seed = seed+13,
spread = {x = 100, y = 100, z = 100},
octaves = 1,
persistence = 0.6
},
})
--old red sandstone
minetest.register_ore({
ore_type = "sheet",
ore = "darkage:ors",
wherein = {"default:stone", "default:dirt", "default:gravel", "default:stone_with_coal"},
column_height_max = 8,
column_height_min = 6,
y_min = -200,
y_max = 500,
noise_threshold = 0.49,
noise_params = {
offset = 0.28,
scale = 0.3,
seed = seed+4,
spread = {x = 10, y = 10, z = 10},
octaves = 1,
persistence = 0.6
},
})
-- Generate strati
local dbuf = {} --for mapgen
local function generate_strati(minp, maxp, seed)
local t1 = os.clock()
local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
local area = VoxelArea:new({MinEdge = emin, MaxEdge = emax})
local data = vm:get_data(dbuf)
generate_claylike(data, area, "darkage:mud", minp, maxp, seed+1, 4, 0, 2, false)
generate_claylike(data, area, "darkage:silt", minp, maxp, seed+2, 4, -1, 1, true)
-- TODO: Maybe realize the following stuff with register ore. somehow.
generate_stratus(data, area, "darkage:shale",
c_stone,
stone_and_air_assoc,
minp, maxp, seed+5, 4, 23, 7, 50, -50, 20)
generate_stratus("darkage:slate",
{"default:stone"},
{"default:stone","air"}, nil,
generate_stratus(data, area, "darkage:slate",
c_stone,
stone_and_air_assoc,
minp, maxp, seed+6, 6, 23, 5, 50, -500, 0)
generate_stratus("darkage:schist",
{"default:stone"},
{"default:stone","air"}, nil,
generate_stratus(data, area, "darkage:schist",
c_stone,
stone_and_air_assoc,
minp, maxp, seed+7, 6, 19, 6, 50, -31000, -10)
generate_stratus("darkage:basalt",
{"default:stone"},
{"default:stone","air"}, nil,
generate_stratus(data, area, "darkage:basalt",
c_stone,
stone_and_air_assoc,
minp, maxp, seed+8, 5, 20, 5, 20, -31000, -50)
generate_stratus("darkage:marble",
{"default:stone"},
{"default:stone","air"}, nil,
generate_stratus(data, area, "darkage:marble",
c_stone,
stone_and_air_assoc,
minp, maxp, seed+9, 4, 25, 6, 50, -31000, -75)
generate_stratus("darkage:serpentine",
{"default:stone"},
{"default:stone","air"}, nil,
generate_stratus(data, area, "darkage:serpentine",
c_stone,
stone_and_air_assoc,
minp, maxp, seed+10, 4, 28, 8, 50, -31000, -350)
generate_stratus("darkage:gneiss",
{"default:stone"},
{"default:stone","air"}, nil,
generate_stratus(data, area, "darkage:gneiss",
c_stone,
stone_and_air_assoc,
minp, maxp, seed+11, 4, 15, 5, 50, -31000, -250)
end)
vm:set_data(data)
vm:write_to_map()
minetest.log("info", string.format("[darkage] Generated Strati after %.2fs.", os.clock() - t1))
end
minetest.register_on_generated(generate_strati)

470
nodes.lua Normal file
View File

@ -0,0 +1,470 @@
local function get_node_drops(fullRockNode, cobbleRockNode)
return {
max_items = 1,
items = {
{
-- drop the cobble variant with 1/3 chance
items = {cobbleRockNode},
rarity = 3,
},
{
-- drop the full node with 2/3 chance
items = {fullRockNode},
}
}
}
end
----------
-- Nodes
----------
minetest.register_node("darkage:adobe", {
description = "Adobe",
tiles = {"darkage_adobe.png"},
is_ground_content = true,
groups = {crumbly=3},
sounds = default.node_sound_sand_defaults(),
})
--[[
Basalt
]]
minetest.register_node("darkage:basalt", {
description = "Basalt",
tiles = {"darkage_basalt.png"},
is_ground_content = true,
drop = get_node_drops("darkage:basalt","darkage:basalt_rubble"),
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:basalt_rubble", {
description = "Basalt Rubble",
tiles = {"darkage_basalt_rubble.png"},
is_ground_content = false,
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:basalt_brick", {
description = "Basalt Brick",
tiles = {"darkage_basalt_brick.png"},
is_ground_content = false,
groups = {cracky = 2, stone = 1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:basalt_block", {
description = "Basalt Block",
tiles = {"darkage_basalt_block.png"},
is_ground_content = false,
groups = {cracky = 2, stone = 1},
sounds = default.node_sound_stone_defaults()
})
--[[
Chalk
]]
minetest.register_node("darkage:chalk", {
description = "Chalk",
tiles = {"darkage_chalk.png"},
is_ground_content = true,
drop = 'darkage:chalk_powder 2',
groups = {crumbly=2, cracky=2, not_cuttable=1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:cobble_with_plaster", {
description = "Cobblestone with Plaster",
tiles = {"darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_D.png)", "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_B.png)",
"darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_C.png)", "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_A.png)",
"default_cobble.png", "darkage_chalk.png"},
is_ground_content = false,
paramtype2 = "facedir",
drop = 'default:cobble',
groups = {cracky=3, not_cuttable=1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("darkage:chalked_bricks_with_plaster", {
description = "Chalked Bricks with Plaster",
tiles = {"darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_D.png)", "darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_B.png)",
"darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_C.png)", "darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_A.png)",
"darkage_chalked_bricks.png", "darkage_chalk.png"},
is_ground_content = false,
paramtype2 = "facedir",
drop = 'default:cobble',
groups = {cracky=3, not_cuttable=1},
sounds = default.node_sound_stone_defaults(),
})
--lbm to convert the old cobble_with_plaster to the new chalked_bricks to keep texture consistent
minetest.register_lbm({
name="darkage:convert_cobble_with_plaster",
nodenames= "darkage:cobble_with_plaster",
run_at_every_load = false,
action = function(pos,node)
node.name = "darkage:chalked_bricks_with_plaster"
minetest.swap_node(pos, node)
end
})
--[[minetest.register_node("darkage:desert_stone_with_iron", {
description = "Desert Iron Ore",
tiles = {"default_desert_stone.png^default_mineral_iron.png"},
is_ground_content = true,
groups = {cracky=3, not_cuttable=1},
drop = 'default:iron_lump',
sounds = default.node_sound_stone_defaults(),
})
]]--
minetest.register_node("darkage:darkdirt", {
description = "Dark Dirt",
tiles = {"darkage_darkdirt.png"},
is_ground_content = false,
groups = {crumbly=2, not_cuttable=1},
sounds = default.node_sound_dirt_defaults(),
})
minetest.register_node("darkage:dry_leaves", {
description = "Dry Leaves",
tiles = {"darkage_dry_leaves.png"},
is_ground_content = false,
paramtype = "light",
groups = {snappy=3, flammable=2},
sounds = default.node_sound_leaves_defaults()
})
--[[
Gneiss
]]
minetest.register_node("darkage:gneiss", {
description = "Gneiss",
tiles = {"darkage_gneiss.png"},
is_ground_content = true,
groups = {cracky = 3, stone = 1},
drop = get_node_drops("darkage:gneiss", "darkage:gneiss_rubble"),
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:gneiss_rubble", {
description = "Gneiss Rubble",
tiles = {"darkage_gneiss_rubble.png"},
is_ground_content = false,
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:gneiss_brick", {
description = "Gneiss Brick",
tiles = {"darkage_gneiss_brick.png"},
is_ground_content = false,
groups = {cracky = 2, stone = 1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:gneiss_block", {
description = "Gneiss Block",
tiles = {"darkage_gneiss_block.png"},
is_ground_content = false,
groups = {cracky = 2, stone = 1},
sounds = default.node_sound_stone_defaults()
})
--[[
Marble
]]
minetest.register_node("darkage:marble", {
description = "Marble",
tiles = {"darkage_marble.png"},
is_ground_content = true,
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:marble_tile", {
description = "Marble Tile",
tiles = {"darkage_marble_tile.png"},
is_ground_content = false,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:mud", {
description = "Mud",
tiles = {"darkage_mud_up.png","darkage_mud.png"},
is_ground_content = true,
groups = {crumbly=3},
drop = 'darkage:mud_lump 4',
sounds = default.node_sound_dirt_defaults({
footstep = "",
}),
})
--[[
Old Red Sandstone
]]
minetest.register_node("darkage:ors", {
description = "Old Red Sandstone",
tiles = {"darkage_ors.png"},
is_ground_content = true,
drop = "darkage:ors_rubble",
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:ors_rubble", {
description = "Old Red Sandstone Rubble",
tiles = {"darkage_ors_rubble.png"},
is_ground_content = true,
groups = {cracky = 3, crumbly=2, stone = 2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:ors_brick", {
description = "Old Red Sandstone Brick",
tiles = {"darkage_ors_brick.png"},
is_ground_content = false,
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:ors_block", {
description = "Old Red Sandstone Block",
tiles = {"darkage_ors_block.png"},
is_ground_content = false,
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:serpentine", {
description = "Serpentine",
tiles = {"darkage_serpentine.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:shale", {
description = "Shale",
tiles = {"darkage_shale.png","darkage_shale.png","darkage_shale_side.png"},
is_ground_content = true,
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:schist", {
description = "Schist",
tiles = {"darkage_schist.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:silt", {
description = "Silt",
tiles = {"darkage_silt.png"},
is_ground_content = true,
groups = {crumbly=3},
drop = 'darkage:silt_lump 4',
sounds = default.node_sound_dirt_defaults({
footstep = "",
}),
})
--[[
Slate
]]
minetest.register_node("darkage:slate", {
description = "Slate",
tiles = {"darkage_slate.png","darkage_slate.png","darkage_slate_side.png"},
is_ground_content = true,
drop = 'darkage:slate_rubble',
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:slate_rubble", {
description = "Slate Rubble",
tiles = {"darkage_slate_rubble.png"},
is_ground_content = false,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:slate_tile", {
description = "Slate Tile",
tiles = {"darkage_slate_tile.png"},
is_ground_content = false,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:slate_block", {
description = "Slate Block",
tiles = {"darkage_slate_block.png"},
is_ground_content = false,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:slate_brick", {
description = "Slate Brick",
tiles = {"darkage_slate_brick.png"},
is_ground_content = false,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
-- Removed straw, because its in minetst game. Registering alias for compatibility reasons
minetest.register_alias("darkage:straw", "farming:straw")
minetest.register_node("darkage:stone_brick", {
description = "Stone Brick",
tiles = {"darkage_stone_brick.png"},
is_ground_content = false,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:straw_bale", {
description = "Straw Bale",
tiles = {"darkage_straw_bale.png"},
is_ground_content = false,
drop = 'farming:straw 4',
groups = {snappy=2, flammable=2},
sounds = default.node_sound_leaves_defaults(),
})
--[[
Tuff
]]
minetest.register_node("darkage:tuff", {
description = "Tuff",
tiles = {"darkage_tuff.png"},
is_ground_content = true,
legacy_mineral = true,
groups = {cracky = 3, stone = 1},
drop = {
max_items = 1,
items = {
{
-- player get tuff node if he is lucky :)
items = {'darkage:tuff'},
rarity = 3,
},
{
-- player will get rubble with 2/3 chance
items = {'darkage:tuff_rubble'},
}
}
},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:tuff_bricks", {
description = "Tuff Bricks",
tiles = {"darkage_tuff_bricks.png"},
is_ground_content = false,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
-- abm to turn Tuff bricks to old Tuff bricks if water is nearby
minetest.register_abm({
nodenames = {"darkage:tuff_bricks"},
neighbors = {"group:water"},
interval = 16,
chance = 200,
catch_up = false,
action = function(pos, node)
minetest.set_node(pos, {name = "darkage:old_tuff_bricks"})
end
})
minetest.register_node("darkage:tuff_rubble", {
description = "Tuff Rubble",
tiles = {"darkage_tuff_rubble.png"},
groups = {crumbly = 2, falling_node = 1},
sounds = default.node_sound_gravel_defaults(),
})
--[[
Rhyolitic Tuff
]]
minetest.register_node("darkage:rhyolitic_tuff", {
description = "Rhyolitic Tuff",
tiles = {"darkage_rhyolitic_tuff.png"},
is_ground_content = true,
legacy_mineral = true,
groups = {cracky = 3, stone = 1},
drop = {
max_items = 1,
items = {
{
-- player get tuff node if he is lucky :)
items = {'darkage:rhyolitic_tuff'},
rarity = 3,
},
{
-- player will get rubble with 2/3 chance
items = {'darkage:rhyolitic_tuff_rubble'},
}
}
},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:rhyolitic_tuff_bricks", {
description = "Rhyolitic Tuff Bricks",
tiles = {"darkage_rhyolitic_tuff_bricks.png"},
is_ground_content = false,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:old_tuff_bricks", {
description = "Old Tuff Bricks",
tiles = {"darkage_old_tuff_bricks.png"},
is_ground_content = false,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:rhyolitic_tuff_rubble", {
description = "Rhyolitic Tuff Rubble",
tiles = {"darkage_rhyolitic_tuff_rubble.png"},
groups = {crumbly = 2, falling_node = 1},
sounds = default.node_sound_gravel_defaults(),
})
--[[
add a node using the cobble texture that was introduced in minetest 0.4.dev-20120408 and got removed in 0.4.7
It has a nice contrast together the stone bricks, so I think it could get usefull.
]]
minetest.register_node("darkage:chalked_bricks", {
description = "Chalked Brick",
tiles = {"darkage_chalked_bricks.png"},
is_ground_content = false,
groups = {cracky = 2, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_craft({
output = "darkage:chalked_bricks 4",
recipe = {
{"default:stone", "default:stone", "darkage:chalk_powder"},
{"darkage:chalk_powder", "darkage:chalk_powder", "darkage:chalk_powder"},
{"default:stone", "darkage:chalk_powder", "default:stone"},
}
})

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 635 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 609 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 732 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 151 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 535 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 903 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 555 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 555 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 656 B

BIN
screenshot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 KiB

View File

@ -1,155 +1,29 @@
darkage = {}
function darkage.register_stairs(modname, item, groups, images, description)
local recipeitem = modname..":"..item
local itemname = modname..":stair_"..item
minetest.register_node(itemname, {
description = description.." stair",
drawtype = "nodebox",
tiles = images,
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = true,
groups = groups,
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0, 0.5},
{-0.5, 0, 0, 0.5, 0.5, 0.5},
},
},
})
-- Registration of Stairs (Alphabetical order)
darkage.register_stairs("darkage:basalt")
darkage.register_stairs("darkage:basalt_brick")
darkage.register_stairs("darkage:basalt_rubble")
darkage.register_stairs("darkage:chalked_bricks")
darkage.register_stairs("darkage:gneiss")
darkage.register_stairs("darkage:gneiss_brick")
darkage.register_stairs("darkage:gneiss_rubble")
darkage.register_stairs("darkage:marble")
darkage.register_stairs("darkage:marble_tile")
darkage.register_stairs("darkage:old_tuff_bricks")
darkage.register_stairs("darkage:ors")
darkage.register_stairs("darkage:ors_brick")
darkage.register_stairs("darkage:ors_rubble")
darkage.register_stairs("darkage:rhyolitic_tuff")
darkage.register_stairs("darkage:rhyolitic_tuff_bricks")
darkage.register_stairs("darkage:schist")
darkage.register_stairs("darkage:serpentine")
darkage.register_stairs("darkage:shale")
darkage.register_stairs("darkage:slate")
darkage.register_stairs("darkage:slate_brick")
darkage.register_stairs("darkage:slate_rubble")
darkage.register_stairs("darkage:slate_tile")
darkage.register_stairs("darkage:stone_brick")
darkage.register_stairs("darkage:straw_bale")
darkage.register_stairs("darkage:tuff")
darkage.register_stairs("darkage:tuff_bricks")
minetest.register_craft({
output = itemname .. ' 4',
recipe = {
{recipeitem, "", ""},
{recipeitem, recipeitem, ""},
{recipeitem, recipeitem, recipeitem},
},
})
-- Flipped recipe for the silly minecrafters
minetest.register_craft({
output = itemname .. ' 4',
recipe = {
{"", "", recipeitem},
{"", recipeitem, recipeitem},
{recipeitem, recipeitem, recipeitem},
},
})
itemname=modname..":slab_" .. item
minetest.register_node(itemname, {
description = description.." slab",
drawtype = "nodebox",
tiles = images,
paramtype = "light",
is_ground_content = true,
groups = groups,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
},
selection_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
},
on_place = function(itemstack, placer, pointed_thing)
if pointed_thing.type ~= "node" then
return itemstack
end
-- If it's being placed on an another similar one, replace it with
-- a full block
local slabpos = nil
local slabnode = nil
local p0 = pointed_thing.under
local p1 = pointed_thing.above
local n0 = minetest.env:get_node(p0)
local n1 = minetest.env:get_node(p1)
if n0.name == itemname then
slabpos = p0
slabnode = n0
elseif n1.name == itemname then
slabpos = p1
slabnode = n1
end
if slabpos then
-- Remove the slab at slabpos
minetest.env:remove_node(slabpos)
-- Make a fake stack of a single item and try to place it
local fakestack = ItemStack(recipeitem)
pointed_thing.above = slabpos
fakestack = minetest.item_place(fakestack, placer, pointed_thing)
-- If the item was taken from the fake stack, decrement original
if not fakestack or fakestack:is_empty() then
itemstack:take_item(1)
-- Else put old node back
else
minetest.env:set_node(slabpos, slabnode)
end
return itemstack
end
-- Otherwise place regularly
return minetest.item_place(itemstack, placer, pointed_thing)
end,
})
minetest.register_craft({
output = itemname .. ' 3',
recipe = {
{recipeitem, recipeitem, recipeitem},
},
})
end
darkage.register_stairs("darkage","basalt_cobble",
{cracky=3},
{"darkage_basalt_cobble.png"},
"Basalt Cobble"
)
darkage.register_stairs("darkage","slate_tile",
{cracky=3},
{"darkage_slate_tile.png"},
"Slate Tile"
)
darkage.register_stairs("darkage","straw",
{snappy=3, flammable=2},
{"darkage_straw.png"},
"Straw"
)
darkage.register_stairs("darkage","stone_brick",
{cracky=3},
{"darkage_stone_brick.png"},
"Stone Brick"
)
darkage.register_stairs("darkage","marble",
{cracky=3},
{"darkage_marble.png"},
"Marble"
)
darkage.register_stairs("darkage","marble_tile",
{cracky=3},
{"darkage_marble_tile.png"},
"Marble Tile"
)
darkage.register_stairs("darkage","ors_cobble",
{cracky=3},
{"darkage_ors_cobble.png"},
"Old Red Sandstone"
)
darkage.register_stairs("darkage","serpentine",
{cracky=3},
{"darkage_serpentine.png"},
"Serpentine"
)

71
stairs_functions.lua Normal file
View File

@ -0,0 +1,71 @@
if minetest.get_modpath("moreblocks") then
function darkage.register_stairs(nodeName)
local ndef = assert(minetest.registered_nodes[nodeName], "Error: "..nodeName.." is not registered")
local mod = "darkage"
local node = nodeName:split(":")[2]
local def = table.copy(ndef)
def.drop = nil
stairsplus:register_all(mod, node, nodeName, def)
end
elseif minetest.get_modpath("stairs") then
function darkage.register_stairs(nodeName)
local ndef = assert(minetest.registered_nodes[nodeName], "Error: "..nodeName.." is not registered")
local node = nodeName:split(":")[2]
-- The stairs api does not allow to use the darkage modname, so we have to call the nodes stairs:stair_darkage_
-- and creating an alias
local subname = "darkage_".. node;
stairs.register_stair_and_slab(subname, nodeName,
ndef.groups, ndef.tiles,
ndef.description.." Stair", ndef.description.." Slab",
ndef.sounds)
--stairs.register_stair_and_slab(subname, recipeitem,
-- groups, images,
-- desc_stair, desc_slab, sounds)
minetest.register_alias("darkage:stair_"..node, "stairs:stair_darkage_"..node)
minetest.register_alias("darkage:slab_"..node, "stairs:slab_darkage_"..node)
end
else
-- No compatible stairs mod found.
minetest.log("error", "[darkage] Darkage requires at least moreblocks or stairs to be installed. Its not possible to register stairs.")
function darkage.register_stairs(nodeName)
minetest.log("warning", "could not create stair of type "..nodeName .." because no compatible stairs mod is installed.")
end
end
--[[
if minetest.get_modpath("xdecor") then
table.insert(workbench.custom_nodes_register, "darkage:straw_bale") -- Straw Bale seems to accidently filtered out
end
]]
-- Uncomment, to check if nodes get registered correctly
--[[
if minetest.get_modpath("xdecor") then
darkage.isCuttable = {}
function darkage.register_stairs(nodeName)
darkage.isCuttable[nodeName] = true;
end
end
]]
--place the folowing funktion inside xdecor, to check if everything works fine.
--[[
then
if( node:split(":")[1] == "darkage" and not darkage.isCuttable[node]) then
minetest.log("error", "Error: "..node.. " should not be cuttable")
end
nodes[#nodes+1] = node
else
if( node:split(":")[1] == "darkage" and darkage.isCuttable[node]) then
minetest.log("error", "Error: "..node.. " should be cuttable")
end
]]

View File

@ -1,136 +0,0 @@
--slate Cobble
stairsplus:register_all("darkage", "slate_cobble", "darkage:slate_cobble", {
description = "Slate Cobble",
tiles = {"darkage_slate_cobble.png"},
groups = {cracky=2},
sounds = default.node_sound_stone_defaults(),
})
--slate
stairsplus:register_all("darkage", "slate", "darkage:slate", {
description = "Slate",
tiles = {"darkage_slate.png","darkage_slate.png","darkage_slate_side.png"},
groups = {cracky=2},
sounds = default.node_sound_stone_defaults(),
})
--slate tile
stairsplus:register_all("darkage", "slate_tile", "darkage:slate_tile", {
description = "Slate Tale",
tiles = {"darkage_slate_tile.png"},
groups = {cracky=2},
sounds = default.node_sound_stone_defaults(),
})
--marble
stairsplus:register_all("darkage", "marble", "darkage:marble", {
description = "Marble",
tiles = {"darkage_marble.png"},
groups = {cracky=2},
sounds = default.node_sound_stone_defaults(),
})
--stone brick
stairsplus:register_all("darkage", "stone_brick", "darkage:stone_brick", {
description = "Stone Brick",
tiles = {"darkage_stone_brick.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
--straw
stairsplus:register_all("darkage", "straw", "darkage:straw", {
description = "Straw",
tiles = {"darkage_straw.png"},
groups = {snappy=3, flammable=2},
sounds = default.node_sound_leaves_defaults(),
})
--straw_bale
stairsplus:register_all("darkage", "straw_bale", "darkage:straw_bale", {
description = "Straw Bale",
tiles = {"darkage_straw_bale.png"},
groups = {snappy=2, flammable=2},
sounds = default.node_sound_leaves_defaults(),
})
--serpentine
stairsplus:register_all("darkage", "serpentine", "darkage:serpentine", {
description = "Serpentine",
tiles = {"darkage_serpentine.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
--shist
stairsplus:register_all("darkage", "schist", "darkage:schist", {
description = "Schist",
tiles = {"darkage_schist.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
--gneiss
stairsplus:register_all("darkage", "gneiss", "darkage:gneiss", {
description = "Gneiss",
tiles = {"darkage_gneiss.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
--gneiss_cobble
stairsplus:register_all("darkage", "gneiss_cobble", "darkage:gneiss_cobble", {
description = "Gneiss Cobble",
tiles = {"darkage_gneiss_cobble.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
--basalt
stairsplus:register_all("darkage", "basalt", "darkage:basalt", {
description = "Basalt",
tiles = {"darkage_basalt.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
--basalt cobble
stairsplus:register_all("darkage", "basalt_cobble", "darkage:basalt_cobble", {
description = "Basalt Cobble",
tiles = {"darkage_basalt_cobble.png"},
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
})
--shale
stairsplus:register_all("darkage", "shale", "darkage:shale", {
description = "Shale",
tiles = {"darkage_shale.png","darkage_shale.png","darkage_shale_side.png"},
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults(),
})
--old red sandstone
stairsplus:register_all("darkage", "ors", "darkage:ors", {
description = "Old Red Sandstone",
tiles = {"darkage_ors.png"},
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults(),
})
--old red sandstone cobble
stairsplus:register_all("darkage", "ors_cobble", "darkage:ors_cobble", {
description = "Old Red Sandstone Cobble",
tiles = {"darkage_ors_cobble.png"},
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults(),
})
--Serpentine
stairsplus:register_all("darkage", "serpentine", "darkage:serpentine", {
description = "Serpentine",
tiles = {"darkage_serpentine.png"},
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults(),
})

Binary file not shown.

Before

Width:  |  Height:  |  Size: 684 B

After

Width:  |  Height:  |  Size: 592 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 601 B

After

Width:  |  Height:  |  Size: 388 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 535 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 705 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 663 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 701 B

After

Width:  |  Height:  |  Size: 577 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 758 B

After

Width:  |  Height:  |  Size: 617 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 230 B

After

Width:  |  Height:  |  Size: 164 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 686 B

After

Width:  |  Height:  |  Size: 552 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 618 B

After

Width:  |  Height:  |  Size: 450 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 407 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 846 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 772 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 764 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 760 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 766 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 980 B

After

Width:  |  Height:  |  Size: 693 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 603 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 446 B

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 381 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 697 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 846 B

After

Width:  |  Height:  |  Size: 793 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 872 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 802 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 951 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 922 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 619 B

After

Width:  |  Height:  |  Size: 566 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 577 B

After

Width:  |  Height:  |  Size: 457 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 B

After

Width:  |  Height:  |  Size: 122 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 516 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 739 B

After

Width:  |  Height:  |  Size: 275 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 785 B

After

Width:  |  Height:  |  Size: 637 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 950 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 914 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 670 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 891 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 596 B

After

Width:  |  Height:  |  Size: 515 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 210 B

After

Width:  |  Height:  |  Size: 140 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 709 B

After

Width:  |  Height:  |  Size: 474 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 682 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 819 B

After

Width:  |  Height:  |  Size: 654 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 846 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 875 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 805 B

After

Width:  |  Height:  |  Size: 686 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 454 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 716 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 669 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 694 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 741 B

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