Commit Graph

399 Commits

Author SHA1 Message Date
sfan5
7fff9da71d item_entity: Cache collisionbox for use in on_step
I don't have absolute numbers but if calls to get_properties() take up
30%+ of on_step() execution time that's bound to matter.
2022-05-08 19:12:10 +02:00
sfan5
e7659883cc Async environment for mods to do concurrent tasks (#11131) 2022-05-02 20:56:06 +02:00
sfan5
e6385e2ab7 Reorganize some builtin functions in preparation for async env 2022-05-02 20:54:55 +02:00
SmallJoker
1c8614ac9a
Builtin: Allow to revoke unknown privileges 2022-04-24 21:08:33 +02:00
olive
062dd8dabc
Send chat error when attemping to /set a secure setting (#12193)
Attempting to /set a secure setting will now say that is disallowed.
Previously this would shut down the server.
Reading secure settings via /set is still allowed.
2022-04-16 18:50:36 +02:00
Lars Mueller
9aabd911eb Fix item entity Z-fighting 2022-04-10 23:25:00 +02:00
Dmitry Kostenko
cf650fcaac Avoid negation of comparison operator (luacheck warning) 2022-04-01 09:00:39 +02:00
Zughy
44fc888bd6
Allow get_sky to return a table (#11963) 2022-03-05 22:15:41 +01:00
Lars Mueller
1e4d6672be Fix builtin statbar backgrounds
see #12000
2022-01-31 16:35:30 -05:00
sfan5
5da204f5bc
Get rid of basic_debug last minute
This isn't a revert but rather just disables the codepaths. also see #12011
2022-01-30 21:32:49 +01:00
sfan5
a9bccb964f Raise max mapgen limit constant to align with mapblock size 2022-01-30 13:49:26 +01:00
SmallJoker
47735c273c
Builtin: Sanity-check /time inputs (#11993)
This enforces the documented bounds for the /time command.
2022-01-27 22:23:14 +01:00
sfan5
8c99f2232b Don't let HTTP API pass through untrusted function
This has been a problem since the first day, oops.
2021-12-18 20:37:13 +01:00
sfan5
1c5ece8334 Fix eat sound not playing if eating last of stack 2021-12-15 15:36:19 +01:00
Corey Powell
413be76c63
Implemented disconnect_player (#10492)
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-11-26 19:19:40 +00:00
Wuzzy
6910c8d920
Fix number of tool uses being off by 1..32767 (#11110) 2021-10-31 22:33:33 +00:00
sfan5
660e63dbae
Fix item duplication if player dies during interact callback (alternative) (#11662) 2021-10-25 20:30:27 +02:00
sfan5
a78124831f Fix incorrect error message in core.encode_png 2021-10-22 10:55:18 +02:00
sfan5
16a62426d6 Add feature table entry for new dynamic media API 2021-09-19 13:54:06 +02:00
sfan5
bbfae0cc67
Dynamic_Add_Media v2 (#11550) 2021-09-09 16:51:35 +02:00
Wuzzy
ff9945dc6e
Fix falling mesh nodes being half size (#11389) 2021-09-01 22:20:57 +02:00
Treer
149d8fc8d6
Add group-based tool filtering for node drops (#10141)
Supports both AND and OR requirements, e.g.

 * "a tool that's in any of these groups"
 * "a tool that's in all of these groups"
2021-08-27 20:23:20 +02:00
hecks
eefa39e47b
Remove statement semicolons from a lua script 2021-08-09 21:03:18 +02:00
hecks
80d12dbedb
Add a simple PNG image encoder with Lua API (#11485)
* Add a simple PNG image encoder with Lua API
Add ColorSpec to RGBA converter
Make a safety wrapper for the encoder
Create devtest examples

Co-authored-by: hecktest <>
Co-authored-by: sfan5 <sfan5@live.de>
2021-07-29 05:10:10 +02:00
Wuzzy
f4d8cc0f0b
Add wallmounted support for plantlike and plantlike_rooted nodes (#11379) 2021-07-15 21:19:59 +02:00
Warr1024
52128ae11e
Add API for mods to hook liquid transformation events (#11405)
Add API for mods to hook liquid transformation events

Without this API, there is no reliable way for mods to be
notified when liquid transform modifies nodes and mods are
forced to poll for changes.  This allows mods to detect
changes to flowing liquid nodes and liquid renewal using
event-driven logic.
2021-07-09 09:08:40 -04:00
AFCMS
8cc04e0cb4
Run on_grant and on_revoke callbacks after privs change (#11387)
Callbacks were run too early. This changes the order to call after the privs are updated.
2021-06-30 20:40:45 +02:00
Wuzzy
63fc728a84
Require 'basic_debug' priv to view gameplay-relevant debug info, require 'debug' priv to view wireframe (#9315)
Fixes #7245.
2021-06-24 21:21:19 +03:00
sfence
b10091be9b
Add min_y and max_y checks for Active Block Modifiers (ABM) (#11333)
This check can be used by ABM to reduce CPU usage.
2021-06-20 17:21:35 +02:00
Wuzzy
dc165fe942
Message for empty list output in /haspriv & /mods (#11149) 2021-06-12 18:48:21 +02:00
benrob0329
fbcf0fab8e
falling.lua - Fix Meshnodes Being Too Big (#11307) 2021-06-12 18:48:14 +02:00
DS
8f085e02a1
Add metatables to lua vectors (#11039)
Add backwards-compatible metatable functions for vectors.
2021-06-04 21:22:33 +02:00
sfan5
1bc753f655 Use safe_file_write to save forceloaded blocks 2021-05-30 11:40:14 +02:00
Wuzzy
d7a4479eb3 Fix misleading /shutdown command syntax 2021-05-29 11:45:04 +02:00
Wuzzy
228f1c6770
Fix rotation for falling mesh degrotate nodes (#11159) 2021-04-28 08:38:47 +02:00
Wuzzy
90a7bd6a0a
Put torch/signlike node on floor if no paramtype2 (#11074) 2021-04-20 19:50:03 +02:00
benrob0329
a106bfd456
Also return the ObjectRef from minetest.spawn_falling_node() (#11184) 2021-04-13 20:02:43 +02:00
sfan5
f345d00a43 Add entry in features table for degrotate changes 2021-03-30 14:40:09 +02:00
Vitaliy
3b78a22371
Degrotate support for mesh nodes (#7840) 2021-03-30 00:25:11 +02:00
Wuzzy
7ad8ca62dc
Clean up various misleading and/or confusing messages and texts related to priv changes (#11126) 2021-03-29 19:57:48 +02:00
HybridDog
fc1512cca6
Translate chatcommand delay message and replace minetest with core (#11113) 2021-03-26 20:59:05 +01:00
Wuzzy
a8cc3bdb08
Builtin: Translatable join, leave, profiler msgs (#11064) 2021-03-19 21:46:11 +01:00
HybridDog
88b052cbea
Chatcommands: Show the execution time if the command takes a long time (#10472) 2021-03-13 11:18:25 +01:00
Wuzzy
c48bbfd067
Fix misleading chat messages of /clearobjects (#10690) 2021-03-08 20:27:32 +01:00
Wuzzy
d9b78d6492 Predict failing placement of ignore nodes 2021-03-07 14:26:50 +01:00
Wuzzy
cafad6ac03 Translate builtin (#10693)
This PR is the second attempt to translate builtin.
Server-sent translation files can be added to `builtin/locale/`, whereas client-side translations depend on gettext.
2021-03-05 16:29:48 +01:00
HybridDog
92f4c68c0c
Restructure teleport command code (#9706) 2021-02-24 11:46:39 +01:00
Elias Fleckenstein
b2ab5fd161
Replace deprecated call to add_player_velocity in builtin (#10968) 2021-02-18 14:39:04 +00:00
rubenwardy
a8f6befd39
Fix short_description fallback order (#10943) 2021-02-17 18:53:44 +00:00
rubenwardy
4db7fb4a3b Replace 'minetest.' with 'core.' in builtin 2021-02-11 10:18:22 +00:00
sfan5
40ad976753 Revise dynamic_add_media API to better accomodate future changes 2021-02-01 23:00:13 +01:00
rubenwardy
6e0e0324a4
Fix minetest.dig_node returning true when node isn't diggable (#10890) 2021-01-31 18:49:51 +00:00
sfan5
83229921e5 Rework use_texture_alpha to provide three opaque/clip/blend modes
The change that turns nodeboxes and meshes opaque when possible is kept,
as is the compatibility code that warns modders to adjust their nodedefs.
2021-01-29 17:34:41 +01:00
sfan5
edd8c3c664 Drop never documented 'alpha' property from nodedef
Includes minimal support code for practical reasons.
We'll need it for a slightly different purpose next commit.
2021-01-29 17:34:41 +01:00
Zughy
45ccfe26fb
Removed some obsolete code (#10562)
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
2021-01-21 18:17:09 +00:00
JDiaz
08ee9794fb
Implement on_rightclickplayer callback (#10775)
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-01-11 18:03:31 +01:00
Wuzzy
535557cc2e
Fix fallnode rotation of wallmounted nodebox/mesh (#10643) 2020-12-22 14:54:27 +01:00
sfan5
ecd4f45318 Fix certain connected nodeboxes crashing when falling
fixes #10695
2020-12-04 11:28:45 +01:00
Wuzzy
ee1853e9bc
Fix falling image of torchlike if paramtype2="none" (#10612) 2020-11-15 17:37:09 +01:00
sfan5
61bbdd6807 Copy position for can_dig
fixes #10514
2020-11-12 21:08:26 +01:00
DS
be3fe161fc
Do not set a default for description in itemdef table (#10559)
* Do not set a default for description in itemdef table

* improve documentation
2020-11-10 21:03:10 +01:00
DS
f3ae45b2b2
Add a short_description to be used by mods (#8980) 2020-10-09 19:11:21 +01:00
HybridDog
2f4037752b
Add minetest.get_artificial_light and minetest.get_natural_light (#5680)
Add more detailed light detection functions, a function to get the artificial light (torches) and a function to get the sunlight as seen by the player (you can specify timeofday).

Co-authored-by: rubenwardy <rw@rubenwardy.com>
2020-10-06 20:49:46 +02:00
rubenwardy
3250b37e32
Deprecate get_player_velocity and add_player_velocity (#10173) 2020-10-04 00:33:45 +01:00
Elijah Duffy
7d3641021b
Lua API: Add register_on_chatcommand to SSM and CSM (#7862)
Allows catching a chatcommand call just after the command and the
parameters are parsed but before its existence is checked and before the
corresponding function is run. Returning `true` from a callback function
will prevent default handling of the command leaving mods to handle the
command manually.
2020-10-03 17:38:08 +01:00
HybridDog
4b423ee9b1
Chatcommand: Show help message if func returns false without message
#9440
2020-10-03 17:33:43 +01:00
Pierre-Yves Rollo
d3d218940b
Fix #10349 game crashing if dropped an item with undefined light_source (#10351) 2020-08-30 15:34:28 +02:00
LoneWolfHT
c18dbadcb8
Fix dropped craftitems/tools not using light_source values (#9438) 2020-08-30 00:02:21 +01:00
Emojigit
abfea69e5f
Change last-login command to show player name in output (#10263) 2020-08-06 19:30:41 +02:00
SmallJoker
aba8c37531 Falling: Fix error caused by missing param2
Falling nodes that were spawned prior the recent falling node changes did not require param2.
Default to param2 = 0 when none is found in the node data.
2020-07-30 19:03:48 +02:00
Wuzzy
65a6a316d0 Add minetest.is_creative_enabled 2020-05-29 22:45:40 +02:00
sfan5
2fd5f38c45 Change item entity collisionbox so that they don't sink into the ground 2020-05-27 21:58:20 +02:00
sfan5
03dae5fba6 Fix falling entity not falling through players 2020-05-27 21:58:20 +02:00
sorcerykid
15ba75e4cf Add on_authplayer callback and 'last_login' to on_joinplayer (#9574)
Replace on_auth_fail callback with more versatile on_authplayer
    Better clarify account login process in Lua API documentation
    Change initial timestamp for newly registered accounts to -1
2020-05-23 13:25:29 +02:00
Wuzzy
c94d37827d
Rework functionality of leveled nodes (#9852)
Co-authored-by: sfan5 <sfan5@live.de>
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2020-05-19 21:08:37 +02:00
Wuzzy
ab745685c7
Error msg if trying to teleport attached player (#9824) 2020-05-16 21:41:41 +02:00
rubenwardy
2d7e000cfe
Item Entity: Add message to moveresult assertion (#9797) 2020-05-14 17:54:17 +02:00
Zughy
4e997e9d04
Document inf value in rollback commands (#9789) 2020-05-13 13:56:26 +02:00
Wuzzy
6e1372bd89
Add support for statbar “off state” icons (#9462)
This adds support for optional “off state” icons for statbars. “off state icons” can be used to denote the lack of something, like missing hearts or bubbles.

Add "off state" textures to the builtin statbars.

Co-authored-by: SmallJoker <mk939@ymail.com>
2020-05-11 21:40:45 +02:00
sfan5
e8e5d282da Enable collide_with_objects for falling entities
falling nodes intentionally still fall through players
fixes #5313
2020-05-06 14:03:52 +02:00
sfan5
723926a995 Rewrite falling entity to make use of collision info
fixes #4781, fixes #9293
2020-05-06 14:03:52 +02:00
ANAND
a36c9c3e93
Fix breath_bar scaling; delay breath_bar hiding by one second (#8271)
PLAYER_MAX_BREATH_DEFAULT was earlier set to 11, so that 10 bubbles are shown before the breath bar disappears.

Now, PLAYER_MAX_BREATH_DEFAULT is set to 10, and the breath_bar scaling code in builtin has been tweaked to show all 10 bubbles before hiding the breath_bar
2020-04-28 19:30:57 +02:00
sfan5
b9377f26a1 Rewrite builtin item entity to use collision info
fixes #8967
2020-04-27 20:45:46 +02:00
sfan5
3475759d1a Expose collision information to LuaEntity on_step 2020-04-27 20:45:46 +02:00
sfan5
d3f50f216f builtin: Correctly indicate failure in /spawnentity 2020-04-27 06:58:34 +02:00
David Leal
2fe4641c1e
Add new command /revokeme <priv> (#9584) 2020-04-26 21:15:05 +02:00
SmallJoker
27d611fe55
Add default stack size setting (#8873)
New setting "default_stack_max" to alter the default stack sizes of all items when desired.

Co-authored-by: Pascal Abresch <nep@packageloss.eu>
2020-04-13 10:53:10 +02:00
sfan5
ea30b89d3f
Builtin: Make item entities glow less (#9594)
minor adjustment to #9200
2020-04-04 21:27:30 +02:00
Wuzzy
1441281809
Fix some chatcommands not returning a value (#9503) 2020-03-14 15:01:22 +01:00
Wuzzy
580e7e8eb9 Fix pathfinder bugs: returning nil frequently, broken A*, jump through solid nodes (#9339)
* Fix pathfinder fail when startpos is over air
* Note down pathfinder restrictions
* Implement real A* search
* Pathfinder: Implement buildPath non-recursively
* Update find_path documentation
* Pathfinder: Check if jump path is unobstructed
* Pathfinder: Fix drop check first checking upwards
* Pathfinder: Return nil if source or dest are solid
* Pathfinder: Use priority queue for open list
2020-03-05 12:09:44 +01:00
sfan5
0b8d3f99a5 Move core.get_connected_players() implementation to C++
Keeping the ObjectRefs around in a table isn't ideal and this allows
removing the somewhat nonsensical is_player_connected() added in 86ef7147.
2020-02-23 22:24:12 +01:00
Wuzzy
d507047443
Falling nodes: Add support for facedir, colorfacedir, wallmounted, colorwallmounted, color, airlike, signlike, torchlike and glow (#9205) 2020-02-22 01:10:17 +00:00
SmallJoker
3f675490df Builtin: Fix error by digging unknown nodes 2020-02-16 14:13:52 +01:00
sfan5
7d29611c1b Convert sound_play uses in builtin to ephemeral 2020-02-01 20:31:41 +01:00
sfan5
c10e188594 Let node 'place' and 'dug' sounds be heard by other players 2020-02-01 20:31:41 +01:00
Wuzzy
876a15bd75 Fix item eat sound not played if last item (#9239) 2019-12-24 19:12:46 +01:00
ANAND
ec3224dce2 /privs: Delimit output list of privs with commas (#9224) 2019-12-20 19:15:40 +01:00
Wuzzy
4b9fabf172 Builtin: Make dropped light_source nodes glow (#9200) 2019-12-19 19:41:44 +01:00
Bluebird
80af58c8c5 Make core.item_place_node return position of placed node. (#7713) 2019-12-18 19:21:24 +01:00
sfan5
db7e59f472 Correct documentation around minetest.item_place
The code that calls minetest.item_place_object was removed
in 2013 in commit fc61c8809b9a1d47d9f117446764107a56cec956.
2019-12-16 21:24:34 +01:00