Commit Graph

582 Commits

Author SHA1 Message Date
ShadowNinja 3edb7575a1 Unlock cursor when opening console 2016-03-02 23:23:31 -05:00
Esteban I. Ruiz Moreno effa24737d Use the console instead of a dedicated window when pressing keymap_chat/cmd
keymap_console opens a full window for chat history browsing.
2016-03-02 23:23:31 -05:00
RealBadAngel 9961185550 Fix getting pointed node
Fixes #3719
Closes #3753
2016-02-22 15:54:32 +01:00
RealBadAngel b2aabdfe07 Camera: remove auto tune FPS, single view range setting 2016-02-21 18:18:13 +01:00
RealBadAngel c3b279750e Move object nametags to camera 2016-02-18 16:43:29 +01:00
RealBadAngel cfc8e44759 Use proper variable types for uniform sampler layers 2016-02-14 10:01:30 +01:00
RealBadAngel b44da4916a Cleanup selection mesh code, add shaders for halo and selection boxes 2016-02-08 03:57:42 -05:00
RealBadAngel 87291ea44a Show infotext with description for item entities 2016-01-18 17:21:41 +00:00
Dalai Felinto 9943ae3f1a New 3D Mode: Pageflip
The pageflip mode requires a stereo quadbuffer, and a modern graphic
card. Patch tested with NVidia 3D Vision.

The mini-map is not drawn, but that's what is done for topbottom and
sidebyside modes as well.

Also most of the time the user would prefer the HUD to be off. That's
for the user to decide though, and toggle it manually.

Finally, the interocular distance (aka eye separation) is twice as much
as the "3d_paralax_strength" settings. I find this a strange design
decision. I didn't want to chance this though, since it's how the other
3d modes interpret this settings.
2016-01-09 16:52:29 +01:00
est31 a142e4f4b2 Fix client crashing when connecting to server
My commit

e2d54c9f92 "shutdown when requested from lua in singleplayer too"

broke minetest's feature to connect to servers. The client crashed
after the connection init was complete.

Thanks to @sofar for reporting the bug.

Fixes #3498.
2015-12-30 00:50:50 +01:00
est31 e2d54c9f92 shutdown when requested from lua in singleplayer too
Before, minetest.request_shutdown didn't shut down
singleplayer instances or server instances from the server tab.

This commit fixes this. Fixes #3489.
2015-12-29 00:40:22 +01:00
Sapier 06632205d8 Android: Implement Autohiding button bars to cleanup screen 2015-12-18 20:35:54 +01:00
Sapier 6a7e1667f6 Android: Fix pressed buttons not beeing cleared on opening menu 2015-12-17 20:43:25 +01:00
Alex Ford 97908cc656 Add on_secondary_use when right clicking an item in the air 2015-12-02 02:18:44 +00:00
Amaz e664abeb88 Add a status text for autorun 2015-11-15 13:42:31 +01:00
BlockMen 2a12579fab Add support for audio feedback if placing node failed 2015-11-07 13:23:38 +01:00
gregorycu 5c3546e459 Speed up saving of profiling data by 27x
On Windows Release x64 bit build this changes:

ProfilerGraph::put
1.68% -> 0.061%

ProfilerGraph::draw
12% -> 17.%

So yes, there is a tradeoff between saving profiling data
(executed always) and drawing the profiler graph (executed very rarely).
But usually you don't have the profiler graph open.
2015-11-02 13:25:21 +01:00
Duane Robertson b6dfae0221 WoW-style Autorun
This allows the player to toggle continuous forward with a key (F by default),
so we don't have to hold down the forward key endlessly.
2015-10-29 21:48:57 +01:00
BlockMen 127b9aed09 Fix on_rightclick() being called directly after placing node
fixes https://github.com/minetest/minetest_game/issues/537
2015-10-24 12:18:57 +02:00
est31 6b0cae5a9d Remove wstrgettext
Everywhere where wstrgettext was used, its output was converted back
to utf8. As wstrgettext internally converts the return value
from utf8 to wstring, it has been a waste. Remove the function, and
use strgettext instead.
2015-10-18 02:29:06 +02:00
ShadowNinja 2139d7d45f Refactor logging
- Add warning log level
- Change debug_log_level setting to enumeration string
- Map Irrlicht log events to MT log events
- Encapsulate log_* functions and global variables into a class, Logger
- Unify dstream with standard logging mechanism
- Unify core.debug() with standard core.log() script API
2015-10-14 01:03:54 -04:00
est31 0903190ba2 Hide minimap if it has been disabled by server 2015-09-01 19:00:33 +02:00
David Jones 34b7a147dc Change i++ to ++i 2015-08-25 18:33:52 -04:00
kwolekr be9024a397 minimap: Add ability to disable from server 2015-08-13 15:05:48 -04:00
est31 a670ecfde4 game.cpp: Update cached settings 2015-08-13 20:05:53 +02:00
est31 3b50b2766a Optional reconnect functionality
Enable the server to request the client to reconnect.

This can be done with the now extended minetest.request_shutdown([reason], [reconnect]) setting.
2015-07-23 07:38:13 +02:00
RealBadAngel 655fc6010f Fix relief mapping issues 2015-07-16 15:36:48 +02:00
Kahrl b30e8d8ec6 Make serialization error message translatable
Also don't show "probably running a different version" message in simple singleplayer mode
2015-07-14 19:01:33 +02:00
est31 cb8978fb1d Settings: pass name to callbacks by reference
Spare some copies.
2015-07-09 08:25:17 +02:00
est31 b0784ba871 Use UTF-8 instead of narrow
Use wide_to_utf8 and utf8_to_wide instead of wide_to_narrow and narrow_to_wide at almost all places.
Only exceptions: test functions for narrow conversion, and chat, which is done in a separate commit.
2015-07-08 10:12:44 +02:00
kwolekr e234d8b378 Clean-up Minimap code
- Fixed race conditions
- Fixed null dereference
- Fixed out-of-bounds array access
- MinimapMapblock is now allocated and added to update queue only when enabled
- Removed dependency on LocalPlayer
- Fixed code style
- Simplified expressions and program logic
- Cleaned minimap object interfaces
2015-07-08 01:50:31 -04:00
RealBadAngel ffd16e3fec Add minimap feature 2015-06-27 03:42:01 +02:00
est31 40226e5274 Make attached objects visible in 3rd person view 2015-06-20 02:59:53 +02:00
Ilya Zhuravlev b6387b4e0f Use utf-8 in formspecs 2015-06-13 19:49:55 +02:00
Craig Robbins addf3ee165 (Android) Only simulate holding down fast key if fast_move is toggled to true 2015-05-29 22:59:21 +10:00
kwolekr da34a2b33e Replace instances of std::map<std::string, std::string> with StringMap
Also, clean up surrounding code style
Replace by-value parameter passing with const refs when possible
Fix post-increment of iterators
2015-05-19 16:10:49 -04:00
Craig Robbins 99cf53c908 ANDROID: Do not limit situations where fast is enabled
Before this commit autofast for Android was ignored if the user was sneaking, digging or building. There is no reason for this and it impedes movement control
2015-05-15 13:22:07 +10:00
ShadowNinja d720fd5644 Fix connection speed unit names 2015-05-06 15:41:37 -04:00
sfan5 4ea5a96fff Revert the upper-case PROJECT_NAME nonsense that was part of #2402 2015-04-27 16:24:49 +02:00
Kevin Ott 400c6087b6 Fix player pitch and yaw not being set properly 2015-04-26 23:36:05 +10:00
est31 f1a41e4f77 Disable connection timeout for singleplayer and server tabs
In worlds with many mods we can easily reach timeout, waiting for the server to start.
2015-04-19 19:58:21 +02:00
SmallJoker 5f0b36b8b7 10s timeout when connecting to server 2015-04-17 10:40:48 +02:00
Aaron Suen db32e6c5aa Move texture_min_size even further down the pipe. Now, textures are JIT-upscaled using an image transformation, right at the time they're added to a mesh or particle; images used in 2D elements are left unscaled. This should fix any remaining issues with HUD elements. 2015-03-31 16:56:33 +10:00
Craig Robbins ff924ef0dc On Android enable always fast
Invert the meaning of holding down the fast button (i.e. holding down the fast button -- if there is one -- means walk), unless performing an action, sneaking or jumping.
Still requires fast move to be toggled on (and fast priv)
2015-03-30 00:40:12 +10:00
ShadowNinja 30075467b8 Change error_message from wstring to string
This removes a lot of narrow/wide conversions where a wide string was never used.
2015-03-27 20:24:04 -04:00
ShadowNinja 93fcab952b Clean up and tweak build system
* Combine client and server man pages.
  * Update unit test options and available databases in man page.
  * Add `--worldname` to man page.
  * Fix a bunch of places where `"Minetest"` was used directly instead of `PROJECT_NAME`.
  * Disable server build by default on all operating systems.
  * Make `ENABLE_FREETYPE` not fail if FreeType isn't found.
  * Enable LevelDB, Redis, and FreeType detection by default.
  * Remove the `VERSION_PATCH_ORIG` hack.
  * Add option to search for and use system JSONCPP.
  * Remove broken LuaJIT version detection.
  * Rename `DISABLE_LUAJIT` to `ENABLE_LUAJIT`.
  * Rename `minetest_*` variables in `version.{h,cpp}` to `g_*`.
  * Clean up style of CMake files.
2015-03-27 15:00:48 -04:00
Craig Robbins 34c5a5b377 Minor cleanup: game.cpp
* Sort includes
* Remove unnecessary includes
* Ensure the parameter name for GameRunData is consistent for class member functions
2015-03-17 17:07:39 +10:00
est31 e4f7c92cff Finer progress bar updates when initializing nodes
The bar is only drawn when the user will notice a change, which prevents time overheads that this commit would cause, resulting from useless draws.
2015-03-15 22:01:52 +10:00
Craig Robbins ced6d20295 For usages of assert() that are meant to persist in Release builds (when NDEBUG is defined), replace those usages with persistent alternatives 2015-03-07 22:41:47 +10:00
Craig Robbins 5698e2baf8 Fix Android text bug (no text displaying) 2015-03-07 20:51:07 +10:00
Loic Blot 6c09b34edc ProfilerGraph: Use std::list instead of std::vector 2015-03-05 17:57:47 +01:00
Loic Blot 0d1eedcccc Replace std::list to std::vector into tile.cpp (m_texture_trash) and move tile.hpp to src/client/ 2015-03-05 11:59:40 +01:00
rubenwardy d65a90a86b Add camera smoothing and cinematic mode (F8) 2015-02-25 15:34:33 +01:00
Perttu Ahola 4d744cf87a Use fixed size for builtin menus on non-android platforms 2015-02-18 12:33:40 +02:00
Yaman 98d80e2012 Add player direction to on-screen debug text
(PR Modified slightly)
2015-02-17 01:56:21 +10:00
ngosang c7a7803780 Minor fixes in translations 2015-02-12 16:41:40 +01:00
Loic Blot a9355284b5 Don't permit to open inventory is playerCAO isn't present. This prevent to open an empty inventory at player load. ok @zeno- 2015-02-11 12:23:14 +01:00
Loic Blot 8252e1ecd0 Fix issue #2279. ok @zeno- 2015-02-11 10:03:29 +01:00
ngosang dd2bb950be Fix Exit to OS button focus in Pause Menu 2015-02-10 21:23:16 +10:00
gregorycu a0535d286b Fix rebase bug, make render loop use cache setting 2015-02-07 22:23:36 +10:00
ShadowNinja 9e2a9b55e1 Reduce gettext wide/narrow and string/char* conversions 2015-02-05 03:24:22 -05:00
ShadowNinja 84c367bb46 Fix translation memory leak 2015-02-05 03:24:13 -05:00
ShadowNinja 8bbf106379 Fix translation finding of overlay messages 2015-02-05 03:24:00 -05:00
Craig Robbins 38561023b4 Fix local map saving when joining a local server from the server tab
Disables local map saving for all local server types

See: https://github.com/minetest/minetest/issues/2024
2015-01-31 00:42:08 +10:00
gregorycu ed7c9c4cb8 Settings fixes Make the GameGlobalShaderConstantSetter use the settings callback (8% perf improvement in game loop) Ensure variable is set Ensure settings callback is threadsafe 2015-01-25 15:23:37 +10:00
Craig Robbins 2c4a5e1861 Revert "Make the GameGlobalShaderConstantSetter use the settings callback (8% perf improvement in game loop)"
This reverts commit a555e2d9b0.
2015-01-25 01:19:40 +10:00
Craig Robbins 0ea843bbdb Fix unitialised variable occassionally being used 2015-01-24 14:54:42 +10:00
gregorycu a555e2d9b0 Make the GameGlobalShaderConstantSetter use the settings callback (8% perf improvement in game loop)
Amend the settings callback to support userdata
2015-01-23 21:27:51 -05:00
Kahrl e80a044818 Fix use of uninit data in Sky and (potentially) GUIChatConsole constructors
Clean up nearby code a bit

As a small side effect, it is now possible to add a background texture
to the chat console by simply providing background_chat.jpg, it is no
longer necessary to also add "console_color =" to minetest.conf.
2015-01-18 13:16:01 +01:00
sapier aed70cb0b6 Disable sound and key binding settings in "pause" menu on android 2015-01-11 13:58:49 +01:00
sapier de3888ca09 Remove automatic consistent formspec size <-> font size (now has to be done manually)
Set builtin formspecs to autoscale in order to get consistent formspec look and feel
Uncouple label positioning from font size (May break some formspecs but is required to allow manual font adjustment)
2015-01-09 18:46:24 +01:00
sapier 63867b1a37 Fix memory leaks due to messed up memory handling for particles as well as their spawners 2015-01-09 15:23:49 +01:00
sapier 0db73bd83e More consistent progress bar from 0-100 on startup 2015-01-02 17:53:42 +01:00
Craig Robbins 3d29be24e0 Add display_gamma option for client 2014-12-31 02:44:31 +10:00
Craig Robbins 53bc56dc3c Cleanup updateCameraDirection and fix random input not working 2014-12-30 22:59:55 +10:00
Kodexky a79a116ac8 Center status text for better visibility. 2014-12-30 00:30:28 +10:00
RealBadAngel 638f3a8454 Disable loading .mtl files. Theyre not used anyway. 2014-12-08 02:24:46 +01:00
Craig Robbins 5c55738276 Fix f6 debug/profiler display
After fonts were re-engineered the height of the f6 debug/profiler display would only display about 2-3 lines of text.
2014-12-08 00:01:22 +10:00
Craig Robbins 2b119e1e19 Performance of main client loop up to 2x faster In places, up to 3 times faster
NOTE 1: This does not mean a 2x increase in framerate. Increase in fps may be up to 1-2fps
NOTE 2: This local 'caching' of settings is not optimal and an alternative solution will be worked on after 0.4.11 is released
2014-12-07 00:51:01 +10:00
Craig Robbins 0e78aa296e Add name of node 'pointed at' to debug
This is "Add name of node pointed at to debug #1677" by @rubenwardy updated to work with game.cpp after it was refactored.
2014-12-05 16:14:50 +10:00
Craig Robbins 691b18c41b Fix node 0,0,0 being highlighted when enable_node_highlighting == false
Without this patch node 0,0,0 is highlighted when enable_node_highligting is false
There is a minor lighting issue remaining, however it seems to be related to a different bug (https://github.com/minetest/minetest/issues/1887)
2014-12-01 22:13:21 +10:00
sapier 39162de15a Make hud use fontengine too
Fix non coding style conforming glb_fontengine to g_fontengine
Fix fonts never been deleted due to grabbed to often
2014-11-30 18:06:54 +01:00
sapier dceb9f7d60 Implement proper font handling 2014-11-30 17:50:09 +01:00
Sokomine 9f9279008c added enable_build_where_you_stand option
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
2014-11-27 01:07:11 +10:00
Craig Robbins 26cf98ccfc Fix client "double saving" simple singleplayer local maps 2014-11-26 00:49:54 +10:00
KodexKy 5413ed1195 Fixes for Android build errors. Enable sensor landscape rotation.
Fix typo in Android Makefile ndk path.
Fix touchscreen parts of game.cpp to work after Zeno's refactor.
Fix isdigit and isspace overload conflict with Android Irrlicht in string.h
Enable sensor landscape rotation in Android Manifiest.
Add mapgen v5 to Android build.
Fix Makefile not checking leveldb.

Signed-off-by: Craig Robbins <kde.psych@gmail.com>
2014-11-25 13:28:51 +10:00
Craig Robbins 5b8855e83c Remove most exceptions from getNode() (and variants) 2014-11-14 18:05:34 +10:00
Craig Robbins 45ebaa3524 Fix profiler values not being updated (F6) and not being logged 2014-11-11 20:58:57 +10:00
Craig Robbins 987e565eeb Create faster key cache for main game loop (client) 2014-11-10 12:26:19 +10:00
Kahrl 9b551d5cbc Implement WieldMeshSceneNode which improves wield mesh rendering
- Don't create and cache an extruded mesh for every (non-node) item.
  Instead use a single one per image resolution.

- For cubic nodes reuse a single wield mesh too

- Improve lighting of the wielded item

- Increase far value of wield mesh scene camera, fixes #1770

- Also includes some minor refactorings of Camera and GenericCAO.
2014-11-08 23:11:57 +01:00
Craig Robbins 1c21e391ed Fix regressions and minor improvements in refactor_the_game
a) Fix double tap for jump and show_debug
b) Revert changes to limitFps()... there is no verification that the new method was an issue, but going back to old method just in case
b.2) limitFps() no longer calls device->run() and also no longer has to be called immediately after a call to device->run()
2014-11-08 21:40:11 +01:00
Craig Robbins 96fcca4ea0 Address issues related to refactoring the_game
Fix time of day persistence
Fix wield item being updated every frame causing small performance hit
Rename some classes and variables
2014-11-03 13:57:56 +01:00
Kahrl 817e3a6c64 Fix regression: mouse wheel couldn't scroll from last hotbar item to first 2014-11-02 21:59:56 +01:00
Craig Robbins 43bf4324d5 Cleanup and (mostly) document util/string.h and (very) minor refactoring
Updated: Incorporated feedback from 'kahrl'
Updated: Moved MinetestApp::boolToCStr() from game.cpp into string.h renaming it bool_to_cstr()
2014-11-02 18:07:20 +01:00
Craig Robbins dfd15fd1d9 Modified dtime calculation method in limitFps() 2014-11-02 02:20:06 +01:00
Craig Robbins 429ecb2b94 Refactor the_game() to make it more understandable and maintainable.
The following is a record of 31 commits before squashing:

Revert "Remove m_ext_ptr in GUIFormSpecMenu, replaced by refcount mechanism"

This reverts commit b49e5cfc70.

Basic reformatting with astyle
-- additional formatting will be modified, manually, as the need for it is encountered

Start "outlining" what a MinetestApp class might look like

Add MinetestApp::shutdown()

Converted class member functions to camelCase and created protos for new functions

First stage of connect to server done

Add get itemdefs/nodedefs/media code

Init clouds, camera, sky, init GUI, HUD

Input handling

Client events, camera, sound, draw

Fix wield hand getting stuck digging and add debug text back

Fix FPS

Added profiler graph back

Fix FPS issue
Need to work out what went wrong and clean up the copy/paste stuff

Annotate

Various:
Rewrote limitFps()
Limited scope of some variables

Jitter calcs

Reduce scope of objects

Move some stuff out of ::run and minor formatting cleanup

Scope reduction

Function splits

Removed old (broken) limitFps()

Added exception handling back

Fixed some formatting

Reverted commented out unit tests (uncommented them)

Slow clouds down on loading and media screens so the behaviour is like the original the_game()

Formatting/style (no functional changes)

Manually reapply upstream b49e5cf: Remove m_ext_ptr in GUIFormSpecMenu, replaced by refcount mechanism

Fixed silly errors on my part
Minor formatting cleanups

Removed strange differentiation in FPS limiting when loading
FPS limiting was done differently if cloud_menu_background was true, which does not make sense

Cleaning up

Add some comments
2014-11-02 02:18:25 +01:00
Kahrl b49e5cfc70 Remove m_ext_ptr in GUIFormSpecMenu, replaced by refcount mechanism 2014-10-24 21:14:48 +02:00
Craig Robbins fe8ef1be59 Move buttons upwards to accommodate for new configure keys button in the
pause menu
2014-10-18 17:30:17 +02:00
Mushiden 7b548cd2b5 Add in-game key change menu 2014-10-07 17:24:09 -04:00
RealBadAngel b9cb196d49 Bugfix: dont highlight (0,0,0) when theres no node pointed. 2014-10-03 16:03:14 +02:00
sapier 15c7460eda Fix chat lines not word wrapped correct 2014-09-25 19:54:02 +02:00
BlockMen a020d1b653 Allow taking screenshots of formspecs and move message to chat 2014-09-21 19:15:48 +02:00
RealBadAngel 58e6d25e03 Node highlighting. 2014-09-17 22:06:13 +02:00
BlockMen 8948907431 Change screenshot colorformat properly 2014-09-03 19:41:29 +02:00
BlockMen b2102bfe49 Don't save alpha channel in screenshots (fixes #1451) 2014-09-03 11:39:29 +02:00
sapier 7940a4264a Fix chat messages capturing mouse interactions for menu/formspecs 2014-08-23 00:23:14 +02:00
SmallJoker 55c646c5c2 Use pause_fps_max also on multiplayer 2014-08-22 22:52:20 +02:00
SmallJoker e4d570eafc Reduce time of red screen when damaged
10 seconds in PvP is very long and annoying.
2014-08-22 22:19:07 +02:00
Perttu Ahola 2fee2baf98 Remove FPS from being next to the version string 2014-07-05 11:55:13 +03:00
sapier 1cc40c0a7c Add support for Android 2.3+
There have been plenty of ppl involved in creating this version.
I don't wanna mention names as I'm sure I'd forget someone so I
just tell where help has been done:
- The partial android versions done by various ppl
- Testing on different android devices
- reviewing code (especially the in core changes)
- testing controls
- reviewing texts

A big thank you to everyone helping this to be completed!
2014-06-29 18:17:56 +02:00
sapier ebf7ea5019 Add formspec api versioning 2014-06-29 12:13:55 +02:00
RealBadAngel ed2c8ba9c5 Fix wrong status text rectangle. Fix for #1412 2014-06-27 20:16:37 +02:00
sapier 2dd69a85e7 Fix chat overlaying full screen, now it's gonna overlay only up to length of longest line 2014-06-20 15:18:45 +02:00
sapier c0e4551249 Remove not really used guiTextInputMenu 2014-06-17 21:27:40 +02:00
RealBadAngel cb3b42efe4 Fix issue #1275 - wielded index greater than inv size. 2014-06-17 14:17:53 +02:00
sapier c78aa7cf24 Fix HUD not visible if below ground blacked out 2014-06-12 23:38:34 +02:00
Perttu Ahola 1cea2f1b49 Fix switch from "skybox" to other sky types as triggered by player:set_sky() 2014-06-08 12:33:16 +03:00
sapier d76b8c6e7c Small cleanup of hud add/remove code 2014-05-31 22:32:44 +02:00
sapier 660e636887 Hide pause menu prior drawing "shutting down..." message 2014-05-24 13:45:05 +02:00
sapier 09970b7b6d Add support for interlaced polarized 3d screens
Add (experimental) support for topbottom as well as sidebyside 3d mode
2014-05-18 01:08:13 +02:00
sapier 90f0859128 Fix error messages beeing shown on pressing cursor keys in various menus 2014-05-11 02:57:47 +02:00
sapier d3ee617f37 Fix heart + bubble bar size on different texture packs
Add DPI support for statbar
Move heart+bubble bar to Lua HUD
Add statbar size (based upon an idea by blue42u)
Add support for customizing breath and statbar
2014-05-07 21:46:27 +02:00
RealBadAngel 6f511b1d05 Bugfix: make waypoints respect camera offset 2014-05-05 09:03:37 +02:00
sapier c03d7dc8a7 Add download rate to media progress bar (non http mode only!)
Minor coding style fixes
2014-04-29 20:45:16 +02:00
ShadowNinja 088b18da3d Make debug text adjust it's border to the screensize and fix a border update bug 2014-04-27 18:45:04 -04:00
sapier 1838a3fd69 Add support for dpi based HUD scaling
Add support for (configurable) multiline hotbar
Improved screensize handling
Add userdefined gui scale by BlockMen
2014-04-27 21:53:13 +02:00
sapier 885e93df44 Fix lost pause support in singleplayer 2014-04-24 19:47:17 +02:00
sapier 127f354e7a Fix formspec replacement handling for in game formspecs 2014-04-22 20:59:01 +02:00
sapier da3c5c743f Fix red background missing in deathscreen 2014-04-21 20:10:23 +02:00
sapier 0d93119040 Replace deathscreen by formspec variant 2014-04-19 12:21:27 +02:00
proller 4977b736e3 Fix warnings 2014-04-19 02:24:45 +04:00
proller 0279f32db7 Remove liquid_finite and weather 2014-04-18 21:56:48 +04:00
Sfan5 118e2ae865 Fix all warnings reported by clang 2014-04-15 21:34:53 +02:00
BlockMen c0ab09af74 Add player:set_eye_offset() by @MirceaKitsune and clean up 2014-04-12 17:44:20 +02:00
BlockMen a1db9242ec Add third person view 2014-04-12 17:44:15 +02:00
Kahrl 6090e95cdc Infer ipv6_server from bind_address; fix client connect to IN(6)ADDR_ANY 2014-04-10 22:03:42 +02:00
sapier 142e2d3b74 Cleanup client init states by bumping protocol version
Don't use TOSERVER_RECEIVED_MEDIA but TOSERVER_CLIENT_READY as indicatio for client ready
Handle clients with protocol version < 23 (almost) same way as before
Make client tell server about it's version
Add client state to not send bogus player position updates prior init complete
Add access to statistics information (peer connction time,rtt,version)
Fix clients standing stalled in world while preloading item visuals (new clients only)
Add get_player_information to read client specific information from lua
2014-04-08 21:12:20 +02:00
sapier 28854495b1 Performance optimized button to button mask evaluation 2014-04-03 20:26:26 +02:00
sapier af01a9577e Fix lost change password button 2014-04-01 22:38:34 +02:00
RealBadAngel 0dc1aec509 Normal maps generation on the fly.
Parallax mapping with slope information.
Overriding normal maps.
2014-03-21 01:32:00 +01:00
Novatux 93729b09d5 Fix sound not being played at the correct place. 2014-03-15 16:25:34 +01:00
BlockMen e4d1970abf Fix game pause in singleplayer 2014-03-13 14:06:18 +01:00
BlockMen 03297acbf4 Fix special characters in pause and message menu 2014-03-13 14:00:10 +01:00
ShadowNinja 18577f2527 Replace usage of long long with u64/s64 2014-03-12 19:37:19 -04:00
sapier 16a028dd6b Fix race condition on exit to menu 2014-03-09 11:01:13 +01:00
sapier a4e2198e41 Replace pause and message menu by formspec ones 2014-03-05 18:44:14 +01:00
Novatux 062de11b4c Fix rendering glitches when far from the center of the map 2014-03-04 20:12:10 +01:00
sapier f4f98c9550 Remove lots of dead code
Add check for datatype overflows
use native datatype indices instead of fixed 16bit/32bit ones
2014-02-07 21:39:45 +01:00
ShadowNinja 85fe75d1cb Add the option to bind to a specific address 2014-02-05 21:24:46 +01:00
Perttu Ahola 6a3fa9df12 Add player:override_day_night_ratio() for arbitrarily controlling sunlight brightness 2014-02-01 18:38:21 +01:00
Perttu Ahola 86a6cca3cf Add player:set_sky() with simple skybox support 2014-02-01 18:34:26 +01:00
RealBadAngel 21f1bec724 New HUD element - waypoint. 2014-01-26 21:31:59 +01:00
BlockMen 1b4908bf56 Prevent placing node when player would be inside new node 2014-01-15 21:26:54 +01:00
khonkhortisan 2b1eff7725 Allow vertical axis particle rotation constraint
Use tables for adding particles, deprecate former way.

separate particles(pawner) definition, add default values, work with no
arguments
2014-01-13 17:34:56 -05:00
sapier 8b0b857eaa Make MutexQueue use jsemaphore for signaling 2014-01-10 10:10:45 +01:00
Perttu Ahola 92aa38bdfc Actually pause singleplayer game in pause menu and use lower maximum FPS in it 2014-01-06 17:39:44 +02:00
Novatux 91923806a9 Fix objects being selected behind a node 2014-01-02 14:26:21 +01:00
PilzAdam 4b31a38ae9 Remove FPS from window title
This doubles performance on some window managers (WTF?!)
2013-12-25 03:52:44 +01:00
Kahrl a50db0e824 Check for denied access in itemdef/nodedef/media fetch loop 2013-12-19 21:47:08 +01:00
ShadowNinja 49cec3f782 Handle LuaErrors in Lua -> C++ calls on LuaJIT 2013-12-18 16:35:55 -05:00
MirceaKitsune 848f80b2e5 Directional fog + horizon colors, based on sun & moon positions at sunrise / sunset 2013-12-15 14:28:50 +01:00
Kahrl 0404bbf671 Rewrite client media download and support hash-based remote download
Move most of the media-related code in client.cpp into a new class
ClientMediaDownloader (clientmedia.cpp, clientmedia.h). Among other
things, this class does the following things:

- Download [remote_server][sha1] instead of [remote_server][name]. This
is to support servers that provide the same file name with different
contents.
- Initially fetch [remote_server]index.mth. This file should follow the
Minetest Hashset format (currently version 1) and contain a list of SHA1
hashes that exist on the server.
- The list of needed SHA1s is uploaded (via HTTP POST) when index.mth is
requested, so servers can optionally narrow down the list to the needs
of the client.
- If index.mth is missing (HTTP response code 404), we enter compat mode,
fetching [remote_server][name] as before this commit.
- remote_server can now contain multiple servers, separated by commas.
The downloader code attempts to split requests between the different
servers, as permitted by each server's index.mth. If one server claims
to have a file but actually doesn't (or something fails), we ask a
different server that also claims to have it.
- As before, when none of the remote servers provide a particular
file, we download it via the conventional method, i.e. using
the minetest protocol: TOSERVER_REQUEST_MEDIA / TOCLIENT_MEDIA.
- Bugfix: Every downloaded file's SHA1 is now verified against the SHA1
announced by the minetest server (before loading it and inserting it
into the file cache).
- Bugfix: Only send TOSERVER_RECEIVED_MEDIA when we actually have all
media. This should fix #863.
2013-12-13 18:05:20 +01:00
RealBadAngel dae03382bf Optimize shaders code. Add settings at compile time. 2013-12-09 13:28:50 +01:00
ShadowNinja 96f753a108 Fix paralax occlusion setting 2013-12-06 22:42:09 -05:00
RealBadAngel 2330267d22 Shaders rework. 2013-12-03 18:55:25 +01:00
Kahrl 8bc7ea61b9 Show git hash in version string at top left corner of window 2013-09-28 21:30:17 +02:00
proller cfe6eaa66b Use cached "weather" setting 2013-09-17 02:57:36 +04:00
proller 62bc5331aa Fog depend on humidity 2013-09-17 02:43:24 +04:00
Kahrl 3c4734d69a Change mainmenu texture handling + small misc changes
Texture names must now be escaped in formspec elements image[],
background[], image_button[], image_button_exit[].

Instead of special-case handling of texture loading (and unloading
which was missing) in guiFormSpecMenu.cpp, use the newly created
ISimpleTextureSource interface which is a minimal subset of
ITextureSource. There is an implementation of this interface
used by GUIEngine (MenuTextureSource).

Fix an off-by-one bug in unescape_string; it caused requests for a
texture called "\0".
2013-09-11 00:08:56 +02:00
sapier 7935044820 Fix selectionbox not honoring anaglyph mode 3d distortion 2013-09-05 00:57:09 +02:00
Kahrl 1ad9365d34 Fix enable_fog = false not having any effect when shaders are enabled 2013-09-03 13:23:30 +02:00
Kahrl 4e1f50035e Omnicleanup: header cleanup, add ModApiUtil shared between game and mainmenu 2013-08-14 21:03:33 +02:00
Kahrl c8930850e3 Remove farmesh 2013-08-13 09:25:13 +02:00
Novatux 383153419b Add texture pack selection to main menu 2013-08-04 16:52:30 +02:00
Perttu Ahola c50c9a10f1 Fix and improve view range tuner 2013-08-03 18:46:18 +03:00
Esteban I. Ruiz Moreno c6cb97e693 Make bumpmapping compatible with irrlicht 1.8 2013-07-31 19:35:28 +02:00
proller 3aedfac968 Weather support 2013-07-27 23:21:48 +04:00
PilzAdam cba90d4441 Make range of tools configureable 2013-07-20 20:37:59 +02:00
PilzAdam c8bd2ae11c Dont play digging sound if not digging 2013-07-09 02:42:05 +02:00
RealBadAngel 3f6f327cb9 Add texture bumpmapping feature. 2013-07-04 02:36:32 +02:00
sapier 967121a34b Replace C++ mainmenu by formspec powered one 2013-07-02 19:58:20 -04:00
Kahrl 8161ab573f Remove texture atlas / AtlasPointer, rename getTextureRaw to getTexture 2013-07-02 03:03:10 +02:00
arsdragonfly 4bbb78a99b Fix i18n of some strings. 2013-07-02 00:13:50 +00:00
proller f960c3be31 Add support for IPv6
Two new configuration options are added:
     - "enable_ipv6" to enable/disable the overall use of IPv6
     - "ipv6_server" to enable/disable the use of IPv6 sockets when running
       a server (when "enable_ipv6" is enabled)
2013-06-23 11:31:22 +04:00
PilzAdam 81c8b404e7 Play placing sound only if place prediction was successful 2013-06-19 21:42:12 +00:00
PilzAdam 9b6f1d647c Dont dig or place nodes if interact priv is missing (clientside) 2013-06-19 21:42:12 +00:00
PilzAdam 53066024f6 Add drowning 2013-06-19 15:47:00 +00:00
PilzAdam 7a58c1d4ca Reset dig_time when switching to a tool that cant dig the current node 2013-06-13 13:34:48 +00:00
Kahrl 21d6b39fd7 Enable word wrapping in profiler IGUIStaticText (freetype needs this) 2013-06-13 14:32:53 +02:00
PilzAdam 2cdf0ff4ab Play player_damage.ogg when recieving damage and additionally play player_falling_damage.ogg when recieving falling damage 2013-06-12 20:27:06 +00:00
Esteban I. Ruiz Moreno 7cb5217255 Close console when it loses focus but it is still on screen 2013-06-05 21:14:14 +02:00
Kahrl 7721948a2f Generate debug HUD text with ostringstream instead of snprintf.
This should fix #730.
2013-06-01 01:50:08 +02:00
sapier efc75db764 Bugfix: Update formname on showing new formspec while already one shown 2013-05-26 01:45:46 +02:00
Kahrl 96fe1de832 Add ObjectRef.hud_set_hotbar_itemcount and add TOCLIENT_HUD_SET_PARAM 2013-05-26 00:23:33 +02:00
PilzAdam 865f380c91 Predict param2 of facedir nodes and attachment of attached_node nodes 2013-05-24 02:10:03 +02:00
PilzAdam 3e2efdf18a Add a little animation when changing the wielded item 2013-05-20 01:09:41 +02:00
kwolekr f577facf79 Fix regression of world loading caused by 81c863ac 2013-05-19 12:07:00 -04:00
Esteban I. Ruiz Moreno 822723c246 Add mouse_sensitivity option 2013-05-13 17:39:16 +02:00
Zeg9 bda62bd3bf Add progress bar to item visuals preloading 2013-05-13 17:08:51 +02:00
PilzAdam 782d06be46 Fix memory leak by dropping sky 2013-05-10 19:12:24 +02:00