#include "undef.h" #include "exits.h" Zone = castle Author = "Unknown" EndZone = castle Mobile = golem Name = "The Golem" Location = S_Hall@castle Strength = 90 Armor = 0 Damage = 10 Aggression = 30 Speed = 0 Desc = "A huge stone golem stands watchfully on guard." Trap = all @ switch(event) { case E_ONMOVE: if (iscarrby (OBJ_CASTLE_RUNESWORD, param_s.plx) && ploc (param_s.pl) == ploc (param_s.plx)) { bprintf ("\001cThe Golem\003 bars the doorway!\n"); param_s.ret = -1; } break; default: break; } @ EndTrap EndMobile = golem Mobile = mouse Name = "The Mouse" Location = Store@castle Strength = 20 Armor = 0 Damage = 6 Aggression = 5 Desc = "A giant black mouse runs around on the floor." EndMobile = mouse Object = wall_stone Name = "stone" Altname = "wall" Location = IN_ROOM:torture@castle OFlags = NoGet Linked = bar_stone@kastle MaxState = 1 State = 1 Desc0 = "There is a stairway leading down here." Desc1 = "A stairway leading down here ends in a wall of stone." EndObject = wall_stone Object = rock_wall Name = "wall" Altname = "rock" Location = IN_ROOM:Escape@castle OFlags = PushToggle, NoGet Linked = rock_wall@kastle State = 1 MaxState = 1 Desc0 = " A panel has been opened in the rock wall allowing passage south." Desc1 = "The passage ends to the south in a rock wall." EndObject = rock_wall Object = torch Location = IN_ROOM:S_Hall@castle OFlags = NoGet MaxState = 1 Desc0 = "A battered torch hangs on the south wall." Examine = "It seems unusual, perhaps it has some hidden purpose?" Trap = all @ switch(event) { case E_ONPUSH: if (state (OBJ_CASTLE_DOOR_GOLEM) == 1) { setobjstate (OBJ_CASTLE_DOOR_GOLEM, 0); sendf (oloc (OBJ_CASTLE_DOOR_GOLEM), "A secret door slides quietly open in the south wall!\n"); } else bprintf ("It moves but nothing seems to happen.\n"); param_s.ret = -1; break; default: break; } @ EndTrap EndObject = torch Object = key Location = IN_ROOM:Guard@castle OFlags = Key Size = 1 Weight = 1 Desc0 = "A small brass key has been left here." EndObject = key Object = Door_Golem Name = "door" Location = IN_ROOM:S_Hall@castle OFlags = NoGet, PushToggle Linked = Door_Tower@tower State = 1 MaxState = 1 Desc0 = "There is a small door open in the south wall." Examine = " The door is perfectly smooth and rounded to fit against the wall perfectly. There appear to be no markings on it, save a single, large blue eye, which appears to follow you around the chamber. There is no lock that you can see to operate the door, at least by mortal means." EndObject = Door_Golem Object = Port_Inside Name = "portcullis" Location = IN_ROOM:Port@castle Linked = Port_Outside OFlags = NoGet State = 0 MaxState = 1 Desc0 = "The portcullis is raised." Desc1 = "The heavy iron portcullis bars the way north." Examine = " You find yourself examining a hard iron portcullis, which you have absolutely no chance of lifting or breaking through!" EndObject = Port_Inside Object = Port_Outside Name = "portcullis" Location = IN_ROOM:Walls@castle OFlags = NoGet Linked = Port_Inside State = 0 MaxState = 1 Desc0 = "A raised portcullis allows access south." Desc1 = "A heavy iron portcullis bars the way south." Examine = " You find yourself examining a hard iron portcullis, which you have no chance in Hell of lifting or breaking through!" EndObject = Port_Outside Object = lever Location = IN_ROOM:Port@castle OFlags = NoGet Desc0 = "There is a large iron lever on the east wall." Examine = " This is a very solid looking lever, jutting out from the wall, which would seem to work the portcullis system, but you never know till you try!" Trap = all @ switch(event) { case E_ONPUSH: setobjstate (OBJ_CASTLE_PORT_INSIDE, 1 - state (OBJ_CASTLE_PORT_INSIDE)); if (state (OBJ_CASTLE_PORT_INSIDE)) { sendf (oloc (OBJ_CASTLE_PORT_INSIDE), "\001cThe portcullis falls.\n\003"); sendf (oloc (OBJ_CASTLE_PORT_OUTSIDE), "\001cThe portcullis falls.\n\003"); } else { sendf (oloc (OBJ_CASTLE_PORT_INSIDE), "\001cThe portcullis rises.\n\003"); sendf (oloc (OBJ_CASTLE_PORT_OUTSIDE), "\001cThe portcullis rises.\n\003"); } param_s.ret = -1; break; default: break; } @ EndTrap EndObject = lever Object = horseshoe Altname = "shoe" Location = IN_ROOM:Stables@castle Armor = 3 BaseValue = 10 Size = 3 Weight = 2 Desc0 = "An old horseshoe lies nearby." Examine = " This looks really lucky, though not for the horse whose lower leg is still attached to it!" EndObject = horseshoe Object = runesword Altname = "sword" Location = IN_ROOM:S_Hall@castle OFlags = GetFlips, Lit, Weapon, BlockMagic State = 1 MaxState = 1 Damage = 20 BaseValue = 500 Size = 20 Weight = 30 Desc0 = " A huge sword has been left here, its black blade strangely pulsing with light." Desc1 = " A huge sword stands upright before you, embedded in the solid stone floor." Examine = " The sword is covered with runes which form a curse. The black,faintly glowing blade also seems to hum quietly." Trap = all @ switch (event) { case E_ONGIVE: if (plev(param_s.plx) < LVL_APPREN) { bprintf("The Runesword does not wish to be given away.\n"); param_s.ret = -1; } else param_s.ret = 1; break; case E_ONDROP: if (plev(param_s.plx) < LVL_APPREN) { bprintf("You can't let go of it!\n"); param_s.ret = -1; } break; case E_ONGET: if (param_s.misc == DURING_GET) { if (state(param_s.ob) == 1 && ptothlp(param_s.plx) == -1) { bprintf("It's too well embedded to shift alone.\n"); param_s.ret = 0; } } default: break; } @ EndTrap EndObject = runesword Object = shortsword Altname = "sword" Location = IN_ROOM:Guard@castle OFlags = Weapon Damage = 10 BaseValue = 50 Size = 15 Weight = 10 Desc0 = "A sharp shortsword has been dropped here." Examine = " The sword, though not up to dwarven standards, still seems pretty sharp." EndObject = shortsword Object = dagger Altname = "sword" Location = IN_ROOM:Guard@castle OFlags = Weapon Damage = 5 BaseValue = 20 Size = 10 Weight = 10 Desc0 = "A small dagger has been dropped here." Examine = " This is no fake stage knife... as the blade is fixed quite firmly. It would certainly hurt anyone who was silly enough to get in the way of it, and it would be advisable to stop playing with it before you cut yourself!" EndObject = dagger Object = maiden Location = IN_ROOM:Torture@castle OFlags = NoGet, Openable Linked = In_Maiden MaxState = 1 Desc0 = "The iron maiden is open." Desc1 = "The iron maiden is closed." Examine = " It has some names written on it... Bruce, Steve, Nicko, Dave, Adrian and underneath... '12 Wasted Years, So Run To The Hills!'" EndObject = maiden Object = In_Maiden Name = "door" Altname = "maiden" Location = IN_ROOM:Maiden@castle OFlags = NoGet, Openable Linked = maiden MaxState = 1 Desc0 = "The iron maiden's door is open." Desc1 = "The iron maiden's door is closed." Examine = " The door has several sharp spikes on it, designed to penetrate certain delicate parts of anyone inside the maiden when the door is closed." EndObject = In_Maiden Object = Castle_Throne Name = "throne" Altname = "tunnel" Location = IN_ROOM:Chamber@castle OFlags = NoGet, PushToggle Linked = Escape_Throne State = 1 MaxState = 1 Desc0 = " A huge gleaming throne is set against the south wall, beside a narrow escape tunnel." Desc1 = "A huge gleaming throne is set against the south wall." Examine = " As you gaze at the throne, you think how great it would look behind a nice seven piece Sonor Performer drum kit, but unfortunately its stuck in this dismal castle." EndObject = Castle_Throne Object = Escape_Throne Name = "throne" Altname = "tunnel" Location = IN_ROOM:Escape@castle OFlags = PushToggle, NoGet Linked = Castle_Throne State = 1 MaxState = 1 Desc0 = "A small hole leads north into the hall." Desc1 = "The exit north is blocked by the back of a throne." Examine = ` The back of the throne is no less impressive than the front,though it's wooden surface is now covered with rough graffiti reading: "Argh! Who closed the bloody throne?!?"` EndObject = Escape_Throne Object = peppers Altname = "food" Location = IN_ROOM:Store@castle OFlags = Food BaseValue = 30 Size = 1 Weight = 1 Desc0 = "Some peppers have been left here." Examine = ' The peppers are about an inch long, red, and wicked looking. They might give you a heartburn if you ate them. Or, remember what happened in "Alien"?' EndObject = peppers Object = plank Location = IN_ROOM:Watch@castle OFlags = Lightable, Extinguish, Weapon State = 1 MaxState = 1 Damage = 6 Size = 20 Weight = 12 Desc0 = "A burning plank has been left here." Desc1 = "An old plank lies here." Examine = "It has the word VERYODD, and a picture of a sherman tank on it." EndObject = plank Location = "Leap" North = Npath@Valley South = Path@castle West = Watch@castle Title = "&+WBugiit's Leap&*" Desc = ^ You stand at the top of a tall cliff looking north, down into a deep valley. Huge rocks at the bottom offer the delights of total oblivion, to become just another smashed wreck at its base. If you are in no hurry, a narrow cliff path also leads down to the north descending down a fissure in the cliff itself. To the south a path runs towards a large castle with a threatening black tower, while to the west is an old watchtower. ^ EndLocation = "Leap" Location = "Watch" East = Leap@castle Down = Leap@castle Title = "&+WThe Ruined Watchtower&*" Desc = ^ You stand in the burnt out ruins of an old stone watchtower. Soot and moss cover the blackened crumbling stones. A single narrow set of steps wind down and east back to the path. ^ EndLocation = "Watch" Location = "Path" North = Leap@castle Down = eastcoast10@eastcoast South = Walls@castle LFlags = Outdoors, Realtime, NoMobiles Title = "&+WLong and Winding Path&*" Desc = ^ You are following a north-south path, which links the cliff edge with a large stone castle, out of which rises a black tower which glitters with the light, and from stored magical energy, some of which illuminates the very top of the tower with a bright, golden light. ^ EndLocation = "Path" Location = "Walls" North = Path@castle South = ^Port_Outside@castle LFlags = Outdoors, Realtime Title = "&+WCastle Walls&*" Desc = ^ You stand at the walls of a large castle, out of which looms up a large tower, crackling with magical energy. From here the castle looks deserted, but you can't be sure. The path leads back north, and the main archway into the castle is south. ^ EndLocation = "Walls" Location = "Court" North = Port@castle East = Stables@castle South = O_Hall@castle West = Guard@castle Title = "&+WThe Central Courtyard&*" Desc = ^ You stand in the central courtyard of a huge and ancient castle. Flickering torches, set high around the walls, illuminate even the darkest corners with a reddish flickering glow. A huge archway leads north, its sides carved with fantastic images of dragons and fables. Arched entryways lead south, east and west. ^ EndLocation = "Court" Location = "O_Hall" North = Court@castle East = S_Hall@castle South = Sanctum@castle West = Tax@castle Title = "&+WThe Outer Hall&*" Desc = ^ You stand in the shadowy outer hall, lit only by flaming torches high out of reach on the walls. The dim flickering light illuminates the many doorways which lead north, south, east and west. A cold draught blows through the hall, from the grand, heavily carved archway, which looks out northwards across the courtyard, its high thick walls silhouetted in the torch light. ^ EndLocation = "O_Hall" Location = "S_Hall" South = ^Door_Golem@castle West = O_Hall@castle Title = "&+WSide Hall&*" Desc = ^ You stand in a small gloomy hall, just east of the outer hall. All around you the walls seem to glow with magical power. You sense that maybe all is not as meets the eye. A single exit leads back west. ^ EndLocation = "S_Hall" Location = "Sanctum" North = O_Hall@castle South = Chamber@castle Title = "&+WInner Sanctum&*" Desc = ^ This is the stately room where the Lords and Ladies of court would wait to be entertained by the King of the Castle, although now the tapestries hang in shreds on the walls and all the treasures that once stood on pedestals have been smashed or stolen... it would appear that the castle has been raided and the King overthrown. Archways lead north and south. ^ EndLocation = "Sanctum" Location = "Tax" East = O_Hall@castle Title = "&+WTax Room&*" Desc = ^ This would appear to be the room where the taxes for the surrounding area were collected and counted, although not stored here, as you yourself found it so easy to get in. ^ EndLocation = "Tax" Location = "Chamber" North = Sanctum@castle East = Torture@castle South = ^Castle_Throne@castle West = Kitchens@castle Title = "&+WKing's Chamber&*" Desc = ^ You find yourself in a large chamber used for the King and his court to be entertained in all day and feast in at night, although it looks like the last feast had a main course with more bite than usual! Splendid archways lead north, east and west. ^ EndLocation = "Chamber" Location = "Port" North = ^Port_Inside@castle South = Court@castle Title = "&+WPortcullis&*" Desc = ^ You stand in a large archway which leads out onto a path to the north, and south back into the courtyard of the castle. Above you lies the complicated pulley system used to operate the portcullis. ^ EndLocation = "Port" Location = "Stables" West = Court@castle Title = "&+WStables&*" Desc = ^ You are standing in the stables for the castle, and from the floor you can tell that they have been in use recently. A strong wind gusts through the open doorway to the west. ^ EndLocation = "Stables" Location = "Escape" North = ^Escape_Throne@castle South = ^rock_wall@castle Title = "&+WEscape Passage&*" Desc = ^ This is a passageway which would be used by the King and his court if the castle defense was ever penetrated, to escape from the attackers, and looking at the lack of dust and cobwebs it would seem to have been used recently. The passage is small and dark, but probably more inviting than the wrong end of a sword. ^ EndLocation = "Escape" Location = "Kitchens" East = Chamber@castle Down = Store@castle Title = "&+WKitchens&*" Desc = ^ You are standing in the large kitchens for the castle where the daily feasts were prepared for court. The place is now in disarray, with tables and cooking utensils scattered all over the floor. Exits lead east, or down some stairs into the cellar. ^ EndLocation = "Kitchens" Location = "Store" Up = Kitchens@castle Title = "&+WKitchens' Store Room&*" Desc = ^ You are in a large and dry store room for the food and drink needed to keep the King happy. It seems to have escaped the attention of the attackers, as the stores are intact, but out of reach. A set of narrow steps lead up. ^ EndLocation = "Store" Location = "Torture" East = ^Maiden@castle West = Chamber@castle Title = "&+WTorture Chamber&*" Desc = ^ You are standing in a pleasant torture chamber which would appear to have been in regular use as not a single implement lies rusted. Many implements of torture lie about the room with various pieces of anatomy still attached to some of them. A single doorway leads west. ^ EndLocation = "Torture" Location = "Guard" East = Court@castle Title = "&+WGuard Room&*" Desc = ^ You find yourself in the guard room for the castle. Bunks line the walls, and weapon racks stand in the center of the room, though they are all empty now. Judging by the upturned tables and chairs and the dried blood on the floor you think that the guards may not have left on a Sunday afternoon stroll. A single narrow doorway leads east. ^ EndLocation = "Guard" Location = "Maiden" West = ^In_Maiden@castle Trap = all @ switch (event) { case E_ONTIMER: if (state (OBJ_CASTLE_IN_MAIDEN) == 1) { broad ("\001dThere is a long drawn out scream in the distance\n\003"); p_crapup (param_s.plx, "\t\tThe iron maiden closes....... S Q U I S H !", CRAP_SAVE); } else param_s.ret = 1; break; default: break; } @ EndTrap LFlags = NoSummon, OnePerson Title = "&+WInside the Iron Maiden&*" Desc = ^ You appear to be inside the Iron Maiden, an ancient form of torture, and you notice how good the fit is... ^ EndLocation = "Maiden"