You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

178 lines
5.4 KiB

3 years ago
#map flag nofollow off
#map flag direction off
#map flag static on
#map flag vtmap off
#map flag unicodegraphics on
3 years ago
#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};desc_start}} {1}
#action {^[ obvious exits: %1 ]$} {roomexits {%1};desc_stop;dirmove} {1}
#action {^[ obvious exits: ]$} {roomexits {};desc_stop;dirmove} {1}
#action {~%1 HP:%2 MV:%3 > \e[36m%4$} {#regex {%4} {%w speaks from the %*} {#nop} {roomname {%4};desc_start}} {1}
3 years ago
#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 desc_start {
#var desc {};
#action {^%%*$} {desc_append {%%1}} {2};
};
#alias desc_stop {
#unaction {^%*$};
#format {desc} {%p} {$desc};
}
#var desc {}
#alias desc_append {
#var desc {$desc %1}
};
3 years ago
#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}}
3 years ago
#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};
#list lastexitrooms create;
#showme SEARCH ROOM NAMES;
#foreach {$lastexits[%+]} {vnum} {
#map get {roomname} {exitname} {$vnum};
#if {"$exitname" == "$roomname"} {
#list lastexitrooms add {$vnum};
};
};
#if {&lastexitrooms[%+] == 0} {
#showme UNFOUND
}; #elseif {&lastexitrooms[%+] == 1} {
#var {vnum} {$lastexitrooms[1]};
#map get {roomname} {newname} {$vnum};
#showme MATCHED $newname $vnum;
movemap;
}; #else {
#showme SEARCHING EXITS;
#foreach {$lastexits[%+]} {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 {roomname} {newname} {$vnum};
#showme MATCHED $newname $vnum;
#var moved true;
movemap;
#break;
}
}
};
#if {"$moved" != "true"} {
#showme SEARCHING DESCRIPTION;
};
};
};
#var od {You are stunned by the size and splendor of Queen Morgase's Throne Room. The walls present hunting scenes carved in relief in stone of the purest white. Tapestries between the carvings are of bright flowers and brilliantly plumaged hummingbirds, except for the ones flanking the throne which proudly display the White Lion of Andor. On a dais at the room's far wall is a throne of marble. A greatdoor opens south into a large hall and an officedoor opens east into the Queen's private study. A smaller archway lies to the west.}
#alias findme {
#map list {roomname} {$roomname} {roomdesc} {$desc};
};
#alias movemap {
#map get roomvnum lastroom;
#map goto $vnum;
#map get roomvnum currentroom;
showmap;
};
#alias roomexits #var roomexits %1
#alias roomname {
#regex {%1} {%+} {
#line substitute variables #line strip #var {roomname} {%1}
};
#else {
#var roomname
}
}
3 years ago
#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 {#regex {%1} {%+} {#send look %1} {#send look;dirpush l}}
#alias f {#send flee;dirpush f}
#alias flee {#send flee;dirpush f}
3 years ago
#alias dirstack {#var dirs}
#alias dirclear {#list dirs create}
#var maprows 30
3 years ago
#var mapcols 60
#var mapout map.out