mirror of
https://github.com/smartcmd/MinecraftConsoles.git
synced 2026-08-20 09:57:09 +00:00
Merge branch 'main' into dec-2014
# Conflicts: # Minecraft.Client/Common/Consoles_App.cpp # Minecraft.World/TickNextTickData.h
This commit is contained in:
commit
0d9104ac70
0
img.png → .github/IMG_8725.png
vendored
0
img.png → .github/IMG_8725.png
vendored
|
Before Width: | Height: | Size: 952 KiB After Width: | Height: | Size: 952 KiB |
72
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
72
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
|
|
@ -1,72 +0,0 @@
|
|||
name: "Bug Report"
|
||||
description: "Report a bug to help us improve MinecraftConsoles"
|
||||
title: "[Bug]: "
|
||||
labels: ["bug"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
**Thanks for taking the time to report a bug!**
|
||||
Please ensure you are using the latest version of the repository and have followed the build instructions in the README.
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Description
|
||||
description: "A clear and concise description of what the bug is."
|
||||
placeholder: "Describe what happened..."
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reproduction
|
||||
attributes:
|
||||
label: Steps to Reproduce
|
||||
description: "How can we reproduce this bug?"
|
||||
placeholder: |
|
||||
1. Open MinecraftConsoles.sln
|
||||
2. Set configuration to ...
|
||||
3. Run the project
|
||||
4. Do ...
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: expected-actual
|
||||
attributes:
|
||||
label: Expected vs. Actual Behavior
|
||||
description: "What did you expect to happen, and what actually happened?"
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: build-config
|
||||
attributes:
|
||||
label: Build Configuration
|
||||
description: "Which configuration were you using?"
|
||||
options:
|
||||
- Debug
|
||||
- Release
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: target-platform
|
||||
attributes:
|
||||
label: Target Platform
|
||||
description: "Which platform were you targeting?"
|
||||
options:
|
||||
- Windows64
|
||||
- Other (please specify in context)
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: environment
|
||||
attributes:
|
||||
label: Environment Details
|
||||
description: "e.g., Visual Studio version, Windows version, Hardware specs."
|
||||
placeholder: "Visual Studio 2022 v17.x, Windows 11..."
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
id: context
|
||||
attributes:
|
||||
label: Additional Context
|
||||
description: "Add any other context, screenshots, or logs here."
|
||||
validations:
|
||||
required: false
|
||||
1
.github/ISSUE_TEMPLATE/config.yml
vendored
1
.github/ISSUE_TEMPLATE/config.yml
vendored
|
|
@ -1 +0,0 @@
|
|||
blank_issues_enabled: false
|
||||
46
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
46
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
|
|
@ -1,46 +0,0 @@
|
|||
---
|
||||
name: Feature Request
|
||||
description: Suggest an idea to help us improve MinecraftConsoles
|
||||
title: "[Feature]: "
|
||||
labels:
|
||||
- "enhancement"
|
||||
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
**Thanks for taking the time to fill out this feature request report!**
|
||||
We kindly ask that you search to see if an issue [already exists](https://github.com/smartcmd/MinecraftConsoles/issues) for your feature.
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Description
|
||||
description: |
|
||||
A clear and concise description of the feature you're interested in.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Suggested Solution
|
||||
description: |
|
||||
Describe the solution you'd like. A clear and concise description of what you want to happen.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Alternatives
|
||||
description: |
|
||||
Describe alternatives you've considered.
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Additional Context
|
||||
description: |
|
||||
Add any other context about the problem here.
|
||||
validations:
|
||||
required: false
|
||||
31
.github/workflows/build.yml
vendored
Normal file
31
.github/workflows/build.yml
vendored
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
name: Build Minecraft Legacy Console Edition
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-2022
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
configuration: [Release, Debug]
|
||||
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup MSBuild
|
||||
uses: microsoft/setup-msbuild@v2
|
||||
|
||||
- name: Build Minecraft Legacy Console Edition
|
||||
run: |
|
||||
msbuild MinecraftConsoles.sln `
|
||||
/p:Configuration=${{ matrix.configuration }} `
|
||||
/p:Platform=Windows64 `
|
||||
/m
|
||||
|
||||
- name: Upload Release + Debug Artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: MinecraftClient-${{ matrix.configuration }}
|
||||
path: x64/${{ matrix.configuration }}
|
||||
35
.github/workflows/nightly.yml
vendored
Normal file
35
.github/workflows/nightly.yml
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
name: Nightly Release
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches:
|
||||
- 'main'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build Windows64
|
||||
runs-on: windows-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Setup msbuild
|
||||
uses: microsoft/setup-msbuild@v2
|
||||
|
||||
- name: Build
|
||||
run: MSBuild.exe MinecraftConsoles.sln /p:Configuration=Release /p:Platform="Windows64"
|
||||
|
||||
- name: Zip Build
|
||||
run: 7z a -r LCEWindows64.zip ./x64/Release/*
|
||||
|
||||
- name: Update release
|
||||
uses: andelf/nightly-release@main
|
||||
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
tag_name: nightly
|
||||
name: Nightly Release
|
||||
files: LCEWindows64.zip
|
||||
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -422,3 +422,5 @@ Minecraft.World/Debug/
|
|||
Minecraft.World/x64_Debug/
|
||||
Minecraft.World/Release/
|
||||
Minecraft.World/x64_Release/
|
||||
|
||||
build/*
|
||||
82
CMakeLists.txt
Normal file
82
CMakeLists.txt
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
cmake_minimum_required(VERSION 3.24)
|
||||
|
||||
project(MinecraftConsoles LANGUAGES C CXX)
|
||||
|
||||
if(NOT WIN32)
|
||||
message(FATAL_ERROR "This CMake build currently supports Windows only.")
|
||||
endif()
|
||||
|
||||
if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
message(FATAL_ERROR "Use a 64-bit generator/toolchain (x64).")
|
||||
endif()
|
||||
|
||||
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||
|
||||
include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/WorldSources.cmake")
|
||||
include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/ClientSources.cmake")
|
||||
|
||||
list(TRANSFORM MINECRAFT_WORLD_SOURCES PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.World/")
|
||||
list(TRANSFORM MINECRAFT_CLIENT_SOURCES PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/")
|
||||
|
||||
add_library(MinecraftWorld STATIC ${MINECRAFT_WORLD_SOURCES})
|
||||
target_include_directories(MinecraftWorld PRIVATE
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.World"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.World/x64headers"
|
||||
)
|
||||
target_compile_definitions(MinecraftWorld PRIVATE
|
||||
$<$<CONFIG:Debug>:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_DEBUG;_LIB;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64>
|
||||
$<$<NOT:$<CONFIG:Debug>>:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_LIB;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64>
|
||||
)
|
||||
if(MSVC)
|
||||
target_compile_options(MinecraftWorld PRIVATE /W3 /MP /EHsc)
|
||||
endif()
|
||||
|
||||
add_executable(MinecraftClient WIN32 ${MINECRAFT_CLIENT_SOURCES})
|
||||
target_include_directories(MinecraftClient PRIVATE
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/Iggy/include"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Xbox/Sentient/Include"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.World/x64headers"
|
||||
)
|
||||
target_compile_definitions(MinecraftClient PRIVATE
|
||||
$<$<CONFIG:Debug>:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_DEBUG;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64>
|
||||
$<$<NOT:$<CONFIG:Debug>>:_LARGE_WORLDS;_DEBUG_MENUS_ENABLED;_CRT_NON_CONFORMING_SWPRINTFS;_CRT_SECURE_NO_WARNINGS;_WINDOWS64>
|
||||
)
|
||||
if(MSVC)
|
||||
target_compile_options(MinecraftClient PRIVATE /W3 /MP /EHsc)
|
||||
endif()
|
||||
|
||||
set_target_properties(MinecraftClient PROPERTIES
|
||||
VS_DEBUGGER_WORKING_DIRECTORY "$<TARGET_FILE_DIR:MinecraftClient>"
|
||||
)
|
||||
|
||||
target_link_libraries(MinecraftClient PRIVATE
|
||||
MinecraftWorld
|
||||
d3d11
|
||||
XInput9_1_0
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/Iggy/lib/iggy_w64.lib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/Miles/lib/mss64.lib"
|
||||
$<$<CONFIG:Debug>:
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Input_d.lib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Storage_d.lib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Profile_d.lib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Render_PC_d.lib"
|
||||
>
|
||||
$<$<NOT:$<CONFIG:Debug>>:
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Input_r.lib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Storage_r.lib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Profile_r.lib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Minecraft.Client/Windows64/4JLibs/libs/4J_Render_PC.lib"
|
||||
>
|
||||
)
|
||||
|
||||
add_custom_command(TARGET MinecraftClient POST_BUILD
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-DPROJECT_SOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
-DOUTPUT_DIR="$<TARGET_FILE_DIR:MinecraftClient>"
|
||||
-DCONFIGURATION=$<CONFIG>
|
||||
-P "${CMAKE_CURRENT_SOURCE_DIR}/cmake/CopyAssets.cmake"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT MinecraftClient)
|
||||
45
Compile.md
Normal file
45
Compile.md
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
# Compile Instructions
|
||||
|
||||
## Visual Studio (`.sln`)
|
||||
|
||||
1. Open `MinecraftConsoles.sln` in Visual Studio 2022.
|
||||
2. Set `Minecraft.Client` as the Startup Project.
|
||||
3. Select configuration:
|
||||
- `Debug` (recommended), or
|
||||
- `Release`
|
||||
4. Select platform: `Windows64`.
|
||||
5. Build and run:
|
||||
- `Build > Build Solution` (or `Ctrl+Shift+B`)
|
||||
- Start debugging with `F5`.
|
||||
|
||||
## CMake (Windows x64)
|
||||
|
||||
Configure (use your VS Community instance explicitly):
|
||||
|
||||
```powershell
|
||||
cmake -S . -B build -G "Visual Studio 17 2022" -A x64 -DCMAKE_GENERATOR_INSTANCE="C:/Program Files/Microsoft Visual Studio/2022/Community"
|
||||
```
|
||||
|
||||
Build Debug:
|
||||
|
||||
```powershell
|
||||
cmake --build build --config Debug --target MinecraftClient
|
||||
```
|
||||
|
||||
Build Release:
|
||||
|
||||
```powershell
|
||||
cmake --build build --config Release --target MinecraftClient
|
||||
```
|
||||
|
||||
Run executable:
|
||||
|
||||
```powershell
|
||||
cd .\build\Debug
|
||||
.\MinecraftClient.exe
|
||||
```
|
||||
|
||||
Notes:
|
||||
- The CMake build is Windows-only and x64-only.
|
||||
- Post-build asset copy is automatic for `MinecraftClient` in CMake (Debug and Release variants).
|
||||
- The game relies on relative paths (for example `Common\Media\...`), so launching from the output directory is required.
|
||||
|
|
@ -56,7 +56,7 @@ void SoundEngine::playMusicTick() {};
|
|||
#else
|
||||
|
||||
#ifdef _WINDOWS64
|
||||
char SoundEngine::m_szSoundPath[]={"Windows64Media\\Sound\\"};
|
||||
char SoundEngine::m_szSoundPath[]={"Windows64\\Sound\\"};
|
||||
char SoundEngine::m_szMusicPath[]={"music\\"};
|
||||
char SoundEngine::m_szRedistName[]={"redist64"};
|
||||
#elif defined _DURANGO
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
#include "stdafx.h"
|
||||
#include "ConsoleGameMode.h"
|
||||
#include "..\Common\Tutorial\Tutorial.h"
|
||||
#include ".\Tutorial\Tutorial.h"
|
||||
|
||||
ConsoleGameMode::ConsoleGameMode(int iPad, Minecraft *minecraft, ClientConnection *connection)
|
||||
: TutorialMode(iPad, minecraft, connection)
|
||||
{
|
||||
tutorial = new Tutorial(iPad);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
#pragma once
|
||||
#include "..\Common\Tutorial\TutorialMode.h"
|
||||
#include ".\Tutorial\TutorialMode.h"
|
||||
|
||||
class ConsoleGameMode : public TutorialMode
|
||||
{
|
||||
|
|
@ -7,4 +7,4 @@ public:
|
|||
ConsoleGameMode(int iPad, Minecraft *minecraft, ClientConnection *connection);
|
||||
|
||||
virtual bool isImplemented() { return true; }
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -16,6 +16,14 @@
|
|||
#include "..\Minecraft.h"
|
||||
#include "..\ClientConnection.h"
|
||||
#include "..\MultiPlayerLocalPlayer.h"
|
||||
#include "..\LocalPlayer.h"
|
||||
#include "..\..\Minecraft.World\Player.h"
|
||||
#include "..\..\Minecraft.World\Inventory.h"
|
||||
#include "..\..\Minecraft.World\Level.h"
|
||||
#include "..\..\Minecraft.World\FurnaceTileEntity.h"
|
||||
#include "..\..\Minecraft.World\Container.h"
|
||||
#include "..\..\Minecraft.World\DispenserTileEntity.h"
|
||||
#include "..\..\Minecraft.World\SignTileEntity.h"
|
||||
#include "..\StatsCounter.h"
|
||||
#include "..\GameMode.h"
|
||||
#include "..\Xbox\Social\SocialManager.h"
|
||||
|
|
@ -30,7 +38,10 @@
|
|||
#include "GameRules\ConsoleGameRules.h"
|
||||
#include "GameRules\ConsoleSchematicFile.h"
|
||||
#include "..\User.h"
|
||||
#include "..\\EntityRenderDispatcher.h"
|
||||
#include "..\..\Minecraft.World\LevelData.h"
|
||||
#include "..\..\Minecraft.World\net.minecraft.world.entity.player.h"
|
||||
#include "..\EntityRenderDispatcher.h"
|
||||
#include "..\..\Minecraft.World\compression.h"
|
||||
#include "..\TexturePackRepository.h"
|
||||
#include "..\DLCTexturePack.h"
|
||||
#include "DLC\DLCPack.h"
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@ using namespace std;
|
|||
#include "Audio/Consoles_SoundEngine.h"
|
||||
|
||||
#include <xuiapp.h>
|
||||
#include "..\Common\Tutorial\TutorialEnum.h"
|
||||
#include ".\Tutorial\TutorialEnum.h"
|
||||
|
||||
#ifdef _XBOX
|
||||
#include "..\Common\XUI\XUI_Helper.h"
|
||||
#include "..\Common\XUI\XUI_HelpCredits.h"
|
||||
#include ".\XUI\XUI_Helper.h"
|
||||
#include ".\XUI\XUI_HelpCredits.h"
|
||||
#endif
|
||||
#include "UI\UIStructs.h"
|
||||
|
||||
|
|
@ -17,9 +17,9 @@ using namespace std;
|
|||
#include <xsocialpost.h>
|
||||
|
||||
#include "..\StringTable.h"
|
||||
#include "..\Common\DLC\DLCManager.h"
|
||||
#include "..\Common\GameRules\ConsoleGameRulesConstants.h"
|
||||
#include "..\Common\GameRules\GameRuleManager.h"
|
||||
#include ".\DLC\DLCManager.h"
|
||||
#include ".\GameRules\ConsoleGameRulesConstants.h"
|
||||
#include ".\GameRules\GameRuleManager.h"
|
||||
#include "..\SkinBox.h"
|
||||
#include "..\ArchiveFile.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
#include "TutorialConstraints.h"
|
||||
#include "ChoiceTask.h"
|
||||
#include "..\..\..\Minecraft.World\Material.h"
|
||||
#include "..\..\Windows64\KeyboardMouseInput.h"
|
||||
|
||||
ChoiceTask::ChoiceTask(Tutorial *tutorial, int descriptionId, int promptId /*= -1*/, bool requiresUserInput /*= false*/,
|
||||
int iConfirmMapping /*= 0*/, int iCancelMapping /*= 0*/,
|
||||
|
|
@ -51,11 +52,11 @@ bool ChoiceTask::isCompleted()
|
|||
// If the player is under water then allow all keypresses so they can jump out
|
||||
if( pMinecraft->localplayers[tutorial->getPad()]->isUnderLiquid(Material::water) ) return false;
|
||||
|
||||
if(!m_bConfirmMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iConfirmMapping) > 0 )
|
||||
if(!m_bConfirmMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iConfirmMapping) > 0 || KMInput.IsKeyDown(VK_RETURN))
|
||||
{
|
||||
m_bConfirmMappingComplete = true;
|
||||
}
|
||||
if(!m_bCancelMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iCancelMapping) > 0 )
|
||||
if(!m_bCancelMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iCancelMapping) > 0 || KMInput.IsKeyDown('B'))
|
||||
{
|
||||
m_bCancelMappingComplete = true;
|
||||
}
|
||||
|
|
@ -99,11 +100,11 @@ void ChoiceTask::handleUIInput(int iAction)
|
|||
{
|
||||
if(bHasBeenActivated && m_bShownForMinimumTime)
|
||||
{
|
||||
if( iAction == m_iConfirmMapping )
|
||||
if( iAction == m_iConfirmMapping)
|
||||
{
|
||||
m_bConfirmMappingComplete = true;
|
||||
}
|
||||
else if(iAction == m_iCancelMapping )
|
||||
else if(iAction == m_iCancelMapping)
|
||||
{
|
||||
m_bCancelMappingComplete = true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -360,8 +360,11 @@ void UIScene_MainMenu::handlePress(F64 controlId, F64 childId)
|
|||
signInReturnedFunc = &UIScene_MainMenu::UnlockFullGame_SignInReturned;
|
||||
break;
|
||||
case eControl_Exit:
|
||||
//CD - Added for audio
|
||||
ui.PlayUISFX(eSFX_Press);
|
||||
|
||||
if( ProfileManager.IsFullVersion() )
|
||||
{
|
||||
{
|
||||
UINT uiIDA[2];
|
||||
uiIDA[0]=IDS_CANCEL;
|
||||
uiIDA[1]=IDS_OK;
|
||||
|
|
|
|||
|
|
@ -1606,15 +1606,24 @@ xcopy /q /y /i /s /e $(ProjectDir)DurangoMedia\CU $(LayoutDir)Image\Loose\CU</C
|
|||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying game assets to output directory</Message>
|
||||
<Command>xcopy /q /y /i /s /e "$(ProjectDir)music" "$(OutDir)music"
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Windows64\GameHDD" "$(OutDir)Windows64\GameHDD"
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\Media" "$(OutDir)Common\Media"
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\res" "$(OutDir)Common\res"
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\Trial" "$(OutDir)Common\Trial"
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\Tutorial" "$(OutDir)Common\Tutorial"
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)DurangoMedia" "$(OutDir)Windows64Media"
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Windows64Media" "$(OutDir)Windows64Media"
|
||||
mkdir "$(OutDir)Windows64\GameHDD" 2>nul</Command>
|
||||
<Command>mkdir "$(OutDir)music" 2>nul
|
||||
mkdir "$(OutDir)Windows64\GameHDD" 2>nul
|
||||
mkdir "$(OutDir)Common\Media" 2>nul
|
||||
mkdir "$(OutDir)Common\res" 2>nul
|
||||
mkdir "$(OutDir)Common\Trial" 2>nul
|
||||
mkdir "$(OutDir)Common\Tutorial" 2>nul
|
||||
mkdir "$(OutDir)Windows64Media" 2>nul
|
||||
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)music" "$(OutDir)music" || exit /b 0
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Windows64\GameHDD" "$(OutDir)Windows64\GameHDD" || exit /b 0
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\Media" "$(OutDir)Common\Media" || exit /b 0
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\res" "$(OutDir)Common\res" || exit /b 0
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\Trial" "$(OutDir)Common\Trial" || exit /b 0
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Common\Tutorial" "$(OutDir)Common\Tutorial" || exit /b 0
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)DurangoMedia" "$(OutDir)Windows64Media" || exit /b 0
|
||||
xcopy /q /y /i /s /e "$(ProjectDir)Windows64Media" "$(OutDir)Windows64Media" || exit /b 0
|
||||
|
||||
exit /b 0</Command>
|
||||
</PostBuildEvent>
|
||||
<ImageXex>
|
||||
<ConfigurationFile>$(ProjectDir)xbox\xex-dev.xml</ConfigurationFile>
|
||||
|
|
|
|||
BIN
Minecraft.Client/Windows64/Sound/Minecraft.msscmp
Normal file
BIN
Minecraft.Client/Windows64/Sound/Minecraft.msscmp
Normal file
Binary file not shown.
|
|
@ -716,6 +716,7 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance,
|
|||
UNREFERENCED_PARAMETER(hPrevInstance);
|
||||
UNREFERENCED_PARAMETER(lpCmdLine);
|
||||
|
||||
/*
|
||||
// Declare DPI awareness so GetSystemMetrics returns physical pixels
|
||||
SetProcessDPIAware();
|
||||
g_iScreenWidth = GetSystemMetrics(SM_CXSCREEN);
|
||||
|
|
@ -726,6 +727,8 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance,
|
|||
sprintf(buf, "Screen resolution: %dx%d\n", g_iScreenWidth, g_iScreenHeight);
|
||||
OutputDebugStringA(buf);
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
if(lpCmdLine)
|
||||
{
|
||||
|
|
@ -1220,6 +1223,17 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance,
|
|||
ToggleFullscreen();
|
||||
}
|
||||
|
||||
// TAB opens host options menu. - Vvis :3
|
||||
if (KMInput.IsKeyPressed(VK_TAB))
|
||||
{
|
||||
if (Minecraft* pMinecraft = Minecraft::GetInstance())
|
||||
{
|
||||
{
|
||||
ui.NavigateToScene(0, eUIScene_InGameHostOptionsMenu);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
// has the game defined profile data been changed (by a profile load)
|
||||
if(app.uiGameDefinedDataChangedBitmask!=0)
|
||||
|
|
|
|||
|
|
@ -12,13 +12,13 @@
|
|||
|
||||
const wchar_t File::pathSeparator = L'\\';
|
||||
#ifdef _XBOX
|
||||
const wstring File::pathRoot = L"GAME:"; // Path root after pathSeparator has been removed
|
||||
const std::wstring File::pathRoot = L"GAME:"; // Path root after pathSeparator has been removed
|
||||
#else
|
||||
const wstring File::pathRoot = L""; // Path root after pathSeparator has been removed
|
||||
const std::wstring File::pathRoot = L""; // Path root after pathSeparator has been removed
|
||||
#endif
|
||||
|
||||
//Creates a new File instance from a parent abstract pathname and a child pathname string.
|
||||
File::File( const File &parent, const wstring& child )
|
||||
File::File( const File &parent, const std::wstring& child )
|
||||
{
|
||||
m_abstractPathName = parent.getPath() + pathSeparator + child;
|
||||
}
|
||||
|
|
@ -67,7 +67,7 @@ File::File( const wstring& pathname ) //: parent( NULL )
|
|||
*/
|
||||
}
|
||||
|
||||
File::File( const wstring& parent, const wstring& child ) //: m_abstractPathName( child )
|
||||
File::File( const std::wstring& parent, const std::wstring& child ) //: m_abstractPathName( child )
|
||||
{
|
||||
m_abstractPathName = pathRoot + pathSeparator + parent + pathSeparator + child;
|
||||
//this->parent = new File( parent );
|
||||
|
|
@ -149,9 +149,9 @@ bool File::mkdir() const
|
|||
//
|
||||
bool File::mkdirs() const
|
||||
{
|
||||
vector<wstring> path = stringSplit( m_abstractPathName, pathSeparator );
|
||||
std::vector<std::wstring> path = stringSplit( m_abstractPathName, pathSeparator );
|
||||
|
||||
wstring pathToHere = L"";
|
||||
std::wstring pathToHere = L"";
|
||||
AUTO_VAR(itEnd, path.end());
|
||||
for( AUTO_VAR(it, path.begin()); it != itEnd; it++ )
|
||||
{
|
||||
|
|
@ -237,7 +237,7 @@ bool File::renameTo(File dest)
|
|||
// 4J Stu - The wstringtofilename function returns a pointer to the same location in memory every time it is
|
||||
// called, therefore we were getting sourcePath and destPath having the same value. The solution here is to
|
||||
// make a copy of the sourcePath by storing it in a std::string
|
||||
string sourcePath = wstringtofilename(getPath());
|
||||
std::string sourcePath = wstringtofilename(getPath());
|
||||
const char *destPath = wstringtofilename(dest.getPath());
|
||||
#ifdef _DURANGO
|
||||
__debugbreak(); // TODO
|
||||
|
|
@ -272,9 +272,9 @@ bool File::renameTo(File dest)
|
|||
//An array of abstract pathnames denoting the files and directories in the directory denoted by this abstract pathname.
|
||||
//The array will be empty if the directory is empty. Returns null if this abstract pathname does not denote a directory,
|
||||
//or if an I/O error occurs.
|
||||
vector<File *> *File::listFiles() const
|
||||
std::vector<File *> *File::listFiles() const
|
||||
{
|
||||
vector<File *> *vOutput = new vector<File *>();
|
||||
std::vector<File *> *vOutput = new vector<File *>();
|
||||
|
||||
// TODO 4J Stu - Also need to check for I/O errors?
|
||||
if( !isDirectory() )
|
||||
|
|
@ -386,8 +386,8 @@ vector<File *> *File::listFiles() const
|
|||
FindClose( hFind);
|
||||
}
|
||||
#else
|
||||
char path[MAX_PATH];
|
||||
sprintf( path, "%s\\*", wstringtofilename( getPath() ) );
|
||||
char path[MAX_PATH] {};
|
||||
snprintf( path, MAX_PATH, "%s\\*", wstringtofilename( getPath() ) );
|
||||
HANDLE hFind = FindFirstFile( path, &wfd);
|
||||
if(hFind != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
|
|
@ -415,13 +415,13 @@ vector<File *> *File::listFiles() const
|
|||
//Returns:
|
||||
//An array of abstract pathnames denoting the files and directories in the directory denoted by this abstract pathname.
|
||||
//The array will be empty if the directory is empty. Returns null if this abstract pathname does not denote a directory, or if an I/O error occurs.
|
||||
vector<File *> *File::listFiles(FileFilter *filter) const
|
||||
std::vector<File *> *File::listFiles(FileFilter *filter) const
|
||||
{
|
||||
// TODO 4J Stu - Also need to check for I/O errors?
|
||||
if( !isDirectory() )
|
||||
return NULL;
|
||||
|
||||
vector<File *> *vOutput = new vector<File *>();
|
||||
std::vector<File *> *vOutput = new std::vector<File *>();
|
||||
|
||||
#ifdef __PS3__
|
||||
const char *lpFileName=wstringtofilename(getPath());
|
||||
|
|
@ -521,7 +521,7 @@ bool File::isDirectory() const
|
|||
//Returns the length of the file denoted by this abstract pathname. The return value is unspecified if this pathname denotes a directory.
|
||||
//Returns:
|
||||
//The length, in bytes, of the file denoted by this abstract pathname, or 0L if the file does not exist
|
||||
__int64 File::length()
|
||||
int64_t File::length()
|
||||
{
|
||||
#ifdef __PS3__
|
||||
//extern const char* getPS3HomePath();
|
||||
|
|
@ -624,7 +624,7 @@ __int64 File::length()
|
|||
//Returns:
|
||||
//A long value representing the time the file was last modified, measured in milliseconds since the epoch (00:00:00 GMT, January 1, 1970),
|
||||
//or 0L if the file does not exist or if an I/O error occurs
|
||||
__int64 File::lastModified()
|
||||
int64_t File::lastModified()
|
||||
{
|
||||
WIN32_FILE_ATTRIBUTE_DATA fileInfoBuffer;
|
||||
#ifdef _UNICODE
|
||||
|
|
@ -657,7 +657,7 @@ __int64 File::lastModified()
|
|||
}
|
||||
}
|
||||
|
||||
const wstring File::getPath() const
|
||||
const std::wstring File::getPath() const
|
||||
{
|
||||
/*
|
||||
wstring path;
|
||||
|
|
@ -672,7 +672,7 @@ const wstring File::getPath() const
|
|||
return m_abstractPathName;
|
||||
}
|
||||
|
||||
wstring File::getName() const
|
||||
std::wstring File::getName() const
|
||||
{
|
||||
unsigned int sep = (unsigned int )(m_abstractPathName.find_last_of( this->pathSeparator ));
|
||||
return m_abstractPathName.substr( sep + 1, m_abstractPathName.length() );
|
||||
|
|
@ -700,3 +700,9 @@ int File::hash_fnct(const File &k)
|
|||
|
||||
return (int) hashCode;
|
||||
}
|
||||
|
||||
int FileKeyHash::operator() (const File &k) const
|
||||
{ return File::hash_fnct(k); }
|
||||
|
||||
bool FileKeyEq::operator() (const File &x, const File &y) const
|
||||
{ return File::eq_test(x,y); }
|
||||
|
|
@ -1,5 +1,9 @@
|
|||
#pragma once
|
||||
using namespace std;
|
||||
|
||||
#include <cstdint>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
|
||||
// 4J Stu - Represents java standard library class
|
||||
|
||||
class FileFilter;
|
||||
|
|
@ -24,11 +28,11 @@ public:
|
|||
bool exists() const;
|
||||
bool isFile() const;
|
||||
bool renameTo(File dest);
|
||||
vector<File *> *listFiles() const; // Array
|
||||
vector<File *> *listFiles(FileFilter *filter) const;
|
||||
std::vector<File *> *listFiles() const; // Array
|
||||
std::vector<File *> *listFiles(FileFilter *filter) const;
|
||||
bool isDirectory() const;
|
||||
__int64 length();
|
||||
__int64 lastModified();
|
||||
int64_t length();
|
||||
int64_t lastModified();
|
||||
const wstring getPath() const; // 4J Jev: TODO
|
||||
wstring getName() const;
|
||||
|
||||
|
|
@ -43,14 +47,12 @@ private:
|
|||
//File(vector<wstring> *path);
|
||||
};
|
||||
|
||||
typedef struct
|
||||
struct FileKeyHash
|
||||
{
|
||||
int operator() (const File &k) const { return File::hash_fnct(k); }
|
||||
int operator() (const File &k) const;
|
||||
};
|
||||
|
||||
} FileKeyHash;
|
||||
|
||||
typedef struct
|
||||
struct FileKeyEq
|
||||
{
|
||||
bool operator() (const File &x, const File &y) const {return File::eq_test(x,y); }
|
||||
|
||||
} FileKeyEq;
|
||||
bool operator() (const File &x, const File &y) const;
|
||||
};
|
||||
|
|
@ -1,13 +1,15 @@
|
|||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
// Java doesn't have a default hash value for ints, however, the hashmap itself does some "supplemental" hashing, so
|
||||
// our ints actually get hashed by code as implemented below. std templates *do* have a standard hash for ints, but it
|
||||
// would appear to be a bit expensive so matching the java one for now anyway. This code implements the supplemental
|
||||
// hashing that happens in java so we can match what their maps are doing with ints.
|
||||
|
||||
typedef struct
|
||||
struct IntKeyHash
|
||||
{
|
||||
int operator() (const int &k) const
|
||||
inline int operator()(const int &k) const
|
||||
{
|
||||
int h = k;
|
||||
h += ~(h << 9);
|
||||
|
|
@ -16,62 +18,64 @@ typedef struct
|
|||
h ^= (((unsigned int)h) >> 10);
|
||||
return h;
|
||||
}
|
||||
};
|
||||
|
||||
} IntKeyHash;
|
||||
|
||||
typedef struct
|
||||
struct IntKeyEq
|
||||
{
|
||||
bool operator() (const int &x, const int &y) const { return x==y; }
|
||||
} IntKeyEq;
|
||||
|
||||
inline bool operator()(const int &x, const int &y) const
|
||||
{ return x==y; }
|
||||
};
|
||||
|
||||
// This hash functor is taken from the IntHashMap java class used by the game, so that we can use a standard std hashmap with this hash rather
|
||||
// than implement the class itself
|
||||
typedef struct
|
||||
struct IntKeyHash2
|
||||
{
|
||||
int operator() (const int &k) const
|
||||
inline int operator()(const int &k) const
|
||||
{
|
||||
unsigned int h = (unsigned int)k;
|
||||
unsigned int h = static_cast<unsigned int>(k);
|
||||
h ^= (h >> 20) ^ (h >> 12);
|
||||
return (int)(h ^ (h >> 7) ^ (h >> 4));
|
||||
return static_cast<int>(h ^ (h >> 7) ^ (h >> 4));
|
||||
}
|
||||
} IntKeyHash2;
|
||||
};
|
||||
|
||||
|
||||
// This hash functor is taken from the LongHashMap java class used by the game, so that we can use a standard std hashmap with this hash rather
|
||||
// than implement the class itself
|
||||
typedef struct
|
||||
struct LongKeyHash
|
||||
{
|
||||
int hash(const int &k) const
|
||||
inline int hash(const int &k) const
|
||||
{
|
||||
unsigned int h = (unsigned int)k;
|
||||
unsigned int h = static_cast<unsigned int>(k);
|
||||
h ^= (h >> 20) ^ (h >> 12);
|
||||
return (int)(h ^ (h >> 7) ^ (h >> 4));
|
||||
return static_cast<int>(h ^ (h >> 7) ^ (h >> 4));
|
||||
}
|
||||
|
||||
int operator() (const __int64 &k) const
|
||||
inline int operator()(const int64_t &k) const
|
||||
{
|
||||
return hash((int) ( k ^ (((__uint64)k) >> 32 )));
|
||||
return hash(static_cast<int>(k ^ ((static_cast<uint64_t>(k)) >> 32)));
|
||||
}
|
||||
} LongKeyHash;
|
||||
};
|
||||
|
||||
typedef struct
|
||||
struct LongKeyEq
|
||||
{
|
||||
bool operator() (const __int64 &x, const __int64 &y) const { return x==y; }
|
||||
} LongKeyEq;
|
||||
inline bool operator() (const int64_t &x, const int64_t &y) const
|
||||
{ return x == y; }
|
||||
};
|
||||
|
||||
typedef struct
|
||||
enum eINSTANCEOF;
|
||||
struct eINSTANCEOFKeyHash
|
||||
{
|
||||
int operator() (const eINSTANCEOF &k) const
|
||||
int operator()(const eINSTANCEOF &k) const
|
||||
{
|
||||
unsigned int h = (unsigned int)k;
|
||||
unsigned int h = static_cast<unsigned int>(k);
|
||||
h ^= (h >> 20) ^ (h >> 12);
|
||||
return (int)(h ^ (h >> 7) ^ (h >> 4));
|
||||
return static_cast<int>(h ^ (h >> 7) ^ (h >> 4));
|
||||
}
|
||||
} eINSTANCEOFKeyHash;
|
||||
};
|
||||
|
||||
typedef struct
|
||||
struct eINSTANCEOFKeyEq
|
||||
{
|
||||
bool operator() (const eINSTANCEOF &x, const eINSTANCEOF &y) const { return x==y; }
|
||||
} eINSTANCEOFKeyEq;
|
||||
inline bool operator()(const eINSTANCEOF &x, const eINSTANCEOF &y) const
|
||||
{ return x == y; }
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -542,13 +542,15 @@ private:
|
|||
#endif
|
||||
};
|
||||
|
||||
typedef struct
|
||||
struct PlayerKeyHash
|
||||
{
|
||||
int operator() (const shared_ptr<Player> k) const { return Player::hash_fnct (k); }
|
||||
inline int operator() (const shared_ptr<Player> k) const
|
||||
{ return Player::hash_fnct (k); }
|
||||
};
|
||||
|
||||
} PlayerKeyHash;
|
||||
|
||||
typedef struct
|
||||
struct PlayerKeyEq
|
||||
{
|
||||
bool operator() (const shared_ptr<Player> x, const shared_ptr<Player> y) const { return Player::eq_test (x, y); }
|
||||
} PlayerKeyEq;
|
||||
inline bool operator() (const shared_ptr<Player> x, const shared_ptr<Player> y) const
|
||||
{ return Player::eq_test (x, y); }
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#include "net.minecraft.world.level.tile.h"
|
||||
#include "TickNextTickData.h"
|
||||
|
||||
__int64 TickNextTickData::C = 0;
|
||||
int64_t TickNextTickData::C = 0;
|
||||
|
||||
TickNextTickData::TickNextTickData(int x, int y, int z, int tileId)
|
||||
{
|
||||
|
|
@ -34,7 +34,7 @@ int TickNextTickData::hashCode() const
|
|||
return (((x * 1024 * 1024) + (z * 1024) + y) * 256);
|
||||
}
|
||||
|
||||
TickNextTickData *TickNextTickData::delay(__int64 l)
|
||||
TickNextTickData *TickNextTickData::delay(int64_t l)
|
||||
{
|
||||
m_delay = l;
|
||||
return this;
|
||||
|
|
|
|||
|
|
@ -1,12 +1,14 @@
|
|||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
// 4J Stu - In Java TickNextTickData implements Comparable<TickNextTickData>
|
||||
// We don't need to do that as it is only as helper for the java sdk sorting operations
|
||||
|
||||
class TickNextTickData
|
||||
{
|
||||
private:
|
||||
static __int64 C;
|
||||
static int64_t C;
|
||||
|
||||
public:
|
||||
int x, y, z, tileId;
|
||||
|
|
@ -14,7 +16,7 @@ public:
|
|||
int priorityTilt;
|
||||
|
||||
private:
|
||||
__int64 c;
|
||||
int64_t c;
|
||||
|
||||
public:
|
||||
TickNextTickData(int x, int y, int z, int tileId);
|
||||
|
|
@ -31,19 +33,21 @@ public:
|
|||
bool operator==(const TickNextTickData &k);
|
||||
};
|
||||
|
||||
typedef struct
|
||||
struct TickNextTickDataKeyHash
|
||||
{
|
||||
int operator() (const TickNextTickData &k) const { return TickNextTickData::hash_fnct (k); }
|
||||
int operator() (const TickNextTickData &k) const
|
||||
{ return TickNextTickData::hash_fnct (k); }
|
||||
};
|
||||
|
||||
} TickNextTickDataKeyHash;
|
||||
|
||||
typedef struct
|
||||
struct TickNextTickDataKeyEq
|
||||
{
|
||||
bool operator() (const TickNextTickData &x, const TickNextTickData &y) const { return TickNextTickData::eq_test (x, y); }
|
||||
} TickNextTickDataKeyEq;
|
||||
bool operator() (const TickNextTickData &x, const TickNextTickData &y) const
|
||||
{ return TickNextTickData::eq_test (x, y); }
|
||||
};
|
||||
|
||||
typedef struct
|
||||
struct TickNextTickDataKeyCompare
|
||||
{
|
||||
bool operator() (const TickNextTickData &x, const TickNextTickData &y) const { return TickNextTickData::compare_fnct (x, y); }
|
||||
bool operator() (const TickNextTickData &x, const TickNextTickData &y) const
|
||||
{ return TickNextTickData::compare_fnct (x, y); }
|
||||
|
||||
} TickNextTickDataKeyCompare;
|
||||
};
|
||||
14
README.md
14
README.md
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
[](https://discord.gg/5CSzhc9t)
|
||||
|
||||

|
||||

|
||||
|
||||
## Introduction
|
||||
|
||||
|
|
@ -22,16 +22,19 @@ This project contains the source code of Minecraft Legacy Console Edition v1.3.0
|
|||
- **Movement**: `W` `A` `S` `D`
|
||||
- **Jump / Fly (Up)**: `Space`
|
||||
- **Sneak / Fly (Down)**: `Shift` (Hold)
|
||||
- **Sprint**: `Ctrl` (Hold)
|
||||
- **Sprint**: `Ctrl` (Hold) or Double-tap `W`
|
||||
- **Inventory**: `E`
|
||||
- **Drop Item**: `Q`
|
||||
- **Crafting**: `C`
|
||||
- **Toggle View (FPS/TPS)**: `F5`
|
||||
- **Fullscreen**: `F11`
|
||||
- **Pause Menu**: `Esc`
|
||||
- **Toggle Mouse Capture**: `Left Alt` (for debugging)
|
||||
- **Attack / Destroy**: `Left Click`
|
||||
- **Use / Place**: `Right Click`
|
||||
- **Select Item**: `Mouse Wheel` or keys `1` to `9`
|
||||
- **Accept or Decline Tutorial hints**: `Enter` to accept and `B` to decline
|
||||
- **Host Options**: `TAB`
|
||||
|
||||
## Build & Run
|
||||
|
||||
|
|
@ -41,6 +44,13 @@ This project contains the source code of Minecraft Legacy Console Edition v1.3.0
|
|||
4. Make sure `Minecraft.Client` is set as the Startup Project
|
||||
5. Set the build configuration to **Debug** (Release is also OK but has some bugs) and the target platform to **Windows64**, then build and run
|
||||
|
||||
### CMake (Windows x64)
|
||||
|
||||
```powershell
|
||||
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
|
||||
cmake --build build --config Debug --target MinecraftClient
|
||||
```
|
||||
|
||||
## Known Issues
|
||||
|
||||
- Builds for other platforms have not been tested and are most likely non-functional
|
||||
|
|
|
|||
453
cmake/ClientSources.cmake
Normal file
453
cmake/ClientSources.cmake
Normal file
|
|
@ -0,0 +1,453 @@
|
|||
set(MINECRAFT_CLIENT_SOURCES
|
||||
"AbstractTexturePack.cpp"
|
||||
"crt_compat.cpp"
|
||||
"AchievementPopup.cpp"
|
||||
"AchievementScreen.cpp"
|
||||
"AllowAllCuller.cpp"
|
||||
"ArchiveFile.cpp"
|
||||
"ArrowRenderer.cpp"
|
||||
"BlazeModel.cpp"
|
||||
"BlazeRenderer.cpp"
|
||||
"BoatModel.cpp"
|
||||
"BoatRenderer.cpp"
|
||||
"BookModel.cpp"
|
||||
"BreakingItemParticle.cpp"
|
||||
"BubbleParticle.cpp"
|
||||
"BufferedImage.cpp"
|
||||
"Button.cpp"
|
||||
"Camera.cpp"
|
||||
"ChatScreen.cpp"
|
||||
"ChestModel.cpp"
|
||||
"ChestRenderer.cpp"
|
||||
"ChickenModel.cpp"
|
||||
"ChickenRenderer.cpp"
|
||||
"Chunk.cpp"
|
||||
"ClientConnection.cpp"
|
||||
"ClientConstants.cpp"
|
||||
"ClockTexture.cpp"
|
||||
"Common/Audio/Consoles_SoundEngine.cpp"
|
||||
"Common/Audio/SoundEngine.cpp"
|
||||
"Common/Audio/SoundNames.cpp"
|
||||
"Common/Colours/ColourTable.cpp"
|
||||
"Common/Consoles_App.cpp"
|
||||
"Common/DLC/DLCAudioFile.cpp"
|
||||
"Common/DLC/DLCCapeFile.cpp"
|
||||
"Common/DLC/DLCColourTableFile.cpp"
|
||||
"Common/DLC/DLCFile.cpp"
|
||||
"Common/DLC/DLCGameRulesFile.cpp"
|
||||
"Common/DLC/DLCGameRulesHeader.cpp"
|
||||
"Common/DLC/DLCLocalisationFile.cpp"
|
||||
"Common/DLC/DLCManager.cpp"
|
||||
"Common/DLC/DLCPack.cpp"
|
||||
"Common/DLC/DLCSkinFile.cpp"
|
||||
"Common/DLC/DLCTextureFile.cpp"
|
||||
"Common/DLC/DLCUIDataFile.cpp"
|
||||
"Common/GameRules/AddEnchantmentRuleDefinition.cpp"
|
||||
"Common/GameRules/AddItemRuleDefinition.cpp"
|
||||
"Common/GameRules/ApplySchematicRuleDefinition.cpp"
|
||||
"Common/GameRules/BiomeOverride.cpp"
|
||||
"Common/GameRules/CollectItemRuleDefinition.cpp"
|
||||
"Common/GameRules/CompleteAllRuleDefinition.cpp"
|
||||
"Common/GameRules/CompoundGameRuleDefinition.cpp"
|
||||
"Common/GameRules/GameRule.cpp"
|
||||
"Common/GameRules/GameRuleDefinition.cpp"
|
||||
"Common/GameRules/GameRuleManager.cpp"
|
||||
"Common/GameRules/LevelGenerationOptions.cpp"
|
||||
"Common/GameRules/LevelGenerators.cpp"
|
||||
"Common/GameRules/LevelRules.cpp"
|
||||
"Common/GameRules/LevelRuleset.cpp"
|
||||
"Common/GameRules/NamedAreaRuleDefinition.cpp"
|
||||
"Common/GameRules/StartFeature.cpp"
|
||||
"Common/GameRules/UpdatePlayerRuleDefinition.cpp"
|
||||
"Common/GameRules/UseTileRuleDefinition.cpp"
|
||||
"Common/GameRules/ConsoleGenerateStructure.cpp"
|
||||
"Common/GameRules/ConsoleSchematicFile.cpp"
|
||||
"Common/GameRules/XboxStructureActionGenerateBox.cpp"
|
||||
"Common/GameRules/XboxStructureActionPlaceBlock.cpp"
|
||||
"Common/GameRules/XboxStructureActionPlaceContainer.cpp"
|
||||
"Common/GameRules/XboxStructureActionPlaceSpawner.cpp"
|
||||
"Common/Leaderboards/LeaderboardManager.cpp"
|
||||
"Common/Network/GameNetworkManager.cpp"
|
||||
"Common/Network/PlatformNetworkManagerStub.cpp"
|
||||
"Common/Telemetry/TelemetryManager.cpp"
|
||||
"Common/Trial/TrialMode.cpp"
|
||||
"Common/Tutorial/AreaConstraint.cpp"
|
||||
"Common/Tutorial/AreaHint.cpp"
|
||||
"Common/Tutorial/AreaTask.cpp"
|
||||
"Common/Tutorial/ChangeStateConstraint.cpp"
|
||||
"Common/Tutorial/ChoiceTask.cpp"
|
||||
"Common/Tutorial/CompleteUsingItemTask.cpp"
|
||||
"Common/Tutorial/ControllerTask.cpp"
|
||||
"Common/Tutorial/CraftTask.cpp"
|
||||
"Common/Tutorial/DiggerItemHint.cpp"
|
||||
"Common/Tutorial/EffectChangedTask.cpp"
|
||||
"Common/Tutorial/FullTutorial.cpp"
|
||||
"Common/Tutorial/FullTutorialActiveTask.cpp"
|
||||
"Common/Tutorial/FullTutorialMode.cpp"
|
||||
"Common/Tutorial/InfoTask.cpp"
|
||||
"Common/Tutorial/InputConstraint.cpp"
|
||||
"Common/Tutorial/LookAtEntityHint.cpp"
|
||||
"Common/Tutorial/LookAtTileHint.cpp"
|
||||
"Common/Tutorial/PickupTask.cpp"
|
||||
"Common/Tutorial/ProcedureCompoundTask.cpp"
|
||||
"Common/Tutorial/ProgressFlagTask.cpp"
|
||||
"Common/Tutorial/StatTask.cpp"
|
||||
"Common/Tutorial/TakeItemHint.cpp"
|
||||
"Common/Tutorial/Tutorial.cpp"
|
||||
"Common/Tutorial/TutorialHint.cpp"
|
||||
"Common/Tutorial/TutorialMessage.cpp"
|
||||
"Common/Tutorial/TutorialMode.cpp"
|
||||
"Common/Tutorial/TutorialTask.cpp"
|
||||
"Common/Tutorial/UseItemTask.cpp"
|
||||
"Common/Tutorial/UseTileTask.cpp"
|
||||
"Common/Tutorial/XuiCraftingTask.cpp"
|
||||
"Common/ConsoleGameMode.cpp"
|
||||
"Common/Console_Utils.cpp"
|
||||
"Common/UI/IUIScene_AbstractContainerMenu.cpp"
|
||||
"Common/UI/IUIScene_AnvilMenu.cpp"
|
||||
"Common/UI/IUIScene_BrewingMenu.cpp"
|
||||
"Common/UI/IUIScene_ContainerMenu.cpp"
|
||||
"Common/UI/IUIScene_CraftingMenu.cpp"
|
||||
"Common/UI/IUIScene_CreativeMenu.cpp"
|
||||
"Common/UI/IUIScene_DispenserMenu.cpp"
|
||||
"Common/UI/IUIScene_EnchantingMenu.cpp"
|
||||
"Common/UI/IUIScene_FurnaceMenu.cpp"
|
||||
"Common/UI/IUIScene_InventoryMenu.cpp"
|
||||
"Common/UI/IUIScene_PauseMenu.cpp"
|
||||
"Common/UI/IUIScene_StartGame.cpp"
|
||||
"Common/UI/IUIScene_TradingMenu.cpp"
|
||||
"Common/UI/UIComponent_DebugUIMarketingGuide.cpp"
|
||||
"Common/UI/UIScene_Keyboard.cpp"
|
||||
"Common/UI/UIComponent_MenuBackground.cpp"
|
||||
"Common/UI/UIComponent_PressStartToPlay.cpp"
|
||||
"Common/UI/UIControl_Base.cpp"
|
||||
"Common/UI/UIControl_BitmapIcon.cpp"
|
||||
"Common/UI/UIControl_DLCList.cpp"
|
||||
"Common/UI/UIControl_DynamicLabel.cpp"
|
||||
"Common/UI/UIControl_EnchantmentBook.cpp"
|
||||
"Common/UI/UIControl_EnchantmentButton.cpp"
|
||||
"Common/UI/UIControl_HTMLLabel.cpp"
|
||||
"Common/UI/UIControl_LeaderboardList.cpp"
|
||||
"Common/UI/UIControl_MinecraftPlayer.cpp"
|
||||
"Common/UI/UIControl_PlayerList.cpp"
|
||||
"Common/UI/UIControl_SaveList.cpp"
|
||||
"Common/UI/UIControl_SpaceIndicatorBar.cpp"
|
||||
"Common/UI/UIControl_TexturePackList.cpp"
|
||||
"Common/UI/UIFontData.cpp"
|
||||
"Common/UI/UIScene_AnvilMenu.cpp"
|
||||
"Common/UI/UIScene_ControlsMenu.cpp"
|
||||
"Common/UI/UIScene_Credits.cpp"
|
||||
"Common/UI/UIScene_DebugCreateSchematic.cpp"
|
||||
"Common/UI/UIScene_DebugSetCamera.cpp"
|
||||
"Common/UI/UIScene_DLCMainMenu.cpp"
|
||||
"Common/UI/UIScene_DLCOffersMenu.cpp"
|
||||
"Common/UI/UIScene_EndPoem.cpp"
|
||||
"Common/UI/UIScene_EULA.cpp"
|
||||
"Common/UI/UIScene_HowToPlay.cpp"
|
||||
"Common/UI/UIScene_InGameHostOptionsMenu.cpp"
|
||||
"Common/UI/UIScene_InGameInfoMenu.cpp"
|
||||
"Common/UI/UIScene_InGamePlayerOptionsMenu.cpp"
|
||||
"Common/UI/UIScene_LeaderboardsMenu.cpp"
|
||||
"Common/UI/UIScene_MessageBox.cpp"
|
||||
"Common/UI/UIBitmapFont.cpp"
|
||||
"Common/UI/UIComponent_Chat.cpp"
|
||||
"Common/UI/UIComponent_DebugUIConsole.cpp"
|
||||
"Common/UI/UIComponent_Logo.cpp"
|
||||
"Common/UI/UIComponent_Panorama.cpp"
|
||||
"Common/UI/UIComponent_Tooltips.cpp"
|
||||
"Common/UI/UIComponent_TutorialPopup.cpp"
|
||||
"Common/UI/UIControl.cpp"
|
||||
"Common/UI/UIController.cpp"
|
||||
"Common/UI/UIControl_Button.cpp"
|
||||
"Common/UI/UIControl_CheckBox.cpp"
|
||||
"Common/UI/UIControl_Cursor.cpp"
|
||||
"Common/UI/UIControl_Label.cpp"
|
||||
"Common/UI/UIControl_PlayerSkinPreview.cpp"
|
||||
"Common/UI/UIControl_Progress.cpp"
|
||||
"Common/UI/UIControl_ButtonList.cpp"
|
||||
"Common/UI/UIControl_Slider.cpp"
|
||||
"Common/UI/UIControl_SlotList.cpp"
|
||||
"Common/UI/UIControl_TextInput.cpp"
|
||||
"Common/UI/UIGroup.cpp"
|
||||
"Common/UI/UILayer.cpp"
|
||||
"Common/UI/UIScene.cpp"
|
||||
"Common/UI/UIScene_AbstractContainerMenu.cpp"
|
||||
"Common/UI/UIScene_BrewingStandMenu.cpp"
|
||||
"Common/UI/UIScene_ConnectingProgress.cpp"
|
||||
"Common/UI/UIScene_ContainerMenu.cpp"
|
||||
"Common/UI/UIScene_CraftingMenu.cpp"
|
||||
"Common/UI/UIScene_CreateWorldMenu.cpp"
|
||||
"Common/UI/UIScene_CreativeMenu.cpp"
|
||||
"Common/UI/UIScene_DeathMenu.cpp"
|
||||
"Common/UI/UIScene_DebugOptions.cpp"
|
||||
"Common/UI/UIScene_DebugOverlay.cpp"
|
||||
"Common/UI/UIScene_DispenserMenu.cpp"
|
||||
"Common/UI/UIScene_EnchantingMenu.cpp"
|
||||
"Common/UI/UIScene_FullscreenProgress.cpp"
|
||||
"Common/UI/UIScene_FurnaceMenu.cpp"
|
||||
"Common/UI/UIScene_HelpAndOptionsMenu.cpp"
|
||||
"Common/UI/UIScene_HowToPlayMenu.cpp"
|
||||
"Common/UI/UIScene_HUD.cpp"
|
||||
"Common/UI/UIScene_Intro.cpp"
|
||||
"Common/UI/UIScene_JoinMenu.cpp"
|
||||
"Common/UI/UIScene_LaunchMoreOptionsMenu.cpp"
|
||||
"Common/UI/UIScene_LoadMenu.cpp"
|
||||
"Common/UI/UIScene_LoadOrJoinMenu.cpp"
|
||||
"Common/UI/UIScene_MainMenu.cpp"
|
||||
"Common/UI/UIScene_InventoryMenu.cpp"
|
||||
"Common/UI/UIScene_PauseMenu.cpp"
|
||||
"Common/UI/UIScene_QuadrantSignin.cpp"
|
||||
"Common/UI/UIScene_ReinstallMenu.cpp"
|
||||
"Common/UI/UIScene_SaveMessage.cpp"
|
||||
"Common/UI/UIScene_SettingsAudioMenu.cpp"
|
||||
"Common/UI/UIScene_SettingsControlMenu.cpp"
|
||||
"Common/UI/UIScene_SettingsGraphicsMenu.cpp"
|
||||
"Common/UI/UIScene_SettingsMenu.cpp"
|
||||
"Common/UI/UIScene_SettingsOptionsMenu.cpp"
|
||||
"Common/UI/UIScene_SettingsUIMenu.cpp"
|
||||
"Common/UI/UIScene_SignEntryMenu.cpp"
|
||||
"Common/UI/UIScene_SkinSelectMenu.cpp"
|
||||
"Common/UI/UIScene_TeleportMenu.cpp"
|
||||
"Common/UI/UIScene_Timer.cpp"
|
||||
"Common/UI/UIScene_TradingMenu.cpp"
|
||||
"Common/UI/UIScene_TrialExitUpsell.cpp"
|
||||
"Common/UI/UITTFFont.cpp"
|
||||
"Common/zlib/adler32.c"
|
||||
"Common/zlib/compress.c"
|
||||
"Common/zlib/crc32.c"
|
||||
"Common/zlib/deflate.c"
|
||||
"Common/zlib/gzclose.c"
|
||||
"Common/zlib/gzlib.c"
|
||||
"Common/zlib/gzread.c"
|
||||
"Common/zlib/gzwrite.c"
|
||||
"Common/zlib/infback.c"
|
||||
"Common/zlib/inffast.c"
|
||||
"Common/zlib/inflate.c"
|
||||
"Common/zlib/inftrees.c"
|
||||
"Common/zlib/trees.c"
|
||||
"Common/zlib/uncompr.c"
|
||||
"Common/zlib/zutil.c"
|
||||
"CompassTexture.cpp"
|
||||
"ConfirmScreen.cpp"
|
||||
"ConsoleInput.cpp"
|
||||
"ControlsScreen.cpp"
|
||||
"CowModel.cpp"
|
||||
"CowRenderer.cpp"
|
||||
"CreateWorldScreen.cpp"
|
||||
"CreeperModel.cpp"
|
||||
"CreeperRenderer.cpp"
|
||||
"CritParticle.cpp"
|
||||
"CritParticle2.cpp"
|
||||
"Cube.cpp"
|
||||
"DeathScreen.cpp"
|
||||
"DefaultRenderer.cpp"
|
||||
"DefaultTexturePack.cpp"
|
||||
"DemoLevel.cpp"
|
||||
"DemoUser.cpp"
|
||||
"DerivedServerLevel.cpp"
|
||||
"DirtyChunkSorter.cpp"
|
||||
"DistanceChunkSorter.cpp"
|
||||
"DLCTexturePack.cpp"
|
||||
"DragonBreathParticle.cpp"
|
||||
"DragonModel.cpp"
|
||||
"DripParticle.cpp"
|
||||
"EchantmentTableParticle.cpp"
|
||||
"EditBox.cpp"
|
||||
"EnchantTableRenderer.cpp"
|
||||
"EnderChestRenderer.cpp"
|
||||
"EnderCrystalModel.cpp"
|
||||
"EnderCrystalRenderer.cpp"
|
||||
"EnderDragonRenderer.cpp"
|
||||
"EndermanModel.cpp"
|
||||
"EndermanRenderer.cpp"
|
||||
"EnderParticle.cpp"
|
||||
"EntityRenderDispatcher.cpp"
|
||||
"EntityRenderer.cpp"
|
||||
"EntityTileRenderer.cpp"
|
||||
"EntityTracker.cpp"
|
||||
"ErrorScreen.cpp"
|
||||
"ExperienceOrbRenderer.cpp"
|
||||
"ExplodeParticle.cpp"
|
||||
"Extrax64Stubs.cpp"
|
||||
"FallingTileRenderer.cpp"
|
||||
"FileTexturePack.cpp"
|
||||
"FireballRenderer.cpp"
|
||||
"FishingHookRenderer.cpp"
|
||||
"FlameParticle.cpp"
|
||||
"FolderTexturePack.cpp"
|
||||
"Font.cpp"
|
||||
"FootstepParticle.cpp"
|
||||
"Frustum.cpp"
|
||||
"FrustumCuller.cpp"
|
||||
"FrustumData.cpp"
|
||||
"GameRenderer.cpp"
|
||||
"GhastModel.cpp"
|
||||
"GhastRenderer.cpp"
|
||||
"GiantMobRenderer.cpp"
|
||||
"glWrapper.cpp"
|
||||
"Gui.cpp"
|
||||
"GuiComponent.cpp"
|
||||
"GuiMessage.cpp"
|
||||
"GuiParticle.cpp"
|
||||
"GuiParticles.cpp"
|
||||
"HeartParticle.cpp"
|
||||
"HttpTexture.cpp"
|
||||
"HugeExplosionParticle.cpp"
|
||||
"HugeExplosionSeedParticle.cpp"
|
||||
"HumanoidMobRenderer.cpp"
|
||||
"HumanoidModel.cpp"
|
||||
"InBedChatScreen.cpp"
|
||||
"Input.cpp"
|
||||
"ItemFrameRenderer.cpp"
|
||||
"ItemInHandRenderer.cpp"
|
||||
"ItemRenderer.cpp"
|
||||
"ItemSpriteRenderer.cpp"
|
||||
"JoinMultiplayerScreen.cpp"
|
||||
"KeyMapping.cpp"
|
||||
"LargeChestModel.cpp"
|
||||
"LavaParticle.cpp"
|
||||
"LavaSlimeModel.cpp"
|
||||
"LavaSlimeRenderer.cpp"
|
||||
"LevelRenderer.cpp"
|
||||
"Lighting.cpp"
|
||||
"LightningBoltRenderer.cpp"
|
||||
"MemoryTracker.cpp"
|
||||
"MemTexture.cpp"
|
||||
"MinecartModel.cpp"
|
||||
"MinecartRenderer.cpp"
|
||||
"Minecraft.cpp"
|
||||
"MinecraftServer.cpp"
|
||||
"Minimap.cpp"
|
||||
"MobRenderer.cpp"
|
||||
"MobSkinMemTextureProcessor.cpp"
|
||||
"MobSkinTextureProcessor.cpp"
|
||||
"MobSpawnerRenderer.cpp"
|
||||
"Model.cpp"
|
||||
"ModelPart.cpp"
|
||||
"MultiPlayerChunkCache.cpp"
|
||||
"MultiPlayerGameMode.cpp"
|
||||
"MultiPlayerLevel.cpp"
|
||||
"MultiPlayerLocalPlayer.cpp"
|
||||
"MushroomCowRenderer.cpp"
|
||||
"NameEntryScreen.cpp"
|
||||
"NoteParticle.cpp"
|
||||
"OffsettedRenderList.cpp"
|
||||
"Options.cpp"
|
||||
"OptionsScreen.cpp"
|
||||
"OzelotModel.cpp"
|
||||
"OzelotRenderer.cpp"
|
||||
"PaintingRenderer.cpp"
|
||||
"Particle.cpp"
|
||||
"ParticleEngine.cpp"
|
||||
"PauseScreen.cpp"
|
||||
"PendingConnection.cpp"
|
||||
"PigModel.cpp"
|
||||
"PigRenderer.cpp"
|
||||
"LocalPlayer.cpp"
|
||||
"PistonPieceRenderer.cpp"
|
||||
"PlayerChunkMap.cpp"
|
||||
"PlayerCloudParticle.cpp"
|
||||
"PlayerConnection.cpp"
|
||||
"PlayerList.cpp"
|
||||
"PreStitchedTextureMap.cpp"
|
||||
"ProgressRenderer.cpp"
|
||||
"PS3/PS3Extras/ShutdownManager.cpp"
|
||||
"Rect2i.cpp"
|
||||
"RemotePlayer.cpp"
|
||||
"PlayerRenderer.cpp"
|
||||
"Polygon.cpp"
|
||||
"NetherPortalParticle.cpp"
|
||||
"QuadrupedModel.cpp"
|
||||
"RedDustParticle.cpp"
|
||||
"RenameWorldScreen.cpp"
|
||||
"Screen.cpp"
|
||||
"ScreenSizeCalculator.cpp"
|
||||
"ScrolledSelectionList.cpp"
|
||||
"SelectWorldScreen.cpp"
|
||||
"ServerChunkCache.cpp"
|
||||
"ServerCommandDispatcher.cpp"
|
||||
"ServerConnection.cpp"
|
||||
"ServerPlayerGameMode.cpp"
|
||||
"ServerLevel.cpp"
|
||||
"ServerLevelListener.cpp"
|
||||
"ServerPlayer.cpp"
|
||||
"Settings.cpp"
|
||||
"SheepFurModel.cpp"
|
||||
"SheepModel.cpp"
|
||||
"SheepRenderer.cpp"
|
||||
"SignModel.cpp"
|
||||
"SignRenderer.cpp"
|
||||
"SilverfishModel.cpp"
|
||||
"SilverfishRenderer.cpp"
|
||||
"SimpleIcon.cpp"
|
||||
"SkeletonHeadModel.cpp"
|
||||
"SkeletonModel.cpp"
|
||||
"SkullTileRenderer.cpp"
|
||||
"SlideButton.cpp"
|
||||
"SlimeModel.cpp"
|
||||
"SlimeRenderer.cpp"
|
||||
"SmallButton.cpp"
|
||||
"SmokeParticle.cpp"
|
||||
"SnowManModel.cpp"
|
||||
"SnowManRenderer.cpp"
|
||||
"SnowShovelParticle.cpp"
|
||||
"SpellParticle.cpp"
|
||||
"SpiderModel.cpp"
|
||||
"SpiderRenderer.cpp"
|
||||
"SplashParticle.cpp"
|
||||
"SquidModel.cpp"
|
||||
"SquidRenderer.cpp"
|
||||
"StatsCounter.cpp"
|
||||
"StatsScreen.cpp"
|
||||
"StatsSyncher.cpp"
|
||||
"stdafx.cpp"
|
||||
"StitchedTexture.cpp"
|
||||
"Stitcher.cpp"
|
||||
"StitchSlot.cpp"
|
||||
"StringTable.cpp"
|
||||
"stubs.cpp"
|
||||
"SuspendedParticle.cpp"
|
||||
"SuspendedTownParticle.cpp"
|
||||
"TakeAnimationParticle.cpp"
|
||||
"TeleportCommand.cpp"
|
||||
"TerrainParticle.cpp"
|
||||
"Tesselator.cpp"
|
||||
"TexOffs.cpp"
|
||||
"Texture.cpp"
|
||||
"TextureHolder.cpp"
|
||||
"TextureManager.cpp"
|
||||
"TextureMap.cpp"
|
||||
"TexturePack.cpp"
|
||||
"TexturePackRepository.cpp"
|
||||
"Textures.cpp"
|
||||
"TheEndPortalRenderer.cpp"
|
||||
"TileEntityRenderDispatcher.cpp"
|
||||
"TileEntityRenderer.cpp"
|
||||
"TileRenderer.cpp"
|
||||
"Timer.cpp"
|
||||
"TitleScreen.cpp"
|
||||
"TntRenderer.cpp"
|
||||
"TrackedEntity.cpp"
|
||||
"User.cpp"
|
||||
"Vertex.cpp"
|
||||
"VideoSettingsScreen.cpp"
|
||||
"ViewportCuller.cpp"
|
||||
"VillagerGolemModel.cpp"
|
||||
"VillagerGolemRenderer.cpp"
|
||||
"VillagerModel.cpp"
|
||||
"VillagerRenderer.cpp"
|
||||
"VillagerZombieModel.cpp"
|
||||
"WaterDropParticle.cpp"
|
||||
"Windows64/Iggy/gdraw/gdraw_d3d11.cpp"
|
||||
"Windows64/Leaderboards/WindowsLeaderboardManager.cpp"
|
||||
"Windows64/Windows64_App.cpp"
|
||||
"Windows64/Windows64_Minecraft.cpp"
|
||||
"Windows64/KeyboardMouseInput.cpp"
|
||||
"Windows64/Windows64_UIController.cpp"
|
||||
"WolfModel.cpp"
|
||||
"WolfRenderer.cpp"
|
||||
"WstringLookup.cpp"
|
||||
"Xbox/Network/NetworkPlayerXbox.cpp"
|
||||
"ZombieModel.cpp"
|
||||
"ZombieRenderer.cpp"
|
||||
)
|
||||
83
cmake/CopyAssets.cmake
Normal file
83
cmake/CopyAssets.cmake
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
if(NOT DEFINED PROJECT_SOURCE_DIR OR NOT DEFINED OUTPUT_DIR OR NOT DEFINED CONFIGURATION)
|
||||
message(FATAL_ERROR "CopyAssets.cmake requires PROJECT_SOURCE_DIR, OUTPUT_DIR, and CONFIGURATION.")
|
||||
endif()
|
||||
|
||||
# Some generators may pass quoted values (e.g. "Debug"); normalize that.
|
||||
string(REPLACE "\"" "" PROJECT_SOURCE_DIR "${PROJECT_SOURCE_DIR}")
|
||||
string(REPLACE "\"" "" OUTPUT_DIR "${OUTPUT_DIR}")
|
||||
string(REPLACE "\"" "" CONFIGURATION "${CONFIGURATION}")
|
||||
|
||||
set(_project_dir "${PROJECT_SOURCE_DIR}/Minecraft.Client")
|
||||
|
||||
function(copy_tree_if_exists src_rel dst_rel)
|
||||
set(_src "${_project_dir}/${src_rel}")
|
||||
set(_dst "${OUTPUT_DIR}/${dst_rel}")
|
||||
if(EXISTS "${_src}")
|
||||
file(MAKE_DIRECTORY "${_dst}")
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E copy_directory "${_src}" "${_dst}")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(ensure_dir rel_path)
|
||||
file(MAKE_DIRECTORY "${OUTPUT_DIR}/${rel_path}")
|
||||
endfunction()
|
||||
|
||||
function(copy_file_if_exists src_rel dst_rel)
|
||||
set(_src "${PROJECT_SOURCE_DIR}/${src_rel}")
|
||||
set(_dst "${OUTPUT_DIR}/${dst_rel}")
|
||||
if(EXISTS "${_src}")
|
||||
get_filename_component(_dst_dir "${_dst}" DIRECTORY)
|
||||
file(MAKE_DIRECTORY "${_dst_dir}")
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${_src}" "${_dst}")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(copy_first_existing dst_rel)
|
||||
set(_copied FALSE)
|
||||
foreach(_candidate IN LISTS ARGN)
|
||||
if(EXISTS "${PROJECT_SOURCE_DIR}/${_candidate}")
|
||||
copy_file_if_exists("${_candidate}" "${dst_rel}")
|
||||
set(_copied TRUE)
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
if(NOT _copied)
|
||||
message(WARNING "Runtime file not found for ${dst_rel}. Checked: ${ARGN}")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
if(CONFIGURATION STREQUAL "Debug")
|
||||
copy_tree_if_exists("Durango/Sound" "Durango/Sound")
|
||||
copy_tree_if_exists("music" "music")
|
||||
copy_tree_if_exists("Windows64/GameHDD" "Windows64/GameHDD")
|
||||
copy_tree_if_exists("Common/Media" "Common/Media")
|
||||
copy_tree_if_exists("Common/res" "Common/res")
|
||||
copy_tree_if_exists("Common/Trial" "Common/Trial")
|
||||
copy_tree_if_exists("Common/Tutorial" "Common/Tutorial")
|
||||
else()
|
||||
copy_tree_if_exists("music" "music")
|
||||
copy_tree_if_exists("Windows64/GameHDD" "Windows64/GameHDD")
|
||||
copy_tree_if_exists("Common/Media" "Common/Media")
|
||||
copy_tree_if_exists("Common/res" "Common/res")
|
||||
copy_tree_if_exists("Common/Trial" "Common/Trial")
|
||||
copy_tree_if_exists("Common/Tutorial" "Common/Tutorial")
|
||||
copy_tree_if_exists("DurangoMedia" "Windows64Media")
|
||||
copy_tree_if_exists("Windows64Media" "Windows64Media")
|
||||
endif()
|
||||
|
||||
# Some runtime code asserts if this directory tree is missing.
|
||||
ensure_dir("Windows64/GameHDD")
|
||||
|
||||
# Keep legacy runtime redistributables in a familiar location.
|
||||
copy_tree_if_exists("Windows64/Miles/lib/redist64" "redist64")
|
||||
copy_tree_if_exists("Windows64/Iggy/lib/redist64" "redist64")
|
||||
|
||||
# Runtime DLLs required at launch.
|
||||
copy_first_existing("iggy_w64.dll"
|
||||
"Minecraft.Client/Windows64/Iggy/lib/redist64/iggy_w64.dll"
|
||||
"x64/${CONFIGURATION}/iggy_w64.dll"
|
||||
)
|
||||
copy_first_existing("mss64.dll"
|
||||
"Minecraft.Client/Windows64/Miles/lib/redist64/mss64.dll"
|
||||
"x64/${CONFIGURATION}/mss64.dll"
|
||||
)
|
||||
707
cmake/WorldSources.cmake
Normal file
707
cmake/WorldSources.cmake
Normal file
|
|
@ -0,0 +1,707 @@
|
|||
set(MINECRAFT_WORLD_SOURCES
|
||||
"AABB.cpp"
|
||||
"Abilities.cpp"
|
||||
"AbstractContainerMenu.cpp"
|
||||
"Achievement.cpp"
|
||||
"Achievements.cpp"
|
||||
"AddEntityPacket.cpp"
|
||||
"AddExperienceOrbPacket.cpp"
|
||||
"AddGlobalEntityPacket.cpp"
|
||||
"AddIslandLayer.cpp"
|
||||
"AddMobPacket.cpp"
|
||||
"AddMushroomIslandLayer.cpp"
|
||||
"AddPaintingPacket.cpp"
|
||||
"AddPlayerPacket.cpp"
|
||||
"AddSnowLayer.cpp"
|
||||
"AgableMob.cpp"
|
||||
"AirTile.cpp"
|
||||
"Animal.cpp"
|
||||
"AnimatePacket.cpp"
|
||||
"AnvilTile.cpp"
|
||||
"AnvilTileItem.cpp"
|
||||
"ArmorDyeRecipe.cpp"
|
||||
"ArmorItem.cpp"
|
||||
"ArmorRecipes.cpp"
|
||||
"ArmorSlot.cpp"
|
||||
"Arrow.cpp"
|
||||
"ArrowAttackGoal.cpp"
|
||||
"ArrowDamageEnchantment.cpp"
|
||||
"ArrowFireEnchantment.cpp"
|
||||
"ArrowInfiniteEnchantment.cpp"
|
||||
"ArrowKnockbackEnchantment.cpp"
|
||||
"AuxDataTileItem.cpp"
|
||||
"AvoidPlayerGoal.cpp"
|
||||
"AwardStatPacket.cpp"
|
||||
"BasicTree.cpp"
|
||||
"BasicTypeContainers.cpp"
|
||||
"BeachBiome.cpp"
|
||||
"BedItem.cpp"
|
||||
"BedTile.cpp"
|
||||
"BegGoal.cpp"
|
||||
"BinaryHeap.cpp"
|
||||
"Biome.cpp"
|
||||
"BiomeCache.cpp"
|
||||
"BiomeDecorator.cpp"
|
||||
"BiomeInitLayer.cpp"
|
||||
"BiomeOverrideLayer.cpp"
|
||||
"BiomeSource.cpp"
|
||||
"BirchFeature.cpp"
|
||||
"Blaze.cpp"
|
||||
"BlockDestructionProgress.cpp"
|
||||
"BlockGenMethods.cpp"
|
||||
"BlockRegionUpdatePacket.cpp"
|
||||
"BlockReplacements.cpp"
|
||||
"Boat.cpp"
|
||||
"BoatItem.cpp"
|
||||
"BodyControl.cpp"
|
||||
"BonusChestFeature.cpp"
|
||||
"BookItem.cpp"
|
||||
"BookshelfTile.cpp"
|
||||
"BossMob.cpp"
|
||||
"BossMobPart.cpp"
|
||||
"BottleItem.cpp"
|
||||
"BoundingBox.cpp"
|
||||
"BowItem.cpp"
|
||||
"BowlFoodItem.cpp"
|
||||
"BreakDoorGoal.cpp"
|
||||
"BreedGoal.cpp"
|
||||
"BrewingStandMenu.cpp"
|
||||
"BrewingStandTile.cpp"
|
||||
"BrewingStandTileEntity.cpp"
|
||||
"BucketItem.cpp"
|
||||
"Buffer.cpp"
|
||||
"BufferedOutputStream.cpp"
|
||||
"BufferedReader.cpp"
|
||||
"Bush.cpp"
|
||||
"ButtonTile.cpp"
|
||||
"ByteArrayInputStream.cpp"
|
||||
"ByteArrayOutputStream.cpp"
|
||||
"ByteBuffer.cpp"
|
||||
"CactusFeature.cpp"
|
||||
"CactusTile.cpp"
|
||||
"CakeTile.cpp"
|
||||
"CanyonFeature.cpp"
|
||||
"CarrotOnAStickItem.cpp"
|
||||
"CarrotTile.cpp"
|
||||
"CauldronTile.cpp"
|
||||
"CaveFeature.cpp"
|
||||
"CaveSpider.cpp"
|
||||
"ChatPacket.cpp"
|
||||
"ChestTile.cpp"
|
||||
"ChestTileEntity.cpp"
|
||||
"Chicken.cpp"
|
||||
"ChunkPos.cpp"
|
||||
"ChunkStorageProfileDecorator.cpp"
|
||||
"ChunkTilesUpdatePacket.cpp"
|
||||
"ChunkVisibilityAreaPacket.cpp"
|
||||
"ChunkVisibilityPacket.cpp"
|
||||
"Class.cpp"
|
||||
"ClayFeature.cpp"
|
||||
"ClayTile.cpp"
|
||||
"ClientCommandPacket.cpp"
|
||||
"ClientSideMerchant.cpp"
|
||||
"ClockItem.cpp"
|
||||
"ClothDyeRecipes.cpp"
|
||||
"ClothTile.cpp"
|
||||
"ClothTileItem.cpp"
|
||||
"CoalItem.cpp"
|
||||
"CocoaTile.cpp"
|
||||
"Color.cpp"
|
||||
"ColoredTileItem.cpp"
|
||||
"Command.cpp"
|
||||
"CommandDispatcher.cpp"
|
||||
"CommonStats.cpp"
|
||||
"CompassItem.cpp"
|
||||
"ComplexItem.cpp"
|
||||
"ComplexItemDataPacket.cpp"
|
||||
"CompoundContainer.cpp"
|
||||
"CompressedTileStorage.cpp"
|
||||
"compression.cpp"
|
||||
"Connection.cpp"
|
||||
"ConsoleSaveFileConverter.cpp"
|
||||
"ConsoleSaveFileOriginal.cpp"
|
||||
"Container.cpp"
|
||||
"ContainerAckPacket.cpp"
|
||||
"ContainerButtonClickPacket.cpp"
|
||||
"ContainerClickPacket.cpp"
|
||||
"ContainerClosePacket.cpp"
|
||||
"ContainerOpenPacket.cpp"
|
||||
"ContainerSetContentPacket.cpp"
|
||||
"ContainerSetDataPacket.cpp"
|
||||
"ContainerSetSlotPacket.cpp"
|
||||
"ControlledByPlayerGoal.cpp"
|
||||
"CoralTile.cpp"
|
||||
"Cow.cpp"
|
||||
"CraftingContainer.cpp"
|
||||
"CraftingMenu.cpp"
|
||||
"DefaultGameModeCommand.cpp"
|
||||
"EnchantItemCommand.cpp"
|
||||
"ExperienceCommand.cpp"
|
||||
"GameCommandPacket.cpp"
|
||||
"GameModeCommand.cpp"
|
||||
"GenericStats.cpp"
|
||||
"GiveItemCommand.cpp"
|
||||
"KillCommand.cpp"
|
||||
"PerformanceTimer.cpp"
|
||||
"TimeCommand.cpp"
|
||||
"ToggleDownfallCommand.cpp"
|
||||
"TradeItemPacket.cpp"
|
||||
"CraftItemPacket.cpp"
|
||||
"Creature.cpp"
|
||||
"Creeper.cpp"
|
||||
"CropTile.cpp"
|
||||
"CustomLevelSource.cpp"
|
||||
"CustomPayloadPacket.cpp"
|
||||
"DamageEnchantment.cpp"
|
||||
"DamageSource.cpp"
|
||||
"DataInputStream.cpp"
|
||||
"DataLayer.cpp"
|
||||
"DataOutputStream.cpp"
|
||||
"DeadBushFeature.cpp"
|
||||
"DeadBushTile.cpp"
|
||||
"DebugOptionsPacket.cpp"
|
||||
"DefendVillageTargetGoal.cpp"
|
||||
"DelayedRelease.cpp"
|
||||
"DerivedLevelData.cpp"
|
||||
"DesertBiome.cpp"
|
||||
"DesertWellFeature.cpp"
|
||||
"DetectorRailTile.cpp"
|
||||
"DigDurabilityEnchantment.cpp"
|
||||
"DiggerItem.cpp"
|
||||
"DiggingEnchantment.cpp"
|
||||
"Dimension.cpp"
|
||||
"DiodeTile.cpp"
|
||||
"Direction.cpp"
|
||||
"DirectionalTile.cpp"
|
||||
"DirectoryLevelStorage.cpp"
|
||||
"DirectoryLevelStorageSource.cpp"
|
||||
"DirtTile.cpp"
|
||||
"DisconnectPacket.cpp"
|
||||
"DispenserTile.cpp"
|
||||
"DispenserTileEntity.cpp"
|
||||
"DoorInfo.cpp"
|
||||
"DoorInteractGoal.cpp"
|
||||
"DragonFireball.cpp"
|
||||
"EatTileGoal.cpp"
|
||||
"EggTile.cpp"
|
||||
"EnchantedBookItem.cpp"
|
||||
"Enchantment.cpp"
|
||||
"EnchantmentCategory.cpp"
|
||||
"EnchantmentContainer.cpp"
|
||||
"EnchantmentHelper.cpp"
|
||||
"EnchantmentInstance.cpp"
|
||||
"EnchantmentMenu.cpp"
|
||||
"EnchantmentTableEntity.cpp"
|
||||
"EnchantmentTableTile.cpp"
|
||||
"EnderChestTile.cpp"
|
||||
"EnderChestTileEntity.cpp"
|
||||
"EnderEyeItem.cpp"
|
||||
"EnderpearlItem.cpp"
|
||||
"EndPodiumFeature.cpp"
|
||||
"ExperienceItem.cpp"
|
||||
"ExtremeHillsBiome.cpp"
|
||||
"Feature.cpp"
|
||||
"EnderCrystal.cpp"
|
||||
"EnderDragon.cpp"
|
||||
"EyeOfEnderSignal.cpp"
|
||||
"FireAspectEnchantment.cpp"
|
||||
"FireChargeItem.cpp"
|
||||
"FleeSunGoal.cpp"
|
||||
"FlippedIcon.cpp"
|
||||
"FloatGoal.cpp"
|
||||
"FlowerPotTile.cpp"
|
||||
"FollowOwnerGoal.cpp"
|
||||
"FollowParentGoal.cpp"
|
||||
"Goal.cpp"
|
||||
"GoalSelector.cpp"
|
||||
"GoldenAppleItem.cpp"
|
||||
"Golem.cpp"
|
||||
"GroundBushFeature.cpp"
|
||||
"GrowMushroomIslandLayer.cpp"
|
||||
"HalfSlabTile.cpp"
|
||||
"HangingEntity.cpp"
|
||||
"HangingEntityItem.cpp"
|
||||
"HellFlatLevelSource.cpp"
|
||||
"HurtByTargetGoal.cpp"
|
||||
"IceBiome.cpp"
|
||||
"InteractGoal.cpp"
|
||||
"ItemFrame.cpp"
|
||||
"JumpControl.cpp"
|
||||
"JungleBiome.cpp"
|
||||
"KickPlayerPacket.cpp"
|
||||
"KnockbackEnchantment.cpp"
|
||||
"LavaSlime.cpp"
|
||||
"LeapAtTargetGoal.cpp"
|
||||
"LevelSoundPacket.cpp"
|
||||
"LookAtPlayerGoal.cpp"
|
||||
"LookAtTradingPlayerGoal.cpp"
|
||||
"LookControl.cpp"
|
||||
"LootBonusEnchantment.cpp"
|
||||
"MakeLoveGoal.cpp"
|
||||
"MegaTreeFeature.cpp"
|
||||
"MeleeAttackGoal.cpp"
|
||||
"MerchantContainer.cpp"
|
||||
"MerchantMenu.cpp"
|
||||
"MerchantRecipe.cpp"
|
||||
"MerchantRecipeList.cpp"
|
||||
"MerchantResultSlot.cpp"
|
||||
"MilkBucketItem.cpp"
|
||||
"MonsterPlacerItem.cpp"
|
||||
"MoveControl.cpp"
|
||||
"MoveIndoorsGoal.cpp"
|
||||
"MoveThroughVillageGoal.cpp"
|
||||
"MoveTowardsRestrictionGoal.cpp"
|
||||
"MoveTowardsTargetGoal.cpp"
|
||||
"MultiTextureTileItem.cpp"
|
||||
"MushroomCow.cpp"
|
||||
"MushroomIslandBiome.cpp"
|
||||
"MycelTile.cpp"
|
||||
"NearestAttackableTargetGoal.cpp"
|
||||
"NetherBridgeFeature.cpp"
|
||||
"NetherBridgePieces.cpp"
|
||||
"NetherStalkTile.cpp"
|
||||
"NonTameRandomTargetGoal.cpp"
|
||||
"Npc.cpp"
|
||||
"OcelotSitOnTileGoal.cpp"
|
||||
"OfferFlowerGoal.cpp"
|
||||
"OpenDoorGoal.cpp"
|
||||
"OwnerHurtByTargetGoal.cpp"
|
||||
"OwnerHurtTargetGoal.cpp"
|
||||
"OxygenEnchantment.cpp"
|
||||
"Ozelot.cpp"
|
||||
"OzelotAttackGoal.cpp"
|
||||
"PanicGoal.cpp"
|
||||
"PathNavigation.cpp"
|
||||
"PlayerAbilitiesPacket.cpp"
|
||||
"PlayerEnderChestContainer.cpp"
|
||||
"PlayGoal.cpp"
|
||||
"PotatoTile.cpp"
|
||||
"PotionBrewing.cpp"
|
||||
"PotionItem.cpp"
|
||||
"ProtectionEnchantment.cpp"
|
||||
"QuartzBlockTile.cpp"
|
||||
"RandomLookAroundGoal.cpp"
|
||||
"RandomPos.cpp"
|
||||
"RandomScatteredLargeFeature.cpp"
|
||||
"RandomStrollGoal.cpp"
|
||||
"Rarity.cpp"
|
||||
"RedlightTile.cpp"
|
||||
"RegionHillsLayer.cpp"
|
||||
"RepairContainer.cpp"
|
||||
"RepairMenu.cpp"
|
||||
"RepairResultSlot.cpp"
|
||||
"RestrictOpenDoorGoal.cpp"
|
||||
"RestrictSunGoal.cpp"
|
||||
"RotateHeadPacket.cpp"
|
||||
"ScatteredFeaturePieces.cpp"
|
||||
"SeedFoodItem.cpp"
|
||||
"Sensing.cpp"
|
||||
"SitGoal.cpp"
|
||||
"SkullItem.cpp"
|
||||
"SkullTile.cpp"
|
||||
"SkullTileEntity.cpp"
|
||||
"SparseDataStorage.cpp"
|
||||
"SwampRiversLayer.cpp"
|
||||
"SwellGoal.cpp"
|
||||
"TakeFlowerGoal.cpp"
|
||||
"TamableAnimal.cpp"
|
||||
"TargetGoal.cpp"
|
||||
"TemptGoal.cpp"
|
||||
"ThornsEnchantment.cpp"
|
||||
"TileDestructionPacket.cpp"
|
||||
"TileEventData.cpp"
|
||||
"TradeWithPlayerGoal.cpp"
|
||||
"TripWireSourceTile.cpp"
|
||||
"TripWireTile.cpp"
|
||||
"Village.cpp"
|
||||
"VillagerGolem.cpp"
|
||||
"Villages.cpp"
|
||||
"VillageSiege.cpp"
|
||||
"VinesFeature.cpp"
|
||||
"WallTile.cpp"
|
||||
"WeighedTreasure.cpp"
|
||||
"WoodSlabTile.cpp"
|
||||
"C4JThread.cpp"
|
||||
"WoodTile.cpp"
|
||||
"WoolCarpetTile.cpp"
|
||||
"XZPacket.cpp"
|
||||
"ShoreLayer.cpp"
|
||||
"SmoothStoneBrickTileItem.cpp"
|
||||
"SparseLightStorage.cpp"
|
||||
"SpikeFeature.cpp"
|
||||
"NetherSphere.cpp"
|
||||
"SmallFireball.cpp"
|
||||
"SnowMan.cpp"
|
||||
"StoneMonsterTileItem.cpp"
|
||||
"TextureAndGeometryChangePacket.cpp"
|
||||
"TextureAndGeometryPacket.cpp"
|
||||
"TheEndBiome.cpp"
|
||||
"TheEndBiomeDecorator.cpp"
|
||||
"TheEndDimension.cpp"
|
||||
"TheEndLevelRandomLevelSource.cpp"
|
||||
"TheEndPortal.cpp"
|
||||
"TheEndPortalFrameTile.cpp"
|
||||
"TheEndPortalTileEntity.cpp"
|
||||
"Throwable.cpp"
|
||||
"ThrownEnderpearl.cpp"
|
||||
"ThrownExpBottle.cpp"
|
||||
"ThrownPotion.cpp"
|
||||
"TileEntityDataPacket.cpp"
|
||||
"UntouchingEnchantment.cpp"
|
||||
"UpdateGameRuleProgressPacket.cpp"
|
||||
"Distort.cpp"
|
||||
"DoorItem.cpp"
|
||||
"DoorTile.cpp"
|
||||
"DownfallLayer.cpp"
|
||||
"DownfallMixerLayer.cpp"
|
||||
"DungeonFeature.cpp"
|
||||
"DyePowderItem.cpp"
|
||||
"EggItem.cpp"
|
||||
"Emboss.cpp"
|
||||
"EmptyLevelChunk.cpp"
|
||||
"EnderMan.cpp"
|
||||
"Enemy.cpp"
|
||||
"Entity.cpp"
|
||||
"EntityActionAtPositionPacket.cpp"
|
||||
"EntityDamageSource.cpp"
|
||||
"EntityEventPacket.cpp"
|
||||
"EntityIO.cpp"
|
||||
"EntityPos.cpp"
|
||||
"EntityTile.cpp"
|
||||
"ExperienceOrb.cpp"
|
||||
"ExplodePacket.cpp"
|
||||
"Explosion.cpp"
|
||||
"Facing.cpp"
|
||||
"FallingTile.cpp"
|
||||
"FarmTile.cpp"
|
||||
"FastNoise.cpp"
|
||||
"FenceGateTile.cpp"
|
||||
"FenceTile.cpp"
|
||||
"File.cpp"
|
||||
"FileHeader.cpp"
|
||||
"FileInputStream.cpp"
|
||||
"FileOutputStream.cpp"
|
||||
"Fireball.cpp"
|
||||
"FireTile.cpp"
|
||||
"FishingHook.cpp"
|
||||
"FishingRodItem.cpp"
|
||||
"FixedBiomeSource.cpp"
|
||||
"FlatLayer.cpp"
|
||||
"FlatLevelSource.cpp"
|
||||
"FlintAndSteelItem.cpp"
|
||||
"FloatBuffer.cpp"
|
||||
"FlowerFeature.cpp"
|
||||
"FlyingMob.cpp"
|
||||
"FoliageColor.cpp"
|
||||
"FoodConstants.cpp"
|
||||
"FoodData.cpp"
|
||||
"FoodItem.cpp"
|
||||
"FoodRecipies.cpp"
|
||||
"ForestBiome.cpp"
|
||||
"FurnaceMenu.cpp"
|
||||
"FurnaceRecipes.cpp"
|
||||
"FurnaceResultSlot.cpp"
|
||||
"FurnaceTile.cpp"
|
||||
"FurnaceTileEntity.cpp"
|
||||
"FuzzyZoomLayer.cpp"
|
||||
"GameEventPacket.cpp"
|
||||
"GeneralStat.cpp"
|
||||
"GetInfoPacket.cpp"
|
||||
"Ghast.cpp"
|
||||
"Giant.cpp"
|
||||
"GlassTile.cpp"
|
||||
"GlobalEntity.cpp"
|
||||
"GrassColor.cpp"
|
||||
"GrassTile.cpp"
|
||||
"GravelTile.cpp"
|
||||
"HalfTransparentTile.cpp"
|
||||
"Hasher.cpp"
|
||||
"HatchetItem.cpp"
|
||||
"HellBiome.cpp"
|
||||
"HellDimension.cpp"
|
||||
"HellFireFeature.cpp"
|
||||
"HellPortalFeature.cpp"
|
||||
"HellRandomLevelSource.cpp"
|
||||
"HellSandTile.cpp"
|
||||
"HellSpringFeature.cpp"
|
||||
"HellStoneTile.cpp"
|
||||
"HitResult.cpp"
|
||||
"HoeItem.cpp"
|
||||
"HouseFeature.cpp"
|
||||
"HugeMushroomFeature.cpp"
|
||||
"HugeMushroomTile.cpp"
|
||||
"I18n.cpp"
|
||||
"IceTile.cpp"
|
||||
"ImprovedNoise.cpp"
|
||||
"ContainerMenu.cpp"
|
||||
"IndirectEntityDamageSource.cpp"
|
||||
"InputStream.cpp"
|
||||
"InputStreamReader.cpp"
|
||||
"InstantenousMobEffect.cpp"
|
||||
"IntBuffer.cpp"
|
||||
"IntCache.cpp"
|
||||
"InteractPacket.cpp"
|
||||
"Inventory.cpp"
|
||||
"InventoryMenu.cpp"
|
||||
"IslandLayer.cpp"
|
||||
"Item.cpp"
|
||||
"ItemEntity.cpp"
|
||||
"ItemInstance.cpp"
|
||||
"ItemStat.cpp"
|
||||
"KeepAlivePacket.cpp"
|
||||
"LadderTile.cpp"
|
||||
"LakeFeature.cpp"
|
||||
"Language.cpp"
|
||||
"LargeCaveFeature.cpp"
|
||||
"LargeFeature.cpp"
|
||||
"LargeHellCaveFeature.cpp"
|
||||
"Layer.cpp"
|
||||
"LeafTile.cpp"
|
||||
"LeafTileItem.cpp"
|
||||
"LevelConflictException.cpp"
|
||||
"LevelData.cpp"
|
||||
"Level.cpp"
|
||||
"LevelChunk.cpp"
|
||||
"LevelEventPacket.cpp"
|
||||
"LevelSettings.cpp"
|
||||
"LevelStorage.cpp"
|
||||
"LevelStorageProfilerDecorator.cpp"
|
||||
"LevelSummary.cpp"
|
||||
"LevelType.cpp"
|
||||
"LeverTile.cpp"
|
||||
"LightGemFeature.cpp"
|
||||
"LightGemTile.cpp"
|
||||
"LightningBolt.cpp"
|
||||
"LiquidTile.cpp"
|
||||
"LiquidTileDynamic.cpp"
|
||||
"LiquidTileStatic.cpp"
|
||||
"LockedChestTile.cpp"
|
||||
"LoginPacket.cpp"
|
||||
"MapItem.cpp"
|
||||
"MapItemSavedData.cpp"
|
||||
"Material.cpp"
|
||||
"MaterialColor.cpp"
|
||||
"JavaMath.cpp"
|
||||
"McRegionChunkStorage.cpp"
|
||||
"McRegionLevelStorageSource.cpp"
|
||||
"McRegionLevelStorage.cpp"
|
||||
"MelonTile.cpp"
|
||||
"MenuBackup.cpp"
|
||||
"MetalTile.cpp"
|
||||
"Minecart.cpp"
|
||||
"MinecartItem.cpp"
|
||||
"Minecraft.World.cpp"
|
||||
"MineShaftFeature.cpp"
|
||||
"MineShaftPieces.cpp"
|
||||
"MineShaftStart.cpp"
|
||||
"Mob.cpp"
|
||||
"MobCategory.cpp"
|
||||
"MobEffect.cpp"
|
||||
"MobEffectInstance.cpp"
|
||||
"MobSpawner.cpp"
|
||||
"MobSpawnerTile.cpp"
|
||||
"MobSpawnerTileEntity.cpp"
|
||||
"MockedLevelStorage.cpp"
|
||||
"Monster.cpp"
|
||||
"MonsterRoomFeature.cpp"
|
||||
"MoveEntityPacket.cpp"
|
||||
"MoveEntityPacketSmall.cpp"
|
||||
"MovePlayerPacket.cpp"
|
||||
"Mth.cpp"
|
||||
"Mushroom.cpp"
|
||||
"MusicTile.cpp"
|
||||
"MusicTileEntity.cpp"
|
||||
"NbtIo.cpp"
|
||||
"Node.cpp"
|
||||
"NotGateTile.cpp"
|
||||
"ObsidianTile.cpp"
|
||||
"OldChunkStorage.cpp"
|
||||
"OreFeature.cpp"
|
||||
"OreRecipies.cpp"
|
||||
"OreTile.cpp"
|
||||
"Packet.cpp"
|
||||
"PacketListener.cpp"
|
||||
"Painting.cpp"
|
||||
"Path.cpp"
|
||||
"PathFinder.cpp"
|
||||
"PathfinderMob.cpp"
|
||||
"PerlinNoise.cpp"
|
||||
"PerlinSimplexNoise.cpp"
|
||||
"PickaxeItem.cpp"
|
||||
"Pig.cpp"
|
||||
"PigZombie.cpp"
|
||||
"PineFeature.cpp"
|
||||
"PistonBaseTile.cpp"
|
||||
"PistonExtensionTile.cpp"
|
||||
"PistonMovingPiece.cpp"
|
||||
"PistonPieceEntity.cpp"
|
||||
"PistonTileItem.cpp"
|
||||
"PlainsBiome.cpp"
|
||||
"Player.cpp"
|
||||
"PlayerActionPacket.cpp"
|
||||
"PlayerCommandPacket.cpp"
|
||||
"PlayerInfoPacket.cpp"
|
||||
"PlayerInputPacket.cpp"
|
||||
"PortalForcer.cpp"
|
||||
"PortalTile.cpp"
|
||||
"Pos.cpp"
|
||||
"PreLoginPacket.cpp"
|
||||
"PressurePlateTile.cpp"
|
||||
"PrimedTnt.cpp"
|
||||
"PumpkinFeature.cpp"
|
||||
"PumpkinTile.cpp"
|
||||
"RailTile.cpp"
|
||||
"RainforestBiome.cpp"
|
||||
"Random.cpp"
|
||||
"RandomLevelSource.cpp"
|
||||
"ReadOnlyChunkCache.cpp"
|
||||
"Recipes.cpp"
|
||||
"RecordingItem.cpp"
|
||||
"RecordPlayerTile.cpp"
|
||||
"RedStoneDustTile.cpp"
|
||||
"RedStoneItem.cpp"
|
||||
"RedStoneOreTile.cpp"
|
||||
"ReedsFeature.cpp"
|
||||
"ReedTile.cpp"
|
||||
"Region.cpp"
|
||||
"RegionFile.cpp"
|
||||
"RegionFileCache.cpp"
|
||||
"RemoveEntitiesPacket.cpp"
|
||||
"RemoveMobEffectPacket.cpp"
|
||||
"RespawnPacket.cpp"
|
||||
"ResultContainer.cpp"
|
||||
"ResultSlot.cpp"
|
||||
"RiverInitLayer.cpp"
|
||||
"RiverLayer.cpp"
|
||||
"RiverMixerLayer.cpp"
|
||||
"Rotate.cpp"
|
||||
"SaddleItem.cpp"
|
||||
"SandFeature.cpp"
|
||||
"SandStoneTile.cpp"
|
||||
"HeavyTile.cpp"
|
||||
"Sapling.cpp"
|
||||
"SaplingTileItem.cpp"
|
||||
"SavedData.cpp"
|
||||
"SavedDataStorage.cpp"
|
||||
"Scale.cpp"
|
||||
"SeedItem.cpp"
|
||||
"ServerSettingsChangedPacket.cpp"
|
||||
"SetCarriedItemPacket.cpp"
|
||||
"SetCreativeModeSlotPacket.cpp"
|
||||
"SetEntityDataPacket.cpp"
|
||||
"SetEntityMotionPacket.cpp"
|
||||
"SetEquippedItemPacket.cpp"
|
||||
"SetExperiencePacket.cpp"
|
||||
"SetHealthPacket.cpp"
|
||||
"SetRidingPacket.cpp"
|
||||
"SetSpawnPositionPacket.cpp"
|
||||
"SetTimePacket.cpp"
|
||||
"ShapedRecipy.cpp"
|
||||
"ShapelessRecipy.cpp"
|
||||
"SharedConstants.cpp"
|
||||
"ShearsItem.cpp"
|
||||
"Sheep.cpp"
|
||||
"ShovelItem.cpp"
|
||||
"SignItem.cpp"
|
||||
"SignTile.cpp"
|
||||
"SignTileEntity.cpp"
|
||||
"SignUpdatePacket.cpp"
|
||||
"Silverfish.cpp"
|
||||
"SimpleContainer.cpp"
|
||||
"SimplexNoise.cpp"
|
||||
"Skeleton.cpp"
|
||||
"Slime.cpp"
|
||||
"Slot.cpp"
|
||||
"SmoothFloat.cpp"
|
||||
"SmoothLayer.cpp"
|
||||
"SmoothStoneBrickTile.cpp"
|
||||
"SmoothZoomLayer.cpp"
|
||||
"Snowball.cpp"
|
||||
"SnowballItem.cpp"
|
||||
"SnowTile.cpp"
|
||||
"Socket.cpp"
|
||||
"Spider.cpp"
|
||||
"Sponge.cpp"
|
||||
"SpringFeature.cpp"
|
||||
"SpringTile.cpp"
|
||||
"SpruceFeature.cpp"
|
||||
"Squid.cpp"
|
||||
"Stat.cpp"
|
||||
"Stats.cpp"
|
||||
"StairTile.cpp"
|
||||
"stdafx.cpp"
|
||||
"StemTile.cpp"
|
||||
"StoneMonsterTile.cpp"
|
||||
"StoneSlabTile.cpp"
|
||||
"StoneSlabTileItem.cpp"
|
||||
"StoneTile.cpp"
|
||||
"StringHelpers.cpp"
|
||||
"StrongholdFeature.cpp"
|
||||
"StrongholdPieces.cpp"
|
||||
"StructureFeature.cpp"
|
||||
"StructurePiece.cpp"
|
||||
"StructureRecipies.cpp"
|
||||
"StructureStart.cpp"
|
||||
"SwampBiome.cpp"
|
||||
"SwampTreeFeature.cpp"
|
||||
"SynchedEntityData.cpp"
|
||||
"Synth.cpp"
|
||||
"system.cpp"
|
||||
"Tag.cpp"
|
||||
"TaigaBiome.cpp"
|
||||
"TakeItemEntityPacket.cpp"
|
||||
"TallGrass.cpp"
|
||||
"TallGrassFeature.cpp"
|
||||
"TeleportEntityPacket.cpp"
|
||||
"TemperatureLayer.cpp"
|
||||
"TemperatureMixerLayer.cpp"
|
||||
"TextureChangePacket.cpp"
|
||||
"TexturePacket.cpp"
|
||||
"ThinFenceTile.cpp"
|
||||
"ThreadName.cpp"
|
||||
"ThrownEgg.cpp"
|
||||
"TickNextTickData.cpp"
|
||||
"Tile.cpp"
|
||||
"TileEventPacket.cpp"
|
||||
"TileItem.cpp"
|
||||
"TileEntity.cpp"
|
||||
"TilePlanterItem.cpp"
|
||||
"TilePos.cpp"
|
||||
"TileUpdatePacket.cpp"
|
||||
"TntTile.cpp"
|
||||
"ToolRecipies.cpp"
|
||||
"TopSnowTile.cpp"
|
||||
"TorchTile.cpp"
|
||||
"TransparentTile.cpp"
|
||||
"TrapDoorTile.cpp"
|
||||
"TrapMenu.cpp"
|
||||
"TreeFeature.cpp"
|
||||
"TreeTileItem.cpp"
|
||||
"UpdateMobEffectPacket.cpp"
|
||||
"UpdateProgressPacket.cpp"
|
||||
"UseItemPacket.cpp"
|
||||
"Vec3.cpp"
|
||||
"VillageFeature.cpp"
|
||||
"VillagePieces.cpp"
|
||||
"Villager.cpp"
|
||||
"VineTile.cpp"
|
||||
"VoronoiZoom.cpp"
|
||||
"WaterColor.cpp"
|
||||
"WaterLevelChunk.cpp"
|
||||
"WaterlilyFeature.cpp"
|
||||
"WaterLilyTile.cpp"
|
||||
"WaterLilyTileItem.cpp"
|
||||
"WaterWorkerEnchantment.cpp"
|
||||
"WeaponItem.cpp"
|
||||
"WeaponRecipies.cpp"
|
||||
"WeighedRandom.cpp"
|
||||
"Wolf.cpp"
|
||||
"TreeTile.cpp"
|
||||
"WebTile.cpp"
|
||||
"WorkbenchTile.cpp"
|
||||
"ConsoleSaveFileInputStream.cpp"
|
||||
"ConsoleSaveFileOutputStream.cpp"
|
||||
"Zombie.cpp"
|
||||
"WaterAnimal.cpp"
|
||||
"ZoomLayer.cpp"
|
||||
)
|
||||
Loading…
Reference in a new issue