1
0
mirror of https://github.com/minetest/minetest.git synced 2025-06-29 06:30:26 +02:00
Commit Graph

9747 Commits

Author SHA1 Message Date
525d2a0d51 Fix /shutdown or ^C no longer causing server exit
Broken since b8484ef24e
2017-03-19 18:21:18 +01:00
3c4ac70348 Refactor Game class (part 2) (#5422)
* showPauseMenu is now part of game
* remove many flags parameters passed to game functions, use the member.
* rename VolatileRunFlags to GameUIFlags (this will permit to share structure with client and CSM
* updatePointedThing: remove pointer ref, we already have the pointer in rundata
* move some attributes outside of VolatileRunFlags after renaming, to game class
* rename statustext to m_statustext
* make some const variables static
* All those changes permit to reduce a little bit function class cost and will permit to interface CSM with some interesting Game flags
* Expose GameUIFlags to client
* Client now have GameUIFlags parameter and setters for other classes
* Fix minimap show/hide in Lua because we now have access to the real flag
2017-03-19 13:18:52 +01:00
2e3778ec0c Block access to the io library 2017-03-19 12:34:33 +01:00
f8ad01ab7c Update server min protocol version to v24 (#5411)
* Update server min protocol version to v24

It's based on @sfan5 stats. See https://kitsunemimi.pw/tmp/serverlist_stats_2017-03-17.txt

v24 was bumped 25/08/14 and 0.4.11 was released 25/12/14

* Drop protocol v23 and lesser code
2017-03-19 08:44:29 +01:00
b8484ef24e Server list cleanup
This removes the hacky server_dedicated pseudo-setting.
2017-03-18 12:37:57 +01:00
2cc518dcaf Show itemstring as tooltip if no item description 2017-03-18 12:36:28 +01:00
9f4916a452 TOGGLE_CHAT keymap should togglechat not HUD
Fixes #5413
2017-03-18 10:00:04 +01:00
a7485e40ff Reduce memory & function cost of Game class functions (#5406)
GameRunData is passed on many game functions, or one of its attributes whereas it's a member of the class. Remove it from functions arguments and call object directly from concerned functions.
This will reduce a little bit the Game class loop usage & very little bit the memory usage (due to non creation of pointer/references)
2017-03-17 22:15:25 +01:00
ba0a8dabef avoid crashing when accessing mapgen early (#5384) 2017-03-17 21:28:43 +01:00
d31750cb93 Give CSM access to use core.colorize() (#5113) 2017-03-17 19:20:13 +01:00
7b74f04a61 [CSM] Fix minimap problems (#5405)
This fixes issue #5404
2017-03-17 07:54:49 +01:00
0891975ad6 [CSM] Add core.get_timeofday & core.get_day_count env calls (#5401)
* [CSM] Add core.get_timeofday & core.get_day_count env calls

* [CSM] Add core.get_node_level, core.get_node_max_level, core.find_node_near
2017-03-17 07:48:29 +01:00
b52f3005c3 Fix indentation problem since merge resolution
Github merge conflict resolution is not the best with indent
2017-03-16 11:09:06 +01:00
40ce538aad [CSM] Add minimap API modifiers (#5399)
* Rename Mapper (too generic) to Minimap
* Add lua functions to get/set position, angle, mode for minimap
* Client: rename m_mapper to m_minimap
* Add minimap to core.ui namespace (core.ui.minimap)
* Add various functions to manage minimap (show, hide, toggle_shape)
* Cleanup trivial declaration in client
2017-03-16 10:34:54 +01:00
eb88e5dd4b Add ModStorageAPI to client side modding (#5396)
mod storage is located into user_path / client / mod_storage
2017-03-16 07:53:39 +01:00
46276414ed Get biome list: Downgrade missing biome message to infostream
It is harmless for a biome listed in an ore or decoration registration
to be missing.
Now that we are registering certain biomes or not based on options
(such as floatland biomes), the biome lists in ore and decoration
registrations trigger these error messages, avoiding these error
messages would need a large amount of duplication of ore and decoration
registrations.
2017-03-16 02:56:03 +00:00
14aa990cdd Sneak: Fix various problems with sneaking
Sneaking won't actually hover you in the air, releasing shift guarantees not
falling down (same as in MC).
Sneak-jump no longer goes higher than a normal jump (^ was required for this).
Sneaking no longer avoids fall damage.
You can sneak on partial nodes (slabs, sideways slabs) correctly.
Sneaking doesn't "go out" as far anymore (0.29 instead of 0.4).
Can't jump when sneaking out as far as possible (breaks the sneak ladder).
2017-03-16 02:52:59 +00:00
c05dfac9a3 lua_api: Document minetest.features (#5311) 2017-03-15 22:07:19 +01:00
454483f266 Use true distance for block priority. 2017-03-15 20:30:34 +01:00
39fa249f91 Fix undefined references (#5400) 2017-03-15 15:42:47 +01:00
b539985ab8 Fix two nul deref if digging unknown nodes. (#5398)
Introduced by d785456b3f (#5162)
2017-03-15 08:04:53 +01:00
84f4565e13 Add disclaimer to client_lua_api.txt (#5391) 2017-03-14 07:51:07 +01:00
88df9fb5b6 Add get_wielded_item 2017-03-13 23:56:05 +01:00
44ca9c9cb2 [CSM] Add enable_client_modding param (default: false) 2017-03-13 23:56:05 +01:00
0727bb3ddd [CSM] Add on_punchnode callback 2017-03-13 23:56:05 +01:00
37df9cb7d7 [CSM] Add get_node and get_node_or_nil 2017-03-13 23:56:05 +01:00
073f5cf03d [CSM] Add on_dignode callback (#5140) 2017-03-13 23:56:05 +01:00
ba66fce833 [CSM] storage + fixes 2017-03-13 23:56:05 +01:00
a50d07d39a [CSM] Improve security for client-sided mods (#5100) 2017-03-13 23:56:05 +01:00
92b45b2a18 [CSM] implement client side mod loading (#5123)
* client side mods are located in clientmods/
* move builtin/preview.lua to clientmods/preview/init.lua as a preview mod
* refactor ModConfiguration class to work properly with client and server using child objects
* move some Server constructor mod load code to ModConfiguration to reduce code duplication between client and server
* remove mods.{cpp,h} unused functions
* use UNORDERED_SET instead of std::set in some modspec storages
2017-03-13 23:56:05 +01:00
c42c53fccf [CSM] Add local formspecs. (#5094) 2017-03-13 23:56:05 +01:00
2c19d51409 [CSM] sound_play & sound_stop support + client_lua_api doc (#5096)
* 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
2017-03-13 23:56:05 +01:00
d7bc346981 [CSM] Add client-sided chat commands (#5092) 2017-03-13 23:56:05 +01:00
9978f5af82 [CSM] Add on_death, on_hp_modification & oh_damage_taken callbacks (#5093)
* Add on_death callback
* Add on_hp_modification & on_damage_taken callbacks
* move preview code to preview.lua
2017-03-13 23:56:05 +01:00
cb3a61f8db [CSM] Add method that display chat to client-sided lua. (#5089) (#5091)
* squashed: [Client-sided scripting] Don't register functions that don't work. (#5091)
2017-03-13 23:56:05 +01:00
2efae3ffd7 [CSM] Client side modding
* rename GameScripting to ServerScripting
* Make getBuiltinLuaPath static serverside
* Add on_shutdown callback
* Add on_receiving_chat_message & on_sending_chat_message callbacks
* ScriptApiBase: use IGameDef instead of Server
  This permits to share common attribute between client & server
* Enable mod security in client side modding without conditions
2017-03-13 23:56:05 +01:00
c9492b4d37 GUI: Allow texture packs to customize the progress bar (#5368) 2017-03-13 08:07:14 +01:00
7a4878cd0b Save metainfo for falling nodes 2017-03-11 23:42:19 -08:00
ff80696947 Enable server side occlusion culling by default. 2017-03-11 18:11:19 -08:00
ba4b704ebf Allow server side occlusion culling. 2017-03-11 18:11:19 -08:00
6738c7e9a3 Do not increase breath if at full breath.
Prevents the server from sending TOCLIENT_BREATH packets
every 0.5seconds, if there is no reason to.
2017-03-11 17:00:40 -08:00
f83d8687a7 database-redis: Support password authentication 2017-03-11 21:39:32 +01:00
d34f149bdc Climb speed: Increase default setting from 2 to 3 2017-03-11 02:17:16 +00:00
25a24c0cdf Minimap: Optimise 2017-03-11 02:15:21 +00:00
ab371cc934 Light calculation: New bulk node lighting code
This commit introduces a new bulk node lighting algorithm to minimize
lighting bugs during l-system tree generation, schematic placement and
non-mapgen-object lua voxelmanip light calculation.

If the block above the changed area is not loaded, it gets loaded to avoid
lighting bugs.
Light is updated as soon as write_to_map is called on a voxel manipulator,
therefore update_map does nothing.
2017-03-11 02:06:18 +00:00
d785456b3f Optimize item.lua
Replace slow ItemStack get_definitions with registered_nodes one's and cached playername as it's used multiple times.  Also removed local item = itemstack:peek_item() as it is never used.
2017-03-10 11:24:10 -08:00
2baa191a64 GUI: Convert loading screen's progress bar to image (#5362) 2017-03-10 13:26:24 +01:00
9878ce05e7 CI: Add memleak checking using valgrind (#5350)
Add a new step to check memleaks on our current unit tests suite
2017-03-06 20:34:02 +01:00
0e27b4b978 Update .appdata and .desktop files 2017-03-05 20:56:20 +01:00
e10e5fd16c Dungeons: Use 'block' instead of 'brick' for nodebox stairs
Affects only sandstone dungeons. Nodebox stairs made from
'sandstone_block' look better because every step is undivided.
2017-03-05 09:47:03 +00:00