240 Commits

Author SHA1 Message Date
Drew DeVault
e5aaf73d12 Implement sun & moon 2016-04-20 20:54:00 -04:00
Drew DeVault
528eb2c5f4 Implement time update packet on the client 2016-04-20 18:55:16 -04:00
Drew DeVault
4dd67d30fa Reuse client mechanism for movement on entities
Also brings in some MonoGame math classes to fulfill this purpose.
2016-04-06 21:37:11 -04:00
Drew DeVault
9de14e371b Update client lighting on block change 2016-04-06 20:36:48 -04:00
Drew DeVault
0a3eca2745 Rerender adjacent chunks when we receive new ones
Which:

- Gives us accurate lighting information
- Allows us to remove edge blocks that are actually not visible
2016-04-06 20:10:51 -04:00
Drew DeVault
311e7cbc25 Fix multiple lighting issues
- Factor in lighting for snow and similar blocks
- Set default lighting value to 15

The second one is a bit of a temporary fix - the default should be 15,
but we should also be revisiting and rerendering chunks once we have the
neighboring chunk for this and other reasons.
2016-04-06 19:41:56 -04:00
Drew DeVault
d04e5de273 Add option to invert the mouse
Closes #189

Regards to @illblew
2016-04-06 18:53:40 -04:00
Drew DeVault
b16e83a497 Drop Tao.Sdl.config 2016-03-17 19:31:33 -04:00
Drew DeVault
354b6e5067 Add DLL configs for Tao.Sdl and OpenTK 2016-03-17 19:15:12 -04:00
Drew DeVault
21dcfbd978 Upgrade to MonoGame 3.5, drop platform hacks
Thanks @cra0zy, that was easy
2016-03-17 18:58:25 -04:00
Drew DeVault
f575a9c4ee Fix some issues with mouse movement 2016-01-03 11:34:28 -05:00
William Moorehouse
b7603a8ca1 Fixed multiple issues with lighting 2015-11-24 12:15:07 -05:00
Drew DeVault
7e2d657393 Change how mouse is handled in client
This makes it playable on Wayland, which I've been using a lot lately.
2015-11-20 17:33:35 -05:00
Ethan Lee
3cf99bb34f Minor no-op changes for the compiler and/or XNA 2015-11-14 13:46:16 -05:00
William Moorehouse
ae31f323ed Remove testing artifact 2015-11-07 17:42:13 -05:00
William Moorehouse
dc803f382e Added block brightness modifier 2015-11-07 17:41:07 -05:00
William Moorehouse
f90d3717c0 Added base block face brightness modifier 2015-11-07 17:23:46 -05:00
Drew DeVault
95f49dd277 Add crafting bench support to client 2015-10-09 08:33:04 -04:00
Drew DeVault
26e8e9108b Add name of items on hover in windows 2015-10-09 07:50:42 -04:00
Drew DeVault
0c6a973a69 Unify server and client implementations of windows 2015-10-09 07:42:37 -04:00
Drew DeVault
bbb457af87 Fix inconsistent location of .truecraft 2015-10-08 22:02:03 -04:00
Drew DeVault
cf4632786f Fix some bugs and handle special cases in windows 2015-10-08 21:39:50 -04:00
Drew DeVault
6b38bc7c03 Finish implementation of inventory window 2015-10-08 19:05:32 -04:00
Drew DeVault
3550bcb1a1 Add item rendering for inventory 2015-10-08 18:32:34 -04:00
Drew DeVault
90f39b5696 Handle closing windows a bit better
Sends the window close packet if appropriate and also moves the mouse to
the center of the screen so your view doesn't jerk around when you
resume gameplay.
2015-10-08 08:44:30 -04:00
Drew DeVault
be8649447a Initial pass on rendering inventory window 2015-10-08 08:41:43 -04:00
Drew DeVault
facf8ce2c6 Send players their health on log in
Health is already being saved to disk with their NBT file, so this just
involves sending it to them when they log in.
2015-10-08 08:19:15 -04:00
Drew DeVault
6942786b32 [Client] Add player health to HUD 2015-10-08 08:06:37 -04:00
Drew DeVault
7fa1c9699a (Client) Factor in the held item for digging time 2015-10-07 21:13:09 -04:00
Drew DeVault
3da7d25a3d Rewrite chat interface 2015-10-07 08:36:43 -04:00
Drew DeVault
c4a65da5a1 Improve identification of .minecraft directory
This will use the following, in this order:

- $XDG_CONFIG_HOME/truecraft
- .config/truecraft (%APPDATA% on Windows)
- ~/.truecraft (%USERPROFILE% on Windows)

Fixes #201
2015-10-06 08:10:30 -04:00
Drew DeVault
2510c3d6b5 Tweak volume of walking sound effects 2015-10-05 22:15:59 -04:00
Drew DeVault
de880f2f8c Merge branch 'client-audio' 2015-10-05 22:08:25 -04:00
Drew DeVault
a361703746 Implement walking sounds
These sounds change depending on what kind of block you're walking in.

Still to come: sound effects for mining and placing blocks
2015-10-05 22:06:59 -04:00
Drew DeVault
a22cb1ce12 Improve physics stuff, fix falling sand/gravel
Fixes #69
2015-10-04 18:11:29 -04:00
Drew DeVault
8f6e577550 Initial pass on sound effects on client
Broken due to MonoGame problems
2015-10-04 10:06:44 -04:00
bilgorajskim
02ed3e253f Fixed digging through gamepad 2015-10-04 06:26:55 +02:00
Drew DeVault
ed85da313f Fix remaining issues with snowfall blocks
Fixes #194
2015-10-02 08:22:58 -04:00
Drew DeVault
14aa3ce07a Add "InteractiveBoundingBox" to IBlockProvider
This is used to determine the bounding box for interaction in the client
(the ray that's cast from your camera interacts with it to determine the
highlighted block).

TODO: Make it work better with metadata.

This commit also fixes one of the issues with snow: ref #194
2015-10-02 08:15:29 -04:00
Drew DeVault
fe479d1e49 Switch to Pixeludi Pack as default textures 2015-10-01 22:44:14 -04:00
Drew DeVault
578c5af3b9 Add gamepad support 2015-10-01 08:46:09 -04:00
Drew DeVault
394bb0953a Hold down mouse to continue digging the next block 2015-10-01 08:02:25 -04:00
Drew DeVault
9ccbf80ce5 Add block placement/right click actions on client 2015-09-30 20:17:20 -04:00
Drew DeVault
75a39118a9 Add numbers to slots on inventory 2015-09-30 20:03:51 -04:00
Drew DeVault
46569dec08 Cycle through hotbar with scroll wheel 2015-09-30 16:50:25 -04:00
William Moorehouse
fe700bff71 Fixed transparency issues with interface 2015-09-30 16:27:19 -04:00
William Moorehouse
26a0dcea4d Added support for D1-9 keys 2015-09-30 15:57:38 -04:00
William Moorehouse
47fdf4f07a Packet sent on hotbar selection change 2015-09-30 15:56:09 -04:00
William Moorehouse
3b0271b771 Initial work on hotbar interface 2015-09-30 15:28:38 -04:00
Drew DeVault
8d8da15f5a Decode and store inventory updates from server 2015-09-30 08:36:30 -04:00