shithub: andre_quest

Download patch

ref: 73c945e63b540245928788a0c97b48fb91444f37
parent: 08db670dd8879dd5c283afa232b72165794255e1
author: glenda <glenda@ship.of.the.fools>
date: Mon Nov 3 01:45:20 EST 2025

added combat demo ac

--- /dev/null
+++ b/ac
@@ -1,0 +1,265 @@
+#!/bin/rc
+#ANDRE QUEST 9 COMBAT DEMO BLOCKCHAIN PREQUEL AI GENERATED
+
+fn clear { echo >/dev/text }
+fn dice { awk 'BEGIN{ srand(); print int(1 + rand() * '$1^' ) }' }
+fn ln { awk 'END{print NR}' $1 }
+fn rand_w { dice `{ ln $1 } }
+fn sortr { sed -n `{rand_w $1}^p $1 }
+
+fn inp {
+  >[3]/dev/consctl{
+     echo rawon >[1=3]
+     echo -n '> '
+     inp = `{read -c 1 /dev/cons}
+     if (~ $inp q) exit
+  }
+}
+
+fn hud {
+cat <<eof >/dev/text
+Andre
+ hp: $hp
+wep: $wep
+psa: $psa
+
+ ~VERSUS~
+
+$enemy
+ hp: $e_hp
+wep: $e_wep
+
+eof
+}
+
+fn prep {
+  switch ($1) {
+    case [aeiou]* ; echo -n an
+    case * ; echo -n a
+  }
+}
+
+fn caser {
+ switch($inp) {
+  case h 
+echo
+cat <<eof
+a - attack with the $wep
+p - use pure psychic automatism
+h - this help
+q - quit
+
+Enter to cont.
+eof
+read
+  case a
+ attack
+  case p
+ psa
+ }
+}
+
+fn banter {
+cat <<eof
+I. AM. SURREALISM!
+DIE!
+Take this, Andre!
+Take this!
+Chew on my $"e_wep !
+Andre, my name is $"enemy , you killed my father. Prepare to die.
+You cannot block my style.
+Prepare to be punished.
+I will pour molten ink down your throat!
+I hope this doesn't hurt too much!
+eof
+}
+
+fn banter_hurt {
+cat <<eof
+Bastard!
+That barely hurt.
+Ouch.
+That tickles, Andre.
+Andre! That hurt!
+How dare you!
+I will get you for this!
+eof
+}
+
+fn type_sim {
+ for (i) { for (ii in `{echo $i | sed 's,.,& ,g'} ) {
+            sleep .05 #^`{dice 2}
+            echo -n $ii
+      }
+  echo -n ' '
+ }
+echo
+}
+
+fn psa {
+
+ if (test $psa -gt 0 ) {
+ echo >/dev/text
+ type_sim `{ sed 10q /dev/random | tr -dc aeiouyhckrdtn}
+ echo
+ 
+ type_sim $enemy : " wtf? "
+ type_sim Andre : " I dunno. Computer speak. "
+ sleep 2
+
+ psa = `{ echo $psa - 1 | bc } 
+ }
+ if not echo Andre is out of pure psychic surrealism.
+}
+
+fn e_gen {
+
+  fn e_chars {
+ cat << eof
+Phillip Soupalt
+Toyen
+Jacquelin Lamba
+Nadja
+Kay Sage
+Paul Eluard
+Yves Tanguy
+Man Ray
+Salvador Dali
+eof
+  }
+
+ fn e_weps {
+ cat << eof
+wet fish
+sharpened paintbrush
+manifesto of surrealism
+first edition of the book of C
+packet filter
+phone protective screen
+box of parentheses
+interlisp t-shirt
+machine gun
+cracked thinkpad
+rob pike
+rabbit hat
+beer can
+corn on the cob
+hentai calendar
+pirate hook
+macaroni picture
+sickly dog
+eof
+  }
+
+ e_l = `{e_chars | ln }
+ enemy = `{e_chars | sed -n `{dice $e_l}^p}
+ e_l = `{e_weps | ln }
+ e_wep =`{e_weps | sed -n `{dice $e_l}^p}
+ wep = `{e_weps | sed -n `{dice $e_l}^p}
+ e_hp = 10
+ hp = 10
+ psa = 3
+
+}
+
+fn verbs {
+cat <<eof
+readies
+flicks
+licks
+pongs
+pings
+pats
+cocks
+fondles
+eof
+}
+
+fn hp_ck {
+if ( test $hp -le 0 ) hp = 0
+if ( test $e_hp -le 0 ) e_hp = 0
+switch ($hp) {
+ case 0 ; echo Andre is dead. ; exit
+ }
+switch ($e_hp) {
+ case 0 ; echo Andre defeated $enemy . ; exit
+ }
+}
+
+fn battle {
+ if ( ~ $turn 1 ) {
+ verb_l = `{verbs | ln }
+ verb = `{ verbs | sed -n `{dice $verb_l}^p }
+ banter_l = `{ banter | ln }
+ banter = `{ banter | sed -n `{ dice $banter_l}^p }
+ dmg = `{ dice 6 }
+
+ echo $enemy $verb the $e_wep .
+ type_sim $enemy : $banter
+ echo Andre is damaged for $dmg points.
+
+ hp = `{ echo $hp - $dmg | bc }
+ turn = 0
+ hp_ck
+ echo Cont.
+ read
+ }
+
+}
+
+fn attack {
+ verb_l = `{verbs | ln }
+ verb = `{ verbs | sed -n `{dice $verb_l}^p }
+ dmg = `{ dice 6 }
+ banter_l = `{ banter_hurt | ln }
+ banter = `{ banter_hurt | sed -n `{ dice $banter_l}^p }
+
+ echo Andre $verb the $"wep .
+ echo $"enemy is damaged for $dmg points.
+ type_sim $enemy : " $banter "
+ e_hp = `{ echo $e_hp - $dmg | bc }
+ turn = 1
+ hp_ck
+ echo Cont.
+ read
+
+}
+
+e_gen
+#echo >/dev/text
+type_sim Andre comes across $enemy armed with `{prep $"e_wep} $e_wep .
+type_sim $enemy : "Andre! Fight me!"
+type_sim Andre must fight $enemy .
+echo
+ok=1; n=1
+while (~ $ok 1) {
+
+type_sim Fight $enemy '?'
+inp
+switch ($inp) {
+ case [yY]   
+     type_sim Perfect. Andre readies his $wep .
+     sleep .3
+     ok=0 
+ case [nN] 
+     if (~ $n 3 ) { echo Fine, you chicken. ; exit }
+     type_sim You must fight $enemy ...
+     n = `{ echo $n +1 | bc }
+  }
+}
+
+flip = `{ dice 2 }
+turn = 1
+if ( ~ $flip 1 ) turn = 0
+
+while (test $hp -gt 0 || test $e_hp -gt 0) {
+
+ hud
+ battle
+ hud
+ inp
+ caser
+
+}
+
+
--