Commit Graph

333 Commits

Author SHA1 Message Date
iProgramInCpp
710c85e95d * Reflect the removal of the Windows VS2010 target in the readme. 2023-11-03 15:05:02 +02:00
iProgramInCpp
8e69df37bb * Fix SDL build. 2023-11-03 14:54:16 +02:00
iProgramInCpp
bd3348f7fe * Add Gradle-based project for Android.
* Remove Microsoft Visual Studio projects for Android build.
2023-11-03 14:46:32 +02:00
f
f83ead9f8d WIP Android Port (#79)
* WIP Android Port

Android port. Still needs touch controls and mouse turning (if that's even possible on android) and file saving and SoundSystemSL
You control the camera and movement with your controller for now. You can navigate the gui using touch.
Options.cpp,LocalPlayer.cpp,Minecraft.cpp is configured to use controller.
Blocked out some code in ControllerTurnInput.cpp,Controller.cpp that didn't make sense.

* Fix glClear

glClear is supossed to use GL_DEPTH_BUFFER_BIT (thx TheBrokenRail)

* * Fix build.

* * Ignore assets.

* * More stuff

* * Fix more build errors.

* * It finally built

What I needed to do is rebuild the debug keystore because apparently android studio created it with sha1 digest alg which isn't supported by ant

* * Clean up filters.

* * Add cramped mode to the pause screen.

* * Fix a bug with the hotbar

* * In NinecraftApp::handleBack, pause the game if there is no screen.

* * AppPlatform_android: Add placeholder SoundSystem instance till we get SoundSystemSL working

* * Add properly working touch code.

* * Oh, remove some testing things

* * Fix state resetting when going in background and back in foreground
* Fix bug where the sky isn't being regenerated on graphics reset
* Fix bug where the m_currBoundTex isn't reset in Textures::clear potentially leaving a texture with that ID unassigned and corrupted
* Fix bug in CThread where the thread is detached and then also joined.
* Don't log anything if the program isn't in debug mode.

* * Add virtual keyboard support.

The screen instance slides so that the focused text box is kept visible.

* Rename from com.minecraftcpp to com.reminecraftpe

---------

Co-authored-by: iProgramInCpp <iprogramincpp@gmail.com>
2023-11-03 12:54:39 +02:00
TheBrokenRail
f119d89048 Update Linux Build Instructions (#95) 2023-11-03 12:53:13 +02:00
iProgramInCpp
8c6c5a0b39 Merge pull request #91 into master 2023-11-03 03:17:28 +02:00
iProgramInCpp
f0dc1fff5c Revert "Make ZLib A Submodule"
This reverts commit 26b94524a9.
2023-11-03 03:14:06 +02:00
iProgramInCpp
0432b9d5f7 * Add note in readme about checking out git submodules. 2023-11-03 03:08:30 +02:00
iProgramInCpp
2cedf13711 Merge branch 'pr/85' 2023-11-03 03:04:15 +02:00
iProgramInCpp
323e375d24 * Update scaling method a bit 2023-11-03 03:02:15 +02:00
iProgramInCpp
eba8f1b467 Merge pull request #82 into master 2023-11-03 03:01:59 +02:00
TheBrokenRail
f62fd3e7f5 Fix Touch In WASM 2023-11-03 02:48:47 +02:00
iProgramInCpp
65be786140 * Fix SDL related touch issues. 2023-11-03 02:47:08 +02:00
iProgramInCpp
c5f09f5a1c * Fix CThread in pthread mode trying to join a detached thread 2023-11-03 02:36:39 +02:00
iProgramInCpp
c9eca9e8d2 * Fix first mouse event being skipped due to reading garbage 2023-11-03 02:36:03 +02:00
TheBrokenRail
5bf7fae0b1 Fix DoesAssetExist 2023-11-02 13:31:24 -04:00
TheBrokenRail
82244c9402 Fix CMake Source Ordering 2023-11-02 13:19:13 -04:00
TheBrokenRail
e3fa758be6 Fix CI Build 2023-11-01 22:12:33 -04:00
TheBrokenRail
3b580eeed3 Reduce Number Of CMake Projects 2023-11-01 21:59:13 -04:00
TheBrokenRail
b7d8f767ed Fix First Mosue Event Being Skipped 2023-11-01 21:59:10 -04:00
TheBrokenRail
adc0b39603 Fix GitHub Actions 2023-11-01 21:53:23 -04:00
TheBrokenRail
9d4fb44a89 Add GitHub Actions 2023-11-01 21:53:23 -04:00
TheBrokenRail
100dd1db5d Some Code Clean Up 2023-11-01 21:53:23 -04:00
TheBrokenRail
8278e2993d More CMake Clean Up 2023-11-01 21:53:23 -04:00
TheBrokenRail
aa66f713ae Update Windows WASM Script 2023-11-01 21:53:23 -04:00
TheBrokenRail
6d3c1a1613 Improve GUI Scale On SDL 2023-11-01 21:53:21 -04:00
TheBrokenRail
bba3099b71 Clean Up CMake Build System 2023-11-01 21:48:41 -04:00
TheBrokenRail
4830a6fcab SDL Multitouch! 2023-11-01 20:54:56 -04:00
iProgramInCpp
4ff68d1f87 * Fix CMake build issues.
* Remove accidentally packed in binary.
2023-11-02 01:30:46 +02:00
iProgramInCpp
60b21356a1 Integrate touch related development. (#90)
* * Add BuildActionIntention crap

* * Set Client and World projects to use MP compilation

* asd

* * Use the new BuildActionIntention to break and place blocks.

* * Reverse engineer the IArea system.

* * Copy break logic from survival into creative conditionally

* * Reverse IBuildInput and MouseHandler
* Replace the new relative paths in the client project with $(MC_ROOT) again

* * Reverse Multitouch, MouseDevice

* * Reverse a bunch of auxiliary classes for input.

* * Use CustomInputHolder instead of holding inputs manually.

* * Reverse a whole BUNCH of things!

* * Add feedback textures to the gitignore.

* * D-pad now renders! Also loads of other work.

* * More Stuff

* * Finish touch control bug fixing.

* * Finalize work.

* * One last thing..

* * Add a "cramped" mode to the options screen and start menu.

* * Oh, forgot to do something
2023-11-02 00:49:11 +02:00
iProgramInCpp
98d6b4e5e8 * Add an option for block outlines instead of highlights.
Fixes #83.
2023-10-22 12:17:11 +03:00
TheBrokenRail
26b94524a9 Make ZLib A Submodule 2023-10-22 05:05:46 -04:00
iProgramInCpp
436d9d50f4 Update gles-compatibility-layer 2023-10-22 12:03:25 +03:00
iProgramInCpp
2a9e12f314 * Disable sponges.
They appear to be oddly unperformant for some reason. Need to look into it.
2023-10-22 11:57:52 +03:00
iProgramInCpp
6761e348ec * Remove PlatformDefinitions.hpp 2023-10-22 10:56:21 +03:00
iProgramInCpp
c503eccd9d * Move AppPlatform_emscripten to the sdl directory
As pointed out by #82, the behavior before this commit is unintuitive.
2023-10-22 10:52:38 +03:00
iProgramInCpp
7e0bd02111 * Remove source include from RakNet.
I don't remember why I added it.
But it breaks build on some platforms (not mine weirdly for some reason though?!), so I'll just remove it.
2023-10-22 10:17:37 +03:00
Brent
f12a3c1c61 Visual Studio Project Overhaul + Cleanup (#80)
* Visual Studio Project Overhaul + Cleanup
* SDL2 project for Windows
* Re-added game client icon to SDL2 code
* Renamed "AppPlatform_windows" to "AppPlatform_win32" (this is the name of the Windows API and is not representative of the architecture type)
* Renamed "LoggerWindows" to "LoggerWin32"
* Renamed "SoundSystemWindows to "SoundSystemDS" (DirectSound). This may be used for the 360, so it wouldn't really be Windows-specific then.
* Moved "ClientSideNetworkHandler" from "network" to "client/network". We don't need it being compiled for the server if the client's the only thing that needs it.
* I wonder if this still works on macOS...

* Bugfixes & Fixed for macOS

* Options::savePropertiesToFile Logging Bugfix

* Silence Winsock Deprecation Warnings in RakNet

* VS Project Improvements
- Replaced 50 billion relative paths with $(MC_ROOT)
- Added $(RAKNET_PATH) variable to override RakNet location
- Re-added gitignore for .vcxproj.user files
- Added debugging config to Directory.Builds.props
- Slimmed down project configurations for SDL2

* VS Project Config Bugfixes
- Fixed RakNet header path for additional includes

* RakNet Target for XCode

* XCode Project Config Fixes

* Packet logging

* Network VS Project Filter Fix

* Fix RakNet Packet ID Length
We previously didn't have consistency between old and new C++ regarding PacketType enum length. Now we do. This is required or else it completely breaks networking between the versions.

* Additional RakNet Error Handling

* Disable packet logging

* * Fix CMakeLists.txt

This reflects the relocation of ClientSideNetworkHandler.cpp.

* * Also add renderer/GL/GL.cpp to the CMakeLists.txt

* * Replace libpng with stb_image

* * Fix buggy water behavior.

* * Put the CMakeLists of the SDL project in debug mode

* Visual Studio 2010 Support

* * Change the SdlIoCallbacks from an array to a single member.

This fixes compilation of the sdl2 target on VS.

* * Fix missing _error label.

* Revert "* Fix missing _error label."

This reverts commit 99a057fc84049a16c864bd840fb439a008af5c74.

* Revert "* Replace libpng with stb_image"

* info_updateGame Tiles

---------

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
Co-authored-by: iProgramInCpp <iprogramincpp@gmail.com>
2023-10-22 10:08:59 +03:00
iProgramInCpp
8b0eb798cd * Fix a small issue with getQuickSlotItem 2023-10-07 09:53:46 +03:00
iProgramInCpp
4ada245c06 * Remove testing code. 2023-09-17 14:44:00 +03:00
iProgramInCpp
6cafc1b379 * Disable survival mode for now. 2023-09-17 12:47:25 +03:00
iProgramInCpp
350100ac48 Merge devel into master (#78)
* * Turn survival back on for now.

* * Add TP command.

* * Fix fall damage reset.

* * Mob hitting works.

I've disabled entity shading though. Will get back to it at some point, promise!

* * Knockback

* * Mobs now rotate when they die.

* * Fire fix
2023-09-17 12:47:09 +03:00
iProgramInCpp
e9b00e6ba1 * Fix duplication of world items when resizing. 2023-09-04 12:38:57 +03:00
iProgramInCpp
e44520c25c * Add note about the DirectX SDK. 2023-09-04 12:35:02 +03:00
iProgramInCpp
c67d8dc3c6 * Add DXSDK include and lib directories to the project.
DXSDK_DIR is a standard path that the DirectX SDK (June 2010) installer adds.
2023-09-04 12:23:31 +03:00
iProgramInCpp
22dc8e0338 * Fix bad options deref in sound engine init 2023-09-04 12:15:39 +03:00
Brent
23bc51f23b Xcode project fixes (#77)
* Compiles for Snow Leopard Again

* Fix Build on Xcode 14

* Fixed Xcode Universal Build

* Update Xcode Schemas

---------

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
2023-09-04 12:13:31 +03:00
Brent
3fa70ad387 vcxproj file fixes (#75)
* vcxproj file fixes
* Platform version is now 8.1
* Platform toolset is now v141_xp
* Fixed IncludePath not inheriting default paths
* Disabled ConformanceMode since it causes the "IUnknown" issue on v141_xp

* Update README.md

* Update README.md
* Includes screenshots

* Update README.md

---------

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
2023-09-04 12:11:56 +03:00
Brent
2e55f99a54 Options Logic Cleanup (#71)
* Output/Logging Overhaul
* Added StandardOut class
* Renamed LOGX macros to LOG_X
* Removed LogMsg macros in favor of LOG_X
* Added console window for debug Windows builds

* Options Refactor
* Moved options loading code from AppPlatform classes to Options class
* Added AppPlatform::singleton()
* Minecraft::m_options is now only accessible via Minecraft::getOptions() (as it should be)
* Making this work with SDL2 next

* Options Cleanup for SDL2

* Added AppPlatform::hasFileSystemAccess()
* Options won't try to load if hasFileSystemAccess returns false. Emscripten build will be happy.

---------

Co-authored-by: Brent Da Mage <BrentDaMage@users.noreply.github.com>
2023-09-04 12:11:36 +03:00
iProgramInCpp
cd4c469571 * Move the loggers into the proper filters 2023-08-28 22:04:47 +03:00