Compare commits

..

47 Commits
1.5 ... 1.8

Author SHA1 Message Date
db626eaece Small cleaning 2019-09-10 17:27:59 +02:00
3b3da66a0d Improve tooltip for toolrepair 2019-09-10 16:01:00 +02:00
84795a6523 Fix tooltip for replacements 2019-09-10 12:37:39 +02:00
fc3f1fece2 Code cleaning 2019-09-10 12:29:32 +02:00
00a88a320a craftguide can show repairable tools 2019-09-10 00:05:55 +02:00
19b8e28afb Code cleaning 2019-09-09 21:56:37 +02:00
12e35f80f0 Fix replace tooltip 2019-09-09 19:30:44 +02:00
11da33ca76 Add comment 2019-09-09 19:10:33 +02:00
08e758aca5 Fix shapeless width bounds 2019-09-09 19:02:09 +02:00
727758b816 craftguide can read replacements! 2019-09-09 19:01:52 +02:00
b026e94d6e Fix custom recipe icon position 2019-09-08 12:48:46 +02:00
b8c79d1765 Change sign texture again 2019-09-08 12:31:45 +02:00
742627aa8c Add more doc to custom recipes 2019-09-08 12:28:30 +02:00
bf616f5d21 Add fallback background is not -dev version 2019-09-07 13:02:42 +02:00
22787e41e3 Change sign texture 2019-09-06 21:19:40 +02:00
6b76c8c10f API to set a custom background 2019-09-06 17:56:41 +02:00
5f68d2de11 Improve the interface 2019-09-06 17:06:23 +02:00
ea12d5ca14 Optimize textures with oxipng 2019-09-06 16:33:19 +02:00
3d77ec58b4 Ability to register custom crafts dynamically 2019-09-06 15:51:30 +02:00
83151cb394 More interface fine-tuning 2019-09-06 13:31:50 +02:00
337ac898cd Fine-tune items positioning + Remove zoom in/out features 2019-09-05 21:04:27 +02:00
cb0200a222 Small cleanup 2019-09-05 15:02:38 +02:00
ae4b15a748 Improve grid display 2019-09-05 14:42:35 +02:00
2fa14ae146 Code cleaning 2019-08-31 13:34:54 +02:00
8b86dfc857 Fine-tune HUD 2019-08-30 18:36:34 +02:00
c468ab22fd Update mod.conf 2019-08-30 17:20:39 +02:00
d324c5f1e5 Progressive mode: Add a Steam-like HUD success + remove useless API functions 2019-08-30 17:05:03 +02:00
dfa45789e2 Style cleaning 2019-08-29 15:41:32 +02:00
80a0d67f15 Ability to register recipes in MC-like way 2019-08-29 14:56:53 +02:00
22c5c9444e Interpret group value 0 as "not in group".
This fixes instances where items are counted as part of a group by
craftguide but not by the engine.
2019-08-29 14:47:19 +02:00
97676d094e Fix possible crash 2019-06-30 19:42:32 +02:00
ca18ae0e3a Fix nil item crash in get_tooltip() - Fixes #84, regression caused by d950c71db (@pauloue) 2019-06-30 16:37:09 +02:00
e710fcd483 Small optimization 2019-06-23 01:42:12 +02:00
a2e4f20791 Items with no recipes but with usages are shown 2019-06-23 01:25:18 +02:00
22a85f50c1 Sugar 2019-05-08 20:57:45 +02:00
0271f61fc2 Change tooltip format 2019-03-21 17:44:32 +01:00
84756af3a1 Opens the stereotypes to the API 2019-03-21 17:34:20 +01:00
9dc656d5a2 Fix broken assert() 2019-03-21 00:21:11 +01:00
4c0371c5cc Progressive mode: Fix crash on player leaving 2019-03-14 14:11:44 +01:00
b6181ebd7a Minor cleanup 2019-03-13 16:56:35 +01:00
eb7292da7a 2×2 for shapeless recipe w/ <= 4 items 2019-03-13 15:22:45 +01:00
9df355b899 Add more assert checks 2019-03-12 16:54:26 +01:00
a242f6c61c Revert some changes 2019-03-11 03:01:37 +01:00
c9ebd5c069 Cleanup 2019-03-10 16:27:36 +01:00
054a7ab3af Update russian translations 2019-03-07 13:47:41 +01:00
b1a67eb632 Add examples in doc 2019-03-07 13:43:47 +01:00
e0e57b45ea Quick fix 2019-03-04 01:19:13 +01:00
17 changed files with 892 additions and 659 deletions

View File

@ -10,3 +10,8 @@ read_globals = {
"string", "string",
"table", "table",
} }
globals = {
"craftguide",
"core",
}

99
API.md
View File

@ -2,6 +2,9 @@
### Custom recipes ### Custom recipes
Custom recipes are nonconventional crafts outside the main crafting grid.
They can be registered in-game dynamically and have a size beyond 3x3 items.
#### Registering a custom crafting type (example) #### Registering a custom crafting type (example)
```Lua ```Lua
@ -11,17 +14,35 @@ craftguide.register_craft_type("digging", {
}) })
``` ```
#### Registering a custom crafting recipe (example) #### Registering a custom crafting recipe (examples)
```Lua ```Lua
craftguide.register_craft({ craftguide.register_craft({
type = "digging", type = "digging",
width = 1, width = 1,
output = "default:cobble 2", result = "default:cobble 2",
items = {"default:stone"}, items = {"default:stone"},
}) })
``` ```
Recipes can also be registered in a Minecraft-like way:
```Lua
craftguide.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"X X",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
```
--- ---
### Recipe filters ### Recipe filters
@ -55,10 +76,6 @@ end)
Removes the recipe filter with the given name. Removes the recipe filter with the given name.
#### `craftguide.set_recipe_filter(name, function(recipe, player))`
Removes all recipe filters and adds a new one.
#### `craftguide.get_recipe_filters()` #### `craftguide.get_recipe_filters()`
Returns a map of recipe filters, indexed by name. Returns a map of recipe filters, indexed by name.
@ -70,10 +87,15 @@ Returns a map of recipe filters, indexed by name.
Search filters are used to perform specific searches inside the search field. Search filters are used to perform specific searches inside the search field.
They can be used like so: `<optional name>+<filter name>=<value1>,<value2>,<...>` They can be used like so: `<optional name>+<filter name>=<value1>,<value2>,<...>`
Examples:
- `+groups=cracky,crumbly`: search for groups `cracky` and `crumbly` in all items.
- `sand+groups=falling_node`: search for group `falling_node` for items which contain `sand` in their names.
Notes: Notes:
- If `optional name` is omitted, the search filter will apply to all items, without pre-filtering. - If `optional name` is omitted, the search filter will apply to all items, without pre-filtering.
- Filters can be combined. - Filters can be combined.
- The `+groups=` filter is currently implemented by default. - The `groups` filter is currently implemented by default.
#### `craftguide.add_search_filter(name, function(item, values))` #### `craftguide.add_search_filter(name, function(item, values))`
@ -114,49 +136,6 @@ Returns a map of search filters, indexed by name.
--- ---
### Custom formspec elements
#### `craftguide.add_formspec_element(name, def)`
Adds a formspec element to the current formspec.
Supported types: `box`, `label`, `image`, `button`, `tooltip`, `item_image`, `image_button`, `item_image_button`
Example:
```lua
craftguide.add_formspec_element("export", {
type = "button",
element = function(data)
-- Should return a table of parameters according to the formspec element type.
-- Note: for all buttons, the 'name' parameter *must not* be specified!
if data.recipes then
return {
data.iX - 3.7, -- X
sfinv_only and 7.9 or 8, -- Y
1.6, -- W
1, -- H
ESC(S("Export")) -- label
}
end
end,
-- Optional.
action = function(player, data)
-- When the button is pressed.
print("Exported!")
end
})
```
#### `craftguide.remove_formspec_element(name)`
Removes the formspec element with the given name.
#### `craftguide.get_formspec_elements()`
Returns a map of formspec elements, indexed by name.
---
### Miscellaneous ### Miscellaneous
#### `craftguide.show(player_name, item, show_usages)` #### `craftguide.show(player_name, item, show_usages)`
@ -166,3 +145,23 @@ Opens the Crafting Guide with the current filter applied.
* `player_name`: string param. * `player_name`: string param.
* `item`: optional, string param. If set, this item is pre-selected. If the item does not exist or has no recipe, use the player's previous selection. By default, player's previous selection is used * `item`: optional, string param. If set, this item is pre-selected. If the item does not exist or has no recipe, use the player's previous selection. By default, player's previous selection is used
* `show_usages`: optional, boolean param. If true, show item usages. * `show_usages`: optional, boolean param. If true, show item usages.
#### `craftguide.group_stereotypes`
This is the table indexing the item groups by stereotypes.
You can add a stereotype like so:
```Lua
craftguide.group_stereotypes.radioactive = "mod:item"
```
#### `craftguide.background`
You can set a custom background theme by overriding this variable:
```Lua
craftguide.background = "<file_name.png>:<middle>"
```
`middle` (number) refers to a 9-sliced background. Read the engine's Lua API documentation for more info.

View File

@ -17,5 +17,4 @@ Use the command `/craft` to show the recipe(s) of the pointed node.
For developers, `craftguide` also has a [modding API](https://github.com/minetest-mods/craftguide/blob/master/API.md). For developers, `craftguide` also has a [modding API](https://github.com/minetest-mods/craftguide/blob/master/API.md).
![Preview2](https://i.imgur.com/bToFH38.png) ![Preview2](https://i.imgur.com/oGSvbTW.png)

View File

@ -1,2 +0,0 @@
sfinv?
sfinv_buttons?

1384
init.lua

File diff suppressed because it is too large Load Diff

View File

@ -3,20 +3,14 @@
Craft Guide=Rezeptbuch Craft Guide=Rezeptbuch
Crafting Guide=Rezeptbuch Crafting Guide=Rezeptbuch
Crafting Guide Sign=Rezepttafel Crafting Guide Sign=Rezepttafel
Search=Suche
Reset=Zurücksetzen
Previous page=Vorherige Seite
Next page=Nächste Seite
Usage @1 of @2=Verwendung @1 von @2 Usage @1 of @2=Verwendung @1 von @2
Recipe @1 of @2=Rezept @1 von @2 Recipe @1 of @2=Rezept @1 von @2
Burning time: @1=Brennzeit: @1 Burning time: @1=Brennzeit: @1
Cooking time: @1=Kochzeit: @1 Cooking time: @1=Kochzeit: @1
Any item belonging to the group(s): @1=Beliebiger Gegenstand aus Gruppe(n): @1 Any item belonging to the group(s): @1=Beliebiger Gegenstand aus Gruppe(n): @1
Recipe is too big to be displayed (@1x@2)=Rezept ist zu groß für die Anzeige (@1×@2) Recipe's too big to be displayed (@1x@2)=Rezept ist zu groß für die Anzeige (@1×@2)
Shapeless=Formlos Shapeless=Formlos
Cooking=Kochen Cooking=Kochen
Increase window size=Fenster vergrößern
Decrease window size=Fenster verkleinern
No item to show=Nichts anzuzeigen No item to show=Nichts anzuzeigen
Collect items to reveal more recipes=Gegenstände aufsammeln, um mehr Rezepte aufzudecken Collect items to reveal more recipes=Gegenstände aufsammeln, um mehr Rezepte aufzudecken
Show recipe(s) of the pointed node=Rezept(e) des gezeigten Blocks anzeigen Show recipe(s) of the pointed node=Rezept(e) des gezeigten Blocks anzeigen

View File

@ -2,20 +2,18 @@
Craft Guide=Guide de recettes Craft Guide=Guide de recettes
Crafting Guide=Guide de recettes Crafting Guide=Guide de recettes
Search=Rechercher
Reset=Réinitialiser
Previous page=Page précédente
Next page=Page suivante
Usage @1 of @2=Usage @1 de @2 Usage @1 of @2=Usage @1 de @2
Recipe @1 of @2=Recette @1 de @2 Recipe @1 of @2=Recette @1 de @2
Burning time: @1=Temps de combustion : @1 Burning time: @1=Temps de combustion : @1
Cooking time: @1=Temps de cuisson : @1 Cooking time: @1=Temps de cuisson : @1
Replaced by @1 on smelting=Remplacé par @1 lors de la cuisson
Replaced by @1 on burning=Remplacé par @1 lors de la combustion
Replaced by @1 on crafting=Remplacé par @1 lors de la fabrication
Repairable by step of @1=Réparable par étape de @1
Any item belonging to the group(s): @1=Tout item appartenant au(x) groupe(s) : @1 Any item belonging to the group(s): @1=Tout item appartenant au(x) groupe(s) : @1
Recipe is too big to be displayed (@1x@2)=La recette est trop grande pour être affichée (@1x@2) Recipe's too big to be displayed (@1x@2)=La recette est trop grande pour être affichée (@1x@2)
Shapeless=Sans forme Shapeless=Sans forme
Cooking=Cuisson Cooking=Cuisson
Increase window size=Agrandir la fenêtre
Decrease window size=Réduire la fenêtre
No item to show=Aucun item à afficher No item to show=Aucun item à afficher
Collect items to reveal more recipes=Collecte des items pour révéler plus de recettes Collect items to reveal more recipes=Collecte des items pour révéler plus de recettes
Show recipe(s) of the pointed node=Affiche les recettes du bloc visé Show recipe(s) of the pointed node=Affiche les recettes du bloc visé

View File

@ -2,24 +2,18 @@
Craft Guide=книга рецептов крафта Craft Guide=книга рецептов крафта
Crafting Guide=книга рецептов крафта Crafting Guide=книга рецептов крафта
Crafting Guide Sign= Crafting Guide Sign=Знак с книгой рецептов
Search=Поиск
Reset=Сброс
Previous page=Предыдущая страница
Next page=Следущая страница
Usage @1 of @2=использование @1 из @2 Usage @1 of @2=использование @1 из @2
Recipe @1 of @2=Рецепт @1 из @2 Recipe @1 of @2=Рецепт @1 из @2
Burning time: @1=Время горения: @1 Burning time: @1=Время горения: @1
Cooking time: @1=Время преготовления: @1 Cooking time: @1=Время преготовления: @1
Any item belonging to the group(s): @1=Любой элемент из группы: @1 Any item belonging to the group(s): @1=Любой элемент из группы: @1
Recipe is too big to be displayed (@1x@2)=Рецепт слишком большой для показа (@1x@2) Recipe's too big to be displayed (@1x@2)=Рецепт слишком большой для показа (@1x@2)
Shapeless= Shapeless=Бесформенный
Cooking= Cooking=Приготовление
Increase window size=Увеличить окно
Decrease window size=Уменьшить окно
No item to show=Нет элемента для показа No item to show=Нет элемента для показа
Collect items to reveal more recipes= Collect items to reveal more recipes=Собирайте предметы, чтобы раскрыть больше рецептов
Show recipe(s) of the pointed node= Show recipe(s) of the pointed node=Показать рецепт(ы) выбранной ноды
No node pointed= No node pointed=Не указана нода
You don't know a recipe for this node= You don't know a recipe for this node=Вы не знаете рецепт для этой ноды
No recipe for this node= No recipe for this node=Нет рецептов для этой ноды

View File

@ -3,20 +3,18 @@
Craft Guide= Craft Guide=
Crafting Guide= Crafting Guide=
Crafting Guide Sign= Crafting Guide Sign=
Search=
Reset=
Previous page=
Next page=
Usage @1 of @2= Usage @1 of @2=
Recipe @1 of @2= Recipe @1 of @2=
Burning time: @1= Burning time: @1=
Cooking time: @1= Cooking time: @1=
Replaced by @1 on smelting=
Replaced by @1 on burning=
Replaced by @1 on crafting=
Repairable by step of @1=
Any item belonging to the group(s): @1= Any item belonging to the group(s): @1=
Recipe is too big to be displayed (@1x@2)= Recipe's too big to be displayed (@1x@2)=
Shapeless= Shapeless=
Cooking= Cooking=
Increase window size=
Decrease window size=
No item to show= No item to show=
Collect items to reveal more recipes= Collect items to reveal more recipes=
Show recipe(s) of the pointed node= Show recipe(s) of the pointed node=

View File

@ -1 +1,3 @@
name = craftguide name = craftguide
optional_depends = sfinv, sfinv_buttons
description = The most comprehensive Crafting Guide on Minetest

Binary file not shown.

Before

Width:  |  Height:  |  Size: 169 B

After

Width:  |  Height:  |  Size: 68 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 728 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 685 B

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 685 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB