Mit dieser Funktion kannst du neue Crafting-Rezepte hinzufügen.
minetest.register_craft({
output = "modname:itemname Anzahl",
recipe = {
{"item1", "item2", "item3"},
{"item4", "item5", "item6"},
{"item7", "item8", "item9"},
},
replacements = {
{"verwendetes_item", "zurückgebliebenes_item"}
},
type = "shaped"
})
Parameter | Beschreibung |
---|---|
output | Das Item, das durch das Crafting erstellt wird. Format: "modname:item Anzahl" (Standard: 1). |
recipe | Eine Tabelle mit bis zu 3x3 Feldern, die das Crafting-Rezept festlegt. "modname:item" gibt die Position der Zutaten an. |
replacements | (Optional) Gibt an, welche Items nach dem Crafting ersetzt werden. Beispiel: Ein Eimer Wasser verbraucht das Wasser, aber der Eimer bleibt. |
type |
|
minetest.register_craft({
output = "default:torch 4",
recipe = {
{"", "default:coal_lump", ""},
{"", "default:stick", ""},
{"", "", ""}
}
})
minetest.register_craft({
type = "cooking",
output = "default:brick",
recipe = "default:clay_lump",
cooktime = 10
})
Diese Funktion registriert einen neuen Block (Node) im Spiel.
minetest.register_node("modname:node_name", {
description = "Blockbeschreibung",
drawtype = "normal",
-- tiles = {"texture.png"},
tiles = {
"block_top.png", -- Oberseite (Y+)
"block_bottom.png", -- Unterseite (Y-)
"block_front.png", -- Vorderseite (Z-)
"block_back.png", -- Rückseite (Z+)
"block_right.png", -- Rechte Seite (X+)
"block_left.png", -- Linke Seite (X-)
},
is_ground_content = true,
light_source = 10,
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
walkable = true,
paramtype = "light",
drop = "modname:item",
node_box = { type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5} },
-- {x1, y1, z1, x2, y2, z2}
})
Parameter | Beschreibung | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
description | Der Name des Blocks, der im Spiel angezeigt wird. | ||||||||||||||||||||||||
tiles | Die Textur(en) für die Blockseiten. Kann eine oder mehrere Texturen enthalten. up (+Y), down (-Y), right (+X), left (-X), back (+Z), front (-Z). (+Y, -Y, +X, -X, +Z, -Z) |
||||||||||||||||||||||||
light_source | (Optional) Die Lichtstärke des Blocks (0-14). Werte größer als 0 lassen den Block leuchten. | ||||||||||||||||||||||||
groups | Gruppen des Blocks, die sein Verhalten bestimmen, z. B. „cracky = 3“ (leicht abbaubar mit
Spitzhacke).
|
||||||||||||||||||||||||
sounds | (Optional) Die Geräusche, die der Block macht, z. B. „default.node_sound_stone_defaults()“. | ||||||||||||||||||||||||
walkable | Gibt an, ob der Spieler auf dem Block laufen kann (true) oder hindurchgeht (false). | ||||||||||||||||||||||||
paramtype | Bestimmt die Lichtdurchlässigkeit („light“ erlaubt Lichtdurchgang, „none“ blockiert Licht). | ||||||||||||||||||||||||
diggable | (Optional)true , wenn der Block abgebaut werden kann.. |
||||||||||||||||||||||||
drop | (Optional) Das Item, das beim Abbauen des Blocks herausfällt. | ||||||||||||||||||||||||
node_box | (Optional) Definiert die Form des Blocks, z.B. für Stühle oder Treppen. | ||||||||||||||||||||||||
is_ground_content |
|
||||||||||||||||||||||||
drawtype | Bestimmt das Aussehen und Verhalten des Blocks. Mögliche Werte:
|
minetest.register_node("mymod:glowing_block", {
description = "Leuchtender Block",
tiles = {"mymod_glowing_block.png"},
light_source = 10,
groups = {cracky = 3},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("mymod:stair_step", {
description = "Treppenstufe",
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0, 0.5}, -- Unterer Block korrigiert
{-0.5, 0, 0, 0.5, 0.5, 0.5}, -- Oberer Block
--{x1, y1, z1, x2, y2, z2}
},
},
tiles = {"mymod_stair_step.png"},
groups = {cracky = 3, falling_node = 1}, -- Fällt nach unten
})
Diese Funktion registriert ein neues Inventar-Item.
minetest.register_craftitem("modname:item_name", {
description = "Item-Beschreibung",
inventory_image = "invent_texture.png",
wield_image = "wield_texture.png",
stack_max = 99,
on_use = function(itemstack, user, pointed_thing)
-- Item-Funktion hier
end,
})
Parameter | Beschreibung |
---|---|
description | Name des Items, das im Inventar angezeigt wird. |
inventory_image | Das Icon des Items im Inventar, dargestellt als 2D-Textur. |
stack_max | Maximale Anzahl des Items im Stapel. Standardwert ist 99. |
on_use | (Optional) Funktion, die beim Benutzen des Items ausgeführt wird, z. B. Heilung oder spezielle Effekte. |
wield_image | (Optional) Bild des Items, wenn es in der Hand gehalten wird. |
minetest.register_node("mymod:glowing_block", {
description = "Leuchtender Block",
tiles = {"mymod_glowing_block.png"},
light_source = 10,
groups = {cracky = 3},
sounds = default.node_sound_stone_defaults(),
})
Registriert einen neuen Chatbefehl, der durch einen Spieler über den Chat (/befehl) ausgeführt werden kann.
minetest.register_chatcommand("befehl", {
params = "<text>", -- Erwartete Parameter (nur zur Anzeige)
description = "Gibt den eingegebenen Text zurück.",
privs = {shout = true}, -- Erforderliche Privilegien
func = function(name, param)
if param == "" then
return false, "Du musst etwas eingeben!"
end
return true, "Du hast gesagt: " .. param
end
})
Parameter | Beschreibung |
---|---|
params |
(Optional) Zeigt dem Spieler, welche Eingaben erwartet werden. Hat keinen funktionalen Einfluss. |
description |
Kurze Beschreibung des Befehls. Wird in /help angezeigt. |
privs |
(Optional) Tabelle von Privilegien, die erforderlich sind, um den Befehl auszuführen, z. B. {teleport = true} |
func(name, param) |
Die Funktion, die beim Ausführen des Befehls aufgerufen wird. Gibt zurück:
true/false, "Nachricht"
|
interact
– Blöcke platzieren/abbauenshout
– Im Chat schreibenteleport
– Spieler teleportierengive
– Items gebenserver
– Serverbefehle ausführenprivs
– Rechte anderer Spieler ändernfly
– Fliegenfast
– Schnell-Modusnoclip
– Durch Blöcke laufen