#include #include #include #include #include #include #include #include "misc-internal.h" #include // Read Asset File static AppPlatform_readAssetFile_return_value AppPlatform_readAssetFile_injection(__attribute__((unused)) AppPlatform *app_platform, std::string const& path) { // Open File std::ifstream stream("data/" + path, std::ios_base::binary | std::ios_base::ate); if (!stream) { // Does Not Exist AppPlatform_readAssetFile_return_value ret; ret.length = -1; ret.data = NULL; return ret; } // Read File long len = stream.tellg(); char *buf = new char[len]; stream.seekg(0, stream.beg); stream.read(buf, len); stream.close(); // Return String AppPlatform_readAssetFile_return_value ret; ret.length = len; ret.data = strdup(buf); return ret; } // Add Missing Buttons To Pause Menu static void PauseScreen_init_injection(PauseScreen *screen) { // Call Original Method PauseScreen_init_non_virtual(screen); // Check If Server Minecraft *minecraft = screen->minecraft; RakNetInstance *rak_net_instance = minecraft->rak_net_instance; if (rak_net_instance != NULL) { if (rak_net_instance->vtable->isServer(rak_net_instance)) { // Add Button std::vector