2019-05-02 01:27:20 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# Build all the doodads from their source files.
|
|
|
|
if [[ ! -d "./azulian" ]]; then
|
|
|
|
echo Run this script from the dev-assets/doodads/ working directory.
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
mkdir -p ../../assets/doodads
|
|
|
|
|
2020-09-19 05:35:43 +00:00
|
|
|
boy() {
|
|
|
|
cd boy/
|
|
|
|
|
|
|
|
doodad convert -t "Boy" stand-right.png stand-left.png \
|
|
|
|
walk-right-1.png walk-right-2.png walk-right-3.png \
|
|
|
|
walk-left-1.png walk-left-2.png walk-left-3.png \
|
|
|
|
boy.doodad
|
|
|
|
doodad install-script boy.js boy.doodad
|
|
|
|
|
|
|
|
cp *.doodad ../../../assets/doodads/
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
2019-05-02 01:27:20 +00:00
|
|
|
buttons() {
|
|
|
|
cd buttons/
|
|
|
|
|
2019-05-05 23:32:30 +00:00
|
|
|
doodad convert -t "Sticky Button" sticky1.png sticky2.png button-sticky.doodad
|
|
|
|
doodad install-script sticky.js button-sticky.doodad
|
2019-05-02 01:27:20 +00:00
|
|
|
|
|
|
|
doodad convert -t "Button" button1.png button2.png button.doodad
|
|
|
|
doodad install-script button.js button.doodad
|
|
|
|
|
|
|
|
doodad convert -t "Button Type B" typeB1.png typeB2.png button-typeB.doodad
|
|
|
|
doodad install-script button.js button-typeB.doodad
|
2019-05-05 23:32:30 +00:00
|
|
|
|
|
|
|
cp button*.doodad ../../../assets/doodads/
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
Add Switches, Fire/Water Collision and Play Menu
* New doodads: Switches.
* They come in four varieties: wall switch (background element, with
"ON/OFF" text) and three side-profile switches for the floor, left
or right walls.
* On collision with the player, they flip their state from "OFF" to
"ON" or vice versa. If the player walks away and then collides
again, the switch flips again.
* Can be used to open/close Electric Doors when turned on/off. Their
default state is "off"
* If a switch receives a power signal from another linked switch, it
sets its own state to match. So, two "on/off" switches that are
connected to a door AND to each other will both flip on/off when one
of them flips.
* Update the Level Collision logic to support Decoration, Fire and Water
pixel collisions.
* Previously, ALL pixels in the level were acting as though solid.
* Non-solid pixels don't count for collision detection, but their
attributes (fire and water) are collected and returned.
* Updated the MenuScene to support loading a map file in Play Mode
instead of Edit Mode. Updated the title screen menu to add a button
for playing levels instead of editing them.
* Wrote some documentation.
2019-07-07 01:30:03 +00:00
|
|
|
switches() {
|
|
|
|
cd switches/
|
|
|
|
|
|
|
|
doodad convert -t "Switch" switch-off.png switch-on.png switch.doodad
|
|
|
|
doodad convert -t "Floor Switch" down-off.png down-on.png switch-down.doodad
|
|
|
|
doodad convert -t "Left Switch" left-off.png left-on.png switch-left.doodad
|
|
|
|
doodad convert -t "Right Switch" right-off.png right-on.png switch-right.doodad
|
|
|
|
|
|
|
|
doodad install-script switch.js switch.doodad
|
|
|
|
doodad install-script switch.js switch-down.doodad
|
|
|
|
doodad install-script switch.js switch-left.doodad
|
|
|
|
doodad install-script switch.js switch-right.doodad
|
|
|
|
|
|
|
|
cp *.doodad ../../../assets/doodads/
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
2019-05-05 23:32:30 +00:00
|
|
|
doors() {
|
|
|
|
cd doors/
|
2020-04-03 04:43:41 +00:00
|
|
|
./build.sh
|
2019-05-05 23:32:30 +00:00
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
|
|
|
trapdoors() {
|
|
|
|
cd trapdoors/
|
|
|
|
|
|
|
|
doodad convert -t "Trapdoor" down{1,2,3,4}.png trapdoor-down.doodad
|
2019-07-05 22:02:22 +00:00
|
|
|
doodad convert -t "Trapdoor Left" left{1,2,3,4}.png trapdoor-left.doodad
|
|
|
|
doodad convert -t "Trapdoor Right" right{1,2,3,4}.png trapdoor-right.doodad
|
|
|
|
doodad convert -t "Trapdoor Up" up{1,2,3,4}.png trapdoor-up.doodad
|
|
|
|
doodad install-script trapdoor.js trapdoor-down.doodad
|
|
|
|
doodad install-script trapdoor.js trapdoor-left.doodad
|
|
|
|
doodad install-script trapdoor.js trapdoor-right.doodad
|
|
|
|
doodad install-script trapdoor.js trapdoor-up.doodad
|
2019-05-05 23:32:30 +00:00
|
|
|
|
2020-01-03 06:12:20 +00:00
|
|
|
doodad edit-doodad -q --tag direction=down trapdoor-down.doodad
|
|
|
|
doodad edit-doodad -q --tag direction=left trapdoor-left.doodad
|
|
|
|
doodad edit-doodad -q --tag direction=right trapdoor-right.doodad
|
|
|
|
doodad edit-doodad -q --tag direction=up trapdoor-up.doodad
|
|
|
|
|
2019-05-05 23:32:30 +00:00
|
|
|
cp trapdoor-*.doodad ../../../assets/doodads/
|
2019-05-02 01:27:20 +00:00
|
|
|
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
|
|
|
azulians() {
|
|
|
|
cd azulian/
|
|
|
|
|
|
|
|
doodad convert -t "Blue Azulian" blu-front.png blu-back.png \
|
|
|
|
blu-wr{1,2,3,4}.png blu-wl{1,2,3,4}.png azu-blu.doodad
|
|
|
|
doodad install-script azulian.js azu-blu.doodad
|
2019-05-05 23:32:30 +00:00
|
|
|
|
|
|
|
doodad convert -t "Red Azulian" red-front.png red-back.png \
|
|
|
|
red-wr{1,2,3,4}.png red-wl{1,2,3,4}.png azu-red.doodad
|
|
|
|
doodad install-script azulian-red.js azu-red.doodad
|
|
|
|
|
|
|
|
cp azu-*.doodad ../../../assets/doodads/
|
2019-05-02 01:27:20 +00:00
|
|
|
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
2020-12-30 04:31:35 +00:00
|
|
|
mobs() {
|
|
|
|
cd bird/
|
|
|
|
|
|
|
|
doodad convert -t "Bird (red)" left-1.png left-2.png right-1.png right-2.png \
|
|
|
|
dive-left.png dive-right.png bird-red.doodad
|
|
|
|
doodad install-script bird.js bird-red.doodad
|
|
|
|
|
|
|
|
cp *.doodad ../../../assets/doodads/
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
2019-07-02 22:24:46 +00:00
|
|
|
objects() {
|
|
|
|
cd objects/
|
|
|
|
|
|
|
|
doodad convert -t "Exit Flag" exit-flag.png exit-flag.doodad
|
|
|
|
doodad install-script exit-flag.js exit-flag.doodad
|
|
|
|
|
2019-12-31 02:13:28 +00:00
|
|
|
doodad convert -t "Start Flag" start-flag.png start-flag.doodad
|
|
|
|
|
|
|
|
cp *.doodad ../../../assets/doodads/
|
|
|
|
|
|
|
|
cd ../crumbly-floor
|
|
|
|
|
|
|
|
doodad convert -t "Crumbly Floor" floor.png shake1.png shake2.png \
|
|
|
|
fall1.png fall2.png fall3.png fall4.png fallen.png \
|
|
|
|
crumbly-floor.doodad
|
|
|
|
doodad install-script crumbly-floor.js crumbly-floor.doodad
|
|
|
|
cp *.doodad ../../../assets/doodads/
|
|
|
|
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
|
|
|
onoff() {
|
|
|
|
cd on-off/
|
|
|
|
|
|
|
|
doodad convert -t "State Button" blue-button.png orange-button.png state-button.doodad
|
|
|
|
doodad install-script state-button.js state-button.doodad
|
|
|
|
|
|
|
|
doodad convert -t "State Block (Blue)" blue-on.png blue-off.png state-block-blue.doodad
|
|
|
|
doodad install-script state-block-blue.js state-block-blue.doodad
|
|
|
|
|
|
|
|
doodad convert -t "State Block (Orange)" orange-off.png orange-on.png state-block-orange.doodad
|
|
|
|
doodad install-script state-block-orange.js state-block-orange.doodad
|
|
|
|
|
2019-07-02 22:24:46 +00:00
|
|
|
cp *.doodad ../../../assets/doodads/
|
|
|
|
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
2020-12-30 04:31:35 +00:00
|
|
|
warpdoor() {
|
|
|
|
cd warp-door/
|
|
|
|
|
|
|
|
doodad convert -t "Warp Door" door-1.png door-2.png door-3.png door-4.png warp-door.doodad
|
|
|
|
doodad edit-doodad -q --tag color=none warp-door.doodad
|
|
|
|
doodad install-script warp-door.js warp-door.doodad
|
|
|
|
|
|
|
|
doodad convert -t "Warp Door (Blue)" blue-1.png blue-2.png blue-3.png blue-4.png blue-off.png \
|
|
|
|
warp-door-blue.doodad
|
|
|
|
doodad edit-doodad -q --tag color=blue warp-door-blue.doodad
|
|
|
|
doodad install-script warp-door.js warp-door-blue.doodad
|
|
|
|
|
|
|
|
doodad convert -t "Warp Door (Orange)" orange-off.png orange-1.png orange-2.png orange-3.png orange-4.png \
|
|
|
|
warp-door-orange.doodad
|
|
|
|
doodad edit-doodad -q --tag color=orange warp-door-orange.doodad
|
|
|
|
doodad install-script warp-door.js warp-door-orange.doodad
|
|
|
|
|
|
|
|
cp *.doodad ../../../assets/doodads/
|
|
|
|
|
|
|
|
cd ..
|
|
|
|
}
|
|
|
|
|
2020-09-19 05:35:43 +00:00
|
|
|
boy
|
2019-05-02 01:27:20 +00:00
|
|
|
buttons
|
Add Switches, Fire/Water Collision and Play Menu
* New doodads: Switches.
* They come in four varieties: wall switch (background element, with
"ON/OFF" text) and three side-profile switches for the floor, left
or right walls.
* On collision with the player, they flip their state from "OFF" to
"ON" or vice versa. If the player walks away and then collides
again, the switch flips again.
* Can be used to open/close Electric Doors when turned on/off. Their
default state is "off"
* If a switch receives a power signal from another linked switch, it
sets its own state to match. So, two "on/off" switches that are
connected to a door AND to each other will both flip on/off when one
of them flips.
* Update the Level Collision logic to support Decoration, Fire and Water
pixel collisions.
* Previously, ALL pixels in the level were acting as though solid.
* Non-solid pixels don't count for collision detection, but their
attributes (fire and water) are collected and returned.
* Updated the MenuScene to support loading a map file in Play Mode
instead of Edit Mode. Updated the title screen menu to add a button
for playing levels instead of editing them.
* Wrote some documentation.
2019-07-07 01:30:03 +00:00
|
|
|
switches
|
2019-05-05 23:32:30 +00:00
|
|
|
doors
|
|
|
|
trapdoors
|
2019-05-02 01:27:20 +00:00
|
|
|
azulians
|
2020-12-30 04:31:35 +00:00
|
|
|
mobs
|
2019-07-02 22:24:46 +00:00
|
|
|
objects
|
2019-12-31 02:13:28 +00:00
|
|
|
onoff
|
2020-12-30 04:31:35 +00:00
|
|
|
warpdoor
|
2019-07-07 06:50:38 +00:00
|
|
|
doodad edit-doodad -quiet -lock -author "Noah" ../../assets/doodads/*.doodad
|
2019-07-09 01:16:45 +00:00
|
|
|
doodad edit-doodad -hide ../../assets/doodads/azu-blu.doodad
|
2020-09-19 05:35:43 +00:00
|
|
|
doodad edit-doodad -hide ../../assets/doodads/boy.doodad
|