# ----------------------------------------------------------------------
# Jumper Cables

all : \
	../sprites/jumpercables/jmpka0.png \
	../sprites/jumpercables/jmpra0.png \
	../sprites/jumpercables/jmppa0.png \
	../sprites/jumpercables/jmppb0.png \
	../sprites/jumpercables/jmppc0.png \
	../graphics/jumpercables/jmpr_reticle1.png \
	../graphics/jumpercables/jmpr_reticle2.png \
	../graphics/jumpercables/jmpr_reticle3.png \
	../sprites/jumpercables/jmpia0.png \
	../sprites/jumpercables/jmpib0.png \
	../sprites/jumpercables/jmpic0.png \
	../sprites/jumpercables/jmpid0.png \
	../sprites/jumpercables/jmpie0.png \
	../sprites/jumpercables/jmpif0.png \
	../sprites/jumpercables/jmpig0.png \
	../sprites/jumpercables/jmpja0.png \
	../sprites/jumpercables/jmpjb0.png \
	../sprites/jumpercables/jmpjc0.png \
	../sprites/jumpercables/jmpjd0.png \
	../sprites/jumpercables/jmpje0.png \
	../sprites/jumpercables/jmpjf0.png \
	../sprites/jumpercables/jmpjg0.png \
	letter_sprites_l \
	letter_sprites_r \
	brightmaps

../sprites/jumpercables/jmpka0.png : jumpercables_pickupsprite.aseprite
	aseprite -b $^ --save-as $@

../sprites/jumpercables/jmpra0.png : jumpercables_deployedsprite.aseprite
	aseprite -b $^ --save-as $@

# Base sprite with no numerical indicator, but anim frames (0,1,2) for
# status light.
../sprites/jumpercables/jmppa0.png ../sprites/jumpercables/jmppb0.png ../sprites/jumpercables/jmppc0.png : jumpercables_weaponsprite.aseprite
	aseprite -b $^ \
		--ignore-layer "brightmap_display" \
		--ignore-layer "brightmap_leds" \
		--ignore-layer "numberindicatorl" \
		--ignore-layer "numberindicatorr" \
		--frame-range 0,2 --save-as $@

    # Correct Aseprite's automatic naming to Doom's. (Number at the
    # end is for rotations, letters are for frame numbers.)
	mv ../sprites/jumpercables/jmppa1.png ../sprites/jumpercables/jmppb0.png
	mv ../sprites/jumpercables/jmppa2.png ../sprites/jumpercables/jmppc0.png

../graphics/jumpercables/jmpr_reticle1.png \
../graphics/jumpercables/jmpr_reticle2.png \
../graphics/jumpercables/jmpr_reticle3.png : jumpercables_reticle.aseprite
	aseprite -b $^ \
		--frame-range 0,2 --save-as $@

../sprites/jumpercables/jmpia0.png \
../sprites/jumpercables/jmpib0.png \
../sprites/jumpercables/jmpic0.png \
../sprites/jumpercables/jmpid0.png \
../sprites/jumpercables/jmpie0.png \
../sprites/jumpercables/jmpif0.png \
../sprites/jumpercables/jmpig0.png \
../sprites/jumpercables/jmpja0.png \
../sprites/jumpercables/jmpjb0.png \
../sprites/jumpercables/jmpjc0.png \
../sprites/jumpercables/jmpjd0.png \
../sprites/jumpercables/jmpje0.png \
../sprites/jumpercables/jmpjf0.png \
../sprites/jumpercables/jmpjg0.png : jumpercables_weaponsprite.aseprite

	aseprite -b $^ \
		--layer "numberindicatorl" \
		--frame-range 0,6 --save-as ../sprites/jumpercables/jmpia.png

	aseprite -b $^ \
		--layer "numberindicatorr" \
		--frame-range 0,6 --save-as ../sprites/jumpercables/jmpja.png

	mv ../sprites/jumpercables/jmpia1.png ../sprites/jumpercables/jmpia0.png
	mv ../sprites/jumpercables/jmpia2.png ../sprites/jumpercables/jmpib0.png
	mv ../sprites/jumpercables/jmpia3.png ../sprites/jumpercables/jmpic0.png
	mv ../sprites/jumpercables/jmpia4.png ../sprites/jumpercables/jmpid0.png
	mv ../sprites/jumpercables/jmpia5.png ../sprites/jumpercables/jmpie0.png
	mv ../sprites/jumpercables/jmpia6.png ../sprites/jumpercables/jmpif0.png
	mv ../sprites/jumpercables/jmpia7.png ../sprites/jumpercables/jmpig0.png
	mv ../sprites/jumpercables/jmpja1.png ../sprites/jumpercables/jmpja0.png
	mv ../sprites/jumpercables/jmpja2.png ../sprites/jumpercables/jmpjb0.png
	mv ../sprites/jumpercables/jmpja3.png ../sprites/jumpercables/jmpjc0.png
	mv ../sprites/jumpercables/jmpja4.png ../sprites/jumpercables/jmpjd0.png
	mv ../sprites/jumpercables/jmpja5.png ../sprites/jumpercables/jmpje0.png
	mv ../sprites/jumpercables/jmpja6.png ../sprites/jumpercables/jmpjf0.png
	mv ../sprites/jumpercables/jmpja7.png ../sprites/jumpercables/jmpjg0.png


letter_sprites_% :


	aseprite -b jumpercables_weaponsprite.aseprite \
		--layer "numberindicator$*" \
		--frame-range 0,6 --save-as tmp.png

	convert tmp6.png \
		tmp3.png -composite \
		tmp5.png -composite \
		tmp4.png -composite \
		tmp2.png -composite \
		tmp1.png -composite \
		indic_$*_0.png

	convert tmp4.png \
		tmp5.png -composite \
		indic_$*_1.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp3.png -composite \
		tmp5.png -composite \
		tmp2.png -composite \
		indic_$*_2.png

	convert tmp3.png \
		tmp4.png -composite \
		tmp5.png -composite \
		tmp6.png -composite \
		tmp7.png -composite \
		indic_$*_3.png

	convert tmp1.png \
		tmp4.png -composite \
		tmp5.png -composite \
		tmp7.png -composite \
		indic_$*_4.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp3.png -composite \
		tmp4.png -composite \
		tmp1.png -composite \
		indic_$*_5.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp3.png -composite \
		tmp4.png -composite \
		tmp1.png -composite \
		tmp2.png -composite \
		indic_$*_6.png

	convert tmp6.png \
		tmp5.png -composite \
		tmp4.png -composite \
		indic_$*_7.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp3.png -composite \
		tmp5.png -composite \
		tmp4.png -composite \
		tmp2.png -composite \
		tmp1.png -composite \
		indic_$*_8.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp3.png -composite \
		tmp5.png -composite \
		tmp4.png -composite \
		tmp1.png -composite \
		indic_$*_9.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp5.png -composite \
		tmp4.png -composite \
		tmp2.png -composite \
		tmp1.png -composite \
		indic_$*_a.png

	convert tmp7.png \
		tmp3.png -composite \
		tmp4.png -composite \
		tmp2.png -composite \
		tmp1.png -composite \
		indic_$*_b.png

	convert tmp3.png \
		tmp1.png -composite \
		tmp2.png -composite \
		tmp6.png -composite \
		indic_$*_c.png

	convert tmp7.png \
		tmp3.png -composite \
		tmp4.png -composite \
		tmp2.png -composite \
		tmp5.png -composite \
		indic_$*_d.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp3.png -composite \
		tmp2.png -composite \
		tmp1.png -composite \
		indic_$*_e.png

	convert tmp6.png \
		tmp7.png -composite \
		tmp2.png -composite \
		tmp1.png -composite \
		indic_$*_f.png

	mv indic_$*_0.png ../sprites/jumpercables/jmi$*a0.png
	mv indic_$*_1.png ../sprites/jumpercables/jmi$*b0.png
	mv indic_$*_2.png ../sprites/jumpercables/jmi$*c0.png
	mv indic_$*_3.png ../sprites/jumpercables/jmi$*d0.png
	mv indic_$*_4.png ../sprites/jumpercables/jmi$*e0.png
	mv indic_$*_5.png ../sprites/jumpercables/jmi$*f0.png
	mv indic_$*_6.png ../sprites/jumpercables/jmi$*g0.png
	mv indic_$*_7.png ../sprites/jumpercables/jmi$*h0.png
	mv indic_$*_8.png ../sprites/jumpercables/jmi$*i0.png
	mv indic_$*_9.png ../sprites/jumpercables/jmi$*j0.png
	mv indic_$*_a.png ../sprites/jumpercables/jmi$*k0.png
	mv indic_$*_b.png ../sprites/jumpercables/jmi$*l0.png
	mv indic_$*_c.png ../sprites/jumpercables/jmi$*m0.png
	mv indic_$*_d.png ../sprites/jumpercables/jmi$*n0.png
	mv indic_$*_e.png ../sprites/jumpercables/jmi$*o0.png
	mv indic_$*_f.png ../sprites/jumpercables/jmi$*p0.png

brightmaps : jumpercables_weaponsprite.aseprite

	aseprite -b $^ \
		--layer "brightmap_display" \
		--frame-range 0,0 --save-as brightmap_display.png

	aseprite -b $^ \
		--layer "brightmap_leds" \
		--frame-range 0,2 --save-as brightmap_leds.png

	composite brightmap_display.png brightmap_leds1.png -compose screen ../sprites/jumpercables/bright_jmpr_1.png
	composite brightmap_display.png brightmap_leds2.png -compose screen ../sprites/jumpercables/bright_jmpr_2.png
	composite brightmap_display.png brightmap_leds3.png -compose screen ../sprites/jumpercables/bright_jmpr_3.png

	rm brightmap_display.png
	rm brightmap_leds?.png

	rm tmp?.png
