#Binaries BLENDER = "D:\Programs\Blender\blender.exe" CONVERT = convert #Imagemagik MAGICK = magick MOONC = lua C:/Users/user/AppData/Roaming/luarocks/lib/luarocks/rocks-5.3/moonscript/0.5.0-1/bin/moonc LUASTR = tools/luastr.sh CP = cp CAT = cat CD = cd AMULET = amulet LUA = lua MV = mv UNZIP = unzip -o #overwrite without asking HTTP_SERVER = python -m http.server #STL OPEN_BROWSER = rundll32 url.dll,FileProtocolHandler http://localhost:8000 ECHO=echo TILED=tiled 7Z=7z moon_files = $(wildcard src/*.moon) lua_files = $(wildcard src/*.lua) js_files = $(wildcard src/js/*.js) build_moon_files = $(moon_files:src/%.moon=build/%.lua) debug_moon_files = $(moon_files:src/%.moon=debug/%.lua.X) build_js_files = $(js_files:src/js/%.js=build/%.lua) build_lua_files = $(lua_files:src/%.lua=build/%.lua) #Levels from tiled level_src_files = $(wildcard data_src/levels/*.tmx) level_lua_files = $(level_src_files:data_src/levels/%.tmx=build/%.lua) #Sprites from models model_files = $(wildcard data_src/models/*.blend") raw_imgs = $(model_files:data_src/models/%.blend=data_src/img_raw/%_raw.png) static_files = $(wildcard data_src/*.jpg) $(wildcard data_src/*.png) static_imgs = $(static_files:data_src/%=build/data/%) sprites = $(raw_imgs:data_src/img_raw/%_raw.png=build/data/%.png) dev_files = $(build_moon_files) $(build_lua_files) $(debug_moon_files) $(sprites) $(level_lua_files) $(build_js_files) $(static_imgs) all_files = $(build_moon_files) $(build_lua_files) $(debug_moon_files) $(sprites) $(build_js_files) $(static_imgs) all: $(all_files) $(sprites) $(AMULET) export -r -a -nozipdir -html build $(7Z) e -obin -aoa Untitled-0.0.0-html.zip $(CD) bin && $(HTTP_SERVER) dev: $(dev_files) cd build && $(AMULET) 2> err.log || true cat build/err.log | lua rewrite.lua $(build_js_files) : build/%.lua : src/js/%.js $(LUASTR) $(LUASTR) $< > $@ $(build_moon_files) : build/%.lua : src/%.moon $(MOONC) -o $@ $< $(debug_moon_files) : debug/%.lua.X : src/%.moon $(MOONC) -X $< > $@ $(build_lua_files) : build/%.lua : src/%.lua $(CP) $< $@ #Convert images to our reduce 64 colors $(sprites) : build/data/%.png : data_src/img_raw/%_raw.png $(CONVERT) $^ +dither -remap fantasy-24-1x.png $@ #What's going on? I can't access the dependency $(raw_imgs) : data_src/img_raw/%_raw.png : data_src/models/%.blend $(BLENDER) -b $^ -o //../../$(@:%_raw.png=%_raw_) -f 1 $(MV) $(@:%_raw.png=%_raw_0001.png) $@ $(static_imgs) : build/data/% : data_src/% $(CP) $< $@ #Dev graphics, only used for tiled and in development #See https://legacy.imagemagick.org/Usage/text/ for options that can # be put in the text file dev_graphic_srcs=$(wildcard data_src/dev_graphics/*.txt) dev_graphic_imgs=$(dev_graphic_srcs:%.txt=%.png) dev_graphics: $(dev_graphic_imgs) echo "Done creating dev graphics" $(dev_graphic_imgs) : data_src/dev_graphics/%.png : data_src/dev_graphics/%.txt $(CONVERT) -font "Liberation Mono" -pointsize 12 $(shell cat $<) $@ clean: rm debug/*.X rm build/*.lua rm *.zip sprites.png : sprites amulet pack -png sprites.png -lua sprites.lua sprites/*.png