summaryrefslogtreecommitdiff
path: root/builtin/game/misc.lua
AgeCommit message (Collapse)Author
2016-04-21Fix timer initialization.Auke Kok
This fixes the problem that the first timer tick is an overrun and causes all timers to expire immediately. replaces #4003
2016-03-06Faster insertion into tableRui914
2016-02-22Add Lua interface to HTTPFetchRequestJeija
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.
2016-01-29New timer design.Auke Kok
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.
2015-10-22Add more ways to pass data to check_player_privsRobert Zenz
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")
2015-09-23Add /emergeblocks command and core.emerge_area() Lua APIkwolekr
2015-08-12SAPI: Track last executed mod and include in error messageskwolekr
2015-06-06Decrease minetest.after globalstep lagHybridDog
* 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
2015-05-12Add code to support raillike group namesNovatux
2015-01-15Simplify deleteblocks chat command argument parsingkwolekr
Add optional core.pos_to_string decimal place rounding Move core.string_to_pos to builtin/common/misc_helpers.lua for consistency
2014-07-16Fix indexing error in timer processingZefram
2014-05-08Use "core" namespace internallyShadowNinja
2014-05-07Organize builtin into subdirectoriesShadowNinja