#map flag nofollow off #map flag direction off #map flag static on #map flag vtmap off #map flag unicodegraphics on #unpathdir n #unpathdir s #unpathdir e #unpathdir w #unpathdir u #unpathdir d #list dirs create #action {~\e[36m%1$} {#regex {%1} {%w speaks from the %*} {#line {log} {.wotmud-comms}} {roomname {%1}}} {1} #action {^[ obvious exits: %1 ]$} {roomexits {%1};dirmove} {1} #action {^[ obvious exits: ]$} {roomexits {};dirmove} {1} #action {~%1 HP:%2 MV:%3 > \e[36m%4$} {#regex {%4} {%w speaks from the %*} {#nop} {roomname {%4}}} {1} #action {It is pitch black...} {dirmove} {1} #action {Alas, you cannot go that way...} {dirpop} {1} #action {You can't ride in there.} {dirpop} {1} #action {Your mount is too exhausted.} {dirpop} {1} #action {In your dreams, or what?} {dirpop} {1} #action {Maybe you should get on your feet first?} {dirpop} {1} #action {No way! You're fighting for your life!} {dirpop} {1} #action {You would need to swim there, you can't just walk it.} {dirpop} {1} #action {You are too exhausted.} {dirpop} {1} #action {You need a boat to go there.} {dirpop} {1} #action {You would need to swim there, you can't just walk it.} {dirpop} {1} #action {You shudder at the concept of crossing water.} {dirpop} {1} #action {You need to swim to go there.} {dirpop} {1} #action {You can't ride there on a horse!} {dirpop} {1} #action {You can't ride on water.} {dirpop} {1} #action {Nah... You feel too relaxed to do that..} {dirpop} {1} #action {PANIC! You couldn't escape!} {dirpop} {1} #action {You would need to climb there from here.} {dirpop} {1} #action {The %1 seems to be closed.} {dirpop;#variable door %1} {1} #alias leader {#var leader %1} #action {You now follow %1.} {leader %1} #action {You stop following %1.} {#unvar leader} #action {%1 leaves %2.} {#if {"%1" == "$leader"} {dirpush %2}} {2} #action {%1 leaves %2 riding a %3.} {#if {"%1" == "$leader"} {dirpush move %2}} {1} #action {%1 (Head of group)} {leader %1} #action {You are now a member of %1's group.} {leader %1} {1} #alias maprows {#var maprows %1} #alias mapcols {#var mapcols %1} #alias mapout {#var mapout %1} #alias showmap {#map map $maprows $mapcols overwrite $mapout} #alias dirpush #list dirs insert -1 %1 #alias dirget #list dirs get 1 dir #alias dirpop {#list dirs size dirsize;#if {$dirsize == 0} {#nop} {#list dirs delete 1}} #alias dirmove {dirget;#if {"$dir" !== "0"} {dirpop;#if {"$dir" !== "l"} {#if {"$dir" == "f"} {doflee}; #else {domove}}}} #alias domove {#map get roomvnum lastroom;#map move $dir;#map get roomvnum currentroom;showmap} #alias doflee { #map get roomvnum lastroom; #map get {roomexits} {lastexits} {$lastroom}; #foreach {$lastexits[%+]} {vnum} { #map get {roomname} {exitname} {$vnum}; #if {"$exitname" == "$roomname"} { #map get {roomexits} {foundexits} {$vnum}; #list currentroomexits create; #parse {$roomexits} {pexit} { #if {"$pexit" != " "} { #format {pexit} {%l} {$pexit}; #list currentroomexits add {$pexit}; } }; #foreach {$currentroomexits[%+]} {cre} { #var roommatch true; #if {"$foundexits[$cre]" == ""} { #var roommatch false; }; #else { #unvar {foundexits[$cre]}; }; }; #if {"$roommatch" == "true" && &foundexits[%+] == 0} { #map get roomvnum lastroom; #map goto {$vnum}; #map get roomvnum currentroom; showmap; #break; } } } } #alias roomexits #var roomexits %1 #alias roomname { #regex {%1} {%+} { #line substitute variables #line strip #var {roomname} {%1} }; #else { #var roomname } } #alias n {#send north;dirpush n} #alias e {#send east;dirpush e} #alias s {#send south;dirpush s} #alias w {#send west;dirpush w} #alias u {#send up;dirpush u} #alias d {#send down;dirpush d} #alias l {#send look %1;dirpush l} #alias l {#regex {%1} {%+} {#send look %1} {#send look}} #alias f {#send flee;dirpush f} #alias flee {#send flee;dirpush f} #alias dirstack {#var dirs} #alias dirclear {#list dirs create} #var maprows 30 #var mapcols 60 #var mapout map.out