finalbeta-modloader/justfile

62 lines
1.5 KiB
Plaintext

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" ./*)
setup:
./cleanup.sh
./decompile.sh
just _create-bakups
[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)
[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)
[working-directory: './src/minecraft/net/minecraft/']
create-patches:
#!/usr/bin/env bash
(for file in $(fd --no-ignore ".java.bak$"); do
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
patch="${core}.patch"
echo "Creating patch file for $core"
diff -Nau "$file" "$core" > "$patch" || true
done)