# Makefile for Erbosoft Vista modpack
# EJB 11/17/2015

VERSION=0.5
FORGEMOD=forge-1.7.10-10.13.4.1558-1.7.10-universal.jar
FORGEINSTALLER=forge-1.7.10-10.13.4.1558-1.7.10-installer.jar

all: client-modpack server-pack

client-modpack: verify-mods
	mkdir -p build/client
	-rm -rf build/client/*
	mkdir build/client/bin
	mkdir build/client/config
	mkdir build/client/coremods
	mkdir build/client/mods
	cp mods-source/forge/${FORGEMOD} build/client/bin/modpack.jar
	cp mods-source/server/*.jar build/client/mods
	cp mods-source/client/*.jar build/client/mods
	cp mods-source/client/*.litemod build/client/mods
	cp -r config-source/* build/client/config
	-rm -f build/erbosoft-vista-${VERSION}.zip
	cd build/client; zip -r ../erbosoft-vista-${VERSION}.zip .

server-pack: verify-mods
	mkdir -p build/server
	-rm -rf build/server/*
	cp mods-source/forge/${FORGEINSTALLER} build/server
	cd build/server; java -jar ./${FORGEINSTALLER} -installServer
	rm -f build/server/${FORGEINSTALLER}*
	mkdir build/server/config
	mkdir build/server/mods
	cp mods-source/server/*.jar build/server/mods
	cp -r config-source/* build/server/config
	sed -e 's/@FORGEJAR@/${FORGEMOD}/' scripts/launch.sh.template > build/server/launch.sh
	chmod 755 build/server/launch.sh
	sed -e 's/@FORGEJAR@/${FORGEMOD}/' scripts/launch.bat.template > build/server/launch.bat
	unix2dos build/server/launch.bat
	cp scripts/eula.txt.template build/server/eula.txt
	sed -e 's/@VERSION@/${VERSION}/' scripts/server.properties.template > build/server/server.properties
	-rm -f build/erbosoft-vista-server-${VERSION}.zip
	cd build/server; zip -r ../erbosoft-vista-server-${VERSION}.zip .

verify-mods:
	scripts/verify-mod-downloads mods-source/forge
	scripts/verify-mod-downloads mods-source/server
	scripts/verify-mod-downloads mods-source/client

sort-modlists:
	scripts/sort-modlist mods-source/forge
	scripts/sort-modlist mods-source/server
	scripts/sort-modlist mods-source/client

clean:
	-rm -rf build/
	find . -name '*~' -delete