finalbeta-modloader/justfile

62 lines
1.5 KiB
Plaintext
Raw Permalink Normal View History

set export
modName := "finalbeta"
modVersion := "1.4.0"
build:
# Delete previous builds
fd . './builds' -e .zip --exec rm
just create-patches
./recompile.sh
./reobfuscate.sh
for file in $(fd . ./lib -e "jar"); do unzip -qo "$file" -d "./reobf/minecraft/"; done
(cd ./reobf/minecraft && zip -qr "../../builds/${modName}-${modVersion}-modloader.zip" ./*)
2025-04-04 23:04:51 +03:00
setup:
./cleanup.sh
./decompile.sh
2025-04-05 23:23:00 +03:00
just _create-bakups
2025-04-04 23:04:51 +03:00
[working-directory: './src/minecraft/net/minecraft/src/']
_create-backups:
#!/usr/bin/env bash
(for file in $(fd --no-ignore ".java$"); do
[ -e "$file" ] || continue
just _create-backup "$file"
done)
2025-04-05 23:23:00 +03:00
[working-directory: './src/minecraft/net/minecraft/src/']
_create-backup file:
#!/usr/bin/env bash
bak="$file.bak"
# stop from accidentally overwriting backups
[ -e "$bak" ] && echo "$bak already exists, skipping!" && exit
cp "$file" "$bak"
[working-directory: './src/minecraft/net/minecraft/src/']
apply-patches:
#!/usr/bin/env bash
(for file in $(fd --no-ignore ".java.bak$"); do
core="${file/.bak/}"
patch="${core}.patch"
rm "$core"
cp "$file" "$core"
patch < "$patch"
done)
2025-04-04 23:04:51 +03:00
2025-04-05 23:23:00 +03:00
[working-directory: './src/minecraft/net/minecraft/']
create-patches:
2025-04-04 23:04:51 +03:00
#!/usr/bin/env bash
(for file in $(fd --no-ignore ".java.bak$"); do
2025-04-04 23:04:51 +03:00
core="${file/.bak/}"
# check to see if the file has been changed
check="$(cmp -s $file $core && echo 1 || echo 0)"
[ $check -eq 0 ] || continue
2025-04-04 23:04:51 +03:00
patch="${core}.patch"
echo "Creating patch file for $core"
diff -Nau "$file" "$core" > "$patch" || true
done)