forked from digitalocean/sample-websocket
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.sh
executable file
·103 lines (89 loc) · 3.16 KB
/
build.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#!/bin/sh
ROOT_PATH=$(git rev-parse --show-toplevel)
cd $ROOT_PATH
npm install
pip install git+https://github.com/NEW-CYLANDIA/PSBS-WS.git#egg=psbs
BRIDGE_PATH=$PWD"/public/bridges"
echo "building bitsy games..."
cd $ROOT_PATH"/node_modules/bitsy-boilerplate"
for file in $BRIDGE_PATH/src/bitsy/*.bitsy; do
if [ -f "$file" ]; then
FILENAME=$(basename ${file})
FILENAME_NOEX=${FILENAME%.*}
BB_FILEPATH=input/$FILENAME
rm $BRIDGE_PATH/$FILENAME_NOEX.html
cp $file $BB_FILEPATH
cp $BRIDGE_PATH/src/bitsy/bitsy-common.js input/bitsy-common.js
mv $BB_FILEPATH "input/gamedata.bitsy"
mv input/bitsy-common.js "input/hacks.js"
npm run build
mv "output/index.html" $BRIDGE_PATH/$FILENAME_NOEX.html
cat $BRIDGE_PATH/src/bridge-common.html >> $BRIDGE_PATH/$FILENAME_NOEX.html
> "input/hacks.js"
fi
done
echo "building twine games..."
cd $ROOT_PATH
export TWEEGO_PATH=$BRIDGE_PATH"/src/twine/storyformats"
for file in $BRIDGE_PATH/src/twine/*.twee; do
if [ -f "$file" ]; then
FILENAME=$(basename ${file})
FILENAME_NOEX=${FILENAME%.*}
rm $BRIDGE_PATH/$FILENAME_NOEX.html
tweego -o $BRIDGE_PATH/$FILENAME_NOEX.html $file
cat $BRIDGE_PATH/src/bridge-common.html >> $BRIDGE_PATH/$FILENAME_NOEX.html
fi
done
echo "building downpour games..."
cd $ROOT_PATH
INDEX_PATH=$BRIDGE_PATH"/src/downpour/index.html"
for file in $BRIDGE_PATH/src/downpour/*.json; do
if [ -f "$file" ]; then
FILENAME=$(basename ${file})
FILENAME_NOEX=${FILENAME%.*}
rm $BRIDGE_PATH/$FILENAME_NOEX.html
echo "<script>let data = " >> $BRIDGE_PATH/$FILENAME_NOEX.html
cat $file >> $BRIDGE_PATH/$FILENAME_NOEX.html
echo "</script>" >> $BRIDGE_PATH/$FILENAME_NOEX.html
cat $INDEX_PATH >> $BRIDGE_PATH/$FILENAME_NOEX.html
cat $BRIDGE_PATH/src/bridge-common.html >> $BRIDGE_PATH/$FILENAME_NOEX.html
fi
done
echo "updating puzzlescript-ws"
# cd $ROOT_PATH
# rm -r $ROOT_PATH/public/puzzlescript-ws
# git clone --depth=1 https://github.com/NEW-CYLANDIA/PuzzleScriptWebsocket.git
# cd PuzzleScriptWebsocket
# npm install
# node compile.js
# cat $BRIDGE_PATH/src/bridge-common.html >> bin/standalone_inlined.txt
# cat $BRIDGE_PATH/src/bridge-common.html >> bin/standalone.html
# cat $BRIDGE_PATH/src/bridge-common.html >> bin/editor.html
# mv bin $ROOT_PATH/public/puzzlescript-ws
# cd ..
# rm -rf PuzzleScriptWebsocket
echo "building puzzlescript games..."
cd $ROOT_PATH
PS_PATH=$BRIDGE_PATH"/src/puzzlescript"
cd $PS_PATH
for file in $PS_PATH/*.ps; do
if [ -f "$file" ]; then
FILENAME=$(basename ${file})
FILENAME_NOEX=${FILENAME%.*}
rm $BRIDGE_PATH/$FILENAME_NOEX.html
read -r LINE<$file
TITLE=${LINE:6:50}
TITLE="${TITLE//[$'\r']}"
echo $TITLE
psbs new --from-file $file $FILENAME_NOEX
cp psbs_config_template.yml $FILENAME_NOEX/config.yml
cd $FILENAME_NOEX
psbs export
cat "bin/$TITLE.html" >> $BRIDGE_PATH/$FILENAME_NOEX.html
cd ..
rm -r $FILENAME_NOEX
fi
done
cd $ROOT_PATH
echo "updating database"
node init.js