VERB pry, strike, wake, say, beam, join, opener, glow, grab, weigh, rname, score, debug; feel = touch; shake = wake; hit = strike; kill = strike; shut = close; push = move; pull = move; lift = move; destroy = break; incant = say; chant = say; shout = say; yell = say; out = exit; cg = Proc() { "You can't go that way.\n"; MyLoc = $loc($ME); } die = Proc() { "You are dead. Better luck next time.\n"; Die(); } Looks = Proc() { If (Dobj) { "Huh?\n"; $exit(1); } GOVERB = TRUE; MyLoc = -1; } n (PREACT) = Looks; s (PREACT) = Looks; e (PREACT) = Looks; w (PREACT) = Looks; nw(PREACT) = Looks; ne(PREACT) = Looks; sw(PREACT) = Looks; se(PREACT) = Looks; u (PREACT) = Looks; d (PREACT) = Looks; out (PREACT) = Looks; enter (PREACT) = Looks; say (PREACT) = Proc() { Expect(NO_OBJ|ONE_OBJ|STR_OBJ|PLAIN_OBJ, NO_OBJ); If (!Dobj) { "Type just what you want to say: "; Dobj = $read(); } If (Dobj >= 0) { "You want to make ", $name(Dobj), " a linguistic artifact?? Strange!\n"; $exit(1); } } say (ACTION) = Proc() { If (Dobj ?= Shazm) { WzTgl(); } Else { "Very well. '", Dobj, "'.\n"; } } DWIMD = Proc() {Return Dwimmer($arg(1));} DWIMI = Proc() {Return Dwimmer($arg(1));} wake(PREACT) = Preact; wake(ACTION) = Proc() {"I don't know how to wake ", $name(Dobj), ".\n";} strike(PREACT) = Preact; strike(ACTION) = Proc() { "Hitting the ", $name(Dobj), " doesn't seem to do anything."; } pry(PREACT) = Proc() { Expect(ONE_OBJ|PLAIN_OBJ, ONE_OBJ|PLAIN_OBJ); CheckAvail(); } pry(ACTION) = Proc() {"I can't seem to manage that.\n";} Tress = Proc() { "You were warned about trespassing! The fence is electrified!\n"; die(); } score(ACTION) = Proc() { If ($loc($ME) == town5) { "A mysterious glowing network of lights appears, and you can ", "just make out the words:\n", "\tYour account is now at $", $str(SCORE), ". ", "\tThank you for letting Arpa-Citizen's be your host. ", "The network then disappears.\n"; } Else { "Hmm, you'll have to check at the local bank.\n"; } } WizP = Proc() { If (!Wizrd) { "Only a real Wizard can do that!\n"; $exit(1); } } rname(PREACT) = Proc() { If (Dobj) { WizP(); $sdesc(Dobj)(); } Else { $sdesc($loc($ME))(); } $exit(1); } beam(PREACT) = WizP; grab(PREACT) = WizP; join(PREACT) = WizP; opener(PREACT) = WizP; glow(PREACT) = WizP; weigh(PREACT) = WizP; debug(PREACT) = WizP; beam(ACTION) = Proc() { If (Dobj) { $move($ME, Dobj); MyLoc = -1; } } join(ACTION) = Proc() { If (Dobj) { $move($ME, $loc(Dobj)); MyLoc = -1; } } opener(ACTION) = Proc() { If (Dobj) { Dobj.OPENED = TRUE; "Opened.\n"; } } glow(ACTION) = Proc() { $ME.LIGHT = !$ME.LIGHT; If ($ME.LIGHT) "Your body begins to radiate a strong but gentle white light!\n"; Else "The light from your body fades away.\n"; } grab(ACTION) = Proc() { If (Dobj) { "You have the ", $name(Dobj), ", Boss!\n"; $move(Dobj, $ME); $ME.HAS = $ME.HAS + Dobj.WEIGH; } } weigh(ACTION) = Proc() { If (Dobj) "The ", $name(Dobj), " weighs ", $str(Dobj.WEIGH); Else "You are carrying ", $str($ME.HAS); " pounds, Boss!\n"; } debug(ACTION) = Proc() { $spec(DEBUG); // Turn on debugging }