Commit Graph

399 Commits

Author SHA1 Message Date
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
Zeg9
81c863ac4d Add clouds to all loading screens and better progress handling 2013-05-10 15:04:21 +02:00
Zeg9
0913287578 Add progress bar and clouds to loading screen 2013-05-08 20:26:43 +02:00
ShadowNinja
a031a15487 Don't predict placement of nodes if they would replace a non buildable_to node 2013-05-03 17:03:25 +02:00
Kahrl
777ac58f85 Predict wallmounted param2 during node placement prediction.
Also clean up the_game a bit: move node placement prediction to a
separate function.
2013-05-03 17:03:25 +02:00
kwolekr
d3f0ce6224 Generalize hud_builtin_enable into hud_set_flags 2013-04-25 19:37:36 -04:00
Diego Martínez
e703c5b81f Added support to disable built-in HUD elements 2013-04-24 17:28:00 +03:00
Diego Martínez
9894167bbf Added offset support for HUD items 2013-04-23 09:34:11 +03:00
Diego Martínez
7c37b1891a Added support for alignment in HUD items 2013-04-23 09:34:10 +03:00
kwolekr
666aae3593 Split HUD code off to hud.cpp, make into a class, extensive Lua HUD modification 2013-04-18 02:19:31 -04:00
Jonathon Anderson
49f6e347f0 Lua HUD 2013-04-18 02:14:33 -04:00
sapier
10502b59bc addon extended resource accounting 2013-04-07 23:38:22 -04:00
sapier
cd27c8ef5d replace Server smart pointer with conventional one to gain control over dtor call order 2013-04-07 22:42:36 -04:00
khonkhortisan
1586cdac53 unkn own block -> unkn own node 2013-04-05 15:57:39 +02:00
PilzAdam
5e7e0347cd Add different place sound for nodes 2013-03-29 20:14:18 +01:00
Jeija
e1ff5b1361 Allow spawning particles from the server, from lua
Spawn single particles or make use of ParticleSpawner for many randomly spawned particles.
Accessible in Lua using minetest.spawn_particle and minetest.add_particlespawner.
Increase Protocol Version to 17.

Conflicts:
	src/clientserver.h
2013-03-23 23:16:29 +01:00
kwolekr
d31f07bd4b Fix most warnings, re-fix MSVC compile error 2013-02-26 01:57:59 -05:00
Sfan5
6d0ea26c2d Update Copyright Years 2013-02-24 20:15:24 +01:00
PilzAdam
497ff1ecd6 Change Minetest-c55 to Minetest 2013-02-24 18:49:03 +01:00
RealBadAngel
4d73d99ebc Add sound volume controls to ingame menu 2013-02-23 16:01:35 +01:00
Jeija
365c169b43 Disable placement prediction for nodes that use on_rightclick 2013-02-19 20:02:40 +01:00
PilzAdam
9f1ae4084d Enable multiline signs 2013-02-12 19:37:25 +01:00
Jeija
c1fee78e85 Place block when holding sneak while right-clicking nodes with formspec 2013-01-28 00:44:42 +04:00
PilzAdam
c691d619c2 Bugfix: else repeat_rightclick_timer = 0; 2013-01-14 21:38:40 +01:00
Jeija
61f5ca6b16 Add particles 2013-01-14 15:27:00 +01:00
PilzAdam
8aa190606e Disable all HP handling if enable_damage is false 2013-01-07 18:39:45 +01:00
sapier
0b1d09ff4f Fix buttons not working for Lua-triggered formspecs 2013-01-07 19:00:33 +02:00
PilzAdam
615fd498bc Fix typo doubletab -> doubletap 2013-01-04 20:04:48 +01:00
PilzAdam
82fd83fd12 Switch to fly mode if spacebar is doubleclicked
Can be turned off in the key change GUI or in minetest.conf via doubletab_space
2013-01-04 18:51:38 +01:00
Jeija
b50da63852 Repeated right clicking when holding the right mouse button
Configure using repeat_rightclick_time in minetest.conf
2013-01-04 18:33:53 +01:00
PilzAdam
d2b1210376 Adjust the maximum alpha of the red hurt screen 2013-01-03 16:15:46 +01:00
Jeija
a27cdf16f4 Tilt camera on player damage (tweaked by PilzAdam) 2013-01-03 15:16:46 +01:00
PilzAdam
8493979d86 Replace constant red hurt screen with fade out red 2013-01-02 23:06:17 +01:00
sapier
da9707950e Add TOCLIENT_SHOW_FORMSPEC to display formspecs at client from lua 2013-01-02 20:59:37 +02:00
Esteban I. Ruiz Moreno
578ece8dd0 Add selectionbox_color, crosshair_color, and crosshair_alpha options 2012-12-27 13:10:03 -03:00
PilzAdam
52ba413185 Only fly through walls in noclip mode wich requires the noclip privilege 2012-12-11 16:44:13 +01:00
Perttu Ahola
fd9e226b79 Update GUI texts 2012-12-06 21:02:02 +02:00
Jürgen Doser
7d2f0d7b1b draw gui later. this fixes the hotbar disappearing while rendering to texture. 2012-12-06 20:43:17 +02:00
Perttu Ahola
804a7875a2 Smooth day-night transitions 2012-12-02 18:02:45 +02:00
Perttu Ahola
cd1f604ffe Handle day-night transition in shader and make light sources brighter when shaders are used 2012-12-02 14:24:58 +02:00
Perttu Ahola
27373919f4 Implement a global shader parameter passing system and useful shaders 2012-12-02 00:46:18 +02:00
Kahrl
22e6fb7056 ShaderSource and silly example shaders 2012-12-02 00:46:18 +02:00
Perttu Ahola
bee170570d On-demand item meshes and textures 2012-12-02 00:38:26 +02:00
PilzAdam
bb454b1846 Merge support for anaglyph stereo 2012-12-01 12:41:05 +01:00
Jürgen Doser
c1d8eeb70a Make dragged itemstack following the mouse cursor much smoother
by using the cursor coordinates directly, instead of updating them only when a mouse event is seen.
2012-11-30 22:07:30 +02:00
MirceaKitsune
3d1c481f0b RealBadAngel's patch which allows the lua api to read pressed player keys. This should make it possible to change the player's animation based on what he is doing
Correct lua api version number

Always update animations and attachments after the entity is added to scene client side. Fixes animations not being applied in client initialization for some reason. Attachments should be re-tested now just to be safe.

Fix a segmentation fault caused by reaching materials that didn't exist in a loop for setting texture
2012-11-25 19:14:24 +02:00
MirceaKitsune
8b16e5f27d Anaglyph stereo support, created by xyz 2012-11-13 19:20:35 +02:00
Perttu Ahola
ee2d9d973a Reorganize ClientMap rendering code for a bit more performance
- Don't select blocks for drawing in every frame
- Sort meshbuffers by material before drawing
2012-09-04 22:41:03 +03:00
Perttu Ahola
c009aa3a22 Fix building on top of (pointable && buildable_to) nodes 2012-07-23 20:42:08 +03:00
Perttu Ahola
4cc98d7add minetest.register_on_player_receive_fields() 2012-07-22 17:40:48 +03:00
darkrose
506203345b Implement formspec 2012-07-22 17:40:41 +03:00
Bad-Command
cc10eec6c6 Fix signed overflow in getPointedThing 2012-07-21 16:13:51 +03:00
Perttu Ahola
2795f44f03 Server-side checking of digging; disable_anticheat setting 2012-07-21 14:38:49 +03:00
Perttu Ahola
16ad10e62f Allow defining player's inventory form in Lua 2012-07-19 14:09:16 +03:00
Kahrl
1575448b1a Custom boxy nodes (stairs, slabs) and collision changes 2012-06-17 16:34:39 +03:00
Perttu Ahola
9f031a6759 Optimize headers 2012-06-17 04:03:39 +03:00
Perttu Ahola
07ccc15fc2 Allow node cracking animations of any length 2012-06-16 18:02:56 +03:00
Perttu Ahola
fd1135c7af Node texture animation 2012-06-16 16:47:28 +03:00
Perttu Ahola
6a0388bb4b Node placement client-side prediction 2012-06-10 12:46:48 +03:00
Perttu Ahola
7ba72f2763 Remove a random old comment and a #define from game.cpp 2012-06-09 13:40:07 +03:00
Perttu Ahola
037b259197 Switch the license to be LGPLv2/later, with small parts still remaining as GPLv2/later, by agreement of major contributors 2012-06-05 18:54:07 +03:00
Perttu Ahola
a09d86dd3c Update inventory menu from formspec on-the-fly 2012-06-03 22:31:02 +03:00
Perttu Ahola
1709fd854a Implement image[<X>,<Y>;<W>,<H>;<texture name>] and allow floating-point values in formspec 2012-06-03 22:31:02 +03:00
Perttu Ahola
7bf446f671 Reshape inventory menu code 2012-06-03 22:31:02 +03:00
Perttu Ahola
d7447cdf9e Implement sign using form field protocol 2012-06-03 22:31:01 +03:00
darkrose
c4315a7afa Strip unneeded variables from NodeMetadata 2012-06-03 22:31:00 +03:00
Kahrl
704782c95b WIP node metadata, node timers 2012-06-03 22:31:00 +03:00
Perttu Ahola
6a57eabb14 Handle failing openal init properly, add enable_sound and sound_volume settings 2012-04-06 15:30:36 +03:00
Perttu Ahola
22a5a1fa43 Show reported map seed on debug info (F5) 2012-04-04 22:43:54 +03:00
Perttu Ahola
a869d23451 Fix sound direction and add experimental:soundblock alias sb in minimal for testing 2012-04-04 13:32:08 +03:00
Perttu Ahola
52122c342d Add 'fly' and 'fast' privileges and the underlying privileges-to-client system 2012-03-31 16:25:02 +03:00
Perttu Ahola
4fb6c07535 Change postfixes from N.ogg to .N.ogg in user/testsounds/ loader 2012-03-25 18:51:05 +03:00
Perttu Ahola
f01c988094 Some serialization version stuff 2012-03-25 18:45:27 +03:00
Perttu Ahola
db0928add3 Sound loading from memory (by using a quick hack) 2012-03-25 15:52:43 +03:00
Perttu Ahola
1cac1de3b2 Almost support loading sounds from server 2012-03-25 14:48:22 +03:00
Perttu Ahola
f801e16b78 Texture cache -> Media cache WIP 2012-03-25 11:51:33 +03:00
Perttu Ahola
06e93f8d95 Add sound.dig 2012-03-24 11:10:28 +02:00
Perttu Ahola
93219e3b9d Add sounds, tune things 2012-03-24 04:24:26 +02:00
Perttu Ahola
77120a021d Digging and placing sounds 2012-03-24 04:24:26 +02:00
Perttu Ahola
6c14025b2d Add event manager and use it to trigger sounds 2012-03-24 04:24:26 +02:00
Perttu Ahola
8c2f3bb378 c55sound continued 2012-03-24 04:24:25 +02:00
Perttu Ahola
c301e3c82a celeron55's sound system initial framework 2012-03-24 04:24:23 +02:00
Perttu Ahola
c3f2b24a9a Remove useless clearing of the Z buffer 2012-03-22 22:15:38 +02:00
Perttu Ahola
ef0ec31554 Goddamn MSVC pow overload ambiguities 2012-03-21 22:11:15 +02:00