summaryrefslogtreecommitdiff
path: root/builtin/game/misc.lua
Commit message (Collapse)AuthorAge
* Add minetest.is_player (#7013)you2018-06-03
| | | | | | * Add minetest.is_player * First use for is_player
* Use a settings object for the main settingsShadowNinja2017-05-06
| | | | | | | This unifies the settings APIs. This also unifies the sync and async registration APIs, since the async registration API did not support adding non-functions to the API table.
* Implement delayed server shutdown with cancelation (#4664)Loïc Blot2017-04-15
|
* Give CSM access to use `core.colorize()` (#5113)red-0012017-03-17
|
* [CSM] sound_play & sound_stop support + client_lua_api doc (#5096)Loïc Blot2017-03-13
| | | | | | | | | | * squashed: CSM: Implement register_globalstep * Re-use fatal error mechanism from server to disconnect client on CSM error * Little client functions cleanups * squashed: CSM: add core.after function * core.after is shared code between client & server * ModApiUtil get_us_time feature enabled for client
* Add minetest.player_exists() (#5064)rubenwardy2017-01-18
|
* Don't send a join message in singleplayer mode.red-0012016-12-03
|
* Make supplying empty formspec strings close the formspec (#4737)orwell962016-11-23
| | | This will only happen if the formname matches or if formname is "".
* Fix typo in core.after (#4560)Rui2016-10-01
|
* Move on join and on leave messages to lua (#4460)Xunto2016-08-22
|
* Builtin: Fix check for a player object in core.check_player_privsTim2016-07-26
| | | | | | | core.check_player_privs accepts as first argument a name or player object, but just tested for a string. This caused crashes inside builtin, when being passed any unexpected types. This provides a better (duck-typing like) test, better error reporting.
* Add colored text (not only colored chat).Ekdohibs2016-05-31
| | | | | Add documentation, move files to a proper place and avoid memory leaks. Make it work with most kind of texts, and allow backgrounds too.
* Colored chat working as expected for both freetype and non-freetype builds. ↵TriBlade92016-05-31
| | | | @nerzhul improvements * Add unit tests * Fix coding style * move guiChatConsole.hpp to client/
* Fix timer initialization.Auke Kok2016-04-21
| | | | | | | This fixes the problem that the first timer tick is an overrun and causes all timers to expire immediately. replaces #4003
* Faster insertion into tableRui9142016-03-06
|
* Add Lua interface to HTTPFetchRequestJeija2016-02-22
| | | | | | | | | | This allows mods to perform both asynchronous and synchronous HTTP requests. Mods are only granted access to HTTP APIs if either mod security is disabled or if they are whitelisted in any of the the secure.http_mods and secure.trusted_mods settings. Adds httpfetch_caller_alloc_secure to generate random, non-predictable caller IDs so that lua mods cannot spy on each others HTTP queries.
* New timer design.Auke Kok2016-01-29
| | | | | | | | | | | | | | | | | | | | | | | I could honestly not make much sense of the timer implementation that was here. Instead I've implemented the type of timer algorithm that I've used before, and tested it instead. The concept is extremely simple: all timers are put in an ordered list. We check every server tick if any of the timers have elapsed, and execute the function associated with this timer. We know that many timers by themselves cause new timers to be added to this list, so we iterate *backwards* over the timer list. This means that new timers being added while timers are being executed, can never be executed in the same function pass, as they are always appended to the table *after* the end of the table, which we will never reach in the current pass over all the table elements. We switch time keeping to minetest.get_us_time(). dtime is likely unreliable and we have our own high-res timer that we can fix if it is indeed broken. This removes the need to do any sort of time keeping.
* Add more ways to pass data to check_player_privsRobert Zenz2015-10-22
| | | | | | | | | | | The callback can now be invoked with either the player object or name as the first parameter, and with either a table or a list of strings, like this: minetest.check_player_privs(player_name, { shout = true, fly = true }) minetest.check_player_privs(player_name, "shout", "fly") minetest.check_player_privs(player, { shout = true, fly = true }) minetest.check_player_privs(player, "shout", "fly")
* Add /emergeblocks command and core.emerge_area() Lua APIkwolekr2015-09-23
|
* SAPI: Track last executed mod and include in error messageskwolekr2015-08-12
|
* Decrease minetest.after globalstep lagHybridDog2015-06-06
| | | | | | * abort if theres no active timer * only reduce the timer.time of all timers when its necessary * move updating timers_to_add into a seperate function
* Add code to support raillike group namesNovatux2015-05-12
|
* Simplify deleteblocks chat command argument parsingkwolekr2015-01-15
| | | | | Add optional core.pos_to_string decimal place rounding Move core.string_to_pos to builtin/common/misc_helpers.lua for consistency
* Fix indexing error in timer processingZefram2014-07-16
|
* Use "core" namespace internallyShadowNinja2014-05-08
|
* Organize builtin into subdirectoriesShadowNinja2014-05-07