#!/bin/bash
set -e

DOWNLOADER="vendor/hytale-server/scripts/hytale-downloader-linux-amd64"
OUTPUT_DIR="vendor/hytale-server"

if [ ! -f "$DOWNLOADER" ]; then
    echo "Error: Downloader not found at $DOWNLOADER"
    exit 1
fi

echo "[update-server] Creating output directory..."
mkdir -p "$OUTPUT_DIR"

echo "[update-server] Downloading Hytale server files..."
"$DOWNLOADER" -download-path "$OUTPUT_DIR/game.zip"

echo "[update-server] Extracting server files..."
unzip -o -q "$OUTPUT_DIR/game.zip" -d "$OUTPUT_DIR"
rm -f "$OUTPUT_DIR/game.zip"

echo "[update-server] Verifying server files..."
if [ ! -f "$OUTPUT_DIR/Server/HytaleServer.jar" ]; then
    echo "Error: HytaleServer.jar not found"
    exit 1
fi

if [ ! -f "$OUTPUT_DIR/Assets.zip" ]; then
    echo "Error: Assets.zip not found"
    exit 1
fi

echo "[update-server] Server update completed successfully"
echo "[update-server] Files located at: $OUTPUT_DIR"
