256 Commits

Author SHA1 Message Date
iProgramInCpp
944eb3ace4 * Add util functions or zlib inflation/deflation. 2023-08-12 13:53:35 +03:00
iProgramInCpp
42017e14f8 * Small nothing-burger changes in the RandomLevelSource::postProcess function. 2023-08-12 13:26:26 +03:00
iProgramInCpp
7fd36a1da0 update the core CMakeLists to include the corrected packets path 2023-08-12 11:39:01 +03:00
iProgramInCpp
6c03c91fe5 rename packets1 -> packets 2023-08-12 11:38:15 +03:00
iProgramInCpp
9750c0c7f1 rename Packets -> packets1 2023-08-12 11:38:08 +03:00
iProgramInCpp
826315c228 Update some splashes.
Allow messages to be split properly across several lines.
2023-08-12 10:39:23 +03:00
iProgramInCpp
d09ef3fd04 * Flip stair rendering 90 degrees, to be shaded like regular blocks do. 2023-08-12 10:18:50 +03:00
iProgramInCpp
936a72b346 * Last fixes to the AABB/Tile code. 2023-08-11 22:45:14 +03:00
iProgramInCpp
203a47a527 * Add getChunkDontCreate. Will be useful for multiplayer. 2023-08-11 20:59:30 +03:00
iProgramInCpp
35a63582df * Add F3 debug text. 2023-08-11 20:04:07 +03:00
iProgramInCpp
b1786eba1f * Add LevelRenderer::renderHitOutline.
Looks similar to the Java Edition version, but the lines are not antialiased and harder to tell apart. Phone users would have trouble seeing the outline, so that's why it was changed.
2023-08-11 18:43:08 +03:00
iProgramInCpp
8430ce5de9 * Fix bad picking logic once again... 2023-08-11 12:39:15 +03:00
iProgramInCpp
8c82c7b53f * Render the name tag on players other than the local player. 2023-08-11 12:04:14 +03:00
Marioiscool246
3d192ad10c Fix empty inventories for server players (#46)
* Fix empty inventories for server players

* Revert "Fix empty inventories for server players"

This reverts commit 12174c0cfb1f8df5f6fca1a93f55e27286b464db.

* Fix empty inventories for server players
(The good one this time I hope)

---------

Co-authored-by: Marioiscool246 <marioiscool101@gmail.com>
2023-08-11 11:54:33 +03:00
Brent
b45cfc1e16 Cleaned up Cube (#48)
* Cleaned up Cube
* Refactor/cleanup & documentation of Cube
* Renamed Tesselator to Tessellator

* Revert "Tesselator" Spelling Correction

---------

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
2023-08-11 11:53:50 +03:00
iProgramInCpp
ce6c2eb553 * Disable picking for fire. 2023-08-11 11:51:26 +03:00
iProgramInCpp
715c4b6c37 * Clean up Tile::clip 2023-08-11 11:43:04 +03:00
iProgramInCpp
66e896ad2b * Add the "lowering and raising item" behavior from Minecraft Java 2023-08-11 11:37:40 +03:00
iProgramInCpp
34fc30f08a * Outline all the Mouse and Keyboard code. 2023-08-11 11:19:26 +03:00
iProgramInCpp
cf304095ed * Fix a small bug in the mouse feed code. 2023-08-11 10:13:54 +03:00
iProgramInCpp
d1de430d14 * Add optional 3d panorama background 2023-08-11 00:13:06 +03:00
iProgramInCpp
27a0057886 * Split every Tile class into its own header file. 2023-08-10 13:27:30 +03:00
iProgramInCpp
b768764734 * Allow the patch manager to stop loading data from a command 2023-08-10 13:06:42 +03:00
iProgramInCpp
b1c2bf946c * Allow overwriting of frame data from the patch data file. 2023-08-10 12:32:40 +03:00
iProgramInCpp
0412fd1bc5 * Fix lapis lazuli block textures being weird when metal_block_sides is true. 2023-08-10 11:52:22 +03:00
iProgramInCpp
529100f168 * Add splash text rendering to the start menu screen. 2023-08-09 22:45:14 +03:00
iProgramInCpp
df47842c5e * Add PatchManager - Allows you to patch terrain.png and items.png on the fly.
This can be used for modding, since you don't need to share copyrighted Mojang assets alongside your texture patches.
2023-08-09 22:13:04 +03:00
iProgramInCpp
939b2b3711 * Fix grass rendering and add grass blocks to the inventory. 2023-08-09 18:01:48 +03:00
Brent
08314e8a0a Cleanup render functions (#38)
* Remove renderHorrible
* Remove renderRollable

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
2023-08-09 15:30:28 +03:00
Vruk
34e0f95a8a Cleared up some fields (#41)
* Cleared up some fields

Renamed some fields
Made some statements involving those fields make more sense for their type
Renamed the parameters of SoundEngine::PlayAt to have more readable names

* Renamed master volume field

m_flMasterVolume -> m_fMasterVolume

* Made m_iPerspective -> m_bThirdPerson
2023-08-09 15:29:46 +03:00
Marioiscool246
7ebf2be8a9 Fix held item not always being changed to the new held item (#45)
Co-authored-by: Marioiscool246 <marioiscool101@gmail.com>
2023-08-09 15:29:02 +03:00
iProgramInCpp
a2a33e7988 * Add FireTexture. 2023-08-09 12:41:27 +03:00
iProgramInCpp
476d519eee * Add LavaSideTexture. 2023-08-09 10:43:08 +03:00
iProgramInCpp
aa34a64fef * Add LavaTexture. 2023-08-09 10:43:08 +03:00
Marioiscool246
5313fbedd7 Fix incorrect axes being used for clip min/max (#44)
Co-authored-by: Marioiscool246 <marioiscool101@gmail.com>
2023-08-09 10:37:16 +03:00
iProgramInCpp
7a5e39aff0 * Fix survival test build. 2023-08-08 16:15:50 +03:00
Marioiscool246
8921360ecc Fixed incorrect Entity push velocity direction (#42)
Co-authored-by: Marioiscool246 <marioiscool101@gmail.com>
2023-08-08 15:44:06 +03:00
iProgramInCpp
6036304087 * Add preliminary raspberry pi support.
Currently it appears to be using software acceleration, so sucks, but I'll be
working on it.
2023-08-08 14:01:01 +03:00
iProgramInCpp
0ab1aa0a51 * Fix SDL build. 2023-08-08 11:32:51 +03:00
iProgramInCpp
cc2dc9b648 * Rename some fields in Level 2023-08-08 11:12:29 +03:00
Vruk
3447669f04 OpenAL Seperation and Adjustments (#34)
* OpenAL adjustments and improvements mk.1

Seperated SoundSystemAl from the sdl section and into platform/openal.
Made PlatformDefinitions.hpp require a "USE_OPENAL" definition instead of "USE_SDL" definition for OpenAL
Added SoundSystemAl.cpp  and SoundSystemAL.hpp files to the actual solution file so it can be compiled properly.
Made the SoundSystemAl use headers from thirdparty/OpenAL/include folder.
Made the SoundSystemAl use #pragma comment(lib, "OpenAL32.lib") to include the library if needed without adding it to the linker input value in the solution file.
Added thirdparty/OpenAL/libs/Win64/thirdparty/OpenAL/libs/Win32 to the additional libraries so that it can find the OpenAL32.lib library.

* OpenAL adjustments and improvements mk.2

Removed specific USE_SDL preprocessor definitions related to OpenAL which were unhelpful/unneeded for multi-platform use.
Made the OpenAl sound system inherit from the SoundSystem class and implement the functions properly without requiring a custom update function.
Fixed an error that would happen when closing the game related to OpenAl closing the sound device.
Removed unnecessary is_ui check in OpenAL sound system, UI sounds work just fine without it.
Adjusted rolloff factor, not sure if this is just placebo but it felt a bit better?

* Update sdl/CMakeLists.txt for new OpenAL stuff

* CMakeLists name fix

* Minor fixes for SDL compatibility

* Added check for absolute zero position

Made the OpenAL sound system consider any sound that is at absolute zero non-spatial

Also removed unneeded ORIGINAL_CODE check in SoundSystem.hpp and SoundSystem.cpp

* Fixed OpenAL popping strangeness

OpenAL apparently makes weird popping noises when the gain of a sound is below 0, so I added a check to see if the distance is too far (for the new updated settings)

I did some graphing and the previous settings for OpenAL were limiting the sound distance to 8 blocks (which was causing popping when sounds were between 8-16 blocks away as the gain was 0 or below) so I changed the rolloff factor to 1.0f to make sounds falloff at 16 blocks instead which seems reasonable/like the original intention.

* Minor Fix to solution additional includes

* Forgot an sdl compat change
2023-08-08 11:12:08 +03:00
iProgramInCpp
c0ef625972 * Revert to the old system, don't remove clashing ID entities, prioritize players over other entities. 2023-08-08 10:52:45 +03:00
iProgramInCpp
1fdd94a43e Revert "* Improve the entity ID system, and add priority system. We should no longer have clashes."
This reverts commit 1b97875dd6.
2023-08-08 10:22:13 +03:00
iProgramInCpp
57c2b339ea Revert "Fix new entity ID system (#39)"
This reverts commit ef9df3f9de.
2023-08-08 10:22:05 +03:00
Epix
ef9df3f9de Fix new entity ID system (#39) 2023-08-08 08:34:28 +03:00
iProgramInCpp
1b97875dd6 * Improve the entity ID system, and add priority system. We should no longer have clashes. 2023-08-07 23:05:30 +03:00
iProgramInCpp
e028fc6495 * Move the quit button to the bottom of the list. 2023-08-07 22:01:18 +03:00
iProgramInCpp
d5a733466d * Allow usage of / to start a command quickly.
* Allow usage of escape key to get out of chat screen.
2023-08-07 21:59:18 +03:00
iProgramInCpp
4c09bd2b1c * Fix bad picking logic. 2023-08-07 16:13:23 +03:00
Brent
a0f71c7b27 C++03 Support & Partial Xbox 360 Support (#37)
* WIP C++03 + Xbox 360 Support

* math.h & _USE_MATH_DEFINES on Level.hpp
Updated Xenon vcxproj file for new file structure.

* * Fix bad GUI scale setup.

* * Gui: Use ratios instead of hardcoded sub-1 floating point values, to make the mechanism more clear.

* Add Direct Connect Button and Screen (#30)

* Add Direct Connect Button and Screen

* Remove accidental extra build directories for wasm

* Add DirectConnectScreen.cpp to the CMake

* Use Hungarian coding style notation

* * Fix errors caused by #30

* * Improve the Chat Screen

* * Improve the DirectConnectScreen, among other things.

* * Update the game title once again.

* * Add build-wasm.bat.

* * Add info about compiling for wasm

* * Fix send to specific GUID actually broadcasting to everyone

* * Add command manager.

* * Add writeable configuration.

* * Allow dynamic screen size change on windows

* * Allow the same thing on the emscripten version.

* WIP C++03 + Xbox 360 Support

* Fixed a possible merging issue that broke RakNet?

* Additional Xbox 360 compatability fixes

---------

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
Co-authored-by: iProgramInCpp <iprogramincpp@gmail.com>
Co-authored-by: ts <124226059+uniformization@users.noreply.github.com>
2023-08-07 15:48:52 +03:00