trick-or-treat - annna - Annna the nice friendly bot.
HTML git clone git://bitreich.org/annna/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/annna/
DIR Log
DIR Files
DIR Refs
DIR Tags
DIR README
---
trick-or-treat (6851B)
---
1 #!/bin/bash
2
3 export PATH="/home/annna/bin:$PATH"
4
5 output_trick_treat() {
6 if [ $# -gt 0 ];
7 then
8 case "${1}" in
9 treat) choice=1;;
10 *) choice=0;;
11 esac
12 else
13 choice="$(( $RANDOM % 2 ))"
14 fi
15 case "${choice}" in
16 1) case "$(( $RANDOM % 3 ))" in
17 0) candy="🍬";;
18 1) candy="🍭";;
19 2) candy="🍫";;
20 esac
21 printf "You are so kind. Here is a candy: ${candy}";;
22 0) printf "BOO! ༼ つ ╹ ╹ ༽つ Did I scare you? Here's a spooky treat: $(boo)";;
23 esac
24 }
25
26 run_for_your_life() {
27 printf "An army of skeletons is approaching! RUN FOR YOUR LIFE!\n"
28 cat <<-'RUN'
29 .-. _)/
30 (0,0) .\
31 (u) ()
32 .-. _\) .-="=-.//
33 (o,o) \,//==\===
34 (e) () ===== .-.
35 .-="=-. \(_ .-. _____ =,= (a.a)
36 //==I==\\,/ (d.b) ()--___(0V0) (/_ (=)
37 () ="= () (u) ||()----' \, ___.="==-._
38 \`(0V0) .-="-. |' \\ ()---` ==\==\\
39 /|) ||\\ //==/=\\ ==" \' ="= ()
40 || \\ ==. () ==== ()_/_ ==" ____(0V0) \`
41 jgs () () \, `\"= ` ()---` // (|\
42 // // \\ ___(0);` \)/ .-. || //
43 '/ '/ ()---' \\ /,(o,o) |' ()
44 "== "== \\ () (w) ==" \\
45 () /_ ___ \\,=", \`
46 .-. // '-()-() =/=\\ =="
47 (o.o) '/ //\\|| ==== () .-. \(_
48 (n) "== /` \\| ="= `| (-.-) ,/
49 .-="=-. \) ==" `(0V0) '-- (-) ()
50 // =T= \\,/ joan stark .-="=.//
51 RUN
52 }
53
54 if [ -n "${ANNNA_BASE}" ];
55 then
56 output_trick_treat
57 exit 0
58 fi
59
60 cat <<-'SPOOK'
61 , ^'^ _
62 ) (_) ^'^
63 _/\_ .---------. (( ^'^
64 (('> )`'`'`'`'`( || ^'^
65 _ /^| /`'`'`'`'`'`\|| ^'^
66 =>--/__|m--- /`'`'`'`'`'`'`\|
67 ^^ ,,,,,,, /`'`'`'`'`'`'`'`\ ,
68 .-------.`|`````````````|` . )
69 / .^. .^. \| ,^^, ,^^, | / \ ((
70 / |_| |_| \ |__| |__| | /,-,\||
71 _ /_____________\ |")| | | |/ |_| \|
72 (") | __ __ | '==' '==' /_______\ _
73 (' ') | / \ / \ | _______ |,^, ,^,| (")
74 \ \ | |--| |--| | ((--.--)) ||_| |_|| (' ')
75 _ ^^^ _ | |__| |("| | || | || |,-, ,-,| / /
76 ,' ', ,' ', | | || | || ||_| |_|| ^^^
77 .,,|RIP|,.|RIP|,.,,'==========='==''=='==''=='=======',,....,,,,.,ldb
78 SPOOK
79
80 printf "\n"
81 printf "You go to the door of this lovely neighbourhood house.\n"
82 printf "Open the door? [y/n] > "
83 read -r choice
84 case "${choice}" in
85 y) printf "You approach the door ... \n"
86 sleep 1
87 printf "You knock on the door ... "
88 sleep 1
89 for (( knocks=$(( $RANDOM % 5 + 1 )); $knocks > 0; knocks--));
90 do
91 printf "*KNOCK* *KNOCK* "
92 sleep 1
93 done
94 printf "\n"
95 printf "A nice lady opens up the door ....\n"
96 sleep 2
97 cat <<-'WITCH'
98 ___ \--/
99 .' `"-._ /`-' '-`\
100 / , `'-_.-. / \
101 / /`'. ,' _ | HELLO /.'|/\ /\|'.\
102 `-' `-. ,' ,'\\/ .../ \/
103 \, ,' ee`-.
104 / ./ ,(_ \ ,
105 (_/\\\ \__|`--' ||
106 ///\\| \ ||
107 ////||-./`-.} .--||
108 / `-.__.-`_.-.|
109 | '._,-'`|___} `;
110 / '. |/ || ,;'`
111 | '.__,.-` || ':,
112 | | || ,;'
113 / / _,.||oOoO.,_
114 | | \-.O,o_O..-/
115 / / / \
116 | / / \
117 | | | , |
118 / | \ ) ( ) /
119 jgs | \ ,'.(:, ),: (_.'.
120 / /'.' ="`""="="=="= '.
121 `'"---'-.__.'"""` ` "" "" `""
122 WITCH
123 printf "Do you approach? [y/n] > "
124 read -r choice
125 case "${choice}" in
126 y) printf "You go closer to the lady ...\n"
127 sleep 3
128 printf "The lady says: %s\n" "$(output_trick_treat "$(id -nu)")";;
129 *) case "$(( $RANDOM % 2 ))" in
130 0) printf "The nice lady approaches you ...\n"
131 sleep 2
132 printf "You are afraid ...\n"
133 sleep 3
134 printf "The lady says: %s\n" "$(output_trick_treat)";;
135 *) run_for_your_life;;
136 esac;;
137 esac;;
138 *) case "$(( $RANDOM % 2 ))" in
139 0) run_for_your_life;;
140 *) cat <<-'PUMPKIN'
141 ........
142 ;::;;::;,
143 ;::;;::;;,
144 ;;:::;;::;;,
145 .vnmmnv%vnmnv%,.;;;:::;;::;;, .,vnmnv%vnmnv,
146 vnmmmnv%vnmmmnv%vnmmnv%;;;;;;;%nmmmnv%vnmmnv%vnmmnv
147 vnmmnv%vnmmmmmnv%vnmmmmmnv%;:;%nmmmmmmnv%vnmmmnv%vnmmmnv
148 vnmmnv%vnmmmmmnv%vnmmmmmmmmnv%vnmmmmmmmmnv%vnmmmnv%vnmmmnv
149 vnmmnv%vnmmmmmnv%vnmmmmmmmmnv%vnmmmmmmmmmmnv%vnmmmnv%vnmmmnv
150 vnmmnv%vnmmmmmnv%vnmm;mmmmmmnv%vnmmmmmmmm;mmnv%vnmmmnv%vnmmmnv,
151 vnmmnv%vnmmmmmnv%vnmm;' mmmmmnv%vnmmmmmmm;' mmnv%vnmmmnv%vnmmmnv
152 vnmmnv%vnmmmmmnv%vn;; mmmmnv%vnmmmmmm;; nv%vnmmmmnv%vnmmmnv
153 vnmmnv%vnmmmmmmnv%v;; mmmnv%vnmmmmm;; v%vnmmmmmnv%vnmmmnv
154 vnmmnv%vnmmmmmmnv%vnmmmmmmmmm;; mmmmmmmmmnv%vnmmmmmmnv%vnmmmnv
155 vnmmnv%vnmmmmmmnv%vnmmmmmmmmmm;; mmmmmmmmmmnv%vnmmmmmmnv%vnmmmnv
156 vnmmnv%vnmmmmm nv%vnmmmmmmmmmmnv;, mmmmmmmmmmmmnv%vn;mmmmmnv%vnmmmnv
157 vnmmnv%vnmmmmm nv%vnmmmmmmmmmnv%;nmmmmmmmmmmmnv%vn; mmmmmnv%vnmmmnv
158 `vnmmnv%vnmmmm, v%vnmmmmmmmmmmnv%vnmmmmmmmmmmnv%v; mmmmnv%vnnmmnv'
159 vnmmnv%vnmmmm;, %vnmmmmmmmmmnv%vnmmmmmmmmmnv%;' mmmnv%vnmmmmnv
160 vnmmnv%vnmmmm;;, nmmm;' mmmm;;' mmmnv%vnmmmmnv'
161 `vnmmnv%vnmmmmm;;,. mmnv%v;, mmmmnv%vnmmmmnv'
162 `vnmmnv%vnmmmmmmnv%vnmmmmmmmmnv%vnmmmmmmnv%vnmmmmmnv%vnmmmmnv'
163 `vnmvn%vnmmmmmmnv%vnmmmmmmmnv%vnmmmmmnv%vnmmmmmnv%vnmmmnv'
164 `vn%vnmmmmmmn%:%vnmnmmmmnv%vnmmmnv%:%vnmmnv%vnmnv'
165 PUMPKIN
166 ;;
167 esac
168 esac
169
170 sleep 2
171 cat <<'HAHALLOWEEN'
172
173 # # # #### #### # #
174 #### ### # ## # ## ###
175 # # # # # # # #
176
177 # # # # # ## # # #### #### # ##
178 #### ### # # # # # # # #-- #-- # # #
179 # # # # ### ### ## ### #### #### ## #
180
181 HAHALLOWEEN
182
183 exit 0
184