Introduction
Introduction Statistics Contact Development Disclaimer Help
Initial Act II structure. - dotg - Day Of The GrParazyd
git clone git://bitreich.org/dotg git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d…
Log
Files
Refs
Tags
---
commit acc6bfaf49a7e80036fa0e21bfbfafc158d3bbc5
parent cebcef36adb5f3cdec8a03e7b7464cb9561e5ce0
Author: parazyd <[email protected]>
Date: Sat, 24 Feb 2018 16:24:40 +0100
Initial Act II structure.
Diffstat:
A act-ii/config | 20 ++++++++++++++++++++
A act-ii/functions | 126 +++++++++++++++++++++++++++++…
A act-ii/indexreal.dcgi | 27 +++++++++++++++++++++++++++
M act-ii/maps | 13 ++++++++++++-
A act-ii/reset.dcgi | 12 ++++++++++++
5 files changed, 197 insertions(+), 1 deletion(-)
---
diff --git a/act-ii/config b/act-ii/config
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+export path="/dotg/act-ii"
+
+export savegame="/home/parazyd/dotg/act-ii/$REMOTE_ADDR"
+export cables="$savegame/cables"
+export musicsystem="$savegame/musicsystem"
+export homebase="$savegame/homebase"
+export windows10="$savegame/windows10"
+export dancefloor="$savegame/dancefloor"
+export cheeserat="$savegame/cheeserat"
+export hipsters="$savegame/hipsters"
+export stairs="$savegame/stairs"
+export elevator="$savegame/elevator"
+export bar="$savegame/bar"
+export toilet="$savegame/toilet"
+export vendingmachine="$savegame/vendingmachine"
+export inventory="$savegame/inventory"
+
+[ -d "$savegame" ] && return
diff --git a/act-ii/functions b/act-ii/functions
@@ -0,0 +1,126 @@
+#!/bin/sh
+
+navigation() {
+ locations="
+ DJ
+ Homebase
+ Dance_Floor
+ Hipsters
+ Hipster_Couch
+ Vending_Machine
+ Stairs
+ Elevator
+ Bar
+ Toilet
+ "
+ current="$(cat $savegame/room)"
+
+ echo
+ for i in $locations; do
+ if ! [ "$current" = "$i" ]; then
+ echo "[1|Go to $i|$path/$i.dcgi|server|port]"
+ fi
+ done
+}
+
+_msg() {
+ echo
+ echo "$*" | fmt --width=109 | sed 's/\t//g' | sed 's/^t/tt/'
+}
+
+dropitem() {
+ item="$1"
+ [ -f "$inventory/$item" ] || return 1
+ oldcount="$(cat $inventory/$item)"
+ newcount="$(( $oldcount - 1))"
+ if [ "$newcount" -lt 1 ]; then
+ rm -f "$inventory/$item"
+ else
+ printf "$newcount" > "$inventory/$item"
+ fi
+}
+
+list_items_to() {
+ what="$1"
+ where="$2"
+ cd "$where"
+ for i in $(ls -1); do
+ echo "[1|$i|$path/$what.dcgi?$where/$i|server|port]"
+ done
+ cd - >/dev/null
+
+ cat <<EOM
+
+(note: select any item to $what it)
+
+EOM
+}
+
+take_item() {
+ fullpath="$1"
+ itemname="$(basename $fullpath)"
+ mv "$fullpath" "$inventory/$itemname"
+}
+
+find_usecase() {
+ item="$1"
+ room="$2"
+
+ line="$(grep "^$item" usecases.csv)"
+ [ -z "$line" ] && {
+ _msg "No use for $item here."
+ return
+ }
+
+ uses="$(echo $line | tr ',' '\n' | tail -n+2)"
+ if [ "$uses" = "anywhere" ]; then
+ echo "use-generic"
+ return
+ fi
+
+ for i in $uses; do
+ if [ "$i" = "anywhere" ]; then
+ echo "use-generic"
+ return
+ elif [ "$i" = "$room" ]; then
+ echo "use-specific,$i"
+ return
+ fi
+ done
+
+ _msg "No use for $item here."
+}
+
+use_generic() {
+ case "$1" in
+ Euros)
+ dropitem "$item"
+ _msg "You throw a 1 Euro coint at a hipster."
+ ;;
+
+ Cigarettes)
+ dropitem "$item"
+ _msg "You smoke a cigarette."
+ ;;
+
+ Beers)
+ dropitem "$item"
+ _msg "You drink a beer."
+ ;;
+
+ Cheese)
+ _msg "You eat a piece of cheese."
+ ;;
+ esac
+}
+
+use_specific() {
+ call="$1"
+ item="$2"
+
+ case "$call" in
+ *)
+ _msg "Not implemented"
+ ;;
+ esac
+}
diff --git a/act-ii/indexreal.dcgi b/act-ii/indexreal.dcgi
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+. config
+. functions
+
+cat <<EOM
+
+ ▛▀▖ ▞▀▖▗▀▖ ▀▛▘▌ ▞▀▖ ▛▀▖ …
+ ▌ ▌▝▀▖▌ ▌ ▌ ▌▐ ▌ ▛▀▖▞▀▖ ▌▄▖▙▀�…
+ ▌ ▌▞▀▌▚▄▌ ▌ ▌▜▀ ▌ ▌ ▌▛▀ ▌ ▌▌ ▌ …
+ ▀▀ ▝▀▘▗▄▘ ▝▀ ▐ ▘ ▘ ▘▝▀▘ ▝▀ ▘ ▘ …
+
+A Bitreich FOSDEM adventure... 03 Feb 2018 A.D.
+
+
+ ⣎⣱ ⢀⣀ ⣰⡀ ⡇ ⡇
+ ⠇⠸ ⠣⠤ ⠘⠤ ⠇ ⠇
+ -- "Hackers"
+EOM
+
+if [ -f "$savegame/room" ]; then
+ _msg "[1|Continue adventure!|$path/$(cat ${savegame}/room).dcgi|server…
+else
+ _msg "[1|Start adventure!|$path/start.dcgi|server|port]"
+fi
+
+echo "[1|Go back :(|/dotg/index.gph|server|port]"
diff --git a/act-ii/maps b/act-ii/maps
@@ -6,10 +6,21 @@ cat <<EOM
EOM
+# C – Cables
+# DJ – Music System
+# WE – We
+# W10 – Windows 10 Guy
+# C+R – Cheese + Rat
+# H – Hipsters
+# DF – Dancefloor
+# S – Stairs
+# E – Elevator
+# T – Toilet
+
map_start() {
cat <<EOM
+-----+
- | (E) |
+ | (E) |
+----------------------+--------------------------------------+----+_____+-+
|xxxxxxxxxxxxxxxxxxxxxx| +--------+ |xxxxxxxxxxxxxxxxxxxxxx| |
| TTTTTTTTTTTTT | | | | (BAR) | |
diff --git a/act-ii/reset.dcgi b/act-ii/reset.dcgi
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+. config
+
+rm -rf "$savegame"
+
+cat <<EOM
+
+Game state reset.
+
+[1|Go back|/dotg/act-ii/indexreal.dcgi|server|port]
+EOM
You are viewing proxied material from bitreich.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.