Compare commits

..

220 Commits
1.0 ... 1.2

Author SHA1 Message Date
ca5cd92ff3 Update Screenshot 2021-05-01 20:38:20 +02:00
0c2d3a5cba Fix 2021-05-01 16:44:34 +02:00
5a36209ac9 Rename variable 2021-05-01 16:02:35 +02:00
666200df76 Change priv check for teleport 2021-05-01 04:10:30 +02:00
4bc1bfee8b Small fix 2021-05-01 02:23:56 +02:00
304f74c7a4 Fix 2021-05-01 02:02:07 +02:00
833d27975e More tweaks 2021-05-01 01:53:54 +02:00
d2d8be9f18 Properly change mode after granting/revoking creative 2021-05-01 01:07:17 +02:00
6fe9f96cad More tweaks 2021-05-01 00:48:49 +02:00
b0002eb7cf Some tweaks 2021-05-01 00:39:47 +02:00
7e648246eb Unify items list and inventory 2021-05-01 00:28:11 +02:00
f0b5eb7a18 UI improvements 2021-04-30 23:17:17 +02:00
859feb4105 Minor cleaning 2021-04-23 05:20:24 +02:00
ecda62fc2f Fix waypoint again (shit) 2021-04-20 03:27:37 +02:00
7c5c6f38f2 Update README 2021-04-19 21:45:39 +02:00
4d4a5ebae8 Fix waypoints 2021-04-19 21:37:08 +02:00
8fb82aedb2 Some improvements 2021-04-19 21:14:09 +02:00
297855b164 Fix potential issue with model preview 2021-04-19 04:53:50 +02:00
49e9fda9f9 Some cleaning 2021-04-15 17:46:17 +02:00
f85b0f7801 Tweaking 2021-04-12 20:34:29 +02:00
61beb77d6a Cleaning 2021-04-12 06:57:48 +02:00
8c5a83ac97 Remove unused texture 2021-04-12 05:30:22 +02:00
4a9172821d Small fix 2021-04-12 05:28:52 +02:00
a0c0a8bad7 Another fix 2021-04-12 00:38:24 +02:00
1b71a85f53 Fixed 2021-04-12 00:34:11 +02:00
eb28f3346a Cleaning 2021-04-12 00:24:55 +02:00
5110e910ff Waypoints UI overhaul 2021-04-12 00:09:04 +02:00
54c917e5c3 Minor cleaning 2021-04-11 03:28:13 +02:00
5915ab20f7 Fix tooltips for output with meta 2021-04-11 03:25:03 +02:00
7a48b93719 Support for palette_index in recipe output 2021-04-11 02:36:11 +02:00
77bac4c077 Cleaning 2021-04-10 04:41:32 +02:00
88dd9beb9d Another fix 2021-04-10 04:10:27 +02:00
a7bbfa00dd Small fix 2021-04-10 03:46:04 +02:00
1a0aab9b5e Show colored item from meta in crafting guide 2021-04-10 03:31:59 +02:00
3f6aa287d9 Show meta descriptions in crafting guide 2021-04-10 01:49:04 +02:00
eed43032bc Better chat message 2021-04-08 04:45:19 +02:00
3db6bbead0 UI improvements 2021-04-07 01:25:04 +02:00
2f5456ad21 Tweak 2021-04-07 00:37:29 +02:00
aecb325919 Fix crash 2021-04-06 22:54:29 +02:00
313fd6f217 Optimize texture 2021-04-06 22:51:14 +02:00
fd9d5ea994 Fix a bunch of things 2021-04-06 19:31:06 +02:00
56f8b68f5a Small correction 2021-04-06 17:47:17 +02:00
e244a82d04 Get rid of get_short_description 2021-04-06 17:30:25 +02:00
6fe45c0fac Rename variable 2021-04-06 04:14:40 +02:00
a372bd8a81 Small cleaning 2021-04-06 04:06:54 +02:00
ab68eff744 Optimize textures 2021-04-06 03:42:37 +02:00
84733879b4 Update README 2021-04-06 03:34:54 +02:00
c4a05272ce Minor fix 2021-04-06 03:27:36 +02:00
91b88e81af Adjusting 2021-04-06 03:10:01 +02:00
3dd4ff005c Implement Waypoints 2021-04-06 02:52:34 +02:00
3bc506d9dc Replace icons 2021-04-05 23:41:12 +02:00
1f88d1a871 Inventory design overhaul 2021-04-05 23:31:00 +02:00
e910c20ae2 Code cleaning 2021-03-29 03:08:48 +02:00
e96fffc639 Empty craft grid on trash all 2021-03-29 02:36:28 +02:00
451dde2a73 Fix some issues with register_cratf() 2021-03-26 23:36:23 +01:00
056d4a3dde Fix crash 2021-03-24 19:28:45 +01:00
9618ea64b7 More improvements 2021-03-22 21:57:02 +01:00
2d4726217a Preset texture name 2021-03-22 21:42:26 +01:00
5b83c6d726 Some UI improvements 2021-03-22 21:40:36 +01:00
756d4e2857 Change listring behavior 2021-03-16 19:34:25 +01:00
03b3c10014 Small fix 2021-03-16 18:33:01 +01:00
122b774c85 Minor tweak 2021-03-12 23:53:12 +01:00
6dfc8fe598 Fix error message 2021-03-12 23:50:17 +01:00
de4a6a6ca5 Fix hypertext sizing 2021-03-12 22:32:43 +01:00
29925efeac Minor style cleaning 2021-02-27 19:28:10 +01:00
cdd0eed116 Always show cancel button 2021-02-27 19:25:25 +01:00
a9700417f8 Fix error with skinsdb 2021-02-27 19:05:07 +01:00
d479f13ce6 Update demo video 2021-02-24 19:36:54 +01:00
7b8f02ccde Update preview image & release 1.0 2021-02-24 19:14:07 +01:00
aaa2072a6c Minor fix 2021-02-08 19:39:13 +01:00
094c83d0c4 Optimize things up 2021-02-08 19:34:18 +01:00
f7e9e987ab Update README 2021-02-08 01:32:33 +01:00
555f9e4de2 Use get_short_description 2021-02-07 01:37:09 +01:00
88c20f8a3b Code cleaning 2021-01-31 00:01:44 +01:00
3dc8e038f3 Drop support for WorldEdit eventually 2021-01-30 23:39:21 +01:00
e2102f1069 Oops 2021-01-30 00:11:22 +01:00
96882004c9 Minor tweak 2021-01-29 23:31:17 +01:00
89c2249bcb Update API 2021-01-29 02:56:28 +01:00
3e5b7cbb55 Update README 2021-01-29 02:53:49 +01:00
6e1e50ae20 Minor fix 2021-01-29 02:46:30 +01:00
62f1d17fa7 Some fixes 2021-01-29 02:34:02 +01:00
6f26524885 Minor cleaning 2021-01-29 01:46:19 +01:00
e091ca1c43 Update README 2021-01-29 01:21:33 +01:00
4deee41ef2 Fix 2021-01-29 01:14:21 +01:00
328ad308f3 Add worldedit GUI support 2021-01-29 01:09:25 +01:00
694b9237e8 Fix tabs look 2021-01-28 21:13:29 +01:00
eecb3439ab Add more API funcs 2021-01-28 21:00:08 +01:00
7c9785d448 Minor cleanup 2021-01-27 01:05:07 +01:00
797db59345 Fix sfinv issue 2021-01-26 23:36:24 +01:00
ae5164509c More gradients 2021-01-26 02:16:10 +01:00
96398cafdf Make slots and boxes look better 2021-01-26 02:01:31 +01:00
4c256095a8 Update README 2021-01-25 20:44:04 +01:00
b67005afbc Tweal player model preview 2021-01-25 20:29:38 +01:00
caa7674aaa Tweak UI 2021-01-25 20:17:40 +01:00
ee54d858c7 Fix some issues with font sizing 2021-01-25 19:30:34 +01:00
8f58e3fda2 Fix potential crash 2021-01-25 00:38:57 +01:00
9bc190443c Fix search filters 2021-01-24 23:33:37 +01:00
c7c043fcb1 Tweak heart texture 2021-01-24 22:33:50 +01:00
6a3c8b8089 Translate the mod in french 2021-01-24 19:09:18 +01:00
255b079caa Tweak values 2021-01-24 16:38:21 +01:00
49964fddae Tweak values 2021-01-24 16:22:04 +01:00
6add8a03e5 Increase hotbar count 2021-01-24 16:08:46 +01:00
fc851eade2 Minor cleanup 2021-01-24 04:48:08 +01:00
2e05628048 New heart textures 2021-01-24 04:01:10 +01:00
46c5a6fc42 Missing sound 2021-01-24 03:17:13 +01:00
90a072d6de Update template 2021-01-24 02:46:17 +01:00
cfd498be78 More UI enhancements 2021-01-24 02:19:13 +01:00
b7d001aa45 More UI enhancements 2021-01-24 02:09:15 +01:00
7402e47e77 Correct large bag size 2021-01-24 00:35:53 +01:00
7030441d5d Increase player model size 2021-01-24 00:33:19 +01:00
288821dda5 Inventory slots rework (needs very latest engine commits) 2021-01-24 00:29:11 +01:00
586b8da9de Luacheck cleanup 2021-01-23 20:54:49 +01:00
1391bad8eb Trash all locales (should be remade from scratch) 2021-01-23 20:39:29 +01:00
fc89da4276 Wording 2021-01-23 20:11:28 +01:00
e3f183b9c8 Rework search_filter (cumulative) + API doc 2021-01-23 19:59:23 +01:00
ab07ee4762 More recommendations 2021-01-23 03:35:45 +01:00
08aa5c953c Update template 2021-01-23 01:54:06 +01:00
6ba15bc555 Update template 2021-01-23 01:50:59 +01:00
6e696a6ecb Translate string 2021-01-23 01:41:48 +01:00
e1679e6461 Minor cleanup 2021-01-23 01:33:06 +01:00
eb9e30dda7 Tweaks 2021-01-23 01:16:07 +01:00
110164cc22 Add labels 2021-01-23 00:55:37 +01:00
7a9e046d44 Minor cleaning 2021-01-22 23:23:43 +01:00
839da854f5 Code cleaning 2021-01-22 20:15:41 +01:00
cb8802a5c2 Override core.is_creative_enabled 2021-01-22 19:56:12 +01:00
ef28c96a13 Fix creative priv check 2021-01-22 19:45:02 +01:00
550edbf2e4 Mention backpacks support 2021-01-22 19:14:33 +01:00
7f604c62f1 Finish bag support 2021-01-22 19:11:11 +01:00
406defae02 WIP bags 2021-01-22 17:54:53 +01:00
f06e5c3b5a Remove unused sound 2021-01-21 20:50:52 +01:00
817b424ed8 Code cleaing 2021-01-21 20:50:13 +01:00
5f6e8277e5 Change bgcolor 2021-01-21 19:55:23 +01:00
5ea3dbaab0 Code cleaning 2021-01-21 19:44:13 +01:00
99d9377b8f UI tweaks 2021-01-21 19:28:54 +01:00
383e2e55f7 Wording 2021-01-17 19:11:11 +01:00
7b125c71d2 Add test file for online recipe 2021-01-17 00:44:46 +01:00
ed3ab46846 Rename files 2021-01-17 00:38:53 +01:00
82b9a54980 Add check 2021-01-17 00:27:51 +01:00
127ab50950 Add check 2021-01-16 23:40:30 +01:00
e5c2ddfb4e Fix mispelling 2021-01-16 21:56:52 +01:00
a7a89eb3b9 Change YouTube/screenshot 2021-01-16 21:32:08 +01:00
e7cf85469d Rewrite README 2021-01-16 20:33:19 +01:00
d8c8c21fd4 Add test file for custom recipes 2021-01-16 19:47:58 +01:00
3cf2919189 Add check 2021-01-16 15:28:12 +01:00
729b489f02 Minor cleanup 2021-01-16 15:13:07 +01:00
dcd2dc73e0 Add more API funcs 2021-01-16 04:47:39 +01:00
030c921485 Improve HP display 2021-01-16 04:09:45 +01:00
e931f6121c SHow grey hearts when damaged disabled 2021-01-16 04:02:59 +01:00
e1bf417119 Wording 2021-01-16 03:46:46 +01:00
0859e9bf16 Cleanup 2021-01-16 03:41:45 +01:00
04ea2e6877 Fix bug 2021-01-16 03:37:26 +01:00
4cbd8bc44a Cleanup 2021-01-16 03:30:12 +01:00
dcd383dffd Add safeguards to i3.new_tab 2021-01-16 03:25:03 +01:00
35edbcc57a Remove unknown function in API.md 2021-01-16 03:02:54 +01:00
39ec2b987c Add API to add new tabs 2021-01-16 02:48:05 +01:00
6b30c0d8cf tweaks 2021-01-15 02:38:23 +01:00
d2a9144ba8 Debugging code 2021-01-15 01:33:24 +01:00
3132fd40b7 Fix scroll_container 2 2021-01-14 15:27:44 +01:00
b71aaf24f3 Fix scroll_container 2021-01-14 15:18:55 +01:00
c4bfe59d2f Add check 2021-01-14 15:09:09 +01:00
c3472a3580 Cleanup progressive 2021-01-14 14:53:32 +01:00
36e186c899 Fix bug in progressive mode + don't show recipes in creative mode 2021-01-14 14:44:45 +01:00
b52adb811c Fix bug with compress items 2021-01-13 22:24:44 +01:00
9901a6f8ea Cleanup 2021-01-13 22:16:46 +01:00
f2820c0328 Cleanig 2021-01-12 22:03:09 +01:00
2be1359986 meh 2021-01-12 02:32:06 +01:00
50cd768fec Remove unused variable 2021-01-12 02:28:06 +01:00
adbe14a004 Optimize 2021-01-12 02:26:28 +01:00
ba05c8d7b3 Fix potential crash 2021-01-11 23:27:02 +01:00
bb42557455 Snip long strings 2021-01-11 23:03:53 +01:00
479ec368d7 Small cleaning 2021-01-11 22:44:23 +01:00
3e48d288db Cleaning 2021-01-11 22:30:06 +01:00
4ce919d1ef Add tooltips 2021-01-11 21:59:11 +01:00
aa541c3da3 Small improvement 2021-01-10 22:55:51 +01:00
bc403798d8 Small improvement 2021-01-10 22:47:37 +01:00
1ec8d10b88 Small improvement 2021-01-10 22:40:45 +01:00
24fe985b00 Improvements 2021-01-10 22:30:25 +01:00
269dc54c47 Small tweak 2021-01-10 21:45:57 +01:00
dba46c70b9 Update README 2021-01-10 21:07:08 +01:00
24928e7343 oopsie 2021-01-10 20:59:53 +01:00
bbab3a8899 Add awards support! 2021-01-10 20:56:37 +01:00
364b3f6d11 Small cleaning 2021-01-10 18:03:17 +01:00
de41ca2a75 Small tweak 2021-01-10 03:42:30 +01:00
71e95d3008 Code cleaning 2021-01-10 01:49:35 +01:00
ece5223f24 Fix potential crash 2021-01-10 01:39:51 +01:00
efcd3277e6 Support flat player 2021-01-10 01:27:09 +01:00
ea4ae437d3 Do not hardcode animation frames 2021-01-10 01:06:40 +01:00
5c826f7ea7 Fix scrollbar 2021-01-09 22:58:22 +01:00
83d92ed402 New slot texture 2021-01-07 20:41:47 +01:00
2f9ca2d5ca Cleanup 2021-01-04 02:13:07 +01:00
4763463469 More tweaking 2021-01-03 23:22:17 +01:00
1455b1ff05 Tweak value 2021-01-03 22:53:31 +01:00
eefd2967b8 Edit README 2021-01-03 22:26:29 +01:00
0032754e46 Tweak value 2021-01-03 22:19:58 +01:00
3b89f6932c Tweak values 2021-01-03 22:16:24 +01:00
9adbcf2615 Tweak value 2021-01-03 21:35:11 +01:00
b672eeaab8 Improve interface 2021-01-03 21:28:42 +01:00
42c787ebaa Show the scrollbar 2021-01-03 21:13:28 +01:00
e46c2a64dc Some cleanup 2021-01-03 12:12:28 +01:00
da41d5bfa7 Small correction 2021-01-02 22:02:10 +01:00
63de3e4628 Update template 2021-01-02 21:40:45 +01:00
5e492c9e2a Change wording 2021-01-02 21:36:13 +01:00
b460ad58ab Add support for skinsdb 2021-01-02 21:15:18 +01:00
a97d1ce163 Minor cleanup 2021-01-02 12:51:31 +01:00
222ae80d93 Fix 2 bugs 2021-01-02 12:19:45 +01:00
9e09edd497 Better sorting 2021-01-02 12:09:54 +01:00
c30b69fd9c Fix compress/sort 2021-01-01 20:23:42 +01:00
99460530b6 Bunch of fixes 2021-01-01 18:11:00 +01:00
9b1fe9b0fe Use fgimg_middle for tabs 2020-12-31 23:04:43 +01:00
d17268a88a Update localization temmplate 2020-12-31 22:33:54 +01:00
dc6c43166c Small fix 2020-12-31 21:57:43 +01:00
28bd5a9886 Small simplification 2020-12-31 21:50:41 +01:00
d631c3edc1 Fix positioning 2020-12-31 21:04:23 +01:00
4bd445e5d3 Small fix 2020-12-31 05:46:09 +01:00
544b9810c7 Some fixes 2020-12-31 05:37:04 +01:00
bf3979cc79 Small fix 2020-12-31 05:07:42 +01:00
9aedeacf6b Fix positioning 2020-12-31 03:34:04 +01:00
fa023a4f5a meh 2020-12-31 03:24:05 +01:00
49670878ba New screenshot 2020-12-31 03:10:39 +01:00
da9b19a76f Update README 2020-12-31 03:02:35 +01:00
66 changed files with 2069 additions and 1012 deletions

View File

@ -1,10 +1,15 @@
unused_args = false
allow_defined_top = true allow_defined_top = true
ignore = {
"get_debug_grid",
}
read_globals = { read_globals = {
"minetest", "minetest",
"default", "default",
"armor", "armor",
"skins",
"awards",
"vector", "vector",
"string", "string",
"table", "table",
@ -12,6 +17,6 @@ read_globals = {
} }
globals = { globals = {
"craftguide", "i3",
"core", "core",
} }

116
API.md
View File

@ -1,5 +1,62 @@
## API ## API
### Custom tabs
#### `i3.new_tab(def)`
Custom tabs can be added to the `i3` inventory as follow (example):
```Lua
i3.new_tab {
name = "stuff",
description = "Stuff",
image = "image.png", -- Optional, adds an image next to the tab description
-- Determine if the tab is visible by a player, `false` or `nil` hide the tab
access = function(player, data)
local name = player:get_player_name()
if name == "singleplayer" then
return false
end
end,
formspec = function(player, data, fs)
fs("label[3,1;This is just a test]")
end,
fields = function(player, data, fields)
end,
}
```
- `player` is an `ObjectRef` to the user.
- `data` are the user data.
- `fs` is the formspec table which is callable with a metamethod. Each call adds a new entry.
#### `i3.set_fs(player[, extra_formspec])`
Updates the current formspec. `extra_formspec` adds an additional formspec string.
#### `i3.delete_tab(tabname)`
Deletes a tab by name.
#### `i3.set_tab(player[, tabname])`
Sets the current tab by name. `player` is an `ObjectRef` to the user.
`tabname` can be omitted to get an empty tab.
#### `i3.override_tab(tabname, def)`
Overrides a tab by name. `def` is the tab definition like seen in `i3.set_tab`.
#### `i3.get_tabs()`
Returns the list of registered tabs.
---
### Custom recipes ### Custom recipes
Custom recipes are nonconventional crafts outside the main crafting grid. Custom recipes are nonconventional crafts outside the main crafting grid.
@ -84,7 +141,7 @@ Recipes can be registered from a given URL containing a JSON file (HTTP support
```Lua ```Lua
i3.register_craft({ i3.register_craft({
url = "https://raw.githubusercontent.com/minetest-mods/i3/master/test.json" url = "https://raw.githubusercontent.com/minetest-mods/i3/main/test_online_recipe.json"
}) })
``` ```
@ -97,7 +154,7 @@ mode is implemented as a recipe filter.
#### `i3.add_recipe_filter(name, function(recipes, player))` #### `i3.add_recipe_filter(name, function(recipes, player))`
Adds a recipe filter with the given name. The filter function should return the Adds a recipe filter with the given `name`. The filter function returns the
recipes to be displayed, given the available recipes and an `ObjectRef` to the recipes to be displayed, given the available recipes and an `ObjectRef` to the
user. Each recipe is a table of the form returned by user. Each recipe is a table of the form returned by
`minetest.get_craft_recipe`. `minetest.get_craft_recipe`.
@ -121,9 +178,9 @@ end)
Removes all recipe filters and adds a new one. Removes all recipe filters and adds a new one.
#### `i3.remove_recipe_filter(name)` #### `i3.delete_recipe_filter(name)`
Removes the recipe filter with the given name. Removes the recipe filter with the given `name`.
#### `i3.get_recipe_filters()` #### `i3.get_recipe_filters()`
@ -134,50 +191,43 @@ Returns a map of recipe filters, indexed by name.
### Search filters ### Search filters
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>,<...>` These filters are cumulative to perform a specific search.
They can be used like so: `<optional_name> +<filter name>=<value1>,<value2>,<...>`
Examples: Example usages:
- `+groups=cracky,crumbly`: search for groups `cracky` and `crumbly` in all items. - `+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. - `wood +groups=flammable +types=node`: search for group `flammable` amongst items which contain
`wood` in their names AND have a `node` drawtype.
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. - The `+groups` and `+types` filters are currently implemented by default.
- The `groups` filter is currently implemented by default.
#### `i3.add_search_filter(name, function(item, values))` #### `i3.add_search_filter(name, function(item, values))`
Adds a search filter with the given name. Adds a search filter with the given `name`. `values` is a table of all possible values.
The search function should return a boolean value (whether the given item should be listed or not). The search function must return a boolean value (whether the given item should be listed or not).
Example function to show items which contain at least a recipe of given width(s): Example function sorting items by drawtype:
```lua ```lua
i3.add_search_filter("widths", function(item, widths) i3.add_search_filter("types", function(item, drawtypes)
local has_width local t = {}
local recipes = recipes_cache[item]
if recipes then for i, dt in ipairs(drawtypes) do
for i = 1, #recipes do t[i] = (dt == "node" and reg_nodes[item] and 1) or
local recipe_width = recipes[i].width (dt == "item" and reg_craftitems[item] and 1) or
for j = 1, #widths do (dt == "tool" and reg_tools[item] and 1) or nil
local width = tonumber(widths[j])
if width == recipe_width then
has_width = true
break
end
end
end
end end
return has_width return #t > 0
end) end)
``` ```
#### `i3.remove_search_filter(name)` #### `i3.remove_search_filter(name)`
Removes the search filter with the given name. Removes the search filter with the given `name`.
#### `i3.get_search_filters()` #### `i3.get_search_filters()`
@ -187,14 +237,6 @@ Returns a map of search filters, indexed by name.
### Miscellaneous ### Miscellaneous
#### `i3.show(player_name, item, show_usages)`
Opens the Crafting Guide with the current filter applied.
* `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
* `show_usages`: optional, boolean param. If true, show item usages.
#### `i3.group_stereotypes` #### `i3.group_stereotypes`
This is the table indexing the item groups by stereotypes. This is the table indexing the item groups by stereotypes.

View File

@ -29,6 +29,7 @@ Licenses of media (textures)
paramat (CC BY-SA 3.0): paramat (CC BY-SA 3.0):
i3_arrow.png - derived from a texture by BlockMen (CC BY-SA 3.0) i3_arrow.png - derived from a texture by BlockMen (CC BY-SA 3.0)
i3_hotbar.png
You are free to: You are free to:
Share — copy and redistribute the material in any medium or format. Share — copy and redistribute the material in any medium or format.

View File

@ -1,18 +1,51 @@
# i3 # i3
#### A tiling inventory for Minetest [![ContentDB](https://content.minetest.net/packages/jp/i3/shields/title/)](https://content.minetest.net/packages/jp/i3/) [![ContentDB](https://content.minetest.net/packages/jp/i3/shields/downloads/)](https://content.minetest.net/packages/jp/i3/)
**`i3`** is a tiling inventory for Minetest with a modern UI using the latest technologies of the Minetest engine. #### **`i3`** is a next-generation inventory for Minetest.
It offers everything what [**`craftguide`**](https://github.com/minetest-mods/craftguide) can do, with an inventory on top of that.
This inventory features a **Progressive Mode**. This inventory offers a slick, modern UI made with the latest technologies of the Minetest engine.
This mode is a Terraria-like system that shows recipes you can craft from items you ever had in your inventory. **`i3`** provides a rich [**API**](https://github.com/minetest-mods/i3/blob/master/API.md) for mod developers who want to extend it.
To enable it: `i3_progressive_mode = true` in `minetest.conf`.
For developers, **`i3`** also has a [modding API](https://github.com/minetest-mods/i3/blob/master/API.md). This mod requires **Minetest 5.4+**
This mod also supports [`3d_armor`](https://github.com/minetest-mods/3d_armor) for a nice player model preview. #### List of features:
- Crafting Guide (only in survival mode)
- Progressive Mode¹
- Quick Crafting
- Backpacks
- 3D Player Model Preview
- Inventory Sorting (alphabetical + item stack compression)
- Item Bookmarks
- Waypoints
**¹** *This mode is a Terraria-like system that shows recipes you can craft from items you ever had in your inventory.
To enable it: `i3_progressive_mode = true` in `minetest.conf`.*
#### This mod officially supports the following mods:
- [**`3d_armor`**](https://content.minetest.net/packages/stu/3d_armor/)
- [**`skinsdb`**](https://content.minetest.net/packages/bell07/skinsdb/)
- [**`awards`**](https://content.minetest.net/packages/rubenwardy/awards/)
#### Recommendations
To use this mod in the best conditions, it's recommended to follow these recommendations:
- Use LuaJIT
- Use a HiDPI widescreen display
- Use the default Freetype font style
#### Notes
`i3` uses a larger inventory than the usual inventories in Minetest games.
Thus, most chests will be unadapted to this inventory size.
The `i3` inventory is 9 slots wide by default (without backpack), such as in Minecraft.
Report any bug on the [**Bug Tracker**](https://github.com/minetest-mods/i3/issues).
Love this mod? Donations are appreciated: https://www.paypal.me/jpg84240 Love this mod? Donations are appreciated: https://www.paypal.me/jpg84240
![Preview](https://user-images.githubusercontent.com/7883281/103390081-c619b480-4b12-11eb-9993-c35787cc6b61.png) Demo video (outdated): https://www.youtube.com/watch?v=25nCAaqeacU
![Preview](https://user-images.githubusercontent.com/7883281/116791813-0edf7b00-aabd-11eb-90b3-11c604af34dc.png)

2261
init.lua

File diff suppressed because it is too large Load Diff

View File

@ -1,60 +0,0 @@
# textdomain: i3
Craft Guide=Rezeptbuch
Crafting Guide=Rezeptbuch
Crafting Guide Sign=Rezepttafel
Bookmarks=Lesezeichen
Usage @1 of @2=Verwendung @1 von @2
Recipe @1 of @2=Rezept @1 von @2
No recipes=Keine Rezepte
No usages=Keine Verwendungen
Burning time: @1=Brennzeit: @1
Cooking time: @1=Kochzeit: @1
Replaced by @1 on smelting=Ersetzt durch @1 beim Schmelzen
Replaced by @1 on burning=Ersetzt durch @1 beim Brennen
Replaced by @1 on crafting=Ersetzt durch @1 beim Fertigen
Repairable by step of @1=Reparierbar um @1
Any item belonging to the group(s): @1=Beliebiger Gegenstand aus Gruppe(n): @1
Any black dye=Beliebiger schwarzer Farbstoff
Any black flower=Beliebige schwarze Blume
Any blue dye=Beliebiger blauer Farbstoff
Any blue flower=Beliebige blaue Blume
Any brown dye=Beliebiger brauner Farbstoff
Any coal=Beliebige Kohle
Any cyan dye=Beliebiger türkiser Farbstoff
Any dark green dye=Beliebiger dunkelgrüner Farbstoff
Any dark grey dye=Beliebiger dunkelgrauer Farbstoff
Any green dye=Beliebiger grüner Farbstoff
Any green flower=Beliebige grüne Blume
Any grey dye=Beliebiger grauer Farbstoff
Any kind of stone block=Beliebiger Steinblock
Any magenta dye=Beliebiger magenta Farbstoff
Any orange dye=Beliebiger orange Farbstoff
Any orange flower=Beliebige orange Blume
Any pink dye=Beliebiger rosa Farbstoff
Any red dye=Beliebiger roter Farbstoff
Any red flower=Beliebige rote Blume
Any sand=Beliebiger Sand
Any stick=Beliebiger Stock
Any tree=Beliebiger Baum
Any vessel=Beliebiger Behälter
Any violet dye=Beliebiger violetter Farbstoff
Any violet flower=Beliebige violette Blume
Any white dye=Beliebiger weißer Farbstoff
Any white flower=Beliebige weiße Blume
Any wood planks=Beliebige Holzplanken
Any wool=Beliebige Wolle
Any yellow dye=Beliebiger gelber Farbstoff
Any yellow flower=Beliebige gelbe Blume
Recipe's too big to be displayed (@1x@2)=Rezept ist zu groß für die Anzeige (@1×@2)
Shapeless=Formlos
Cooking=Kochen
No item to show=Nichts anzuzeigen
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
No node pointed=Auf keinem Block gezeigt
You don't know a recipe or usage for this item=Sie kennen kein Rezept und keine Verwendung für diesen Gegenstand
No recipe or usage for this item=Kein Rezept und keine Verwendung für diesen Gegenstand
Digging=Graben
Digging Chance=Grabechance
@1 of chance to drop=@1 Abwurfwahrscheinlichkeit

View File

@ -1,69 +1,85 @@
# textdomain: i3 # textdomain: i3
Craft Guide=Guide de recettes ### init.lua ###
Crafting Guide=Guide de recettes
Crafting Guide Sign=Guide de recettes @1 added in your inventory=@1 ajouté à votre inventaire
Bookmarks=Favoris @1 new recipe(s) discovered!=@1 nouvelle(s) recette(s) découverte(s)!
Usage @1 of @2=Usage @1 sur @2
Recipe @1 of @2=Recette @1 sur @2
No recipes=Pas de recettes
No usages=Pas d'usages
Burning time: @1=Temps de combustion : @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 black dye=Quelconque colorant noir
Any black flower=Quelconque fleur noire
Any blue dye=Quelconque colorant bleu
Any blue flower=Quelconque fleur bleue
Any brown dye=Quelconque colorant marron
Any coal=Quelconque charbon
Any cyan dye=Quelconque colorant bleu ciel
Any dark green dye=Quelconque colorant vert foncé
Any dark grey dye=Quelconque colorant gris foncé
Any green dye=Quelconque colorant vert
Any green flower=Quelconque fleur verte
Any grey dye=Quelconque colorant gris
Any kind of stone block=Quelconque roche
Any magenta dye=Quelconque colorant magenta
Any orange dye=Quelconque colorant orange
Any orange flower=Quelconque fleur orange
Any pink dye=Quelconque colorant rose
Any red dye=Quelconque colorant rouge
Any red flower=Quelconque fleur rouge
Any sand=Quelconque sable
Any stick=Quelconque bâton
Any tree=Quelconque tronc d'arbre
Any vessel=Quelconque couvert
Any violet dye=Quelconque colorant violet
Any violet flower=Quelconque fleur violette
Any white dye=Quelconque colorant blanc
Any white flower=Quelconque fleur blanche
Any wood planks=Quelconques planches de bois
Any wool=Quelconque laine
Any yellow dye=Quelconque colorant jaune
Any yellow flower=Quelconque fleur jaune
Shapeless=Sans forme
Cooking=Cuisson
No item to show=Aucun item à afficher
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é
No node pointed=Aucun bloc visé
You don't know a recipe or usage for this item=Vous ne connaissez aucune recette pour ce bloc
No recipe or usage for this node=Aucune recette pour ce bloc
Digging=Destruction
Digging (by chance)=Destruction (par chance)
@1 of chance to drop=@1 de chance de tomber @1 of chance to drop=@1 de chance de tomber
Mark this item=Mettre en favori. @1 spawned=@1 spawné
Unmark this item=Enlever des favoris. Achievements: @1 of @2 (@3)=Succès : @1 sur @2 (@3)
Cannot mark this item. Limit of bookmarks reached.=Impossible de mettre cet item en favori. Limite des favoris atteinte. Any black dye=N'importe quel colorant noir
Only drop if using one of these tools: @1=Tombe seulement si détruit avec un de ces outils : @1 Any black flower=N'importe quelle fleur noire
Only drop if using this tool: @1=Tombe seulement si détruit avec cet outil : @1 Any blue dye=N'importe quel colorant bleu
Craft @1 stack=Fabriquer @1 objet Any blue flower=N'importe quelle fleur bleue
Craft @1 stacks=Fabriquer @1 objets Any brown dye=N'importe quel colorant marron
@1 added in your inventory=@1 mis dans votre inventaire Any carpet=N'importe quel tapis
@1 crafted=@1 fabriqué(s) Any coal=N'importe quel charbon
Any cyan dye=N'importe quel colorant bleu turquoise
Any dark green dye=N'importe quel colorant vert foncé
Any dark grey dye=N'importe quel colorant gris foncé
Any dye=N'importe quel colorant
Any flower=N'importe quelle fleur
Any glass=N'importe quel verre
Any green dye=N'importe quel colorant vert
Any green flower=N'importe quelle fleur verte
Any grey dye=N'importe quel colorant gris
Any item belonging to the groups: @1=Tout item appartenant aux groupes : @1
Any leaves=N'importe quelles feuilles d'arbre
Any magenta dye=N'importe quel colorant mauve
Any mushroom=N'importe quel champignon
Any orange dye=N'importe quel colorant orange
Any orange flower=N'importe quelle fleur orange
Any pink dye=N'importe quel colorant rose
Any red dye=N'importe quel colorant rouge
Any red flower=N'importe quelle fleur rouge
Any sand=N'importe quel sable
Any stick=N'importe quel bâton
Any stone=N'importe quelle roche
Any tree=N'importe quel tronc d'arbre
Any vessel=N'importe quel couvert
Any violet dye=N'importe quel colorant violet
Any violet flower=N'importe quelle fleur violette
Any white dye=N'importe quel colorant blanc
Any white flower=N'importe quelle fleur blanche
Any wood planks=N'importe quelles planches de bois
Any wool=N'importe quelle laine
Any yellow dye=N'importe quel colorant jaune
Any yellow flower=N'importe quelle fleur jaune
Armor=Armure
Bag=Sac
Bookmarks=Favoris
Burning time: @1=Temps de combustion : @1
Cannot mark this item. Bookmark limit reached.=
Collect items to reveal more recipes=Collecter des items pour révéler des recettes
Compress items=Compresser les items
Cooking=Cuisson
Cooking time: @1=Temps de cuisson : @1
Craft (x@1)=Fabriquer (x@1)
Digging=Minage
Digging (by chance)=Minage (par chance)
Heal=Guérison
Inventory=Inventaire
Items=Items
Level=Niveau
Mark this item=Ajouter aux favoris
No item to show=Aucun item à montrer
No recipes=Aucune recette
No usages=Aucun usage
Only drop if using one of these tools: @1=Tombe seulement en utilisant un de ces outils : @1
Only drop if using this tool: @1=Tombe seulement en utilisant cet outil : @1
Quick crafting=Fabrication rapide Quick crafting=Fabrication rapide
Recipe @1 of @2=Recette @1 sur @2
Repairable by step of @1=Réparable par étape de @1
Replaced by @1 on burning=Remplacé par @1 à la combustion
Replaced by @1 on crafting=Remplacé par @1 à la fabrication
Replaced by @1 on smelting=Remplacé par @1 à la cuisson
Shapeless=Sans forme particulière
Skins=Skins
Sort items (A-Z)=Trier les items (A-Z)
Sort items (Z-A)=Trier les items (Z-A)
The inventory is extended by @1 slots=L'inventaire est étendu de @1 slots
Trash all items=Détruire tous les items
Unknown Item (@1)=Item inconnu (@1)
Unmark this item=Enlever des favoris
Usage @1 of @2=Usage @1 sur @2

View File

@ -1,60 +0,0 @@
# textdomain: i3
Craft Guide=Guida di assemblaggio
Crafting Guide=Guida d'assemblaggio
Crafting Guide Sign=Cartello della guida di assemblaggio
Bookmarks=Segnalibri
Usage @1 of @2=Utilizzo @1 di @2
Recipe @1 of @2=Ricetta @1 di @2
No recipes=Nessuna ricetta
No usages=Nessun utilizzo
Burning time: @1=Tempo di combustione: @1
Cooking time: @1=Tempo di cottura: @1
Replaced by @1 on smelting=Sostituito da @1 alla fusione
Replaced by @1 on burning=Sostituito da @1 alla combustione
Replaced by @1 on crafting=Sostituito da @1 all'assemblaggio
Repairable by step of @1=Riparabile per passo di @1
Any item belonging to the group(s): @1=Qualunque oggetto appartenente al/ai gruppo/i: @1
Any black dye=Qualunque tintura nera
Any black flower=Qualunque fiore nero
Any blue dye=Qualunque tintura blu
Any blue flower=Qualunque fiore blu
Any brown dye=Qualunque tintura marrone
Any coal=Qualunque carbone
Any cyan dye=Qualunque tintura ciano
Any dark green dye=Qualunque tintura verde scura
Any dark grey dye=Qualunque tintura grigio scura
Any green dye=Qualunque tintura verde
Any green flower=Qualunque fiore verde
Any grey dye=Qualunque tintura grigia
Any kind of stone block=Qualunque tipo di blocco di pietra
Any magenta dye=Qualunque tintura magenta
Any orange dye=Qualunque tintura arancione
Any orange flower=Qualunque fiore arancione
Any pink dye=Qualunque tintura rosa
Any red dye=Qualunque tintura rossa
Any red flower=Qualunque fiore rosso
Any sand=Qualunque sabbia
Any stick=Qualunque bastone
Any tree=Qualunque albero
Any vessel=Qualunque contenitore
Any violet dye=Qualunque tintura viola
Any violet flower=Qualunque fiore viola
Any white dye=Qualunque tintura bianca
Any white flower=Qualunque fiore bianco
Any wood planks=Qualunque asse di legno
Any wool=Qualunque lana
Any yellow dye=Qualunque tintura gialla
Any yellow flower=Qualunque fiore giallo
Recipe's too big to be displayed (@1x@2)=La ricetta è troppo grande per essere mostrata (@1x@2)
Shapeless=Senza forma
Cooking=Cottura
No item to show=Nessun oggetto da mostrare
Collect items to reveal more recipes=Raccogli oggetti per svelare più ricette
Show recipe(s) of the pointed node=Mostra la/le ricetta/e del nodo puntato
No node pointed=Nessun nodo puntato
You don't know a recipe or usage for this item=Non conosci una ricetta o un utilizzo per questo oggetto
No recipe or usage for this item=Nessuna ricetta o utilizzo per questo oggetto
Digging=Scavando
Digging Chance=Probabilità di scavare
@1 of chance to drop=@1 di probabilità di rilascio

View File

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

View File

@ -1,40 +0,0 @@
# textdomain: i3
Any black dye=任何黑染料
Any black flower=任何黑花
Any blue dye=任何蓝染料
Any blue flower=任何蓝花
Any brown dye=任何棕染料
Any coal=任何煤炭
Any cyan dye=任何青染料
Any dark green dye=任何暗绿染料
Any dark grey dye=任何暗灰染料
Any green dye=任何绿染料
Any green flower=任何绿花
Any grey dye=任何灰染料
Any item belonging to the group(s): @1=任何属于以下组别的物品:@1
Any kind of stone block=任何石方块
Any magenta dye=任何品红染料
Any orange dye=任何橙染料
Any orange flower=任何橙花
Any pink dye=任何粉红染料
Any red dye=任何红染料
Any red flower=任何红花
Any sand=任何沙
Any stick=任何棒
Any vessel=任何容器
Any violet dye=任何紫染料
Any violet flower=任何紫花
Any white dye=任何白染料
Any white flower=任何白花
Any wood planks=任何木板
Any wool=任何羊毛
Any yellow dye=任何黄染料
Any yellow flower=任何黄花
Cooking time: @1=熔炼时间为:@1
No items to show=没有可显示的项目。
Recipe @1 of @2=第@1个配方共@2个
Usage @1 of @2=第@1个用法共@2个
Recipe is too big to be displayed=配方太大,无法显示。
Shapeless=无序配方
Unknown Item=不明物品

View File

@ -1,37 +1,32 @@
# textdomain: i3 # textdomain: i3
Craft Guide= ### init.lua ###
Crafting Guide=
Crafting Guide Sign= @1 added in your inventory=
Inventory= @1 new recipe(s) discovered!=
Level= @1 of chance to drop=
Heal= @1 spawned=
Bookmarks= Achievements: @1 of @2 (@3)=
Usage @1 of @2=
Recipe @1 of @2=
No recipes=
No usages=
Burning 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 black dye= Any black dye=
Any black flower= Any black flower=
Any blue dye= Any blue dye=
Any blue flower= Any blue flower=
Any brown dye= Any brown dye=
Any carpet=
Any coal= Any coal=
Any cyan dye= Any cyan dye=
Any dark green dye= Any dark green dye=
Any dark grey dye= Any dark grey dye=
Any dye=
Any flower=
Any glass=
Any green dye= Any green dye=
Any green flower= Any green flower=
Any grey dye= Any grey dye=
Any stone= Any item belonging to the groups: @1=
Any leaves=
Any magenta dye= Any magenta dye=
Any mushroom=
Any orange dye= Any orange dye=
Any orange flower= Any orange flower=
Any pink dye= Any pink dye=
@ -39,6 +34,7 @@ Any red dye=
Any red flower= Any red flower=
Any sand= Any sand=
Any stick= Any stick=
Any stone=
Any tree= Any tree=
Any vessel= Any vessel=
Any violet dye= Any violet dye=
@ -49,28 +45,40 @@ Any wood planks=
Any wool= Any wool=
Any yellow dye= Any yellow dye=
Any yellow flower= Any yellow flower=
Shapeless= Armor=
Cooking= Bag=
No item to show= Bookmarks=
Burning time: @1=
Cannot mark this item. Bookmark limit reached.=
Collect items to reveal more recipes= Collect items to reveal more recipes=
Show recipe(s) of the pointed node= Compress items=
No node pointed= Cooking=
You don't know a recipe or usage for this item= Cooking time: @1=
No recipe or usage for this node= Craft (x@1)=
Digging= Digging=
Digging (by chance)= Digging (by chance)=
@1 of chance to drop= Heal=
Inventory=
Items=
Level=
Mark this item= Mark this item=
Unmark this item= No item to show=
Cannot mark this item. Limit of bookmarks reached.= No recipes=
No usages=
Only drop if using one of these tools: @1= Only drop if using one of these tools: @1=
Only drop if using this tool: @1= Only drop if using this tool: @1=
Craft item=
Craft @1 items=
@1 added in your inventory=
@1 spawned=
Quick crafting= Quick crafting=
Trash all items= Recipe @1 of @2=
Compress items= Repairable by step of @1=
Replaced by @1 on burning=
Replaced by @1 on crafting=
Replaced by @1 on smelting=
Shapeless=
Skins=
Sort items (A-Z)= Sort items (A-Z)=
Sort items (Z-A)= Sort items (Z-A)=
The inventory is extended by @1 slots=
Trash all items=
Unknown Item (@1)=
Unmark this item=
Usage @1 of @2=

View File

@ -1,3 +1,3 @@
name = i3 name = i3
description = Tiling inventory for Minetest description = Tiling inventory for Minetest
optional_depends = 3d_armor optional_depends = 3d_armor, skinsdb, awards

Binary file not shown.

181
test_custom_recipes.lua Normal file
View File

@ -0,0 +1,181 @@
local mt = ItemStack("default:wood")
mt:get_meta():set_string("description", "test wood")
mt:get_meta():set_string("color", "green")
local mt2 = ItemStack("dye:red")
mt2:get_meta():set_string("description", "test red")
mt2:get_meta():set_string("color", "#ff0")
minetest.register_craft({
output = mt:to_string(),
type = "shapeless",
recipe = {
"default:wood",
mt2:to_string(),
},
})
i3.register_craft({
result = "default:ladder_wood 2",
items = {"default:copper_ingot 7, default:tin_ingot, default:steel_ingot 2"},
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"X X",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass 2",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#X",
"X X",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X##",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X##",
" ## ",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X##X",
" ## ",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X##X#",
" ## ",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X##X#X",
" ## ",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X##X#X",
" ## ",
"#X#X#",
"#X#X#",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})
i3.register_craft({
grid = {
"X #",
" ## ",
"X#X#",
"#X#X#",
"X X##X#X",
" ## ",
"#X#X#",
"#X#X#",
"X #",
},
key = {
['#'] = "default:wood",
['X'] = "default:glass",
},
result = "default:mese 3",
})

8
test_online_recipe.json Normal file
View File

@ -0,0 +1,8 @@
{
"items": [
"default:stone, default:stone, default:stone",
"default:stone, , default:stone",
"default:stone, default:stone, default:stone"
],
"result": "default:cobble 16"
}

49
test_tabs.lua Normal file
View File

@ -0,0 +1,49 @@
i3.new_tab {
name = "test1",
description = "Test 1 Test 1",
image = "i3_heart.png",
formspec = function(player, data, fs)
fs("label[3,1;Test 1]")
end,
}
i3.new_tab {
name = "test2",
description = "Test 2",
image = "i3_mesepick.png",
formspec = function(player, data, fs)
fs("label[3,1;Test 2]")
end,
}
i3.new_tab {
name = "test3",
description = "Test 3",
access = function(player, data)
local name = player:get_player_name()
if name == "singleplayer" then
return true
end
end,
formspec = function(player, data, fs)
fs("label[3,1;Test 3]")
end,
fields = function(player, data, fields)
i3.set_fs(player, "label[3,2;Test extra_fs]")
end,
}
i3.override_tab("test2", {
name = "test2",
description = "Test override",
image = "i3_mesepick.png",
formspec = function(player, data, fs)
fs("label[3,1;Override!]")
end,
})

BIN
textures/i3_add.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
textures/i3_armor.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
textures/i3_armor_hover.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 469 B

After

Width:  |  Height:  |  Size: 382 B

BIN
textures/i3_award.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
textures/i3_award_hover.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
textures/i3_bag.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
textures/i3_bag_hover.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
textures/i3_bag_large.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 378 B

BIN
textures/i3_bag_medium.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 372 B

BIN
textures/i3_bag_small.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 459 B

BIN
textures/i3_bar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 70 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 262 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 927 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
textures/i3_exit.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 867 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 509 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 279 B

After

Width:  |  Height:  |  Size: 198 B

BIN
textures/i3_heart_grey.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 150 B

BIN
textures/i3_hotbar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 435 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 309 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 570 B

BIN
textures/i3_non_visible.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
textures/i3_refresh.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 180 B

BIN
textures/i3_skin.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
textures/i3_skin_hover.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 567 B

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

BIN
textures/i3_sort_az.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
textures/i3_sort_za.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 950 B

After

Width:  |  Height:  |  Size: 442 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 12 KiB

BIN
textures/i3_teleport.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 864 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 521 B

BIN
textures/i3_visible.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
textures/i3_waypoint.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB