mirror of
https://github.com/mt-mods/xcompat.git
synced 2025-06-28 06:30:30 +02:00
refactor mod (#22)
This commit is contained in:
12
doc/gameid.md
Normal file
12
doc/gameid.md
Normal file
@ -0,0 +1,12 @@
|
||||
# GameId API
|
||||
|
||||
## minetest versions >= 5.7
|
||||
|
||||
simply returns `minetest.get_game_info().id`
|
||||
|
||||
## minetest versions < 5.7
|
||||
|
||||
approximates the gameid value via a hardcoded table of gameid=>modname
|
||||
and then checks via `minetest.get_modpath()`. If it fails, it falls
|
||||
back to using `xcompat_unknown_gameid` as the id. See the chart in the
|
||||
readme for which games are supported
|
3
doc/materials.md
Normal file
3
doc/materials.md
Normal file
@ -0,0 +1,3 @@
|
||||
# Materials API
|
||||
|
||||
consult `/src/materials/minetest.lua` at this time
|
35
doc/sounds.md
Normal file
35
doc/sounds.md
Normal file
@ -0,0 +1,35 @@
|
||||
# Sound API
|
||||
|
||||
## Option 1: Agnostically depend
|
||||
|
||||
You can do this by using a custom field in your node def instead of the `sounds` key.
|
||||
|
||||
```lua
|
||||
minetest.register_node(nodename, {
|
||||
...
|
||||
_sound_def = {
|
||||
key = "",
|
||||
input = {},
|
||||
},
|
||||
...
|
||||
})
|
||||
```
|
||||
|
||||
where:
|
||||
|
||||
* key: string name of the field from the sound api you want to use, for example `node_sound_stone_defaults`
|
||||
* input: table input of fields you want passed to the key field, used to override specific sounds.
|
||||
|
||||
## Option 2: Hard depend
|
||||
|
||||
add this mod to your mod.confs depends and directly call the sound_api as follows
|
||||
|
||||
```lua
|
||||
minetest.register_node(nodename, {
|
||||
...
|
||||
sounds = xcompat.sounds.node_sound_stone_defaults(input)
|
||||
...
|
||||
})
|
||||
```
|
||||
|
||||
* input: optional table to override some or all of returned values
|
3
doc/textures.md
Normal file
3
doc/textures.md
Normal file
@ -0,0 +1,3 @@
|
||||
# Textures API
|
||||
|
||||
consult `/src/texture/minetest.lua` at this time
|
Reference in New Issue
Block a user