1
0
mirror of https://github.com/adrido/darkage.git synced 2025-06-29 06:50:52 +02:00

7 Commits
v1.0.1 ... v1.2

Author SHA1 Message Date
b6bbd7dabe README.md edited online with Bitbucket 2014-09-04 10:48:19 +00:00
3a8bdb7e7f updated to version 1.2
applied most changes by CraigyDavi
updated to new stairsplus aka moreblocks api
added serpentine stairs
2014-09-04 12:37:40 +02:00
367109e8f0 tidy up corrected sounds 2014-07-26 06:20:18 +02:00
5b5206b402 crated 54 alias to avoid unknownblocks 2013-07-13 04:08:33 +02:00
c334970311 removed sandstone_cobble and desert_stone_cobble because its in default
removed sandstone_cobble and desert_stone_cobble because its in default
the moreblocks mod is now only a option
added alias for sandstone_cobble and desert_stone_cobble
2013-07-12 17:26:24 +02:00
9ccd5caf09 Update README.md 2013-05-13 16:21:40 +02:00
0b908c3d67 bugfix (1.0.2)
deleted dofile from init.lua
2013-05-11 05:41:07 +02:00
13 changed files with 892 additions and 474 deletions

22
.gitattributes vendored Normal file
View File

@ -0,0 +1,22 @@
# Auto detect text files and perform LF normalization
* text=auto
# Custom for Visual Studio
*.cs diff=csharp
*.sln merge=union
*.csproj merge=union
*.vbproj merge=union
*.fsproj merge=union
*.dbproj merge=union
# Standard to msysgit
*.doc diff=astextplain
*.DOC diff=astextplain
*.docx diff=astextplain
*.DOCX diff=astextplain
*.dot diff=astextplain
*.DOT diff=astextplain
*.pdf diff=astextplain
*.PDF diff=astextplain
*.rtf diff=astextplain
*.RTF diff=astextplain

163
.gitignore vendored Normal file
View File

@ -0,0 +1,163 @@
#################
## Eclipse
#################
*.pydevproject
.project
.metadata
bin/
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.classpath
.settings/
.loadpath
# External tool builders
.externalToolBuilders/
# Locally stored "Eclipse launch configurations"
*.launch
# CDT-specific
.cproject
# PDT-specific
.buildpath
#################
## Visual Studio
#################
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.sln.docstates
# Build results
[Dd]ebug/
[Rr]elease/
*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.vspscc
.builds
*.dotCover
## TODO: If you have NuGet Package Restore enabled, uncomment this
#packages/
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
# Visual Studio profiler
*.psess
*.vsp
# ReSharper is a .NET coding add-in
_ReSharper*
# Installshield output folder
[Ee]xpress
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish
# Others
[Bb]in
[Oo]bj
sql
TestResults
*.Cache
ClientBin
stylecop.*
~$*
*.dbmdl
Generated_Code #added for RIA/Silverlight projects
# Backup & report files from converting an old project file to a newer
# Visual Studio version. Backup files are not needed, because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
############
## Windows
############
# Windows image file caches
Thumbs.db
# Folder config file
Desktop.ini
#############
## Python
#############
*.py[co]
# Packages
*.egg
*.egg-info
dist
build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
# Installer logs
pip-log.txt
# Unit test / coverage reports
.coverage
.tox
#Translations
*.mo
#Mr Developer
.mr.developer.cfg
# Mac crap
.DS_Store

View File

@ -1,7 +1,6 @@
#DarkAge MOD for MINETEST #DarkAge MOD for MINETEST
orginal by Master Gollum Original mod by Master Gollum
modyfied by addi Modified by addi and CraigyDavi
##Introduction: ##Introduction:
This mod adds a few new blocks that allows to create new buildings in a This mod adds a few new blocks that allows to create new buildings in a
@ -26,17 +25,44 @@ modyfied by addi
##Release Notes ##Release Notes
Version 1.2
* corrected Sounds of Stairs
* updated to new Moreblocks api
* added Serpentine Stairs
Version 1.1
* Fix spelling mistakes in README file
* Bug fix
* Rename slate_tale to slate_tile
* Remove unneeded code
* Add marble tile
* Remove unneeded code
* Capitalise a couple of descriptions
* Add marble tile texture
* Rename alias.lua to aliases.lua
Version 1.0.1 Version 1.0.1
* fixed init.lua wich get broken by upload on github * fixed init.lua which get broken by upload on github
Version 1.0 Version 1.0
* a lot of more nodes because using moreblocks stairgen * compatibility with stairsplus added
* 2 sorts of medieval glass added * added new item iron_stick
* chalk can crafted from chalk powder * added craft reziep for iron stick
* fixed some craft reziep conflicts * changed reziep of iron_bars to avoid conflicts with iron bars mod
* changed reziep of chain to avoid conflicts with 3d furniture mod
* changed reziep of darkage:stonebrick to avoid conflicts with moreblocks
* disabled marble_tile to avoid the message "texture not found"
* added compatibility with stairsplus (now its moreblocks)
* added darkage:glass a nice looking glass that must be in this mod
* changed the sound_node_leaves_default to wood_default from box and wooden shelves
* added craft reziep for darkage:chalk
* improved the textures of reinforced wood and chalk to save a bit more loadtime on servers
* added another reziep for darkage straw (this can be crafted now, if farming is installed, with farming:harvested_weed
Version 0.3 Version 0.3
@ -60,16 +86,16 @@ PS: This document has been structured as the README.txt of PilzAdam in
his Bed MOD. his Bed MOD.
###How to install: ###How to install:
Unzip the archive an place it in minetest-base-directory/mods/minetest/ 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 if you have a windows client or a linux run-in-place client. If you
have a linux system-wide instalation place it in have a linux system-wide installation place it in
~/.minetest/mods/minetest/. ~/.minetest/mods/.
If you want to install this mod only in one world create the folder If you want to install this mod only in one world create the folder
worldmods/ in your worlddirectory. worldmods/ in your worlddirectory. Remember to activate it for your world by pressing the 'configure' button and doubleclick darkage in the right list.
For further information or help see: For further information or help see:
http://wiki.minetest.com/wiki/Installing_Mods http://wiki.minetest.net/Installing_Mods
###Tunning: ###Tuning:
Comments the following lines to remove what you don't like: Comments the following lines to remove what you don't like:
(To comment them just add -- at the beginning of their lines) (To comment them just add -- at the beginning of their lines)
@ -90,7 +116,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
invented. I have to improve this texture, it is ugly :P invented. I have to improve this texture, it is ugly :P
CRAFT -> 4 CRAFT -> 4
[Sand] [Sand] [Sand] [Sand]
[Clay Lumb] [Straw] [Clay Lump] [Straw]
Basalt: a darken version of the default Stone Basalt: a darken version of the default Stone
@ -105,7 +131,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
Chalk: a soft, white and porous sedimentary rock. It becomes Chalk: a soft, white and porous sedimentary rock. It becomes
Chalk Powder when digged. Can't be craft, only found as Chalk Powder when dug. Can't be craft, only found as
stratum. stratum.
Chalk Powder: pile of chalk from digging Chalk stones. Can Chalk Powder: pile of chalk from digging Chalk stones. Can
@ -115,7 +141,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
Cobblestone with Plaster: Cobbles where has been applied a Cobblestone with Plaster: Cobbles where has been applied a
layer of white plaster. layer of white plaster.
When digged it lost the plaster layer! When dug it lost the plaster layer!
CRAFT -> 2 CRAFT -> 2
[Cobblestone] [Chalk Powder] [Cobblestone] [Chalk Powder]
[Cobblestone] [Chalk Powder] [Cobblestone] [Chalk Powder]
@ -132,7 +158,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
Desert Stone Cobble: To add more uses to the Desert Stones. Desert Stone Cobble: To add more uses to the Desert Stones.
I suppossed they are harder than regular Stones so it I supposed they are harder than regular Stones so it
cracks at 50% and releases the Cobbles or just regular cracks at 50% and releases the Cobbles or just regular
Desert Stones. Desert Stones.
From dig Desert Stone From dig Desert Stone
@ -148,7 +174,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
Dry Leaves: Just a cube of Leaves toasted :P Well I found the Dry Leaves: Just a cube of Leaves toasted :P Well I found the
Leaves unuseful, so I thought to turn them into Straw, ok 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 it is not the same, but well, why not? Just dry them in a
Furnace and then put together to create the Straw Furnace and then put together to create the Straw
COOKING COOKING
@ -156,8 +182,8 @@ PS: This document has been structured as the README.txt of PilzAdam in
Gneiss: high grade metamorphic rock formed from Schist, very Gneiss: high grade metamorphic rock formed from Schist, very
common, and used in construction. It sometimes brokes in common, and used in construction. It sometimes brakes in
Gneiss Cobble when being digged. Gneiss Cobble when being dug.
COOKING COOKING
[Schist] [Schist]
@ -167,8 +193,8 @@ PS: This document has been structured as the README.txt of PilzAdam in
Mud: mixture of water and some combination of soil, silt, and Mud: mixture of water and some combination of soil, silt, and
clay. Used for build houses, specially in desertic regions. clay. Used for build houses, specially in desert regions.
It brokes in 4 Mud Lumps when digged. It brakes in 4 Mud Lumps when dug.
CRAFT -> 3 CRAFT -> 3
[Dirt] [Dirt] [Dirt] [Dirt]
[Clay Lump] [Silt Lump] [Clay Lump] [Silt Lump]
@ -181,7 +207,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
sandstone with iron that gives it this color. sandstone with iron that gives it this color.
CRAFT -> 4 CRAFT -> 4
[Sandstone] [Sandstone] [Sandstone] [Sandstone]
[Iron Lumb] [Sandstone] [Iron Lump] [Sandstone]
COOKING COOKING
[Old Red Sandstone Cobble] [Old Red Sandstone Cobble]
@ -189,7 +215,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
CRAFT -> 4 CRAFT -> 4
[Sandstone Cobble] [Sandstone Cobble] [Sandstone Cobble] [Sandstone Cobble]
[Iron Lumb] [Sandstone Cobble] [Iron Lump] [Sandstone Cobble]
COOKING COOKING
[Desert Stone] --> I think I will change it in the future [Desert Stone] --> I think I will change it in the future
release with its own Cobbles. release with its own Cobbles.
@ -213,7 +239,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
[Slate] [Slate]
Silt: granular material of a size somewhere between sand and clay. Silt: granular material of a size somewhere between sand and clay.
It brokes in 4 Silt Lumps. It brakes in 4 Silt Lumps.
CRAFT -> 1 CRAFT -> 1
[Silt Lump] [Silt Lump] [Silt Lump] [Silt Lump]
@ -233,7 +259,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
Slate Cobble: Cobble obtained from Slate Slate Cobble: Cobble obtained from Slate
From dig Slate From dig Slate
Slate Tale: Nice blue slate tales for roofs. They has been used Slate Tile: Nice blue slate tiles for roofs. They has been used
as building traditional building material in zones where as building traditional building material in zones where
slate is easy to find. slate is easy to find.
Note: It has stairs and slabs. Note: It has stairs and slabs.
@ -242,7 +268,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
[Slate Cobble] [Slate Cobble] [Slate Cobble] [Slate Cobble]
[Slate Cobble] [Slate Cobble] [Slate Cobble] [Slate Cobble]
Straw: a cube of yellish straw, try them in the roofs they will Straw: a cube of yellowish straw, try them in the roofs they will
be very nice. Used also as traditional building material be very nice. Used also as traditional building material
from ancient times. from ancient times.
@ -261,7 +287,7 @@ PS: This document has been structured as the README.txt of PilzAdam in
[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 stonner from Desert Sand. The idea is that Desert Sand is stonier
than regular Sand, so it takes less to create a Desert than regular Sand, so it takes less to create a Desert
Stone than a Sandstone. Stone than a Sandstone.
@ -331,7 +357,7 @@ Just started so they are few ones
CRAFT -> 1 CRAFT -> 1
[Medieval Glow Glass] [Medieval Glow Glass]
Medieval Glow Glass: a good looking glass, with small tiles wich are glowing by itself Medieval Glow Glass: a good looking glass, with small tiles which are glowing by itself
CRAFT -> 8 CRAFT -> 8
[Medieval Glass] [Medieval Glass]
@ -359,4 +385,4 @@ http://minetest.net/
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO. 0. You just DO WHAT THE FUCK YOU WANT TO.

88
aliases.lua Normal file
View File

@ -0,0 +1,88 @@
minetest.register_alias("darkage:sandstone_cobble","default:sandstonebrick")
minetest.register_alias("darkage:desert_stone_cobble","default:desert_stonebrick")
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")
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")
--Add aliases when slate_tale was renamed to slate_tile
minetest.register_alias("darkage:slate_tile","darkage:slate_tale")
minetest.register_alias("darkage:slab_slate_tile_inverted","darkage:slab_slate_tale_inverted")
minetest.register_alias("darkage:slab_slate_tile_wall","darkage:slab_slate_tale_wall")
minetest.register_alias("darkage:slab_slate_tile_quarter","darkage:slab_slate_tale_quarter")
minetest.register_alias("darkage:slab_slate_tile_quarter_inverted","darkage:slab_slate_tale_quarter_inverted")
minetest.register_alias("darkage:slab_slate_tile_quarter_wall","darkage:slab_slate_tale_quarter_wall")
minetest.register_alias("darkage:slab_slate_tile_three_quarter","darkage:slab_slate_tale_three_quarter")
minetest.register_alias("darkage:slab_slate_tile_three_quarter_inverted","darkage:slab_slate_tale_three_quarter_inverted")
minetest.register_alias("darkage:slab_slate_tile_three_quarter_wall","darkage:slab_slate_tale_three_quarter_wall")
minetest.register_alias("darkage:stair_slate_tile_inverted","darkage:stair_slate_tale_inverted")
minetest.register_alias("darkage:stair_slate_tile_wall","darkage:stair_slate_tale_wall")
minetest.register_alias("darkage:stair_slate_tile_wall_half","darkage:stair_slate_tale_wall_half")
minetest.register_alias("darkage:stair_slate_tile_wall_half_inverted","darkage:stair_slate_tale_wall_half_inverted")
minetest.register_alias("darkage:stair_slate_tile_half","darkage:stair_slate_tale_half")
minetest.register_alias("darkage:stair_slate_tile_half_inverted","darkage:stair_slate_tale_half_inverted")
minetest.register_alias("darkage:stair_slate_tile_right_half","darkage:stair_slate_tale_right_half")
minetest.register_alias("darkage:stair_slate_tile_right_half_inverted","darkage:stair_slate_tale_right_half_inverted")
minetest.register_alias("darkage:stair_slate_tile_wall_half","darkage:stair_slate_tale_wall_half")
minetest.register_alias("darkage:stair_slate_tile_wall_half_inverted","darkage:stair_slate_tale_wall_half_inverted")
minetest.register_alias("darkage:stair_slate_tile_inner","darkage:stair_slate_tale_inner")
minetest.register_alias("darkage:stair_slate_tile_inner_inverted","darkage:stair_slate_tale_inner_inverted")
minetest.register_alias("darkage:stair_slate_tile_outer","darkage:stair_slate_tale_outer")
minetest.register_alias("darkage:stair_slate_tile_outer_inverted","darkage:stair_slate_tale_outer_inverted")
minetest.register_alias("darkage:panel_slate_tile_bottom","darkage:panel_slate_tale_bottom")
minetest.register_alias("darkage:panel_slate_tile_top","darkage:panel_slate_tale_top")
minetest.register_alias("darkage:panel_slate_tile_vertical","darkage:panel_slate_tale_vertical")
minetest.register_alias("darkage:micro_slate_tile_bottom","darkage:micro_slate_tale_bottom")
minetest.register_alias("darkage:micro_slate_tile_top","darkage:micro_slate_tale_top")

View File

@ -1,5 +1,5 @@
minetest.register_node("darkage:glass", { minetest.register_node("darkage:glass", {
description = "medieval Glass", description = "Medieval Glass",
drawtype = "glasslike", drawtype = "glasslike",
tiles = {"darkage_glass.png"}, tiles = {"darkage_glass.png"},
inventory_image = minetest.inventorycube("darkage_glass.png"), inventory_image = minetest.inventorycube("darkage_glass.png"),
@ -11,7 +11,7 @@ minetest.register_node("darkage:glass", {
}) })
minetest.register_node("darkage:glow_glass", { minetest.register_node("darkage:glow_glass", {
description = "medieval glow glass", description = "Medieval Glow Glass",
drawtype = "glasslike", drawtype = "glasslike",
tiles = {"darkage_glass.png"}, tiles = {"darkage_glass.png"},
inventory_image = minetest.inventorycube("darkage_glass.png"), inventory_image = minetest.inventorycube("darkage_glass.png"),

View File

@ -1,2 +1,3 @@
default default
moreblocks farming?
moreblocks?

119
init.lua
View File

@ -1,11 +1,14 @@
print (" ---- Dark Age is Loading! ---- ") print (" ---- Dark Age Version 1.2 is Loading! ---- ")
-- Commend this lines if you don't like some of this features -- Commend this lines if you don't like some of this features
dofile(minetest.get_modpath("darkage").."/mapgen.lua") dofile(minetest.get_modpath("darkage").."/mapgen.lua")
dofile(minetest.get_modpath("darkage").."/building.lua") dofile(minetest.get_modpath("darkage").."/building.lua")
dofile(minetest.get_modpath("darkage").."/furniture.lua") dofile(minetest.get_modpath("darkage").."/furniture.lua")
dofile(minetest.get_modpath("darkage").."/compatibility.lua") dofile(minetest.get_modpath("darkage").."/aliases.lua")
--dofile(minetest.get_modpath("darkage").."/stairs.lua") if minetest.get_modpath("moreblocks") then
dofile(minetest.get_modpath("darkage").."/stairsplus.lua") dofile(minetest.get_modpath("darkage").."/stairsplus.lua")--only if moreblocks installed
else
dofile(minetest.get_modpath("darkage").."/stairs.lua")
end
---------- ----------
-- Items -- Items
---------- ----------
@ -55,14 +58,6 @@ minetest.register_node("darkage:cobble_with_plaster", {
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
minetest.register_node("darkage:desert_stone_cobble", {
description = "Desert Stone Cobble",
tiles = {"darkage_desert_stone_cobble.png"},
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:desert_stone_with_iron", { minetest.register_node("darkage:desert_stone_with_iron", {
description = "Desert Iron Ore", description = "Desert Iron Ore",
tiles = {"default_desert_stone.png^darkage_mineral_iron.png"}, tiles = {"default_desert_stone.png^darkage_mineral_iron.png"},
@ -126,7 +121,6 @@ minetest.register_node("darkage:marble", {
sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults()
}) })
minetest.register_node("darkage:mud", { minetest.register_node("darkage:mud", {
description = "Mud", description = "Mud",
tiles = {"darkage_mud_up.png","darkage_mud.png"}, tiles = {"darkage_mud_up.png","darkage_mud.png"},
@ -155,15 +149,6 @@ minetest.register_node("darkage:ors_cobble", {
sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults()
}) })
minetest.register_node("darkage:sandstone_cobble", {
description = "Sandstone Cobble",
tiles = {"darkage_sandstone_cobble.png"},
is_ground_content = true,
groups = {crumbly=2,cracky=2},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:serpentine", { minetest.register_node("darkage:serpentine", {
description = "Serpentine", description = "Serpentine",
tiles = {"darkage_serpentine.png"}, tiles = {"darkage_serpentine.png"},
@ -216,9 +201,9 @@ minetest.register_node("darkage:slate_cobble", {
sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults()
}) })
minetest.register_node("darkage:slate_tale", { minetest.register_node("darkage:slate_tile", {
description = "Slate Tale", description = "Slate Tile",
tiles = {"darkage_slate_tale.png"}, tiles = {"darkage_slate_tile.png"},
is_ground_content = true, is_ground_content = true,
groups = {cracky=2}, groups = {cracky=2},
sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults()
@ -257,31 +242,13 @@ minetest.register_node("darkage:marble", {
sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults()
}) })
--minetest.register_node("darkage:marble_tile", { --disabled because texture not found minetest.register_node("darkage:marble_tile", {
-- description = "Marble Tile", description = "Marble Tile",
-- tiles = {"darkage_marble_tile.png"}, tiles = {"darkage_marble_tile.png"},
-- is_ground_content = true, is_ground_content = true,
-- groups = {cracky=2}, groups = {cracky=2},
-- sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults()
--}) })
---------------
-- Overrides
---------------
minetest.registered_nodes["default:desert_stone"].drop= {
max_items = 1,
items = {
{
-- player will get cobbles with 1/3 chance
items = {'darkage:desert_stone_cobble'},
rarity = 2,
},
{
items = {'default:desert_stone'},
}
}
}
--------------- ---------------
-- Crafts Items -- Crafts Items
@ -311,8 +278,6 @@ minetest.register_craftitem("darkage:iron_stick", {
-- Crafts -- Crafts
---------- ----------
--sand+clay+water+straw
minetest.register_craft({ minetest.register_craft({
output = 'darkage:adobe 4', output = 'darkage:adobe 4',
recipe = { recipe = {
@ -338,6 +303,14 @@ minetest.register_craft({
} }
}) })
minetest.register_craft({
output = 'darkage:chalk 2',
recipe = {
{'darkage:chalk_powder','darkage:chalk_powder'},
{'darkage:chalk_powder','darkage:chalk_powder'},
}
})
minetest.register_craft({ minetest.register_craft({
output = 'darkage:cobble_with_plaster 2', output = 'darkage:cobble_with_plaster 2',
recipe = { recipe = {
@ -378,14 +351,6 @@ minetest.register_craft({
} }
}) })
minetest.register_craft({
output = 'darkage:ors_cobble 4',
recipe = {
{'darkage:sandstone_cobble','darkage:sandstone_cobble'},
{'default:iron_lump','darkage:sandstone_cobble'},
}
})
minetest.register_craft({ minetest.register_craft({
output = 'darkage:silt 3', output = 'darkage:silt 3',
recipe = { recipe = {
@ -403,7 +368,7 @@ minetest.register_craft({
}) })
minetest.register_craft({ minetest.register_craft({
output = 'darkage:slate_tale 2', output = 'darkage:slate_tile 2',
recipe = { recipe = {
{'darkage:slate_cobble','darkage:slate_cobble'}, {'darkage:slate_cobble','darkage:slate_cobble'},
{'darkage:slate_cobble','darkage:slate_cobble'}, {'darkage:slate_cobble','darkage:slate_cobble'},
@ -435,6 +400,19 @@ minetest.register_craft({
} }
}) })
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({ minetest.register_craft({
output = 'darkage:straw_bale', output = 'darkage:straw_bale',
recipe = { recipe = {
@ -457,24 +435,12 @@ minetest.register_craft({
recipe = "darkage:basalt_cobble", recipe = "darkage:basalt_cobble",
}) })
minetest.register_craft({
type = "cooking",
output = "default:desert_stone",
recipe = "darkage:desert_stone_cobble",
})
minetest.register_craft({ minetest.register_craft({
type = "cooking", type = "cooking",
output = "darkage:dry_leaves", output = "darkage:dry_leaves",
recipe = "default:leaves", recipe = "default:leaves",
}) })
minetest.register_craft({
type = "cooking",
output = "darkage:sandstone_cobble",
recipe = "default:sandstone",
})
minetest.register_craft({ minetest.register_craft({
type = "cooking", type = "cooking",
output = "darkage:gneiss", output = "darkage:gneiss",
@ -493,13 +459,6 @@ minetest.register_craft({
recipe = "darkage:ors_cobble", recipe = "darkage:ors_cobble",
}) })
minetest.register_craft({
type = "cooking",
output = "darkage:sandstone_cobble",
recipe = "default:sandstone",
})
minetest.register_craft({ minetest.register_craft({
type = "cooking", type = "cooking",
output = "darkage:schist", output = "darkage:schist",

View File

@ -1,255 +1,255 @@
--Makes a stratus of rocks --Makes a stratus of rocks
--name of the rock to generate --name of the rock to generate
--wherein kind of node to replace, for example default:stone --wherein kind of node to replace, for example default:stone
--minp, maxp the corners of the map to be generated --minp, maxp the corners of the map to be generated
--seed random seed --seed random seed
--stratus_chance inverse probability in a given radius 1:2, 1:3 etc --stratus_chance inverse probability in a given radius 1:2, 1:3 etc
--radius horizontal radius of the stratus --radius horizontal radius of the stratus
--radius_y vertical radius of the stratus --radius_y vertical radius of the stratus
--deep how deep can be from the ground --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) 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 if maxp.y < height_min or minp.y > height_max then
return return
end end
-- it will be only generate a stratus for every 100 m of area -- it will be only generate a stratus for every 100 m of area
local stratus_per_volume=1 local stratus_per_volume=1
local area=45 local area=45
local y_min = math.max(minp.y, height_min) local y_min = math.max(minp.y, height_min)
local y_max = math.min(maxp.y, height_max) 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 volume = ((maxp.x-minp.x+1)/area)*((y_max-y_min+1)/area)*((maxp.z-minp.z+1)/area)
local pr = PseudoRandom(seed) local pr = PseudoRandom(seed)
local blocks = math.floor(stratus_per_volume*volume) local blocks = math.floor(stratus_per_volume*volume)
print(" <<"..dump(name)..">>"); print(" <<"..dump(name)..">>");
if blocks == 0 then if blocks == 0 then
blocks = 1 blocks = 1
end 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)..")") 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 for i=1,blocks do
local x = pr:next(1,stratus_chance) local x = pr:next(1,stratus_chance)
if x == 1 then if x == 1 then
-- TODO deep -- TODO deep
local y0=y_max-radius_y+1 local y0=y_max-radius_y+1
if y0 < y_min then if y0 < y_min then
y0=y_min y0=y_min
else else
y0=pr:next(y_min, y0) y0=pr:next(y_min, y0)
end end
local x0 = maxp.x-radius+1 local x0 = maxp.x-radius+1
if x0 < minp.x then if x0 < minp.x then
x0 = minp.x x0 = minp.x
else else
x0 = pr:next(minp.x, x0) x0 = pr:next(minp.x, x0)
end end
local z0 = maxp.z-radius+1 local z0 = maxp.z-radius+1
if z0 < minp.z then if z0 < minp.z then
x0 = minp.z x0 = minp.z
else else
z0 = pr:next(minp.z, z0) z0 = pr:next(minp.z, z0)
end end
local p0 = {x=x0, y=y0, z=z0} local p0 = {x=x0, y=y0, z=z0}
local n = minetest.env:get_node(p0).name local n = minetest.env:get_node(p0).name
local i = 0 local i = 0
--print(" upper node "..n) --print(" upper node "..n)
x = 0 x = 0
for k, v in ipairs(ceilin) do for k, v in ipairs(ceilin) do
if n == v then if n == v then
x = 1 x = 1
break break
end end
end end
if x == 1 then if x == 1 then
-- search for the node to replace -- search for the node to replace
--print(" Searching nodes to replace from "..dump(y0-1).." to "..dump(y_min)) --print(" Searching nodes to replace from "..dump(y0-1).." to "..dump(y_min))
for y1=y0-1,y_min,-1 do for y1=y0-1,y_min,-1 do
p0.y=y1 p0.y=y1
n = minetest.env:get_node(p0).name n = minetest.env:get_node(p0).name
x = 0 x = 0
for k, v in ipairs(wherein) do for k, v in ipairs(wherein) do
if n == v then if n == v then
x = 1 x = 1
break break
end end
end end
if x == 1 then if x == 1 then
y0=y1-deep y0=y1-deep
if y0 < y_min then if y0 < y_min then
y0 = y_min y0 = y_min
end end
break break
end end
end end
local rx=pr:next(radius/2,radius)+1 local rx=pr:next(radius/2,radius)+1
local rz=pr:next(radius/2,radius)+1 local rz=pr:next(radius/2,radius)+1
local ry=pr:next(radius_y/2,radius_y)+1 local ry=pr:next(radius_y/2,radius_y)+1
--print(" area of generation ("..dump(rx)..","..dump(rz)..","..dump(ry)..")") --print(" area of generation ("..dump(rx)..","..dump(rz)..","..dump(ry)..")")
for x1=0,rx do for x1=0,rx do
rz = rz + 3 - pr:next(1,6) rz = rz + 3 - pr:next(1,6)
if rz < 1 then if rz < 1 then
rz = 1 rz = 1
end end
for z1=pr:next(1,3),rz do for z1=pr:next(1,3),rz do
local ry0=ry+ pr:next(1,3) local ry0=ry+ pr:next(1,3)
for y1=pr:next(1,3),ry0 do for y1=pr:next(1,3),ry0 do
local x2 = x0+x1 local x2 = x0+x1
local y2 = y0+y1 local y2 = y0+y1
local z2 = z0+z1 local z2 = z0+z1
local p2 = {x=x2, y=y2, z=z2} local p2 = {x=x2, y=y2, z=z2}
n = minetest.env:get_node(p2).name n = minetest.env:get_node(p2).name
x = 0 x = 0
for k, v in ipairs(wherein) do for k, v in ipairs(wherein) do
if n == v then if n == v then
x = 1 x = 1
break break
end end
end end
if x == 1 then if x == 1 then
if ceil == nil then if ceil == nil then
minetest.env:set_node(p2, {name=name}) minetest.env:set_node(p2, {name=name})
i = i +1 i = i +1
else else
local p3 = {p2.x,p2.y+1,p2} local p3 = {p2.x,p2.y+1,p2}
if minetest.env:get_node(p3).name == ceil then if minetest.env:get_node(p3).name == ceil then
minetest.env:set_node(p2, {name=name}) minetest.env:set_node(p2, {name=name})
i = i +1 i = i +1
end end
end end
end end
end end
end end
end end
print(" generated "..dump(i).." blocks in ("..dump(x0)..","..dump(y0)..","..dump(z0)..")") print(" generated "..dump(i).." blocks in ("..dump(x0)..","..dump(y0)..","..dump(z0)..")")
end end
end end
end end
--print("generate_ore done") --print("generate_ore done")
end end
local function generate_claylike(name, minp, maxp, seed, chance, minh, maxh, dirt) local function generate_claylike(name, minp, maxp, seed, chance, minh, maxh, dirt)
if maxp.y >= maxh+1 and minp.y <= minh-1 then if maxp.y >= maxh+1 and minp.y <= minh-1 then
local pr = PseudoRandom(seed) local pr = PseudoRandom(seed)
local divlen = 4 local divlen = 4
local divs = (maxp.x-minp.x)/divlen+1; local divs = (maxp.x-minp.x)/divlen+1;
for yy=minh,maxh do for yy=minh,maxh do
local x = pr:next(1,chance) local x = pr:next(1,chance)
if x == 1 then if x == 1 then
for divx=0+1,divs-1-1 do for divx=0+1,divs-1-1 do
for divz=0+1,divs-1-1 do for divz=0+1,divs-1-1 do
local cx = minp.x + math.floor((divx+0.5)*divlen) local cx = minp.x + math.floor((divx+0.5)*divlen)
local cz = minp.z + math.floor((divz+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 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 local down = minetest.env:get_node({x=cx,y=yy-1,z=cz}).name
if ( up == "default:water_source" or up == "air" ) and 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 ( down == "default:sand" or (dirt == 1 and (down == "default:dirt" or down == "default:dirt_with_grass" ))) then
local is_shallow = true local is_shallow = true
local num_water_around = 0 local num_water_around = 0
if minetest.env:get_node({x=cx-divlen*2,y=yy,z=cz}).name == "default:water_source" then 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 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 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 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 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 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 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 num_water_around = num_water_around + 1 end
if num_water_around >= 3 then if num_water_around >= 3 then
is_shallow = false is_shallow = false
end end
if is_shallow then if is_shallow then
for x1=-divlen,divlen do for x1=-divlen,divlen do
for z1=-divlen,divlen do for z1=-divlen,divlen do
local p={x=cx+x1,y=yy-1,z=cz+z1} local p={x=cx+x1,y=yy-1,z=cz+z1}
down = minetest.env:get_node(p).name 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 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}) minetest.env:set_node(p, {name=name})
end end
end end
end end
end end
end end
end end
end end
end end
end end
end end
end end
local function generate_ore(name, wherein, minp, maxp, seed, chunks_per_volume, chunk_size, ore_per_chunk, height_min, height_max) 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 if maxp.y < height_min or minp.y > height_max then
return return
end end
local y_min = math.max(minp.y, height_min) local y_min = math.max(minp.y, height_min)
local y_max = math.min(maxp.y, height_max) 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 volume = (maxp.x-minp.x+1)*(y_max-y_min+1)*(maxp.z-minp.z+1)
local pr = PseudoRandom(seed) local pr = PseudoRandom(seed)
local num_chunks = math.floor(chunks_per_volume * volume) local num_chunks = math.floor(chunks_per_volume * volume)
local inverse_chance = math.floor(chunk_size*chunk_size*chunk_size / ore_per_chunk) local inverse_chance = math.floor(chunk_size*chunk_size*chunk_size / ore_per_chunk)
--print("generate_ore num_chunks: "..dump(num_chunks)) --print("generate_ore num_chunks: "..dump(num_chunks))
for i=1,num_chunks do for i=1,num_chunks do
local y0 = pr:next(y_min, y_max-chunk_size+1) local y0 = pr:next(y_min, y_max-chunk_size+1)
if y0 >= height_min and y0 <= height_max then if y0 >= height_min and y0 <= height_max then
local x0 = pr:next(minp.x, maxp.x-chunk_size+1) local x0 = pr:next(minp.x, maxp.x-chunk_size+1)
local z0 = pr:next(minp.z, maxp.z-chunk_size+1) local z0 = pr:next(minp.z, maxp.z-chunk_size+1)
local p0 = {x=x0, y=y0, z=z0} local p0 = {x=x0, y=y0, z=z0}
for x1=0,chunk_size-1 do for x1=0,chunk_size-1 do
for y1=0,chunk_size-1 do for y1=0,chunk_size-1 do
for z1=0,chunk_size-1 do for z1=0,chunk_size-1 do
if pr:next(1,inverse_chance) == 1 then if pr:next(1,inverse_chance) == 1 then
local x2 = x0+x1 local x2 = x0+x1
local y2 = y0+y1 local y2 = y0+y1
local z2 = z0+z1 local z2 = z0+z1
local p2 = {x=x2, y=y2, z=z2} local p2 = {x=x2, y=y2, z=z2}
if minetest.env:get_node(p2).name == wherein then if minetest.env:get_node(p2).name == wherein then
minetest.env:set_node(p2, {name=name}) minetest.env:set_node(p2, {name=name})
end end
end end
end end
end end
end end
end end
end end
--print("generate_ore done") --print("generate_ore done")
end end
minetest.register_on_generated(function(minp, maxp, seed) minetest.register_on_generated(function(minp, maxp, seed)
-- Generate stratus -- Generate stratus
print("DARKAGE: 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_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:mud", minp, maxp, seed+1, 4, 0, 2, 0)
generate_claylike("darkage:silt", minp, maxp, seed+2, 4, -1, 1, 1) generate_claylike("darkage:silt", minp, maxp, seed+2, 4, -1, 1, 1)
generate_stratus("darkage:chalk", generate_stratus("darkage:chalk",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+3, 4, 25, 8, 0, -20, 50) minp, maxp, seed+3, 4, 25, 8, 0, -20, 50)
generate_stratus("darkage:ors", generate_stratus("darkage:ors",
{"default:stone"}, {"default:stone"},
{"default:stone","air","default:water_source"}, nil, {"default:stone","air","default:water_source"}, nil,
minp, maxp, seed+4, 4, 25, 7, 50, -200, 500) minp, maxp, seed+4, 4, 25, 7, 50, -200, 500)
generate_stratus("darkage:shale", generate_stratus("darkage:shale",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+5, 4, 23, 7, 50, -50, 20) minp, maxp, seed+5, 4, 23, 7, 50, -50, 20)
generate_stratus("darkage:slate", generate_stratus("darkage:slate",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+6, 6, 23, 5, 50, -500, 0) minp, maxp, seed+6, 6, 23, 5, 50, -500, 0)
generate_stratus("darkage:schist", generate_stratus("darkage:schist",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+7, 6, 19, 6, 50, -31000, -10) minp, maxp, seed+7, 6, 19, 6, 50, -31000, -10)
generate_stratus("darkage:basalt", generate_stratus("darkage:basalt",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+8, 5, 20, 5, 20, -31000, -50) minp, maxp, seed+8, 5, 20, 5, 20, -31000, -50)
generate_stratus("darkage:marble", generate_stratus("darkage:marble",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+9, 4, 25, 6, 50, -31000, -75) minp, maxp, seed+9, 4, 25, 6, 50, -31000, -75)
generate_stratus("darkage:serpentine", generate_stratus("darkage:serpentine",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+10, 4, 28, 8, 50, -31000, -350) minp, maxp, seed+10, 4, 28, 8, 50, -31000, -350)
generate_stratus("darkage:gneiss", generate_stratus("darkage:gneiss",
{"default:stone"}, {"default:stone"},
{"default:stone","air"}, nil, {"default:stone","air"}, nil,
minp, maxp, seed+11, 4, 15, 5, 50, -31000, -250) minp, maxp, seed+11, 4, 15, 5, 50, -31000, -250)
end) end)

View File

@ -1,27 +1,121 @@
darkage = {}; darkage = {}
function darkage.register_stairs(modname, subname, groups, images, desc)
table.insert(circular_saw.known_stairs, modname..":"..subname); function darkage.register_stairs(modname, item, groups, images, description)
recipeitem = modname..":"..subname; local recipeitem = modname..":"..item
desc_stair = desc.." stair"; local itemname = modname..":stair_"..item
desc_slab = desc.." slab"; minetest.register_node(itemname, {
desc_panel = desc.." panel"; description = description.." stair",
desc_micro = desc.." micro"; drawtype = "nodebox",
drop = subname tiles = images,
register_stair(modname, subname, recipeitem, groups, images, desc_stair, drop) paramtype = "light",
register_slab(modname, subname, recipeitem, groups, images, desc_slab, drop) paramtype2 = "facedir",
register_panel(modname, subname, recipeitem, groups, images, desc_panel, drop) is_ground_content = true,
register_micro(modname, subname, recipeitem, groups, images, desc_micro, drop) 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},
},
},
})
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 end
darkage.register_stairs("darkage","basalt_cobble", darkage.register_stairs("darkage","basalt_cobble",
{cracky=3}, {cracky=3},
{"darkage_basalt_cobble.png"}, {"darkage_basalt_cobble.png"},
"Basalt Cobble" "Basalt Cobble"
) )
darkage.register_stairs("darkage","slate_tale", darkage.register_stairs("darkage","slate_tile",
{cracky=3}, {cracky=3},
{"darkage_slate_tale.png"}, {"darkage_slate_tile.png"},
"Slate Tale" "Slate Tile"
) )
darkage.register_stairs("darkage","straw", darkage.register_stairs("darkage","straw",
@ -36,31 +130,26 @@ darkage.register_stairs("darkage","stone_brick",
"Stone Brick" "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", darkage.register_stairs("darkage","ors_cobble",
{cracky=3}, {cracky=3},
{"darkage_ors_cobble.png"}, {"darkage_ors_cobble.png"},
"Old Red Sandtone" "Old Red Sandstone"
) )
darkage.register_stairs("darkage","desert_stone_cobble", darkage.register_stairs("darkage","serpentine",
{cracky=3}, {cracky=3},
{"darkage_desert_stone_cobble.png"}, {"darkage_serpentine.png"},
"Desert Stone Cobble" "Serpentine"
) )
darkage.register_stairs("darkage","slate_cobble",
{cracky=3},
{"darkage_slate_cobble.png"},
"Slate Cobble"
)
darkage.register_stairs("darkage","sandstone_cobble",
{cracky=3},
{"darkage_sandstone_cobble.png"},
"Sandstone Cobble"
)
darkage.register_stairs("darkage","gneiss_cobble",
{cracky=3},
{"darkage_gneiss_cobble.png"},
"Gneiss Cobble"
)

View File

@ -1,66 +1,136 @@
darkage = {}; --slate Cobble
function darkage.register_stairs(modname, subname, groups, images, desc) stairsplus:register_all("darkage", "slate_cobble", "darkage:slate_cobble", {
table.insert(circular_saw.known_stairs, modname..":"..subname); description = "Slate Cobble",
recipeitem = modname..":"..subname; tiles = {"darkage_slate_cobble.png"},
desc_stair = desc.." stair"; groups = {cracky=2},
desc_slab = desc.." slab"; sounds = default.node_sound_stone_defaults(),
desc_panel = desc.." panel"; })
desc_micro = desc.." micro";
drop = subname --slate
register_stair(modname, subname, recipeitem, groups, images, desc_stair, drop) stairsplus:register_all("darkage", "slate", "darkage:slate", {
register_slab(modname, subname, recipeitem, groups, images, desc_slab, drop) description = "Slate",
register_panel(modname, subname, recipeitem, groups, images, desc_panel, drop) tiles = {"darkage_slate.png","darkage_slate.png","darkage_slate_side.png"},
register_micro(modname, subname, recipeitem, groups, images, desc_micro, drop) groups = {cracky=2},
end sounds = default.node_sound_stone_defaults(),
darkage.register_stairs("darkage","basalt_cobble", })
{cracky=3},
{"darkage_basalt_cobble.png"}, --slate tile
"Basalt Cobble" stairsplus:register_all("darkage", "slate_tile", "darkage:slate_tile", {
) description = "Slate Tale",
tiles = {"darkage_slate_tile.png"},
darkage.register_stairs("darkage","slate_tale", groups = {cracky=2},
{cracky=3}, sounds = default.node_sound_stone_defaults(),
{"darkage_slate_tale.png"}, })
"Slate Tale"
) --marble
stairsplus:register_all("darkage", "marble", "darkage:marble", {
darkage.register_stairs("darkage","straw", description = "Marble",
{snappy=3, flammable=2}, tiles = {"darkage_marble.png"},
{"darkage_straw.png"}, groups = {cracky=2},
"Straw" sounds = default.node_sound_stone_defaults(),
) })
darkage.register_stairs("darkage","stone_brick", --stone brick
{cracky=3}, stairsplus:register_all("darkage", "stone_brick", "darkage:stone_brick", {
{"darkage_stone_brick.png"}, description = "Stone Brick",
"Stone Brick" tiles = {"darkage_stone_brick.png"},
) groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
darkage.register_stairs("darkage","ors_cobble", })
{cracky=3},
{"darkage_ors_cobble.png"}, --straw
"Old Red Sandtone" stairsplus:register_all("darkage", "straw", "darkage:straw", {
) description = "Straw",
tiles = {"darkage_straw.png"},
darkage.register_stairs("darkage","desert_stone_cobble", groups = {snappy=3, flammable=2},
{cracky=3}, sounds = default.node_sound_leaves_defaults(),
{"darkage_desert_stone_cobble.png"}, })
"Desert Stone Cobble"
) --straw_bale
stairsplus:register_all("darkage", "straw_bale", "darkage:straw_bale", {
darkage.register_stairs("darkage","slate_cobble", description = "Straw Bale",
{cracky=3}, tiles = {"darkage_straw_bale.png"},
{"darkage_slate_cobble.png"}, groups = {snappy=2, flammable=2},
"Slate Cobble" sounds = default.node_sound_leaves_defaults(),
) })
darkage.register_stairs("darkage","sandstone_cobble",
{cracky=3}, --serpentine
{"darkage_sandstone_cobble.png"}, stairsplus:register_all("darkage", "serpentine", "darkage:serpentine", {
"Sandstone Cobble" description = "Serpentine",
) tiles = {"darkage_serpentine.png"},
groups = {cracky=3},
darkage.register_stairs("darkage","gneiss_cobble", sounds = default.node_sound_stone_defaults(),
{cracky=3}, })
{"darkage_gneiss_cobble.png"},
"Gneiss Cobble" --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.

After

Width:  |  Height:  |  Size: 785 B

View File

Before

Width:  |  Height:  |  Size: 596 B

After

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB