#!/bin/sh

force=false

for arg in $*; do
	case "$arg" in
	-f|--force)
		force=true
		;;
	esac
done

mkdir -p data

copy()
{
	src=$1
	destdir=$2
	dest=$destdir/`basename $src`
	if $force || [ ! -e $dest -o $src -nt $dest ]; then
		echo "copy $src -> $dest"
		mkdir -p $destdir
		cp $src $dest
	fi
}

build_imgquant()
{
	if [ ! -f tools/imgquant/imgquant ]; then
		cd tools/imgquant
		if ! make; then
			echo 'failed to build imgquant, aborting!' >&2
			exit 1
		fi
	fi
}

quantize()
{
	src=$1
	destdir=$2
	dest=$destdir/`basename $src`
	if $force || [ ! -e $dest -o $src -nt $dest ]; then
		# build imgquant if it's missing
		build_imgquant
		echo "quantize $src -> $dest"
		mkdir -p $destdir
		tools/imgquant/imgquant -o $dest -C 254 -P $src -movekey 0
	fi
}

# copy test level
for i in datasrc/testlvl/*.t?j; do
	copy $i data/levels
done
copy datasrc/testlvl/tiles.png data

# copy music
copy datasrc/music/test.mus data/music
copy datasrc/genmidi.op2 data/music

#copy sound effects
mkdir -p data/sfx
src=datasrc/sfx/laser4.wav
dest=data/sfx/laser4.wav
if $force || [ ! -e $dest -o $src -nt $dest ]; then
	ffmpeg -i datasrc/sfx/laser4.wav -ar 22050 -acodec pcm_u8 -ac 1 -t 800ms -y data/sfx/laser4.wav
fi
