259 Commits

Author SHA1 Message Date
Quentin Bazin
72acda9d29 New parameter -s/--singleplayer added to start the client in singleplayer mode. 2020-03-04 14:58:14 +01:00
Quentin Bazin
4c26ec25c5 The client is now capable of running a server in a dedicated thread. 2020-03-04 14:38:31 +01:00
Quentin Bazin
d804aac22e [ServerConnectState] Now uses TextInput instead of gk::TextInput. 2020-03-04 13:18:22 +01:00
Quentin Bazin
10d5154e77 [Config] More options added to hide interface. [TitleScreenState] Background added. 2020-03-04 12:54:20 +01:00
Quentin Bazin
be86e66c7f [Text] Now uses a VBO to display characters. 2020-03-04 11:28:45 +01:00
Quentin Bazin
896460c785 [Font] Class added in order to remove Text::updateCharWidth. 2020-03-03 15:40:46 +01:00
Quentin Bazin
a8542b8da5 [CMakeLists.txt] -ffast-math removed. [GameState|ServerApplicaiton] Now sending updates every 100ms instead of 1000ms. 2020-03-02 21:09:16 +01:00
Pedro Gimeno
a9a3343604 Make server side position of player be doubles 2020-03-02 20:41:47 +01:00
Pedro Gimeno
d1fdb9300e Reduce precision where it's not needed
Should help a bit with network transmission.
2020-03-02 18:56:21 +01:00
Pedro Gimeno
2a071766e1 Speed up face rotation with a table 2020-03-02 16:12:32 +01:00
Quentin Bazin
e2f33fa98d [ChunkBuilder|ClientPlayer] Fixed direction. 2020-03-02 00:56:48 +01:00
Quentin Bazin
ec7ef36d45 Blocks can now be rotated depending on the player direction. 2020-03-02 00:17:28 +01:00
Quentin Bazin
c1becd9ae7 [DebugOverlay] Now displaying player direction and angle. 2020-03-01 23:15:34 +01:00
Quentin Bazin
a9da012d7d Small fix for Visual Studio about DPI awareness code. 2020-03-01 22:32:48 +01:00
Quentin Bazin
79efd51385 Fixed scaling issue on Windows. 2020-03-01 19:44:39 +01:00
Pedro Gimeno
1bd57a0db6 Rewrite collision check loops, fix negative coordinates
Made the loops more robust by looping on integers instead of floats.

The cause for the need to fix negative coordinates was that world.getBlock() was being called with implied truncation towards zero, not with floor. Fixed.
2020-03-01 19:23:40 +01:00
Quentin Bazin
86125bf13e [furnace.lua] Won't use non-fuel items as fuel anymore. 2020-03-01 18:04:50 +01:00
Quentin Bazin
1c21f89caa [MouseItemWidget] Refactored a little bit. 2020-03-01 17:52:35 +01:00
Quentin Bazin
578b5271ac Lots of fixes related to drag-click. 2020-03-01 17:44:53 +01:00
Quentin Bazin
0c71255938 [MouseItemWidget] Now supports drag-click. 2020-03-01 15:45:09 +01:00
Quentin Bazin
908bb10b9b [AbstractInventoryWidget] Now supports multiple destinations. 2020-03-01 12:55:20 +01:00
Quentin Bazin
c092e53116 [Inventory] Now supports using 'addStack' on a subset. 2020-03-01 12:28:26 +01:00
Quentin Bazin
4d9a2fbe7e [LuaGUIState] Now handles Shift+Left click to move items quickly. 2020-03-01 00:15:49 +01:00
Quentin Bazin
7ce30d3e5b [SettingsMenuState] Added menu option to change creative window key. 2020-02-29 18:11:09 +01:00
Quentin Bazin
45c797cd5f Creative window added on key 'H'. 2020-02-29 18:07:01 +01:00
Quentin Bazin
502a4b542d include and source folders merged. 2020-02-29 03:31:14 +01:00
Pedro Gimeno
3ad0b19de4 Add UVs and a texture for Boxy
Thanks to LyoliGamer for providing this texture (CC0)
http://minetest.fensta.bplaced.net/#name=Lyoligamer
2020-02-29 03:04:35 +01:00
Pedro Gimeno
03732e7566 Add joke player "model"
Turns on backface culling too.
2020-02-28 16:54:58 +01:00
Pedro Gimeno
f39229fc30 Lock player when in an unloaded chunk 2020-02-28 16:34:31 +01:00
Pedro Gimeno
1af45d68c4 Use a local position variable for the camera
This makes it easier to change the camera position if necessary.
2020-02-28 16:34:31 +01:00
Pedro Gimeno
6483c5c846 Simplify updatePosition (remove duplicated code) 2020-02-28 16:34:31 +01:00
Pedro Gimeno
56c60d02f8 Make the player be a basic model, with the correct position
This fixes the visualization of other players mentioned in the last commit.
2020-02-28 16:22:00 +01:00
Pedro Gimeno
89a1520d7c Change player position to be at the feet, rather than the head
Note: This breaks the visualization of the other players (PlayerBox).
2020-02-26 22:17:37 +01:00
Quentin Bazin
e405173b7b [PlayerBox] Now using gk::Transformable again. 2020-02-25 23:27:44 +09:00
Quentin Bazin
14bfabee0d [GameState|InterfaceState] Now closing the game correctly on SDL_QUIT event. 2020-02-25 22:13:06 +09:00
Quentin Bazin
fabefd81b4 [PlayerBox] Position fixed. It was needed because of precision PR. 2020-02-25 18:51:00 +09:00
Quentin Bazin
27fb5e935a [InterfaceState] Now updates parent. This fixes a problem where client froze the game when in pause menu or chat. 2020-02-25 10:03:56 +09:00
Quentin Bazin
7a28b8bf49 [LuaGUIState] Small refactorization. 2020-02-25 09:51:38 +09:00
Quentin Bazin
1d4fe0a11e [TextureAtlas] Now displaying 'undefined' texture for blocks with wrong texture definition. 2020-02-25 09:38:06 +09:00
Quentin Bazin
bcc3f65147 Headers updated and CONTRIBUTORS file added. 2020-02-25 01:48:38 +09:00
Pedro Gimeno
ead6df00f6 Revert to negative angle, as it's causing issues
Look into that later.
2020-02-24 17:06:27 +01:00
Pedro Gimeno
4f37012931 Camera improvements
- Remove the degenerate case of vertical directions, by updating the viewup as the camera moves.
- Remove the consequent limitation to 89.9 degrees.
- Add (unused so far) camera roll angle, with setter.
- Add accessors for all angles. Lua will want to know that.
- Rename m_angleV/H to m_viewAngleV/H to distinguish them clearly from the orientation of the mesh. They will differ e.g. when the player is sitting somewhere.
- Rename vertical turn so it includes 'view' in the name, because this one does not affect the player's rotation as turnH does.
- Make player look north at start, like it originally did before the Z-up changes.
2020-02-24 17:06:27 +01:00
Quentin Bazin
4fc45e3d93 [GameState] The game will now be paused it the window lose the focus. 2020-02-24 23:23:27 +09:00
Quentin Bazin
7e38907854 [SettingsMenuState] It's now possible to disable VSync. 2020-02-24 23:16:51 +09:00
Quentin Bazin
7c9b72b137 [Config|SettingsMenuState] Added option to disable BlockInfoWidget. 2020-02-24 22:43:31 +09:00
Pedro Gimeno
33dca07ee0 Precision improvements (Part 3)
Fix debug overlay.
2020-02-24 12:00:02 +01:00
Pedro Gimeno
6e3c2e066f Precision improvements (Part 2)
Improve player precision, especially location, but also rotation.
2020-02-24 11:59:53 +01:00
Pedro Gimeno
4bb12c872f Precision improvements (Part 1)
Improve rendering precision by subtracting the camera position from the models' position, then temporarily setting the camera to (0, 0, 0) for rendering. This keeps GL coordinates in a low range.
2020-02-24 11:16:19 +01:00
Pedro Gimeno
af1a641a25 Fix calculation of centre position relative to the camera
While this fixes the calculation, it introduces visibility determination problems, because the method was not correct. The centre may be out of the area of the camera, with nodes still visible inside. To fix this, the eight corners of the chunk need to be considered.
2020-02-24 11:16:19 +01:00
Quentin Bazin
75f9bc6dbd [ClientWorld] Teleportation and fast movement won't stop the world from loading. Fixes #50. 2020-02-24 18:53:21 +09:00