diff --git a/Minecraft.Client/Common/Consoles_App.h b/Minecraft.Client/Common/Consoles_App.h index 30e05aab9..3c135910c 100644 --- a/Minecraft.Client/Common/Consoles_App.h +++ b/Minecraft.Client/Common/Consoles_App.h @@ -6,17 +6,11 @@ // using namespace std; #include "Source Files/Audio/Consoles_SoundEngine.h" -#if !defined(__linux__) -#include -#endif #include "Source Files/Tutorial/TutorialEnum.h" #include "Source Files/UI/All Platforms/UIStructs.h" #include "../../Minecraft.World/net/minecraft/network/packet/DisconnectPacket.h" -#if !defined(__linux__) -#include -#endif #include "Source Files/Localisation/StringTable.h" #include "Source Files/DLC/DLCManager.h" diff --git a/Minecraft.Client/Common/Source Files/Network/NetworkPlayerQNet.cpp b/Minecraft.Client/Common/Source Files/Network/NetworkPlayerQNet.cpp new file mode 100644 index 000000000..91bd1ef0c --- /dev/null +++ b/Minecraft.Client/Common/Source Files/Network/NetworkPlayerQNet.cpp @@ -0,0 +1,108 @@ +#include "NetworkPlayerQNet.h" + +NetworkPlayerQNet::NetworkPlayerQNet(IQNetPlayer* qnetPlayer) { + m_qnetPlayer = qnetPlayer; + m_pSocket = nullptr; +} + +unsigned char NetworkPlayerQNet::GetSmallId() { + return m_qnetPlayer->GetSmallId(); +} + +void NetworkPlayerQNet::SendData(INetworkPlayer* player, const void* pvData, + int dataSize, bool lowPriority, bool ack) { + uint32_t flags; + flags = QNET_SENDDATA_RELIABLE | QNET_SENDDATA_SEQUENTIAL; + if (lowPriority) + flags |= QNET_SENDDATA_LOW_PRIORITY | QNET_SENDDATA_SECONDARY; + m_qnetPlayer->SendData( + static_cast(player)->m_qnetPlayer, pvData, dataSize, + flags); +} + +int NetworkPlayerQNet::GetOutstandingAckCount() { return 0; } + +bool NetworkPlayerQNet::IsSameSystem(INetworkPlayer* player) { + return (m_qnetPlayer->IsSameSystem( + static_cast(player)->m_qnetPlayer) == true); +} + +int NetworkPlayerQNet::GetSendQueueSizeBytes(INetworkPlayer* player, + bool lowPriority) { + uint32_t flags = QNET_GETSENDQUEUESIZE_BYTES; + if (lowPriority) flags |= QNET_GETSENDQUEUESIZE_SECONDARY_TYPE; + return m_qnetPlayer->GetSendQueueSize( + player ? static_cast(player)->m_qnetPlayer + : nullptr, + flags); +} + +int NetworkPlayerQNet::GetSendQueueSizeMessages(INetworkPlayer* player, + bool lowPriority) { + uint32_t flags = QNET_GETSENDQUEUESIZE_MESSAGES; + if (lowPriority) flags |= QNET_GETSENDQUEUESIZE_SECONDARY_TYPE; + return m_qnetPlayer->GetSendQueueSize( + player ? static_cast(player)->m_qnetPlayer + : nullptr, + flags); +} + +int NetworkPlayerQNet::GetCurrentRtt() { return m_qnetPlayer->GetCurrentRtt(); } + +bool NetworkPlayerQNet::IsHost() { return (m_qnetPlayer->IsHost() == true); } + +bool NetworkPlayerQNet::IsGuest() { return (m_qnetPlayer->IsGuest() == true); } + +bool NetworkPlayerQNet::IsLocal() { return (m_qnetPlayer->IsLocal() == true); } + +int NetworkPlayerQNet::GetSessionIndex() { + return m_qnetPlayer->GetSessionIndex(); +} + +bool NetworkPlayerQNet::IsTalking() { + return (m_qnetPlayer->IsTalking() == true); +} + +bool NetworkPlayerQNet::IsMutedByLocalUser(int userIndex) { + return (m_qnetPlayer->IsMutedByLocalUser(userIndex) == true); +} + +bool NetworkPlayerQNet::HasVoice() { + return (m_qnetPlayer->HasVoice() == true); +} + +bool NetworkPlayerQNet::HasCamera() { + return (m_qnetPlayer->HasCamera() == true); +} + +int NetworkPlayerQNet::GetUserIndex() { return m_qnetPlayer->GetUserIndex(); } + +void NetworkPlayerQNet::SetSocket(Socket* pSocket) { m_pSocket = pSocket; } + +Socket* NetworkPlayerQNet::GetSocket() { return m_pSocket; } + +PlayerUID NetworkPlayerQNet::GetUID() { return m_qnetPlayer->GetXuid(); } + +const wchar_t* NetworkPlayerQNet::GetOnlineName() { + return m_qnetPlayer->GetGamertag(); +} + +std::wstring NetworkPlayerQNet::GetDisplayName() { + return m_qnetPlayer->GetGamertag(); +} + +IQNetPlayer* NetworkPlayerQNet::GetQNetPlayer() { return m_qnetPlayer; } + +void NetworkPlayerQNet::SentChunkPacket() { + m_lastChunkPacketTime = System::currentTimeMillis(); +} + +int NetworkPlayerQNet::GetTimeSinceLastChunkPacket_ms() { + // If we haven't ever sent a packet, return maximum + if (m_lastChunkPacketTime == 0) { + return INT_MAX; + } + + const int64_t currentTime = System::currentTimeMillis(); + return static_cast(currentTime - m_lastChunkPacketTime); +} \ No newline at end of file diff --git a/Minecraft.Client/Common/Source Files/Network/NetworkPlayerQNet.h b/Minecraft.Client/Common/Source Files/Network/NetworkPlayerQNet.h new file mode 100644 index 000000000..faf7ba653 --- /dev/null +++ b/Minecraft.Client/Common/Source Files/Network/NetworkPlayerQNet.h @@ -0,0 +1,46 @@ +#pragma once + +#include "NetworkPlayerInterface.h" + +// This is an implementation of the INetworkPlayer interface for the supported +// QNet-backed path. It +// effectively wraps the IQNetPlayer class in a non-platform-specific way. It is +// managed by PlatformNetworkManagerStub. + +class NetworkPlayerQNet : public INetworkPlayer { +public: + // Common player interface + NetworkPlayerQNet(IQNetPlayer* qnetPlayer); + virtual unsigned char GetSmallId(); + virtual void SendData(INetworkPlayer* player, const void* pvData, + int dataSize, bool lowPriority, bool ack); + virtual bool IsSameSystem(INetworkPlayer* player); + virtual int GetOutstandingAckCount(); + virtual int GetSendQueueSizeBytes(INetworkPlayer* player, bool lowPriority); + virtual int GetSendQueueSizeMessages(INetworkPlayer* player, + bool lowPriority); + virtual int GetCurrentRtt(); + virtual bool IsHost(); + virtual bool IsGuest(); + virtual bool IsLocal(); + virtual int GetSessionIndex(); + virtual bool IsTalking(); + virtual bool IsMutedByLocalUser(int userIndex); + virtual bool HasVoice(); + virtual bool HasCamera(); + virtual int GetUserIndex(); + virtual void SetSocket(Socket* pSocket); + virtual Socket* GetSocket(); + virtual const wchar_t* GetOnlineName(); + virtual std::wstring GetDisplayName(); + virtual PlayerUID GetUID(); + virtual void SentChunkPacket(); + virtual int GetTimeSinceLastChunkPacket_ms(); + + IQNetPlayer* GetQNetPlayer(); + +private: + IQNetPlayer* m_qnetPlayer; + Socket* m_pSocket; + int64_t m_lastChunkPacketTime; +}; \ No newline at end of file diff --git a/Minecraft.Client/Common/Source Files/Telemetry/TelemetryManager.h b/Minecraft.Client/Common/Source Files/Telemetry/TelemetryManager.h index 4381ab2ed..7ea569129 100644 --- a/Minecraft.Client/Common/Source Files/Telemetry/TelemetryManager.h +++ b/Minecraft.Client/Common/Source Files/Telemetry/TelemetryManager.h @@ -4,7 +4,7 @@ // SentientManager.h -> MinecraftTelemetry.h. Using the Windows64 path would // cause duplicate enum definitions. #if defined(__linux__) -#include "../../../Windows64/Source Files/Sentient/TelemetryEnum.h" +#include "../../../Linux/Sentient/TelemetryEnum.h" #else #include "../../../Windows64/Source Files/Sentient/TelemetryEnum.h" #endif diff --git a/Minecraft.Client/Header Files/stdafx.h b/Minecraft.Client/Header Files/stdafx.h index 8dde1a3d9..a9419b514 100644 --- a/Minecraft.Client/Header Files/stdafx.h +++ b/Minecraft.Client/Header Files/stdafx.h @@ -112,16 +112,14 @@ using namespace DirectX; #include "../Windows64/Iggy/gdraw/gdraw_d3d11.h" #include "../Windows64/Windows64_UIController.h" #else -// Linux build: keep the Linux runtime/controller path and use the supported -// Linux/Windows64 metadata headers only. #include "../Linux/Linux_App.h" -#include "../Windows64/Iggy/include/iggy.h" -#include "../Windows64/Source Files/Sentient/SentientTelemetryCommon.h" -#include "../Windows64/Source Files/Sentient/DynamicConfigurations.h" +#include "../Linux/Iggy/include/iggy.h" +#include "../Linux/Sentient/SentientTelemetryCommon.h" +#include "../Linux/Sentient/DynamicConfigurations.h" #include "Minecraft.spa.h" #include "../Common/Source Files/Audio/SoundEngine.h" #include "../Linux/Linux_UIController.h" -#include "../Windows64/Source Files/Social/SocialManager.h" +#include "../Linux/Social/SocialManager.h" #endif #include "../Common/Source Files/ConsoleGameMode.h" diff --git a/Minecraft.Client/Linux/Iggy/gdraw/gdraw.c b/Minecraft.Client/Linux/Iggy/gdraw/gdraw.c index 4670f4c67..61d5a12b6 100644 --- a/Minecraft.Client/Linux/Iggy/gdraw/gdraw.c +++ b/Minecraft.Client/Linux/Iggy/gdraw/gdraw.c @@ -1,8 +1,8 @@ #define GDRAW_ASSERTS -#include "../../../../Windows64/Iggy/include/iggy.h" -#include "../../../../Windows64/Iggy/include/gdraw.h" -#include "../../../../Windows64/Iggy/include/gdraw.h" +#include "gdraw.h" +#include "../../../Windows64/Iggy/include/gdraw.h" +#include "../../../Windows64/Iggy/include/gdraw.h" #include #include @@ -684,7 +684,7 @@ static void gdraw_FramebufferRenderbufferSafe(GLenum target, GLenum attachment, #define glFramebufferRenderbuffer_SAFE gdraw_FramebufferRenderbufferSafe #define glFramebufferRenderbuffer glFramebufferRenderbuffer_SAFE -#include "../../../../Windows64/Iggy/gdraw/gdraw_gl_shared.inl" +#include "../../../Windows64/Iggy/gdraw/gdraw_gl_shared.inl" #undef glVertexAttribPointer #define glVertexAttribPointer gdraw_real_vtxattrib diff --git a/Minecraft.Client/Linux/Iggy/gdraw/gdraw.h b/Minecraft.Client/Linux/Iggy/gdraw/gdraw.h index 9852143d8..8e0b3aa17 100644 --- a/Minecraft.Client/Linux/Iggy/gdraw/gdraw.h +++ b/Minecraft.Client/Linux/Iggy/gdraw/gdraw.h @@ -1,8 +1,8 @@ #ifndef __LINUX_IGGY_GDRAW_H__ #define __LINUX_IGGY_GDRAW_H__ -#include "../../../../Windows64/Iggy/include/gdraw.h" -#include "../../../../Windows64/Iggy/include/iggy.h" +#include "../../../Windows64/Iggy/include/gdraw.h" +#include "../../../Windows64/Iggy/include/iggy.h" #ifdef __cplusplus extern "C" { diff --git a/Minecraft.Client/Linux/Iggy/include/gdraw.h b/Minecraft.Client/Linux/Iggy/include/gdraw.h index 3e28fb560..d1c58dfe8 100644 --- a/Minecraft.Client/Linux/Iggy/include/gdraw.h +++ b/Minecraft.Client/Linux/Iggy/include/gdraw.h @@ -6,7 +6,7 @@ #ifndef __RAD_INCLUDE_GDRAW_H__ #define __RAD_INCLUDE_GDRAW_H__ -#include "../../../../Windows64/Miles Sound System/Include/rrcore.h" +#include "rrCore.h" #define IDOC diff --git a/Minecraft.Client/Linux/Iggy/include/iggy.h b/Minecraft.Client/Linux/Iggy/include/iggy.h index 5d43d46ac..691537e91 100644 --- a/Minecraft.Client/Linux/Iggy/include/iggy.h +++ b/Minecraft.Client/Linux/Iggy/include/iggy.h @@ -8,7 +8,7 @@ #define IggyVersion "1.2.30" #define IggyFlashVersion "9,1,2,30" -#include "../../../../Windows64/Miles Sound System/Include/rrcore.h" // base data types, macros +#include "rrCore.h" // base data types, macros RADDEFSTART diff --git a/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.cpp b/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.cpp index a71d37cd6..1a92a3c6f 100644 --- a/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.cpp +++ b/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.cpp @@ -1,4 +1,4 @@ -#include "../../../../Minecraft.World/Header Files/stdafx.h" +#include "../../../Minecraft.World/Header Files/stdafx.h" #include "LinuxLeaderboardManager.h" diff --git a/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.h b/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.h index 5aa7b1b2d..de78da3b0 100644 --- a/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.h +++ b/Minecraft.Client/Linux/Leaderboards/LinuxLeaderboardManager.h @@ -1,6 +1,6 @@ #pragma once -#include "../../../Common/Source Files/Leaderboards/LeaderboardManager.h" +#include "../../Common/Source Files/Leaderboards/LeaderboardManager.h" class LinuxLeaderboardManager : public LeaderboardManager { public: diff --git a/Minecraft.Client/Linux/Linux_App.cpp b/Minecraft.Client/Linux/Linux_App.cpp index 9065d6e48..0043be094 100644 --- a/Minecraft.Client/Linux/Linux_App.cpp +++ b/Minecraft.Client/Linux/Linux_App.cpp @@ -1,14 +1,14 @@ -#include "../../../Minecraft.World/Header Files/stdafx.h" -#include "../../Common/Consoles_App.h" -#include "../../net/minecraft/client/User.h" -#include "../../net/minecraft/client/Minecraft.h" -#include "../../net/minecraft/server/MinecraftServer.h" -#include "../../net/minecraft/server/PlayerList.h" -#include "../../net/minecraft/server/level/ServerPlayer.h" -#include "../../../Minecraft.World/net/minecraft/world/level/Level.h" -#include "../../../Minecraft.World/net/minecraft/world/level/LevelSettings.h" -#include "../../../Minecraft.World/net/minecraft/world/level/biome/BiomeSource.h" -#include "../../../Minecraft.World/net/minecraft/world/level/LevelType.h" +#include "../../Minecraft.World/Header Files/stdafx.h" +#include "../Common/Consoles_App.h" +#include "../net/minecraft/client/User.h" +#include "../net/minecraft/client/Minecraft.h" +#include "../net/minecraft/server/MinecraftServer.h" +#include "../net/minecraft/server/PlayerList.h" +#include "../net/minecraft/server/level/ServerPlayer.h" +#include "../../Minecraft.World/net/minecraft/world/level/Level.h" +#include "../../Minecraft.World/net/minecraft/world/level/LevelSettings.h" +#include "../../Minecraft.World/net/minecraft/world/level/biome/BiomeSource.h" +#include "../../Minecraft.World/net/minecraft/world/level/LevelType.h" #include "Linux_App.h" CConsoleMinecraftApp app; diff --git a/Minecraft.Client/Linux/Linux_Minecraft.cpp b/Minecraft.Client/Linux/Linux_Minecraft.cpp index 939bef0a5..1df57056c 100644 --- a/Minecraft.Client/Linux/Linux_Minecraft.cpp +++ b/Minecraft.Client/Linux/Linux_Minecraft.cpp @@ -38,36 +38,36 @@ static void sigsegv_handler(int sig) { _exit(139); } #endif -#include "../../Header Files/Minecraft.spa.h" -#include "../../net/minecraft/server/MinecraftServer.h" -#include "../../net/minecraft/client/player/LocalPlayer.h" -#include "../../../Minecraft.World/net/minecraft/world/item/ItemInstance.h" -#include "../../../Minecraft.World/net/minecraft/world/item/MapItem.h" -#include "../../../Minecraft.World/net/minecraft/world/item/crafting/Recipes.h" -#include "../../../Minecraft.World/net/minecraft/world/item/crafting/Recipy.h" -#include "../../../Minecraft.World/net/minecraft/locale/Language.h" -#include "../../../Minecraft.World/ConsoleHelpers/StringHelpers.h" -#include "../../../Minecraft.World/net/minecraft/world/phys/AABB.h" -#include "../../../Minecraft.World/net/minecraft/world/phys/Vec3.h" -#include "../../../Minecraft.World/net/minecraft/world/level/Level.h" -#include "../../../Minecraft.World/net/minecraft/world/level/tile/net.minecraft.world.level.tile.h" +#include "../Header Files/Minecraft.spa.h" +#include "../net/minecraft/server/MinecraftServer.h" +#include "../net/minecraft/client/player/LocalPlayer.h" +#include "../../Minecraft.World/net/minecraft/world/item/ItemInstance.h" +#include "../../Minecraft.World/net/minecraft/world/item/MapItem.h" +#include "../../Minecraft.World/net/minecraft/world/item/crafting/Recipes.h" +#include "../../Minecraft.World/net/minecraft/world/item/crafting/Recipy.h" +#include "../../Minecraft.World/net/minecraft/locale/Language.h" +#include "../../Minecraft.World/ConsoleHelpers/StringHelpers.h" +#include "../../Minecraft.World/net/minecraft/world/phys/AABB.h" +#include "../../Minecraft.World/net/minecraft/world/phys/Vec3.h" +#include "../../Minecraft.World/net/minecraft/world/level/Level.h" +#include "../../Minecraft.World/net/minecraft/world/level/tile/net.minecraft.world.level.tile.h" -#include "../../net/minecraft/client/multiplayer/ClientConnection.h" -#include "../../net/minecraft/client/User.h" -#include "../../../Minecraft.World/ConsoleJavaLibs/Socket.h" -#include "../../../Minecraft.World/ConsoleHelpers/ThreadName.h" -#include "../../net/minecraft/stats/StatsCounter.h" -#include "../../net/minecraft/client/multiplayer/ConnectScreen.h" +#include "../net/minecraft/client/multiplayer/ClientConnection.h" +#include "../net/minecraft/client/User.h" +#include "../../Minecraft.World/ConsoleJavaLibs/Socket.h" +#include "../../Minecraft.World/ConsoleHelpers/ThreadName.h" +#include "../net/minecraft/stats/StatsCounter.h" +#include "../net/minecraft/client/multiplayer/ConnectScreen.h" // #include "../../Windows64/Source Files/Social/SocialManager.h" // #include "../../Common/Source Files/Leaderboards/LeaderboardManager.h" // #include "../Common/XUI/XUI_Scene_Container.h" // #include "NetworkManager.h" -#include "../../net/minecraft/client/renderer/Tesselator.h" -#include "../../net/minecraft/client/Options.h" -#include "../../Windows64/Source Files/Sentient/SentientManager.h" -#include "../../net/minecraft/client/renderer/Textures.h" -#include "../../../Minecraft.World/Header Files/compression.h" -#include "../../../Minecraft.World/net/minecraft/world/level/chunk/storage/OldChunkStorage.h" +#include "../net/minecraft/client/renderer/Tesselator.h" +#include "../net/minecraft/client/Options.h" +#include "Sentient/SentientManager.h" +#include "../net/minecraft/client/renderer/Textures.h" +#include "../../Minecraft.World/Header Files/compression.h" +#include "../../Minecraft.World/net/minecraft/world/level/chunk/storage/OldChunkStorage.h" // #include "../Orbis/Leaderboards/OrbisLeaderboardManager.h" // #include "../Orbis/Network/Orbis_NPToolkit.h" diff --git a/Minecraft.Client/Linux/Linux_ShutdownManager.cpp b/Minecraft.Client/Linux/Linux_ShutdownManager.cpp index fc5405d7c..965b9c886 100644 --- a/Minecraft.Client/Linux/Linux_ShutdownManager.cpp +++ b/Minecraft.Client/Linux/Linux_ShutdownManager.cpp @@ -1,7 +1,7 @@ // Linux stub implementations for ShutdownManager // The PS3/PSVita versions have full implementations; on Linux these are no-ops. #include "../../../Minecraft.World/Header Files/stdafx.h" -#include "../../Common/ShutdownManager.h" +#include "../Common/ShutdownManager.h" void ShutdownManager::Initialise() {} void ShutdownManager::StartShutdown() {} diff --git a/Minecraft.Client/Linux/Linux_UIController.cpp b/Minecraft.Client/Linux/Linux_UIController.cpp index c56136a99..76c93d611 100644 --- a/Minecraft.Client/Linux/Linux_UIController.cpp +++ b/Minecraft.Client/Linux/Linux_UIController.cpp @@ -1,8 +1,8 @@ #include "../../../Minecraft.World/Header Files/stdafx.h" +// GDraw GL backend for Linux +#include "Iggy/gdraw/gdraw.h" #include "Linux_UIController.h" -// GDraw GL backend for Linux -#include "../../Windows64/Iggy/include/gdraw.h" ConsoleUIController ui; diff --git a/Minecraft.Client/Linux/Linux_UIController.h b/Minecraft.Client/Linux/Linux_UIController.h index 9e5037f04..fd606da5b 100644 --- a/Minecraft.Client/Linux/Linux_UIController.h +++ b/Minecraft.Client/Linux/Linux_UIController.h @@ -1,6 +1,6 @@ #pragma once -#include "../../Common/Source Files/UI/UIController.h" +#include "../Common/Source Files/UI/UIController.h" class ConsoleUIController : public UIController { public: diff --git a/Minecraft.Client/Linux/Sentient/MinecraftTelemetry.h b/Minecraft.Client/Linux/Sentient/MinecraftTelemetry.h index 9b85def6d..c5b92a321 100644 --- a/Minecraft.Client/Linux/Sentient/MinecraftTelemetry.h +++ b/Minecraft.Client/Linux/Sentient/MinecraftTelemetry.h @@ -1,4 +1,4 @@ #pragma once -#include "../../../Windows64/Source Files/Sentient/SentientTelemetryCommon.h" -#include "../../../Windows64/Source Files/Sentient/TelemetryEnum.h" -#include "../../../Windows64/Source Files/Sentient/SentientStats.h" \ No newline at end of file +#include "SentientTelemetryCommon.h" +#include "TelemetryEnum.h" +#include "SentientStats.h" \ No newline at end of file diff --git a/Minecraft.Client/Linux/Sentient/SentientManager.h b/Minecraft.Client/Linux/Sentient/SentientManager.h index 5b2a5f92c..8101745af 100644 --- a/Minecraft.Client/Linux/Sentient/SentientManager.h +++ b/Minecraft.Client/Linux/Sentient/SentientManager.h @@ -1,5 +1,5 @@ #pragma once -#include "../../../Windows64/Source Files/Sentient/MinecraftTelemetry.h" +#include "MinecraftTelemetry.h" class CSentientManager { public: diff --git a/Minecraft.Client/Linux/Stubs/iggy_stubs.h b/Minecraft.Client/Linux/Stubs/iggy_stubs.h index 6ba9dc3f0..fdd493302 100644 --- a/Minecraft.Client/Linux/Stubs/iggy_stubs.h +++ b/Minecraft.Client/Linux/Stubs/iggy_stubs.h @@ -3,7 +3,7 @@ #pragma once -#include "../../../Windows64/Iggy/include/iggy.h" +#include "../Iggy/include/iggy.h" #define STUBBED \ { \ diff --git a/Minecraft.Client/Linux/linux_game_stubs.cpp b/Minecraft.Client/Linux/linux_game_stubs.cpp index cb0a1c947..79eed1f2e 100644 --- a/Minecraft.Client/Linux/linux_game_stubs.cpp +++ b/Minecraft.Client/Linux/linux_game_stubs.cpp @@ -6,7 +6,7 @@ #include #include "Stubs/LinuxStubs.h" -#include "../../Common/Consoles_App.h" +#include "../Common/Consoles_App.h" void Display::update() {} diff --git a/Minecraft.Client/Source Files/Extrax64Stubs.cpp b/Minecraft.Client/Source Files/Extrax64Stubs.cpp index a7108d5f8..b503b66f8 100644 --- a/Minecraft.Client/Source Files/Extrax64Stubs.cpp +++ b/Minecraft.Client/Source Files/Extrax64Stubs.cpp @@ -11,7 +11,7 @@ // via #pragma once. Pull in SentientManager for CSentientManager class // declaration and StatsCounter; CSocialManager is provided as inline stubs via // Linux/Social/SocialManager.h. -#include "../Windows64/Source Files/Sentient/SentientManager.h" +#include "../Linux/Sentient/SentientManager.h" #include "../net/minecraft/stats/StatsCounter.h" #else #include "../net/minecraft/stats/StatsCounter.h" diff --git a/Minecraft.Client/meson.build b/Minecraft.Client/meson.build index fd6328b7b..3c961c18e 100644 --- a/Minecraft.Client/meson.build +++ b/Minecraft.Client/meson.build @@ -1,5 +1,7 @@ exclude_sources = [ - ' ! -path "*/Platform/*"', # added by platform_sources + ' ! -path "*/Common/*"', # added by platform_sources + ' ! -path "*/Linux/*"', # added by platform_sources + ' ! -path "*/Windows64/*"', # added by platform_sources ' ! -name "SurvivalMode.cpp"', ' ! -name "CreativeMode.cpp"', ' ! -name "GameMode.cpp"', @@ -16,28 +18,17 @@ client_sources = run_command( check: true, ).stdout().strip().split('\n') -# all sources in ./Platform (top-level files only) -platform_sources = run_command( - 'sh', - '-c', 'find "' - + meson.current_source_dir() / 'Platform' - + '" -maxdepth 1 \\( -name "*.cpp" -o -name "*.c" \\)', - check: true, -).stdout().strip().split('\n') - # some platform-specific sources that are for some stupid reason in Common exclude_platform_common_sources = [ - ' ! -path "*/Network/Sony/*"', - ' ! -path "*/XUI/*"', ' ! -name "SonyLeaderboardManager.cpp"', ' ! -name "UIScene_InGameSaveManagementMenu.cpp"', ] # all sources in in ./Platform/Common -platform_sources += run_command( +platform_sources = run_command( 'sh', '-c', 'find "' - + meson.current_source_dir() / 'Platform/Common' + + meson.current_source_dir() / 'Common' + '" \\( -name "*.cpp" -o -name "*.c" \\)' + ' '.join(exclude_platform_common_sources), check: true, @@ -48,7 +39,7 @@ if host_machine.system() == 'linux' platform_sources += run_command( 'sh', '-c', 'find "' - + meson.current_source_dir() / 'Platform/Linux' + + meson.current_source_dir() / 'Linux' + '" \\( -name "*.cpp" -o -name "*.c" \\) ', check: true, ).stdout().strip().split('\n') @@ -106,17 +97,18 @@ elif occlusion_mode == 'bfs' elif occlusion_mode == 'hardware' global_cpp_defs += ['-DOCCLUSION_MODE_HARDWARE', '-DUSE_OCCLUSION_CULLING'] endif + client = executable( 'Minecraft.Client', client_sources + platform_sources + localisation[1], - include_directories: include_directories('Platform', 'Platform/Linux/Iggy/include'), + include_directories: include_directories('Header Files'), dependencies: client_dependencies, cpp_args: global_cpp_args + global_cpp_defs + [ '-DUNICODE', '-D_UNICODE', - '-include', meson.current_source_dir() / 'Platform/stdafx.h', + '-include', meson.current_source_dir() / 'Header Files/stdafx.h', ], c_args: global_cpp_defs + ['-DUNICODE', '-D_UNICODE'], install: true, diff --git a/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileOriginal.cpp b/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileOriginal.cpp index dd2685999..6164282eb 100644 --- a/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileOriginal.cpp +++ b/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileOriginal.cpp @@ -8,7 +8,6 @@ #include "../../ConsoleJavaLibs/File.h" #include #include -#include #include "../../Header Files/compression.h" #include "../../../Minecraft.Client/net/minecraft/client/Minecraft.h" #include "../../../Minecraft.Client/net/minecraft/server/MinecraftServer.h" diff --git a/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileSplit.cpp b/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileSplit.cpp index de28bf1f7..cda3248a7 100644 --- a/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileSplit.cpp +++ b/Minecraft.World/ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFileSplit.cpp @@ -7,7 +7,6 @@ #include "ConsoleSaveFileSplit.h" #include "ConsoleSaveFileConverter.h" #include "../../ConsoleJavaLibs/File.h" -#include #include "../../Header Files/compression.h" #include "../../../Minecraft.Client/net/minecraft/client/Minecraft.h" #include "../../../Minecraft.Client/net/minecraft/server/MinecraftServer.h" diff --git a/Minecraft.World/Header Files/stdafx.h b/Minecraft.World/Header Files/stdafx.h index a56f2e4b1..dab761a9b 100644 --- a/Minecraft.World/Header Files/stdafx.h +++ b/Minecraft.World/Header Files/stdafx.h @@ -52,7 +52,7 @@ #include "../ConsoleJavaLibs/Random.h" #include "../net/minecraft/world/level/TilePos.h" #include "../net/minecraft/world/level/ChunkPos.h" -#include "compression.h" +#include "../Header Files/compression.h" #include "../ConsoleHelpers/PerformanceTimer.h" #ifdef _FINAL_BUILD @@ -102,9 +102,8 @@ void MemSect(int sect); #else // Use the Linux runtime path with supported metadata/config headers only. #include "../../Minecraft.Client/Linux/Linux_App.h" -#include "../../Minecraft.Client/Windows64/Source Files/Sentient/SentientTelemetryCommon.h" -#include "../../Minecraft.Client/Windows64/Source Files/Sentient/DynamicConfigurations.h" -#include "../../Minecraft.Client/Header Files/Minecraft.spa.h" +#include "../../Minecraft.Client/Linux/Sentient/SentientTelemetryCommon.h" +#include "../../Minecraft.Client/Linux/Sentient/DynamicConfigurations.h" #endif #include "../../Minecraft.Client/Common/Source Files/DLC/DLCSkinFile.h" diff --git a/Minecraft.World/Platform/stdafx.h b/Minecraft.World/Platform/stdafx.h deleted file mode 100644 index a56f2e4b1..000000000 --- a/Minecraft.World/Platform/stdafx.h +++ /dev/null @@ -1,116 +0,0 @@ -// stdafx.h : include file for standard system include files, -// or project specific include files that are used frequently, but -// are changed infrequently -// -#pragma once - -#ifdef _WINDOWS64 -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -#include -#include -#include -#include -#endif - -#ifdef __linux__ -#include -#include -#include -#include "../../Minecraft.Client/Linux/Stubs/LinuxStubs.h" -#else -#include -#include -#include -#include -#endif - -#include - -#include "../x64headers/extraX64.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include "../ConsoleHelpers/Definitions.h" -#include "../ConsoleJavaLibs/Class.h" -#include "../ConsoleJavaLibs/Exceptions.h" -#include "../net/minecraft/util/Mth.h" -#include "../ConsoleHelpers/StringHelpers.h" -#include "../ConsoleHelpers/ArrayWithLength.h" -#include "../ConsoleJavaLibs/Random.h" -#include "../net/minecraft/world/level/TilePos.h" -#include "../net/minecraft/world/level/ChunkPos.h" -#include "compression.h" -#include "../ConsoleHelpers/PerformanceTimer.h" - -#ifdef _FINAL_BUILD -#define printf BREAKTHECOMPILE -#define wprintf BREAKTHECOMPILE -#undef OutputDebugString -#define OutputDebugString BREAKTHECOMPILE -#define OutputDebugStringA BREAKTHECOMPILE -#define OutputDebugStringW BREAKTHECOMPILE -#endif - -void MemSect(int sect); - -#ifdef _WINDOWS64 -#include "../../Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Profile.h" -#include "../../Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Render.h" -#include "../../Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Storage.h" -#include "../../Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Input.h" -#else -#include "4J_Profile.h" -#include "4J_Render.h" -#include "4J_Storage.h" -#include "4J_Input.h" -#endif - -#include "../../Minecraft.Client/Common/Source Files/Network/GameNetworkManager.h" - -#include "../../Minecraft.Client/Common/Source Files/UI/All Platforms/UIEnums.h" -#include "../../Minecraft.Client/Common/App_Defines.h" -#include "../../Minecraft.Client/Common/App_enums.h" -#include "../../Minecraft.Client/Common/Source Files/Tutorial/TutorialEnum.h" -#include "../../Minecraft.Client/Common/App_structs.h" - -#include "../../Minecraft.Client/Common/Consoles_App.h" -#include "../../Minecraft.Client/Common/Minecraft_Macros.h" -#include "../../Minecraft.Client/Common/Source Files/Colours/ColourTable.h" - -#include "../../Minecraft.Client/Common/Source Files/BuildVer/BuildVer.h" - -// This is generated at build time via scripts/pack_loc.py -#include "strings.h" - -#ifdef _WINDOWS64 -#include "../../Minecraft.Client/Windows64/Windows64_App.h" -#include "../../Minecraft.Client/Windows64/Source Files/Sentient/SentientTelemetryCommon.h" -#include "../../Minecraft.Client/Windows64/Source Files/Sentient/MinecraftTelemetry.h" -#else -// Use the Linux runtime path with supported metadata/config headers only. -#include "../../Minecraft.Client/Linux/Linux_App.h" -#include "../../Minecraft.Client/Windows64/Source Files/Sentient/SentientTelemetryCommon.h" -#include "../../Minecraft.Client/Windows64/Source Files/Sentient/DynamicConfigurations.h" -#include "../../Minecraft.Client/Header Files/Minecraft.spa.h" -#endif - -#include "../../Minecraft.Client/Common/Source Files/DLC/DLCSkinFile.h" -#include "../../Minecraft.Client/Common/Source Files/Console_Awards_enum.h" -#include "../../Minecraft.Client/Common/Potion_Macros.h" -#include "../../Minecraft.Client/Common/Source Files/Console_Debug_enum.h" -#include "../../Minecraft.Client/Common/Source Files/GameRules/ConsoleGameRulesConstants.h" -#include "../../Minecraft.Client/Common/Source Files/GameRules/ConsoleGameRules.h" -#include "../../Minecraft.Client/Common/Source Files/Telemetry/TelemetryManager.h" diff --git a/Minecraft.World/meson.build b/Minecraft.World/meson.build index d1aabfb9a..41ede622f 100644 --- a/Minecraft.World/meson.build +++ b/Minecraft.World/meson.build @@ -10,7 +10,7 @@ exclude_sources = [ '! -name NbtSlotFile.cpp', '! -name ZonedChunkStorage.cpp', '! -name ZoneFile.cpp', - '! -name ZoneIO.cpp', + '! -name ZoneIo.cpp', '! -name LevelConflictException.cpp', ] @@ -32,7 +32,6 @@ simdutf_dep = dependency('simdutf', lib_world = static_library('Minecraft.World', world_sources, - include_directories : include_directories('Platform', 'Platform/x64headers'), dependencies : [ assets_localisation_dep, render_dep, @@ -41,8 +40,9 @@ lib_world = static_library('Minecraft.World', storage_dep, simdutf_dep, ], + include_directories : include_directories('Header Files'), cpp_args : global_cpp_args + global_cpp_defs + [ - '-include', 'Platform/stdafx.h', + '-include', 'Header Files/stdafx.h', ], ) @@ -52,5 +52,5 @@ crypto_dep = dependency('libcrypto') # for MD5 in Hasher.cpp on Linux world_dep = declare_dependency( link_with : lib_world, dependencies : [crypto_dep, zlib_dep], - include_directories : include_directories('Platform/x64headers'), + include_directories : include_directories('x64headers'), ) diff --git a/Minecraft.World/net/minecraft/world/item/PlanterTileItem.cpp b/Minecraft.World/net/minecraft/world/item/PlanterTileItem.cpp index 8c952562e..20a8a9f2d 100644 --- a/Minecraft.World/net/minecraft/world/item/PlanterTileItem.cpp +++ b/Minecraft.World/net/minecraft/world/item/PlanterTileItem.cpp @@ -6,16 +6,13 @@ #include "../../net.minecraft.h" #include "PlanterTileItem.h" #include "../../stats/GenericStats.h" -// 4J-PB - for the debug option of not removing items -#include -#include TilePlanterItem::TilePlanterItem(int id, Tile* tile) : Item(id) { this->tileId = tile->id; } bool TilePlanterItem::useOn(std::shared_ptr instance, - std::shared_ptr player, Level* level, int x, + std::shared_ptr player, Level* level, int x, int y, int z, int face, float clickX, float clickY, float clickZ, bool bTestUseOnOnly) { // 4J-PB - Adding a test only version to allow tooltips to be displayed diff --git a/Minecraft.World/net/minecraft/world/item/TileItem.cpp b/Minecraft.World/net/minecraft/world/item/TileItem.cpp index fc53e9595..9fc6d9935 100644 --- a/Minecraft.World/net/minecraft/world/item/TileItem.cpp +++ b/Minecraft.World/net/minecraft/world/item/TileItem.cpp @@ -12,10 +12,6 @@ #include "TileItem.h" #include "../../Facing.h" -// 4J-PB - for the debug option of not removing items -#include -#include - TileItem::TileItem(int id) : Item(id) { this->tileId = id + 256; itemIcon = nullptr; diff --git a/Minecraft.World/net/minecraft/world/level/Level.cpp b/Minecraft.World/net/minecraft/world/level/Level.cpp index 9e2cd3649..43ec9b41a 100644 --- a/Minecraft.World/net/minecraft/world/level/Level.cpp +++ b/Minecraft.World/net/minecraft/world/level/Level.cpp @@ -28,7 +28,6 @@ #include "../../../../ConsoleHelpers/ConsoleSaveFileIO/ConsoleSaveFile.h" #include -#include #include "../../Minecraft.Client/net/minecraft/client/Minecraft.h" #include "../../Minecraft.Client/net/minecraft/client/renderer/LevelRenderer.h" #include "../../../../Header Files/SoundTypes.h" diff --git a/Minecraft.World/net/minecraft/world/level/tile/entity/SignTileEntity.cpp b/Minecraft.World/net/minecraft/world/level/tile/entity/SignTileEntity.cpp index d97921c1c..a0db1dd8d 100644 --- a/Minecraft.World/net/minecraft/world/level/tile/entity/SignTileEntity.cpp +++ b/Minecraft.World/net/minecraft/world/level/tile/entity/SignTileEntity.cpp @@ -8,7 +8,6 @@ #include "../../../phys/net.minecraft.world.phys.h" #include "../../../../network/packet/net.minecraft.network.packet.h" #include "SignTileEntity.h" -#include #include "../../../Minecraft.Client/net/minecraft/client/multiplayer/ClientConnection.h" #include "../../../Minecraft.Client/net/minecraft/client/Minecraft.h" #include "../../../Minecraft.Client/net/minecraft/server/level/ServerLevel.h"