diff --git a/DEV.md b/DEV.md new file mode 100644 index 0000000..10b3b19 --- /dev/null +++ b/DEV.md @@ -0,0 +1,50 @@ +# Sound API + +This mod is a wrapper for [sound api library](https://github.com/mt-mods/sound_api_core/). + +## Usage of the sound api + +### Option 1: embed + +You can insert the [sound api library](https://github.com/mt-mods/sound_api_core/) directly into your mod as a submodule and use the following to load it. + +```lua +local sound_api = dofile(modpath .. "/sound_api_core/init.lua") +``` + +additionally the author recommends that you use dependabot(github) or similar to help you keep the submodule up to date. + +### Option 2: 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 3: Hard depend + +add this mod to your mod.confs depends and directly call the sound_api as follows + +```lua +minetest.register_node(nodename, { + ... + sounds = sound_api.node_sound_stone_defaults(input) + ... +}) +``` + +* input: optional table to override some or all of returned values + diff --git a/README.md b/README.md index 10b3b19..735572a 100644 --- a/README.md +++ b/README.md @@ -1,50 +1,19 @@ # Sound API -This mod is a wrapper for [sound api library](https://github.com/mt-mods/sound_api_core/). +mod that enables sound to be game agnostic +## Installing -## Usage of the sound api +* `git clone https://github.com/mt-mods/sound_api.git` +* `cd sound_api` +* `git submodule init` +* `git submodule update` -### Option 1: embed +to update please use the following commands starting inside the mod directory -You can insert the [sound api library](https://github.com/mt-mods/sound_api_core/) directly into your mod as a submodule and use the following to load it. +* `git pull` +* `git submodule sync` +* `git submodule update` -```lua -local sound_api = dofile(modpath .. "/sound_api_core/init.lua") -``` - -additionally the author recommends that you use dependabot(github) or similar to help you keep the submodule up to date. - -### Option 2: 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 3: Hard depend - -add this mod to your mod.confs depends and directly call the sound_api as follows - -```lua -minetest.register_node(nodename, { - ... - sounds = sound_api.node_sound_stone_defaults(input) - ... -}) -``` - -* input: optional table to override some or all of returned values +## Dev Docs +Can be found at /DEV.md \ No newline at end of file