Merge branch minetest_modding_book:master into master
This commit is contained in:
commit
11b543c5bc
@ -23,7 +23,7 @@ pages:
|
||||
stage: deploy
|
||||
interruptible: true
|
||||
script:
|
||||
- bundle exec jekyll build -d public --baseurl /minetest_modding_book
|
||||
- bundle exec jekyll build -d public
|
||||
artifacts:
|
||||
paths:
|
||||
- public
|
||||
|
@ -1,3 +1,6 @@
|
||||
url: "https://rubenwardy.com"
|
||||
baseurl: "/minetest_modding_book"
|
||||
|
||||
sass:
|
||||
# nested (default), compact, compressed, expanded
|
||||
style: compressed
|
||||
|
@ -16,7 +16,7 @@ mapgen_object:
|
||||
|
||||
## Introduction <!-- omit in toc -->
|
||||
|
||||
The functions outlined in the [Basic Map Operations](environment.html) chapter
|
||||
The functions outlined in the [Basic Map Operations](../map/environment.html) chapter
|
||||
are convenient and easy to use, but for large areas they are inefficient.
|
||||
Every time you call `set_node` or `get_node`, your mod needs to communicate with
|
||||
the engine. This results in constant individual copying operations between the
|
||||
|
@ -9,15 +9,16 @@ redirect_from: /en/chapters/environment.html
|
||||
|
||||
## Introduction <!-- omit in toc -->
|
||||
|
||||
In this chapter, you will learn how to perform basic actions on the map.
|
||||
In this chapter, you will learn how to perform basic actions on the map, such as
|
||||
adding, removing, and finding nodes.
|
||||
|
||||
- [Map Structure](#map-structure)
|
||||
- [Reading](#reading)
|
||||
- [Reading Nodes](#reading-nodes)
|
||||
- [Finding Nodes](#finding-nodes)
|
||||
- [Reading Nodes](#reading-nodes)
|
||||
- [Finding Nodes](#finding-nodes)
|
||||
- [Writing](#writing)
|
||||
- [Writing Nodes](#writing-nodes)
|
||||
- [Removing Nodes](#removing-nodes)
|
||||
- [Writing Nodes](#writing-nodes)
|
||||
- [Removing Nodes](#removing-nodes)
|
||||
- [Loading Blocks](#loading-blocks)
|
||||
- [Deleting Blocks](#deleting-blocks)
|
||||
|
||||
|
@ -21,6 +21,9 @@ own.
|
||||
- [Object Properties](#object-properties)
|
||||
- [Entities](#entities)
|
||||
- [Health and Damage](#health-and-damage)
|
||||
- [Health Points (HP)](#health-points-hp)
|
||||
- [Punch, Damage Groups, and Armor Groups](#punch-damage-groups-and-armor-groups)
|
||||
- [Example Damage Calculation](#example-damage-calculation)
|
||||
- [Attachments](#attachments)
|
||||
- [Your Turn](#your-turn)
|
||||
|
||||
@ -153,7 +156,7 @@ print("entity is at " .. minetest.pos_to_string(object:get_pos()))
|
||||
```
|
||||
|
||||
There are a number of available callbacks for use with entities.
|
||||
A complete list can be found in [lua_api.txt](https://minetest.gitlab.io/minetest/minetest-namespace-reference/#registered-definition-tables).
|
||||
A complete list can be found in [lua_api.md](https://minetest.gitlab.io/minetest/minetest-namespace-reference/#registered-definition-tables).
|
||||
|
||||
```lua
|
||||
function MyEntity:on_step(dtime)
|
||||
|
@ -77,7 +77,7 @@ on multiple lines, like so:
|
||||
|
||||
Elements are items such as text boxes or buttons, or can be metadata such
|
||||
as size or background. You should refer to
|
||||
[lua_api.txt](https://minetest.gitlab.io/minetest/formspec/)
|
||||
[lua_api.md](https://minetest.gitlab.io/minetest/formspec/)
|
||||
for a list of all possible elements.
|
||||
|
||||
|
||||
@ -319,7 +319,7 @@ There are three different ways that a formspec can be delivered to the client:
|
||||
### Node Meta Formspecs
|
||||
|
||||
`minetest.show_formspec` is not the only way to show a formspec; you can also
|
||||
add formspecs to a [node's metadata](node_metadata.html). For example,
|
||||
add formspecs to a [node's metadata](../map/storage.html). For example,
|
||||
this is used with chests to allow for faster opening times -
|
||||
you don't need to wait for the server to send the player the chest formspec.
|
||||
|
||||
|
@ -14,15 +14,15 @@ Heads Up Display (HUD) elements allow you to show text, images, and other graphi
|
||||
The HUD doesn't accept user input; for that, you should use a [formspec](formspecs.html).
|
||||
|
||||
- [Positioning](#positioning)
|
||||
- [Position and Offset](#position-and-offset)
|
||||
- [Alignment](#alignment)
|
||||
- [Scoreboard](#scoreboard)
|
||||
- [Position and Offset](#position-and-offset)
|
||||
- [Alignment](#alignment)
|
||||
- [Scoreboard](#scoreboard)
|
||||
- [Text Elements](#text-elements)
|
||||
- [Parameters](#parameters)
|
||||
- [Our Example](#our-example)
|
||||
- [Parameters](#parameters)
|
||||
- [Our Example](#our-example)
|
||||
- [Image Elements](#image-elements)
|
||||
- [Parameters](#parameters-1)
|
||||
- [Scale](#scale)
|
||||
- [Parameters](#parameters-1)
|
||||
- [Scale](#scale)
|
||||
- [Changing an Element](#changing-an-element)
|
||||
- [Storing IDs](#storing-ids)
|
||||
- [Other Elements](#other-elements)
|
||||
@ -291,4 +291,4 @@ end)
|
||||
|
||||
## Other Elements
|
||||
|
||||
Read [lua_api.txt](https://minetest.gitlab.io/minetest/hud/) for a complete list of HUD elements.
|
||||
Read [lua_api.md](https://minetest.gitlab.io/minetest/hud/) for a complete list of HUD elements.
|
||||
|
@ -18,7 +18,7 @@ For example, a value of 2 for gravity would make gravity twice as strong.
|
||||
|
||||
- [Basic Example](#basic-example)
|
||||
- [Available Overrides](#available-overrides)
|
||||
- [Old Movement Behaviour](#old-movement-behaviour)
|
||||
- [Old Movement Behaviour](#old-movement-behaviour)
|
||||
- [Mod Incompatibility](#mod-incompatibility)
|
||||
- [Your Turn](#your-turn)
|
||||
|
||||
@ -42,7 +42,7 @@ minetest.register_chatcommand("antigravity", {
|
||||
## Available Overrides
|
||||
|
||||
`player:set_physics_override()` is given a table of overrides.\\
|
||||
According to [lua_api.txt](https://minetest.gitlab.io/minetest/class-reference/#player-only-no-op-for-other-objects),
|
||||
According to [lua_api.md](https://minetest.gitlab.io/minetest/class-reference/#player-only-no-op-for-other-objects),
|
||||
these can be:
|
||||
|
||||
* speed: multiplier to default walking speed value (default: 1)
|
||||
|
@ -12,8 +12,8 @@ After you've read this book, take a look at the following.
|
||||
|
||||
### Minetest Modding
|
||||
|
||||
* Minetest's Lua API Reference - [HTML version](https://minetest.gitlab.io/minetest/class-reference/#player-only-no-op-for-other-objects) |
|
||||
[Text version](https://github.com/minetest/minetest/blob/master/doc/lua_api.txt).
|
||||
* Minetest's Lua API Reference - [multiple page version](https://minetest.gitlab.io/minetest/class-reference/#player-only-no-op-for-other-objects) |
|
||||
[single page version](https://github.com/minetest/minetest/blob/master/doc/lua_api.md).
|
||||
* Look at [existing mods](https://forum.minetest.net/viewforum.php?f=11).
|
||||
|
||||
### Lua Programming
|
||||
|
@ -16,7 +16,7 @@ mapgen_object:
|
||||
|
||||
## Introduzione <!-- omit in toc -->
|
||||
|
||||
Le funzioni introdotte nel capitolo [Mappa: operazioni base](environment.html) sono comode e facili da usare, ma per le grandi aree non sono efficienti.
|
||||
Le funzioni introdotte nel capitolo [Mappa: operazioni base](../map/environment.html) sono comode e facili da usare, ma per le grandi aree non sono efficienti.
|
||||
Ogni volta che `set_node` e `get_node` vengono chiamati da una mod, la mod deve comunicare con il motore di gioco.
|
||||
Ciò risulta in una costante copia individuale dei singoli nodi, che è lenta e abbasserà notevolmente le performance del gioco.
|
||||
Usare un Manipolatore di Voxel Lua (*Lua Voxel Manipulator*, da qui LVM) può essere un'alternativa migliore.
|
||||
@ -142,7 +142,7 @@ vm:write_to_map(true)
|
||||
|
||||
Per la luce e param2, invece si usano `set_light_data()` e `set_param2_data()`.
|
||||
|
||||
`write_to_map()` richiede un booleano che è `true` se si vuole che venga calcolata anche la luce.
|
||||
`write_to_map()` richiede un booleano che è `true` se si vuole che venga calcolata anche la luce.
|
||||
Se si passa `false` invece, ci sarà bisogno di ricalcolarla in un secondo tempo usando `minetest.fix_light`.
|
||||
|
||||
## Esempio
|
||||
|
@ -20,9 +20,9 @@ In questo capitolo imparerai come manipolare gli oggetti e come definirne di tuo
|
||||
- [Proprietà degli oggetti](#proprietà-degli-oggetti)
|
||||
- [Entità](#entità)
|
||||
- [Salute e danno](#salute-e-danno)
|
||||
- [Punti vita (HP)](#punti-vita-hp)
|
||||
- [Pugni, Gruppi Danno e Gruppi Armatura](#pugni-gruppi-danno-e-gruppi-armatura)
|
||||
- [Esempi di calcolo del danno](#esempi-di-calcolo-del-danno)
|
||||
- [Punti vita (HP)](#punti-vita-hp)
|
||||
- [Pugni, Gruppi Danno e Gruppi Armatura](#pugni-gruppi-danno-e-gruppi-armatura)
|
||||
- [Esempi di calcolo del danno](#esempi-di-calcolo-del-danno)
|
||||
- [Oggetti figli](#oggetti-figli)
|
||||
- [Il tuo turno](#il-tuo-turno)
|
||||
|
||||
@ -134,7 +134,7 @@ print("L'entità si trova a " .. minetest.pos_to_string(oggetto:get_pos()))
|
||||
```
|
||||
|
||||
Ci sono diversi callback disponibili da usare per le entità.
|
||||
Una lista completa può essere trovata in [lua_api.txt](https://minetest.gitlab.io/minetest/minetest-namespace-reference/#registered-definition-tables).
|
||||
Una lista completa può essere trovata in [lua_api.md](https://minetest.gitlab.io/minetest/minetest-namespace-reference/#registered-definition-tables).
|
||||
|
||||
```lua
|
||||
function MiaEntita:on_step(dtime)
|
||||
|
@ -66,7 +66,7 @@ Si possono concatenare più elementi, piazzandoli eventualmente su più linee:
|
||||
bo[param1]
|
||||
|
||||
Gli elementi sono o oggetti come i campi di testo e i pulsanti, o dei metadati come la grandezza e lo sfondo.
|
||||
Per una lista esaustiva di tutti i possibili elementi, si rimanda a [lua_api.txt](https://minetest.gitlab.io/minetest/formspec/).
|
||||
Per una lista esaustiva di tutti i possibili elementi, si rimanda a [lua_api.md](https://minetest.gitlab.io/minetest/formspec/).
|
||||
|
||||
### Intestazione
|
||||
|
||||
@ -74,7 +74,7 @@ L'intestazione di un formspec contiene informazioni che devono apparire prima di
|
||||
Questo include la grandezza del formspec, la posizione, l'ancoraggio, e se il tema specifico del gioco debba venir applicato.
|
||||
|
||||
Gli elementi nell'intestazione devono essere definiti in un ordine preciso, altrimenti ritorneranno un errore.
|
||||
L'ordine è dato nel paragrafo qui in alto e, come sempre, documentato in lua_api.txt.
|
||||
L'ordine è dato nel paragrafo qui in alto e, come sempre, documentato in lua_api.md.
|
||||
|
||||
La grandezza è in caselle formspec - un'unità di misura che è circa 64 pixel, ma varia a seconda della densità dello schermo e delle impostazioni del client.
|
||||
Ecco un formspec di 2x2:
|
||||
@ -282,7 +282,7 @@ Ci sono tre diversi modi per far sì che un formspec sia consegnato al client:
|
||||
|
||||
### Formspec nei nodi
|
||||
|
||||
`minetest.show_formspec` non è l'unico modo per mostrare un formspec; essi possono infatti essere aggiunti anche ai [metadati di un nodo](node_metadata.html).
|
||||
`minetest.show_formspec` non è l'unico modo per mostrare un formspec; essi possono infatti essere aggiunti anche ai [metadati di un nodo](../map/storage.html).
|
||||
Per esempio, questo è usato con le casse per permettere tempi più veloci d'apertura - non si ha bisogno di aspettare che il server invii il formspec della cassa al giocatore.
|
||||
|
||||
```lua
|
||||
|
@ -13,15 +13,15 @@ Le HUD (Heads Up Display) ti permettono di mostrare testi, immagini e altri elem
|
||||
Le HUD, infatti, non accettano input dall'utente, lasciando quel ruolo ai [formspec](formspecs.html).
|
||||
|
||||
- [Posizionamento](#posizionamento)
|
||||
- [Posizione e scostamento](#posizione-e-scostamento)
|
||||
- [Allineamento](#allineamento)
|
||||
- [Esempio: tabellone segnapunti](#esempio-tabellone-segnapunti)
|
||||
- [Posizione e scostamento](#posizione-e-scostamento)
|
||||
- [Allineamento](#allineamento)
|
||||
- [Esempio: tabellone segnapunti](#esempio-tabellone-segnapunti)
|
||||
- [Elementi di testo](#elementi-di-testo)
|
||||
- [Parametri](#parametri)
|
||||
- [Tornando all'esempio](#tornando-allesempio)
|
||||
- [Parametri](#parametri)
|
||||
- [Tornando all'esempio](#tornando-allesempio)
|
||||
- [Elementi immagine](#elementi-immagine)
|
||||
- [Parametri](#parametri-1)
|
||||
- [Tornando all'esempio](#tornando-allesempio-1)
|
||||
- [Parametri](#parametri-1)
|
||||
- [Tornando all'esempio](#tornando-allesempio-1)
|
||||
- [Cambiare un elemento](#cambiare-un-elemento)
|
||||
- [Salvare gli ID](#salvare-gli-id)
|
||||
- [Altri elementi](#altri-elementi)
|
||||
@ -278,4 +278,4 @@ end)
|
||||
|
||||
## Altri elementi
|
||||
|
||||
Dai un occhio a [lua_api.txt](https://minetest.gitlab.io/minetest/hud/) per una lista completa degli elementi HUD.
|
||||
Dai un occhio a [lua_api.md](https://minetest.gitlab.io/minetest/hud/) per una lista completa degli elementi HUD.
|
||||
|
@ -14,7 +14,7 @@ Per esempio, un valore di 2 sulla gravità, renderà la gravità di un utente du
|
||||
|
||||
- [Esempio base](#esempio-base)
|
||||
- [Sovrascritture disponibili](#sovrascritture-disponibili)
|
||||
- [Vecchio sistema di movimento](#vecchio-sistema-di-movimento)
|
||||
- [Vecchio sistema di movimento](#vecchio-sistema-di-movimento)
|
||||
- [Incompatibilità tra mod](#incompatibilità-tra-mod)
|
||||
- [Il tuo turno](#il-tuo-turno)
|
||||
|
||||
@ -36,7 +36,7 @@ minetest.register_chatcommand("antigrav", {
|
||||
|
||||
## Sovrascritture disponibili
|
||||
|
||||
`set_physics_override()` è una tabella. Stando a [lua_api.txt](https://minetest.gitlab.io/minetest/class-reference/#player-only-no-op-for-other-objects), le chiavi possono essere:
|
||||
`set_physics_override()` è una tabella. Stando a [lua_api.md](https://minetest.gitlab.io/minetest/class-reference/#player-only-no-op-for-other-objects), le chiavi possono essere:
|
||||
|
||||
* `speed`: moltiplicatore della velocità di movimento (predefinito: 1)
|
||||
* `jump`: moltiplicatore del salto (predefinito: 1)
|
||||
|
@ -10,10 +10,10 @@ redirect_from: /it/chapters/readmore.html
|
||||
|
||||
Dopo aver letto questo libro, se mastichi l'inglese dai un occhio a ciò che segue:
|
||||
|
||||
### Modding di Minetest
|
||||
### Moddaggio di Minetest
|
||||
|
||||
* Riferimento alla API Lua di Minetest - [versione HTML](https://minetest.gitlab.io/minetest/) |
|
||||
[versione solo testo](https://github.com/minetest/minetest/blob/master/doc/lua_api.txt).
|
||||
* Riferimento alla API Lua di Minetest - [versione interattiva](https://minetest.gitlab.io/minetest/) |
|
||||
[versione su pagina singola](https://github.com/minetest/minetest/blob/master/doc/lua_api.md).
|
||||
* Spulcia le [mod esistenti](https://forum.minetest.net/viewforum.php?f=11).
|
||||
|
||||
### Programmazione in Lua
|
||||
|
@ -21,7 +21,7 @@ layout: compress
|
||||
<meta name="author" content="rubenwardy">
|
||||
<meta name="flattr:id" content="gl763e">
|
||||
|
||||
<link rel="canonical" href="https://rubenwardy.com/minetest_modding_book{{ page.url }}" />
|
||||
<link rel="canonical" href="https://rubenwardy.com/minetest_modding_book{{ page.url }}">
|
||||
|
||||
{% assign oldSegment = "/" | append: language | append: "/" %}
|
||||
{% for other_lang in site.data.languages %}
|
||||
@ -29,7 +29,7 @@ layout: compress
|
||||
{% assign newSegment = "/" | append: other_lang.code | append: "/" %}
|
||||
|
||||
<link rel="alternate" hreflang="{{ other_lang.code }}"
|
||||
href="{{ page.url | replace: oldSegment, newSegment | relative_url }}" />
|
||||
href="{{ page.url | replace: oldSegment, newSegment | relative_url }}">
|
||||
{% endunless %}
|
||||
{% endfor %}
|
||||
|
||||
|
@ -5,7 +5,9 @@ layout: none
|
||||
<html>
|
||||
<head>
|
||||
<title>Minetest Modding Book</title>
|
||||
<meta name="og:description" content="An easy guide to learn how to create mods for Minetest">
|
||||
<meta name="description" content="An easy guide to learn how to create mods for Minetest">
|
||||
<link rel="canonical" href="https://rubenwardy.com/minetest_modding_book/">
|
||||
<script>
|
||||
var languages = {{ site.data.languages | jsonify }};
|
||||
function getLanguage() {
|
||||
@ -27,9 +29,10 @@ layout: none
|
||||
<body>
|
||||
<main>
|
||||
<h1>Minetest Modding Book</h1>
|
||||
<p>An easy guide to learn how to create mods for Minetest.</p>
|
||||
<p>Detecting and redirecting to the correct translation.</p>
|
||||
<p>
|
||||
<a href="en/index.html">View English Translation</a>
|
||||
<a href="en/index.html">View Minetest Modding Book in English</a>
|
||||
</p>
|
||||
</main>
|
||||
</body>
|
||||
|
@ -12,7 +12,7 @@
|
||||
{
|
||||
"idx": {{ link.idx }},
|
||||
"title": "{{ link.title }}",
|
||||
"loc": "https://rubenwardy.com/minetest_modding_book/{{ link.url }}",
|
||||
"loc": "https://rubenwardy.com/minetest_modding_book{{ link.url }}",
|
||||
{% if link.description %}
|
||||
"description": "{{ link.description }}",
|
||||
{% endif %}
|
||||
|
Loading…
Reference in New Issue
Block a user