diff --git a/.SRCINFO b/.SRCINFO index 47a4488ddd26..894f5a9cb8cf 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -39,6 +39,6 @@ pkgbase = vmangos-git sha256sums = 9d99c70255ec8749a8d59010c53d76c41251783acfccf6c335c5dffa63b5d037 sha256sums = c3cee4cb049545cb9c0857f8977120d219d8afcf5c1cb0531546d38ecde98783 sha256sums = e2fb357832eda6c7c7467d36251c5c817b79320416a0dd13defe86000349cf2d - sha256sums = 5013febad21ae8cf93966cadedc0736077a3aa9a7edff3bfe58d7f91c625ff54 + sha256sums = 6735f90d85c6470333d6d30ec19c47c3a3aa0d8c5ff2ac949a201c67d95a797a pkgname = vmangos-git diff --git a/PKGBUILD b/PKGBUILD index 843790a42bab..485a6b82fb5b 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -49,7 +49,7 @@ sha256sums=('SKIP' '9d99c70255ec8749a8d59010c53d76c41251783acfccf6c335c5dffa63b5d037' 'c3cee4cb049545cb9c0857f8977120d219d8afcf5c1cb0531546d38ecde98783' 'e2fb357832eda6c7c7467d36251c5c817b79320416a0dd13defe86000349cf2d' - '5013febad21ae8cf93966cadedc0736077a3aa9a7edff3bfe58d7f91c625ff54') + '6735f90d85c6470333d6d30ec19c47c3a3aa0d8c5ff2ac949a201c67d95a797a') pkgver() { cd "$srcdir/$pkgname" diff --git a/vmangos-extract-data.sh b/vmangos-extract-data.sh index 27744e1bbd14..307299a14417 100644 --- a/vmangos-extract-data.sh +++ b/vmangos-extract-data.sh @@ -11,10 +11,14 @@ main () { cleanup_and_exit } +echoerr () { + echo "$@" 1>&2 +} + check_user () { - if [[ $(whoami) != vmangos ]]; then - >&2 echo "This script must be run as the vmangos user:" - >&2 echo " $ sudo -u vmangos /usr/share/vmangos/vmangos-extract-data.sh" + if [[ "$(whoami)" != "vmangos" ]]; then + echoerr "This script must be run as the vmangos user:" + echoerr " $ sudo -u vmangos /usr/share/vmangos/vmangos-extract-data.sh" exit 1 fi } @@ -22,28 +26,23 @@ check_user () { run_extractors () { "$BIN_DIR/MapExtractor" -o "$DATA_DIR" && echo "Maps & DBC extracted" - pushd "$DATA_DIR" > /dev/null + cd "$DATA_DIR" || { echoerr "Failed to change directory to $DATA_DIR"; exit 1; } + "$BIN_DIR/VMapExtractor" -d "$OLDPWD/Data" && echo "VMaps extracted" "$BIN_DIR/VMapAssembler" && echo "VMaps assembled" + "$BIN_DIR/MoveMapGenerator" \ + --threads "$(nproc)" \ + --silent \ + --configInputPath "$BIN_DIR/config.json" \ + --offMeshInput "$BIN_DIR/offmesh.txt" - "$BIN_DIR/MoveMapGenerator" --silent --configInputPath "$BIN_DIR/config.json" --offMeshInput "$BIN_DIR/offmesh.txt" 0 & - "$BIN_DIR/MoveMapGenerator" --silent --configInputPath "$BIN_DIR/config.json" --offMeshInput "$BIN_DIR/offmesh.txt" 1 & - "$BIN_DIR/MoveMapGenerator" --silent --configInputPath "$BIN_DIR/config.json" --offMeshInput "$BIN_DIR/offmesh.txt" --skipContinents & - wait && echo "Movemaps generated" - popd > /dev/null -} - -kill_jobs () { - for pid in $(jobs -p); do - kill "$pid" 2>/dev/null | true - done + cd - > /dev/null || { echoerr "Failed to navigate to original directory"; exit 1; } } cleanup_and_exit () { - kill_jobs [[ -d "$DATA_DIR/dbc" ]] && mv "$DATA_DIR/dbc" "$DATA_DIR/5875/dbc" - [[ -d "$DATA_DIR/Buildings" ]] && rm -rf "$DATA_DIR/Buildings" - [[ -d "$DATA_DIR/Cameras" ]] && rm -rf "$DATA_DIR/Cameras" + [[ -d "$DATA_DIR/Buildings" ]] && rm -r "$DATA_DIR/Buildings" + [[ -d "$DATA_DIR/Cameras" ]] && rm -r "$DATA_DIR/Cameras" exit 0 }