Correct copy behaviour and bring back missing assets

This commit is contained in:
Pyogenics 2026-03-09 12:07:59 +00:00
parent 6ee3b48ca0
commit 1326e4d344
55 changed files with 18 additions and 6 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -2,10 +2,12 @@
# Asset copy
#
client_platform_path = meson.project_source_root() / 'Minecraft.Client/Platform'
install_subdir('Common', install_dir : get_option('prefix'))
install_subdir('Common/res', install_dir : get_option('prefix') / 'Common/res')
install_subdir('Common/Trial', install_dir : get_option('prefix') / 'Trial')
install_subdir('Common/music', install_dir : get_option('prefix'))
install_subdir('DurangoMedia/Sound', install_dir : get_option('prefix'))
# XXX: The DLC path is handled inside of 4JLibs but Windows64 expects a Windows64Media/DLC folder to exist to load DLC from
# install_subdir('DurangoMedia/DLC', install_dir : get_option('prefix') / 'DurangoMedia')
#
# Asset build
@ -33,7 +35,7 @@ colour_table = custom_target('Minecraft.Assets_Colour_Table',
)
archive_sources = [
localisation[0], # client_platform_path / 'Windows64Media/Media/languages.loc',
localisation[0], # 'Windows64Media/Media/languages.loc',
colour_table,
'Common/Media/splashes.txt',
'Common/Media/Graphics/SaveChest.png',
@ -424,6 +426,6 @@ media_archive = custom_target('Minecraft.Media_Archive',
assets_localisation_dep = declare_dependency(
sources : localisation[1],
# sources : client_platform_path / 'Windows64Media/strings.h',
# sources : 'Windows64Media/strings.h',
include_directories : include_directories('.')
)

View file

@ -16,6 +16,8 @@ output_stamp = Path(sys.argv[5])
#
# `meson install` also handles this, but installs it to system folders, which can be annoying for
# testing. Since we want a way to run it straight from `/build` when debugging, we do this instead.
#
# this script doesn't handle copying the same way `meson install` does but it should be good enough
dest_common = Path(client_build_dir / "Common")
# clear out any old assets
@ -31,5 +33,13 @@ shutil.copytree(
# copy the media archive to `Common/Media` inside the folder we just copied.
shutil.copy(media_archive, client_build_dir / "Common" / "Media")
# copy music and Sound
shutil.copytree(project_source_root / "Minecraft.Assets" / "Common" / "music", client_build_dir)
shutil.copytree(project_source_root / "Minecraft.Assets" / "DurangoMedia" / "Sound", client_build_dir)
# copy DLC
# XXX: The DLC path is handled inside of 4JLibs, the Windows64 build expects `DurangoMedia/DLC` to load DLC data from
# shutil.copytree(project_source_root / "Minecraft.Assets" / "DurangoMedia" / "DLC", client_build_dir / "DurangoMedia")
# modify the stamp so this only happens when client or media_archive targets are changed
output_stamp.touch()