Commit Graph

236 Commits

Author SHA1 Message Date
tour
93384188d5
Make mesechest more reliable (#35)
The current hack to get on the `on_player_receive_fields` function is quite likely to break with instrumented code.
This also changes the workaround to get custom inventory callbacks by using `minetest.override_item`.
2024-04-30 17:38:20 +02:00
tour
b24feb4073
Add missing formspec escape (#34)
* fix missing formspec escape

* formspec_escape at the correct place
2024-01-23 15:33:02 +01:00
HybridDog
31a98e2c9b
Add a GitHub action for luacheck (#33) 2023-08-28 12:19:58 +02:00
fluxionary
cbae2c7f88
Add a distance limit to the entity detector (#32)
The distance limit can be configured with the `moremesecons_entity_detector.max_radius` setting.

An additional change prevents a crash if an object returned by `get_objects_inside_radius` is neither a valid player nor a luaentity. We don't know why this happens but it sometimes does.
2023-08-17 20:42:54 +02:00
luk3yx
464699e78b
Fix error in command blocks (#30)
Possibly caused by force-loaded blocks.
2023-04-07 17:20:43 +02:00
fluxionary
13645134a6
Fix comma typos (#27) 2022-11-07 20:00:35 +01:00
sys4-fr
e47e855baf
Replace deprecated depends.txt with mod.conf (#24) 2022-07-15 17:11:39 +02:00
upsilon
b8deed592f Mesechest: correctly use new default.chests.register_chest 2021-05-24 11:43:04 +02:00
sys4-fr
1dab017abe
Fix possible crash and wireless receptors in unloaded map blocks (#22)
Co-authored-by: sys4 <bricassa@sys4.fr>
2021-04-14 16:21:16 +02:00
HybridDog
74a95e559e
Use opaque use_texture_alpha for the timegate and dual_delayer (#20)
* Use opaque use_texture_alpha for the timegate and dual_delayer

This avoids warnings shown by Minetest and improves the nodes' look when a bilinear filter is enabled.
Since the textures are also used as inventory images, I didn't remove the transparency from the texture files.
2021-04-08 18:44:29 +02:00
HybridDog
c41d0371c0 Various code fixes detected by luacheck
* Luablock: Fix the missing position argument when executing the lua code fails
* Wireless: Fix the missing id argument
* Localize several variables
* Some other small changes, e.g. dead code removal
2021-03-08 19:40:21 +01:00
HybridDog
28292dc2a5 Add a luacheckrc 2021-03-08 19:40:21 +01:00
HybridDog
e5cdeef141 Remove unused loop variables 2021-03-07 20:18:18 +01:00
upsilon
182eb9822a
Better fix for #16 2021-03-07 10:40:05 +01:00
upsilon
021100b3d4 Add a setting for disabling the wireless jammer
Fixes #17
2021-03-07 10:25:11 +01:00
upsilon
227cba54b2 Avoid stack overflow using wireless + digilines
Fixes #16
2021-03-07 10:25:11 +01:00
HybridDog
4d7508ae70 Recompress the textures
This reduces the PNG file sizes and fixes the invalid sRGB profile warnings.
I have additionally reduced the moremesecons_luablock.png resolution to 32x32.
2020-08-07 20:53:37 +02:00
upsilon
67875f9c6e
Fix bug allowing timegate duplication
Fixes #13
2020-05-10 10:09:34 +02:00
upsilon
de765f7f7b
LuaBlock: run in separate environment, add a "mem" table 2020-05-09 13:18:44 +02:00
upsilon
7ba7a5cceb
MapDataStorage: replace "%a" format with "%.17g" 2020-04-29 18:06:17 +02:00
upsilon
f2de7c89b1
MapDataStorage: change serialization in mod storage
Use minetest.serialize on the full values table instead of serializing
each value independently and concatenating.
2020-04-29 12:43:29 +02:00
HybridDog
0000cfb474 Remove old vector_extras code and use the MapDataStorage 2020-04-14 08:49:21 +02:00
HybridDog
9aa0e6ab3d Add MapDataStorage code as replacement for get_data_from_pos etc.
In comparison to using Minetest's hash_node_position, this saves additional information about the z-only and zy-only components, which is what the vector_extras code did.
In comparison to the old vector_extras code, this does not create lots of lua tables, which is slow, but instead uses one table as hashmap.
2020-04-14 08:49:21 +02:00
upsilon
54030d1620
Wireless: transmit digilines messages on all channels 2020-04-11 13:01:17 +02:00
upsilon
be7982a453
Major wireless refactor 2020-04-11 12:45:33 +02:00
upsilon
899ea4aa29
Wireless: remove legacy code. 2020-04-09 19:27:11 +02:00
upsilon
8c8cdd38ff
Add mesecons_luacontroller as a dependency to the luacontroller tool. 2020-04-09 19:22:15 +02:00
upsilon
5d29cdce5b
Avoid activating wireless that no longer exist. 2020-04-09 19:21:40 +02:00
upsilon
4dbc96eafa
New digiline interface for the adjustable player detector
The name of the detected player can now be requested by sending {command
= "get"} to the detector. The detection radius can be changed by sending
{radius = value}.
2020-04-09 17:02:31 +02:00
upsilon
7cf99da1a5
LuaBlock: Major changes in mod storage usage
Data associated to a LuaBlock is redundantly stored in both its metadata
and in the mod storage so that it is not possible to hack a LuaBlock by
changing its metadata or copying it using WorldEdit. This commit changes
how it is done:
* Store full code instead of storing MD5 checksum, which avoids bug
caused by serializing non-ASCII strings using minetest.serialize,
* Also store owner,
* Use `minetest.hash_node_position` instead of deprecated vector_extras
set_data_to_pos etc,
* Remove mod storage data associated with the LuaBlock when destroying
it,
* Create helper functions for manipulating the mod storage in
moremesecons_utils, I will soon update other parts of MoreMesecons as well to use them.

This commit breaks backwards compatibility: previously created LuaBlocks
will have to be reset by opening the formspec and pressing the `Submit`
button.

This commit also fixes an unrelated bug: code in the formspec was not
correctly escaped using minetest.formspec_escape.
2020-04-09 16:25:21 +02:00
upsilon
2b2faeca02
Fix crash when using the playerkiller
Fixes #9
2018-08-20 10:42:11 +02:00
upsilon
8a56370ce8
Allow using templates on multiple luacontrollers
Fixes #8
Patch submitted by @oiaohm
2018-02-27 16:33:18 +01:00
upsilon
ce9544d2bf
Remove mod storage checks 2017-06-23 13:47:41 +02:00
upsilon
4c81b43032
mesechest: add crafts 2017-06-10 10:11:05 +02:00
upsilon
89b1fe18c5 mesechest: colorize textures 2017-06-09 20:44:25 +02:00
upsilon
ae5a96cb42 Mesechest: make mesechest work with last mt_game version 2017-06-09 20:44:25 +02:00
upsilon
fd21b16c02 Mesechest: limit API functions overwriting 2017-06-09 20:44:25 +02:00
upsilon
6291b4c001 Add the mesechest 2017-06-09 20:44:25 +02:00
upsilon
dbd5c4cf99
Luacontroller tool: add counter and clock templates (#7) 2017-06-08 16:33:53 +02:00
upsilon
400e90c9ca
Fix luacontroller tool crash
Set "sender" parameter when executing on_receive_fields callback
2017-06-08 16:01:33 +02:00
upsilon
aa2ae82cc2 Merge branch 'AntumDeluge-settings' 2017-06-04 17:56:30 +02:00
Pierre-Adrien Langrognet
d580e0e974 Merge branch 'master' into settings 2017-06-04 17:57:16 +02:00
upsilon
6662f92902
Remove empty file .gitmodules 2017-06-03 15:34:39 +02:00
upsilon
7839aefcdc Add 'moremesecons_luablock/md5_lua/' from commit 'e8cd75ce397da6dd75ddb37cb07eb31663743223'
git-subtree-dir: moremesecons_luablock/md5_lua
git-subtree-mainline: 79e856494a
git-subtree-split: e8cd75ce39
2017-06-03 15:32:33 +02:00
upsilon
79e856494a
Remove md5_lua submodule
This prepares re-adding it as a subtree.
2017-06-03 15:32:05 +02:00
upsilon
180167110f
LuaBlock: store md5 checksums
This avoids changing the LuaBlock code by setting its metadata.
2017-06-02 14:51:10 +02:00
upsilon
8cac3f8f70
Add a craft for the induction transmitter 2017-05-28 18:02:31 +02:00
upsilon
482dd4df93
Add an induction transmitter
This node makes the signal goes two nodes forward instead of one
2017-05-28 15:16:01 +02:00
upsilon
c53ac5b660
Adjustable Blinky Plant: fix very fast blinking before having set an interval + add a minimum interval setting 2017-05-21 19:11:12 +02:00
AntumDeluge
d542d15fa4 Replace deprecated methods:
- 'setting_get' with 'settings:get'
- 'setting_getbool' with 'settings:get_bool'
2017-05-13 01:52:42 -07:00