dotg

a bitreich fosdem adventure
git clone git://parazyd.org/dotg.git
Log | Files | Refs

commit 59bbf23e67d5b340f0b6e0b314518b7bfef38591
parent 08eec4ab66ee6f4db95de2b6b066099f4abb85e7
Author: Christoph Lohmann <20h@r-36.net>
Date:   Sun, 25 Feb 2018 15:02:52 +0100

Add French Mode.

Diffstat:
Mact-i/Balcony.dcgi | 9+++++++++
Mact-i/Toilet1.dcgi | 14++++++++++++++
Mact-i/Toilet1.sh | 48++++++++++++++++++++++++++++++++++++++++++------
Mact-i/Toilet2.dcgi | 9+++++++++
Mact-i/Toilet2.sh | 34+++++++++++++++++++++++++++++++---
Mact-i/host.dcgi | 5++++-
Mact-i/kitchen-sink.dcgi | 25+++++++++++++++----------
Mact-i/kitchen-sink.sh | 40++++++++++++++++++++++++++++++++--------
Mact-i/talk-20h.sh | 7++++++-
Mact-i/talk-elves.sh | 14+++++++++++++-
Mact-i/talk-gentoo.sh | 33+++++++++++++++++++++++++--------
Mact-i/talk-nerds.sh | 3++-
12 files changed, 202 insertions(+), 39 deletions(-)

diff --git a/act-i/Balcony.dcgi b/act-i/Balcony.dcgi @@ -1,5 +1,14 @@ #!/bin/sh +# SPOILER: +# The French mode was introduced because it was discriminatory to let a French +# person throw smelly cheese into a kitchen sink. So we made it possible to go +# the French way. See history for how often this happened. We like the French. +# +if [ -n "$2" ] && [ "$2" = "isfrench" ]; then + echo 1 > "$inventory/.isfrench" +fi + . config echo Balcony > $savegame/room . functions diff --git a/act-i/Toilet1.dcgi b/act-i/Toilet1.dcgi @@ -9,6 +9,11 @@ map_toilet1 _msg "## TOILET 1 (T1)" +# This would block the game, if it ever came true. So be sure. +if [ -f "$inventory/.isfrench" -a -f "$hipsters/obese/.takingashit" ]; then + rm -f "$hipsters/obese/.takingashit" +fi + if [ -f "$hipsters/obese/.takingashit" ]; then _msg "The toilet is blocked by the spaniard taking a shit." if [ -f "$toilet1/shower/Black_dildo" ]; then @@ -16,6 +21,15 @@ if [ -f "$hipsters/obese/.takingashit" ]; then here? Arrrrgh.'" fi else + if ! [ -f "$inventory/.sawratintoilet1" ]; then + _msg "You see a rat disappear into the shower drain!" + printf 1 > "$inventory/.sawratintoilet1" + fi + + if [ -f "$inventory/.sawratintoilet1" ]; then + _msg "You have to catch this rat you saw." + fi + cat <<EOM You are in one of the toilets. diff --git a/act-i/Toilet1.sh b/act-i/Toilet1.sh @@ -9,16 +9,52 @@ specific_toilet1() { printf 1 > "$toilet1/toilet/Water" ;; - Black_dildo) - _msg "You stick the black dildo in the shower drain, - rendering it shut." - mv "$inventory/$item" "$toilet1/shower" - if [ -f "$kitchen/sink/Cheese" ]; then - if [ -f "$toilet2/shower/Black_dildo" ]; then + Cheese) + # Space between punctuation marks intended. + if [ -f "$inventory/.isfrench" ]; then + _msg "You made it here with the smelly cheese ! + + The cheese tells you: + »Je t'aime !« + + You look deep into the eyes of the + cheese and realize it wants it too ! + + Now let us do it, you lovely cheese ! + + You have a French orgy with the + cheese. The whole toilet is now full + of cheese." + mv "$inventory/$item" "$toilet2/shower" + + if [ -f "$kitchen/sink/Black_dildo" -o \ + "$hipsters/obese/.inkitchensink" ] && \ + [ -f "$toilet2/shower/Black_dildo" ]; then _msg "You hear a strange noise coming from the NeXT machine." rm -f "$inventory/.notyet" fi fi + + Black_dildo) + if [ -f "$inventory/.isfrench" ]; + then + _msg "You read the sign: + + »Cette toilette est réservé pour le + sexe de fromage !« + + and stop your intention." + else + _msg "You stick the black dildo in the shower drain, + rendering it shut." + mv "$inventory/$item" "$toilet1/shower" + if [ -f "$kitchen/sink/Cheese" ]; then + if [ -f "$toilet2/shower/Black_dildo" ]; then + _msg "You hear a strange noise coming from the NeXT machine." + rm -f "$inventory/.notyet" + fi + fi + fi ;; esac } diff --git a/act-i/Toilet2.dcgi b/act-i/Toilet2.dcgi @@ -17,6 +17,15 @@ _msg "## TOILET 2 (T2)" case "$gotkey" in yes) + if ! [ -f "$inventory/.sawratintoilet2" ]; then + _msg "You see a rat disappear into the shower drain!" + printf 1 > "$inventory/.sawratintoilet2" + fi + + if [ -f "$inventory/.sawratintoilet2" ]; then + _msg "You have to catch this rat you saw." + fi + _msg "You are in one of the toilets. You see a toilet, sink, and a shower." diff --git a/act-i/Toilet2.sh b/act-i/Toilet2.sh @@ -12,16 +12,44 @@ specific_toilet2() { _msg "You make a dick pic using the smartphone camera." ;; + Cheese) + # Space between punctuation marks intended. + if [ -f "$inventory/.isfrench" ]; then + _msg "You made it here with the smelly cheese ! + + The cheese tells you: + »Je t'aime !« + + But then you read the sign: + + »Pour votre securité, ces + toilettes est sou surveillance + videó et le sexe du fromage + est interdit !« + + Maybe you should use toilet 1 for + this." + fi + ;; Black_dildo) _msg "You stick the black dildo in the shower drain, rendering it shut." mv "$inventory/$item" "$toilet2/shower" - if [ -f "$kitchen/sink/Cheese" ]; then - if [ -f "$toilet1/shower/Black_dildo" -o \ - "$hipsters/obese/.takingashit" ]; then + if [ -f "$inventory/.isfrench" ]; then + if [ -f "$toilet1/shower/Cheese" ] && \ + [ -f "$hipsters/obese/.inkitchensink" -o \ + "$kitchen/sink/Black_dildo" ]; then _msg "You hear a strange noise coming from the NeXT machine." rm -f "$inventory/.notyet" fi + else + if [ -f "$kitchen/sink/Cheese" ]; then + if [ -f "$toilet1/shower/Black_dildo" -o \ + "$hipsters/obese/.takingashit" ]; then + _msg "You hear a strange noise coming from the NeXT machine." + rm -f "$inventory/.notyet" + fi + fi fi ;; esac diff --git a/act-i/host.dcgi b/act-i/host.dcgi @@ -24,8 +24,11 @@ You oversee the room and see some free spots on the couch in front of you. You look at your friend and tell him to go grab tthe seats, and you'll be there with the beers. -"Okay!" - He says, and leaves for the couch (HIP) +"May I ask you if you are French?" + +"Okay! I see it in your face." - He says, and leaves for the couch (HIP) You look around again, and +[1|leave towards the balcony the French way.|$path/Balcony.dcgi?isfrench|server|port] [1|leave towards the balcony.|$path/Balcony.dcgi|server|port] EOM diff --git a/act-i/kitchen-sink.dcgi b/act-i/kitchen-sink.dcgi @@ -13,18 +13,23 @@ cat <<EOM You are at the kitchen sink. EOM -if ! [ -f "$kitchen/sink/.notyet" ]; then - _msg "You see a rat disappear into the sink drain!" - printf 1 > "$inventory/.sawratinsink" +if [ -f "$hipsters/obese/.inkitchensink" ]; then + _msg "You see the obese spaniard taking a shit in the kitchen sink. + A rat won't be able to exit here." +else + if ! [ -f "$kitchen/sink/.notyet" ]; then + _msg "You see a rat disappear into the sink drain!" + printf 1 > "$inventory/.sawratinsink" + fi + + if [ -f "$inventory/.sawratinsink" ]; then + _msg "You have to catch this rat you saw." + fi + + _msg "In the sink you see:" + list_items_to take "$kitchen/sink" fi -if [ -f "$inventory/.sawratinsink" ]; then - _msg "You have to catch this rat you saw." -fi - -_msg "In the sink you see:" -list_items_to take "$kitchen/sink" - cat <<EOM [1|Check inventory|$path/inventory.dcgi|server|port] diff --git a/act-i/kitchen-sink.sh b/act-i/kitchen-sink.sh @@ -1,16 +1,40 @@ specific_talk_kitchensink() { item="$1" case "$item" in - Cheese) - _msg "You place the cheese in the kitchen sink." + Black_dildo) + if [ -f "$inventory/.isfrench" ]; + then + _msg "You stick the black dildo in the kitchen + sink drain, rendering it shut." + + if [ -f "$toilet1/shower/Cheese" ] && \ + [ -f "$toilet2/shower/Black_dildo" ]; then + _msg "You hear a strange noise coming from the NeXT machine." + rm -f "$inventory/.notyet" + fi + fi mv "$inventory/$item" "$kitchen/sink" - if [ -f "$toilet1/shower/Black_dildo" -o \ - "$hipsters/obese/.takingashit" ] && \ - [ -f "$toilet2/shower/Black_dildo" ]; then - _msg "You hear a strange noise coming from the NeXT machine." - rm -f "$inventory/.notyet" + ;; + Cheese) + if [ -f "$inventory/.isfrench" ]; then + if [ -f "$hipsters/obese/.inkitchensink" ]; then + _msg "The kitchen sink is blocked by + the spaniard." + else + _msg "You are French! Why would you + put smelly cheese into a kitchen + sink! Dare you!" + fi + else + _msg "You place the cheese in the kitchen sink." + mv "$inventory/$item" "$kitchen/sink" + if [ -f "$toilet1/shower/Black_dildo" -o \ + "$hipsters/obese/.takingashit" ] && \ + [ -f "$toilet2/shower/Black_dildo" ]; then + _msg "You hear a strange noise coming from the NeXT machine." + rm -f "$inventory/.notyet" + fi fi ;; esac } - diff --git a/act-i/talk-20h.sh b/act-i/talk-20h.sh @@ -61,7 +61,12 @@ specific_talk_20h() { ;; Cheese) - _msg "This cheese smells and belongs into the kitchen sink." + if [ -f "$inventory/.isfrench" ]; then + _msg "Oh you are French! You should know what + to do with it in the toilet." + else + _msg "This cheese smells and belongs into the kitchen sink." + fi ;; Beers) diff --git a/act-i/talk-elves.sh b/act-i/talk-elves.sh @@ -48,6 +48,14 @@ on the table. Once done, everyone pretends like this has never happened. EOM + +if [ -f "$inventory/.isfrench" ]; +then + _msg " + The elves seem to like your French accent and know what you + like. They put the cheese directly into your pocket." +fi + rm -f "$inventory/Google_Ad_coupons" rm -f "$kitchen/sink/.notyet" allaround="$inventory @@ -71,7 +79,11 @@ EOM printf 1 > "$i/Black_dildo" done printf 1 > "$inventory/.orgyhappened" - printf 1 > "$kitchen/table/Cheese" + if [ "$inventory/.isfrench" ]; then + printf 1 > "$inventory/Cheese" + else + printf 1 > "$kitchen/table/Cheese" + fi ;; esac } diff --git a/act-i/talk-gentoo.sh b/act-i/talk-gentoo.sh @@ -1,7 +1,8 @@ specific_talk_gentoo() { item="$1" - if [ -f "$hipsters/obese/.takingashit" ]; then + if [ -f "$hipsters/obese/.takingashit" -o \ + "$hipsters/obese/.inkitchensink" ]; then _msg "The yoghurt did not bode well for the spaniard. He's taking a shit." return fi @@ -44,18 +45,34 @@ specific_talk_gentoo() { Old_yoghurt) _msg "You give the old yoghurt to the spaniard. He starts eating it. - You hear his stomach gurgling. Struggling, but he manages to get - up and start walking towards the toilet." + You hear his stomach gurgling. Struggling, but he manages to get" + + if [ -f "$inventory/.isfrench" ]; then + _msg "up and start walking towards the kitchen sink." + printf 1 > "$hipsters/obese/.inkitchensink" + else + _msg "up and start walking towards the toilet." + printf 1 > "$hipsters/obese/.takingashit" + fi - printf 1 > "$hipsters/obese/.takingashit" rm -f "$toilet1/shower/.notyet" rm -f "$toilet2/shower/.notyet" cp -f "$hipsters/obese/Plate_of_Bolognese_Sauce" "$hipsters/coffeetable" - if [ -f "$kitchen/sink/Cheese" -a \ - -f "$toilet2/shower/Black_dildo" ]; then - _msg "You hear a strange noise coming from the - NeXT machine." + if [ -f "$inventory/.isfrench" ]; then + if [ -f "$toilet1/shower/Cheese" -a \ + -f "$toilet2/shower/Black_dildo" ]; then + _msg "You hear a strange noise coming from the + NeXT machine." + rm -f "$inventory/.notyet" + fi + else + if [ -f "$kitchen/sink/Cheese" -a \ + -f "$toilet2/shower/Black_dildo" ]; then + _msg "You hear a strange noise coming from the + NeXT machine." + rm -f "$inventory/.notyet" + fi fi ;; diff --git a/act-i/talk-nerds.sh b/act-i/talk-nerds.sh @@ -21,8 +21,9 @@ specific_talk_nerds() { [1|Go to Act II|/dotg/act-ii|server|port]" printf 1 > "$inventory/.timemachineactivated" rm -f "$hipsters/obese/.takingashit" + rm -f "$hipsters/obese/.inkitchensink" else - _msg "Something is missing." + _msg "Something important is missing." fi ;;