1  !% +language_name=Swedish
    2  !~S
    3  ! !SD ! Dessa är de flaggor som bör användas tillsammans med konstanten TEST_VERSION
    4  
    5  ! Denna källkod är avsedd att kompileras med Inform 6.31, bibliotek 6/11, Swedish Inform v1.5.
    6  
    7  ! ------------------------------------------------------------------------------
    8  !  Äventyr -       Ett klassiskt spel och ett typexempel på spel i Inform 6
    9  !
   10  !         Översatt från engelska Advent.inf, Serial 060321, release 9
   11  ! ------------------------------------------------------------------------------
   12  
   13  
   14  Include "SweAlpha";
   15  
   16  ! Constant TEST_VERSION;
   17  
   18  Constant Story "ÄVENTYR";
   19  Constant Headline
   20      "^Det Interaktiva Originalet^
   21        Av Will Crowther (1976) och Don Woods (1977)^
   22        Rekonstruerat i tre steg av:^
   23        Donald Ekman, David M. Baggett (1993) och Graham Nelson (1994)^
   24        Release 9 av den engelska versionen översatt till svenska av Fredrik Ramsberg (2007)^
   25        [In memoriam Stephen Bishop (1820?-1857): GN]^^";
   26  Serial "071029";
   27  Release 1;
   28  
   29  ! Äventyrs IFID -- see http://babel.ifarchive.org/
   30  Array UUID_ARRAY string "UUID://78B5816F-2F79-CE0B-633D-6D95EC06154E//"; #Ifdef UUID_ARRAY; #Endif;
   31  
   32  
   33  Constant MANUAL_PRONOUNS;
   34  Constant AMUSING_PROVIDED;
   35  Constant MAX_CARRIED   = 7;
   36  Constant MAX_SCORE     = 350;
   37  Constant MAX_TREASURES = 15;
   38  
   39  #Ifdef TEST_VERSION; !!!
   40  ! Sist i koden byts random ut mot en version som kan ge förutsägbara resultat
   41  Replace random; !!!
   42  #Endif; !!!
   43  
   44  Include "Parser";
   45  Include "VerbLib";
   46  Include "SweRout";
   47  
   48  Attribute nodwarf;                      ! Dvärgar kan inte gå till detta rum
   49  Attribute treasure_found;               ! Skatt-objekt har hittats
   50  Attribute multitude;                    ! Används endast av RÄKNA
   51  
   52  Global caves_closed;                    ! Har värdet true när grottan stängs
   53  Global canyon_from;                     ! Ravin att återvända till
   54  Global treasures_found;                 ! Antal hittade skatter
   55  Global deaths;                          ! Antal dödsfall/återuppväckningar
   56  Global dark_warning;                    ! Har värdet true efter varning om mörka hål
   57  Global feefie_count;                    ! fee/fie/foe/foo sekvens
   58  
   59  ! ------------------------------------------------------------------------------
   60  !   Regler för skatter som ska spridas över hela spelet
   61  ! ------------------------------------------------------------------------------
   62  
   63  Class   Treasure
   64    with  after [;
   65            Take:
   66              if (location == Inside_Building)
   67                  score = score - self.depositpoints;
   68              score = score + 5;
   69              if (noun hasnt treasure_found) {
   70                  give noun treasure_found;
   71                  treasures_found++;
   72                  score = score + 2;
   73              }
   74              SetGender(self); ! Se till att objektet har ett genus
   75              if(self has pluralname)
   76                  "Tagna!";
   77              if(self has neuter)
   78                  "Taget!";
   79              "Tagen!";
   80            Insert:
   81              score = score - 5;  ! (in case put inside the wicker cage)
   82            Drop:
   83              score = score - 5;
   84              if (location == Inside_Building) {
   85                  score = score + self.depositpoints;
   86                  SetGender(self); ! Se till att objektet har ett genus
   87                  print "Deponera";
   88                  if(self has pluralname)
   89                      print "de";
   90                  else if(self has neuter)
   91                      print "t";
   92                  else
   93                      print "d";
   94                  " i säkert förvar.";
   95              }
   96          ],
   97          depositpoints 10;
   98  
   99  ! ------------------------------------------------------------------------------
  100  !   Utomhusvärlden
  101  ! ------------------------------------------------------------------------------
  102  
  103  Class   Room;
  104  
  105  Class   Aboveground
  106    class Room
  107    has   light nodwarf;
  108  
  109  Class   Scenic
  110    has   scenery;
  111  
  112  Aboveground At_End_Of_Road "Vid slutet av en väg"
  113    with  teleport_to
  114              'kulle' 'kullen' At_Hill_In_Road
  115              'byggnad' 'byggnaden' 'hus' 'huset' 'brunnshus' 'tegelbyggnad' Inside_Building
  116              'nedströms' 'nerströms' 'kanjon' 'kanjonen' 'bäck' 'bäcken' 'dal' 'dalen' 'dalgång' 'dalgången' In_A_Valley
  117              'skog' 'skogen' In_Forest_1
  118              'galler' 'gallret' 'stålgaller' 'stålgallret' 'grop' 'gropen' Outside_Grate,
  119          description
  120              "Du står vid slutet av en väg framför en liten tegelbyggnad.
  121               Runt dig är en skog.
  122               En bäck rinner ut ur byggnaden och fortsätter ner i en dalgång.",
  123          w_to At_Hill_In_Road,
  124          u_to At_Hill_In_Road,
  125          e_to Inside_Building,
  126          d_to In_A_Valley,
  127          s_to In_A_Valley,
  128          n_to In_Forest_1,
  129          in_to Inside_Building;
  130  
  131  Scenic  "brunnshus"
  132    with  name 'brunnshus' 'brunnshuset' 'hus' 'huset' 'tegelbyggnad'
  133               'tegelbyggnaden' 'byggnad' 'byggnaden' 'liten' 'litet' 'lilla',
  134          short_name_def "brunnshuset",
  135          description "Det är en liten tegelbyggnad. Det verkar vara ett brunnshus.",
  136          found_in At_End_Of_Road At_Hill_In_Road Inside_Building,
  137          before [;
  138            Enter:
  139              if (location == At_Hill_In_Road && Inside_Building hasnt visited)
  140                  "Det är för långt bort.";
  141              <<Teleport Inside_Building>>;
  142          ],
  143     has  neuter;
  144  
  145  Scenic  Stream "bäck"
  146    with  name 'bäck' 'bäcken' 'vatten' 'vattnet' 'å//' 'ån' 'flod' 'floden'
  147               'sjö' 'sjön' 'liten' 'litet' 'lilla' 'plaskande' 'strömmande'
  148               'reservoar' 'reservoaren' 'fors' 'forsen',
  149          short_name_def "bäcken",
  150          found_in At_End_Of_Road In_A_Valley At_Slit_In_Streambed In_Pit
  151                   In_Cavern_With_Waterfall At_Reservoir Inside_Building,
  152          before [;
  153            Drink:
  154              "Du drack från bäcken.
  155               Vattnet smakar starkt av mineraler, men är inte alls oangenämt.
  156               Det är extremt kallt.";
  157            Take:
  158              if (bottle notin player)
  159                  "Du har inget att bära vattnet i.";
  160              <<Fill bottle>>;
  161            Insert:
  162              if (second == bottle) <<Fill bottle>>;
  163              "Du har inget att bära vattnet i.";
  164            Receive:
  165              if (noun == ming_vase) {
  166                  remove ming_vase;
  167                  move shards to location;
  168                  score = score - 5;
  169                  "Den plötsliga temperaturväxlingen spräckte elegant vasen.";
  170              }
  171              if (noun == bottle) <<Fill bottle>>;
  172              remove noun;
  173              if (noun ofclass Treasure) score = score - 5;
  174              "Bäcken sköljer bort ", (the) noun, ".";
  175          ];
  176  
  177  Scenic  "väg"
  178    with  name 'väg' 'vägen' 'gata' 'gatan' 'stig' 'stigen' 'grus' 'gruset' 'grusväg' 'grusvägen',
  179          description "Det är en grusväg, ingen paradgata direkt.",
  180          short_name_def "vägen",
  181          found_in At_End_Of_Road At_Hill_In_Road In_Forest_2;
  182  
  183  Scenic  "skog"
  184    ! Tvingades dela upp name-arrayen i två delar för att den blev för stor.
  185    ! Lade till en parse_name som tar hänsyn till båda arrayerna
  186    with  name 'skog' 'skogen' 'träd' 'träden' 'trädet' 'ek' 'eken' 'ekar' 'ekarna'
  187               'asp' 'aspen' 'aspar' 'asparna' 'dunge' 'dungen' 'dungar' 'dungarna'
  188               'tall' 'tallen' 'tallar' 'tallarna' 'små' 'lilla' 'gran' 'granen' 'granar' 'granarna',
  189          name2 'björk' 'björken' 'björkar' 'björkarna' 'ask' 'asken' 'askar' 'askarna'
  190               'skott' 'skotten' 'skottet' 'buske' 'busken' 'buskar' 'buskarna'
  191               'löv' 'löven' 'bärbuske' 'bärbusken' 'bärbuskar' 'bärbuskarna'
  192               'smågran' 'smågranen' 'smågranar' 'smågranarna',
  193          parse_name [ wd num;
  194            wd = NextWord();
  195            while (WordInProperty(wd, self, name) || WordInProperty(wd, self, name2)) {
  196                num++;
  197                wd = NextWord();
  198            }
  199            return num;
  200          ],
  201          short_name_def "skogen",
  202          description
  203              "Skogen består mest av stora ekar och aspar,
  204               med en och annan dunge med tall eller gran.
  205               Det finns en hel del undervegetation,
  206               mestadels skott av björk och asp samt olika typer av buskar.
  207               Vid den här tiden på året är sikten ganska begränsad av alla löv,
  208               men det är lätt att förflytta sig om man bara rundar smågranarna och bärbuskarna.",
  209          found_in At_End_Of_Road At_Hill_In_Road In_A_Valley In_Forest_1 In_Forest_2,
  210    has   multitude;
  211  
  212  ! ------------------------------------------------------------------------------
  213  
  214  Aboveground At_Hill_In_Road "På en kulle på vägen"
  215    with  teleport_to
  216            'väg' 'vägen' 'kulle' 'kullen' 'framåt' 'fortsätt' At_End_Of_Road
  217            'skog' 'skogen' In_Forest_1,
  218          description
  219              "Du har gått uppför en kulle i skogen.
  220               Vägen leder tillbaka nerför sluttningen på andra sidan kullen.
  221               Längre bort står en byggnad.",
  222          e_to At_End_Of_Road,
  223          n_to At_End_Of_Road,
  224          d_to At_End_Of_Road,
  225          s_to In_Forest_1;
  226  
  227  Scenic  -> "kulle"
  228    with  name 'kulle' 'kullen' 'höjd' 'höjden' 'krön' 'krönet' 'sluttning' 'sluttningen',
  229          short_name_def "kullen",
  230          description "Det är bara en vanlig kulle.";
  231  
  232  Scenic  -> "andra sidan kullen"
  233    with  name 'andra' 'sidan' 'av' 'kullen',
  234          short_name_def "andra sidan kullen",
  235          articles "den",
  236          description "Varför inte gå och se efter själv?",
  237     has  def_article;
  238  
  239  ! ------------------------------------------------------------------------------
  240  
  241  Aboveground Inside_Building "Inuti byggnad"
  242    with  teleport_to
  243              'utsidan' At_End_Of_Road,
  244          description
  245              "Du är i en byggnad, ett brunnshus för en stor källa.",
  246          cant_go
  247              "Vattnet rinner ut genom ett par avloppsrör, ca 30 centimeter i diameter.
  248               Den enda utgången är åt väst.",
  249          before [;
  250            Enter:
  251              if (noun == Spring or SewerPipes)
  252                  "Vattnet rinner ut genom ett par avloppsrör, ca 30 centimeter i diameter.
  253                   Det vore klokt att använda dörröppningen i den västra väggen.";
  254            Xyzzy:
  255              if (In_Debris_Room hasnt visited) rfalse;
  256              PlayerTo(In_Debris_Room);
  257              rtrue;
  258            Plugh:
  259              if (At_Y2 hasnt visited) rfalse;
  260              PlayerTo(At_Y2);
  261              rtrue;
  262          ],
  263          w_to At_End_Of_Road,
  264          out_to At_End_Of_Road,
  265          in_to "Rören är för små.";
  266  
  267  Scenic  -> Spring "källa"
  268    with  name 'källa' 'källan' 'stor' 'stora',
  269          short_name_def "källan",
  270          description
  271              "Vattnet rinner ut genom ett par avloppsrör, ca 30 centimeter i diameter.";
  272  
  273  Scenic  -> SewerPipes "avloppsrör"
  274    with  name 'par' 'avloppsrör' 'avloppsrören' 'avloppsröret' 'rör' 'rören' 'röret',
  275          short_name_def "avloppsrören",
  276          articles 0 0 "ett par",
  277          description "För små. Den enda utgången är åt väst.",
  278     has  neuter pluralname;
  279  
  280  Object  -> set_of_keys "nyckelknippa"
  281    with  name 'nycklar' 'nycklarna' 'nyckel' 'nyckeln' 'nyckelknippa' 'nyckelknippan'
  282               'knippa' 'knippan',
  283          short_name_def "nyckelknippan",
  284          description "Det är bara en helt vanlig nyckelknippa.",
  285          initial "Det ligger en nyckelknippa på marken här.",
  286          before [;
  287            Count:
  288              "Ett dussin nycklar eller så.";
  289          ];
  290  
  291  Object  -> tasty_food "god mat"
  292    with  name 'mat' 'maten' 'portion' 'portionen' 'läcker' 'läckra' 'god' 'goda' 'jättegod' 'jättegoda',
  293          short_name_def "goda maten",
  294          articles "Den" "den" 0,
  295          description "Ser verkligen gott ut!",
  296          initial "Det finns god mat här.",
  297          after [;
  298            Eat:
  299              "Jättegott!";
  300          ],
  301    has   edible;
  302  
  303  Object  -> brass_lantern "mässingslampa"
  304    with  name 'lampa' 'lampan' 'lykta' 'lyktan' 'pannlampa' 'pannlampan'
  305               'mässingslykta' 'mässingslyktan' 'mässingslampa' 'mässingslampan'
  306               'mässinglykta' 'mässinglyktan' 'mässinglampa' 'mässinglampan'
  307               'ljus' 'ljuset' 'blank' 'blanka' 'blänkande' 'glänsande',
  308          short_name_def "mässingslampan",
  309          when_off "Det finns en blank mässingslampa här.",
  310          when_on [;
  311              print "Din lampa är här, och den ger ett ";
  312              if (self.power_remaining < 30)
  313                  print "svagt";
  314              else
  315                  print "starkt";
  316              " ljus ifrån sig.";
  317          ],
  318          daemon [ t;
  319              if (self hasnt on) {
  320                  StopDaemon(self);
  321                  rtrue;
  322              }
  323              t = --(self.power_remaining);
  324              if (t == 0) give self ~on ~light;
  325              if (self in player || self in location) {
  326                  if (t == 0) {
  327                      print "Din lampas batterier tar slut.";
  328                      if (fresh_batteries notin player && location hasnt light) {
  329                          deadflag = 3;
  330                          " Du kan inte utforska grottor utan lampa.
  331                           Därmed verkar ditt äventyr vara över.";
  332                      }
  333                      else
  334                          self.replace_batteries();
  335                      new_line;
  336                      rtrue;
  337                  }
  338                  if (t == 30) {
  339                      print "Skenet från din lampa börjar bli svagare.";
  340                      if (fresh_batteries.have_been_used)
  341                          " Du har dessutom slut på reservbatterier.
  342                           Det är nog dags att tänka på refrängen.";
  343                      if (fresh_batteries in VendingMachine && Dead_End_14 has visited)
  344                          " Det är nog dags att tänka på refrängen,
  345                           om du nu inte kan hitta nya batterier någonstans.
  346                           Jag har för mig att det finns en varuautomat i labyrinten.
  347                           Ta med lite mynt.";
  348                      if (fresh_batteries notin VendingMachine or player or location)
  349                          " Det är nog bäst att du hämtar de där batterierna.";
  350                      new_line;
  351                      rtrue;
  352                  }
  353              }
  354          ],
  355          before [;
  356            Examine:
  357              print "Det är en blänkade mässingslampa";
  358              if (self hasnt on) ". Den är för tillfället avstängd.";
  359              if (self.power_remaining < 30) " som ger ifrån sig ett svagt sken.";
  360              " som ger ifrån sig ett starkt sken.";
  361            Burn:
  362              <<SwitchOn self>>;
  363            Rub:
  364              "Att gnida den elektriska lampan ger inte så mycket.
  365               Inget speciellt händer i alla fall.";
  366            SwitchOn:
  367              if (self.power_remaining <= 0)
  368                  "Tyvärr verkar batterierna vara helt slut.";
  369            Receive:
  370              if (noun == old_batteries)
  371                  "De där batterierna är slut - de skulle inte göra någon som helst nytta.";
  372              if (noun == fresh_batteries) {
  373                  self.replace_batteries();
  374                  rtrue;
  375              }
  376              "Det enda du kan sätta in i lampan är ett par nya batterier.";
  377          ],
  378          after [;
  379            SwitchOn:
  380              give self light;
  381              StartDaemon(self);
  382            SwitchOff:
  383              give self ~light;
  384          ],
  385          replace_batteries [;
  386              if (fresh_batteries in player or location) {
  387                  remove fresh_batteries;
  388                  fresh_batteries.have_been_used = true;
  389                  move old_batteries to location;
  390                  self.power_remaining = 2500;
  391                  "Jag tar mig friheten att byta ut batterierna.";
  392              }
  393          ],
  394          power_remaining 330,
  395    has   switchable;
  396  
  397  Object  -> bottle "liten flaska"
  398    with  name 'flaska' 'flaskan' 'burk' 'burken' 'liten' 'lilla',
  399          short_name_def "lilla flaskan",
  400          initial "Det ligger en tom flaska här.",
  401          before [;
  402            LetGo:
  403              if (noun in bottle)
  404                  "Du har redan ", (DenEllerHonom) noun, " (i flaskan).";
  405            Receive:
  406              if (noun == stream or Oil)
  407                  <<Fill self>>;
  408              else
  409                  "Flaskan är bara gjord för att innehålla vätskor.";
  410            Fill:
  411              if (child(bottle) ~= nothing)
  412                  "Flaskan är redan full.";
  413              if (stream in location || Spring in location) {
  414                  move water_in_the_bottle to bottle;
  415                  "Flaskan är nu full av vatten.";
  416              }
  417              if (Oil in location) {
  418                  move oil_in_the_bottle to bottle;
  419                  "Flaskan är nu full av olja.";
  420              }
  421              "Det finns inget att fylla flaskan med här.";
  422            Empty:
  423              if (child(bottle) == nothing)
  424                  "Flaskan är redan tom!";
  425              remove child(bottle);
  426              "Din flaska är nu tom och marken är nu blöt.";
  427          ],
  428    has   def_article container open;
  429  
  430  Object  water_in_the_bottle "vatten i flaskan"
  431    with  name 'vatten' 'vattnet' 'på' 'i//' 'flaska' 'flaskan' 'flaskvatten' 'flaskvattnet' 'h2o',
  432          short_name_def "vattnet i flaskan",
  433          description "Jag tycker det ser ut som vanligt vatten.",
  434          before [;
  435            Drink:
  436              remove water_in_the_bottle;
  437              <<Drink Stream>>;
  438          ],
  439     has  proper neuter;
  440  
  441  Object  oil_in_the_bottle "olja i flaskan"
  442    with  name 'olja' 'oljan' 'på' 'i//' 'flaska' 'flaskan'
  443               'flaskolja' 'flaskoljan' 'smörjmedel' 'smörjmedlet' 'fett' 'fettet',
  444          short_name_def "oljan i flaskan",
  445          description "Jag tycker det ser ut som vanlig olja.",
  446          before [;
  447            Drink:
  448              <<Drink Oil>>;
  449          ],
  450     has  proper;
  451  
  452  ! ------------------------------------------------------------------------------
  453  
  454  Aboveground In_Forest_1 "I skogen"
  455    with  teleport_to
  456              'dal' 'dalen' 'dalgång' 'dalgången' In_A_Valley,
  457          description "Du är i en gles skog, med en djup dalgång på ena sidan.",
  458          e_to In_A_Valley,
  459          d_to In_A_Valley,
  460          n_to In_Forest_1,
  461          w_to In_Forest_1,
  462          s_to In_Forest_1,
  463          initial [;
  464              if (random(2) == 1) PlayerTo(In_Forest_2, 1);
  465          ];
  466  
  467  Aboveground In_Forest_2 "I skogen"
  468    with  teleport_to
  469              'kulle' 'kullen' 'väg' 'vägen' At_End_Of_Road
  470              'dal' 'dalen' 'dalgång' 'dalgången' In_A_Valley,
  471          description "Du är i en gles skog, nära både en dalgång och en väg.",
  472          n_to At_End_Of_Road,
  473          e_to In_A_Valley,
  474          w_to In_A_Valley,
  475          d_to In_A_Valley,
  476          s_to In_Forest_1;
  477  
  478  Aboveground In_A_Valley "I en dalgång"
  479    with  teleport_to
  480              'uppströms' 'byggnad' 'byggnaden' 'hus' 'huset' 'brunnshus' 'tegelbyggnad'  At_End_Of_Road
  481              'skog' 'skogen' In_Forest_1
  482              'nedströms' 'nerströms' At_Slit_In_Streambed
  483              'grop' 'gropen' 'galler' 'gallret' 'stålgaller' 'stålgallret' Outside_Grate,
  484          description
  485              "Du är i en dalgång i skogen, bredvid en bäck som forsar fram över en stenig botten.",
  486          n_to At_End_Of_Road,
  487          e_to In_Forest_1,
  488          w_to In_Forest_1,
  489          u_to In_Forest_1,
  490          s_to At_Slit_In_Streambed,
  491          d_to At_Slit_In_Streambed;
  492  
  493  Scenic  -> "botten"
  494    with  name 'stenig' 'steniga' 'botten' 'bottnen' 'bäckens'
  495               'bäckfåra' 'bäckfåran' 'fåra' 'fåran' 'bäckbotten' 'stenbotten' 'stenbottnen'
  496               'kal' 'torr' 'torra' 'torkad' 'torkade' 'uttorkad' 'uttorkade' 'klippa' 'klippan',
  497          short_name_def "bottnen";
  498  
  499  ! ------------------------------------------------------------------------------
  500  
  501  Aboveground At_Slit_In_Streambed "Vid en spricka i botten"
  502    with  teleport_to
  503              'byggnad' 'byggnaden' 'hus' 'huset' 'brunnshus' 'tegelbyggnad'  At_End_Of_Road
  504              'uppströms' In_A_Valley
  505              'skog' 'skogen' In_Forest_1
  506              'nedströms' 'nerströms' 'torr' 'torra' 'klippa' 'klippan' 'bäckfåra' 'bäckfåran'
  507              'galler' 'gallret' 'stålgaller' 'stålgallret' 'grop' 'gropen' Outside_Grate,
  508          description
  509              "Vid dina fötter forsar allt vatten ner genom en fem centimeter bred spricka i klippan under.
  510               Nedströms består bäckfåran bara av torr klippa.",
  511          n_to In_A_Valley,
  512          e_to In_Forest_1,
  513          w_to In_Forest_1,
  514          s_to Outside_Grate,
  515          d_to "Du kommer inte igenom en fem centimeter bred spricka!",
  516          in_to "Du kommer inte igenom en fem centimeter bred spricka!";
  517  
  518  Scenic  -> "spricka"
  519    with  name 'spricka' 'sprickan' 'fem' 'cm' 'centimeter' 'halvdecimeter' 'bred',
  520          short_name_def "sprickan",
  521          description
  522              "Det är bara en spricka i klippan, och ner genom den rinner bäcken.",
  523          before [;
  524            Enter:
  525              "Du kommer inte igenom en fem centimeter bred spricka!";
  526          ];
  527  
  528  ! ------------------------------------------------------------------------------
  529  
  530  Aboveground Outside_Grate "Utanför gallret"
  531    with  teleport_to
  532              'byggnad' 'byggnaden' 'hus' 'huset' 'brunnshus' 'tegelbyggnad'  At_End_Of_Road
  533              'uppströms' At_Slit_In_Streambed
  534              'skog' 'skogen' In_Forest_1,
  535          description
  536              "Du står i en fem meter djup grop med bara jord till golv.
  537               I jorden sitter ett starkt stålgaller infattat i betong.
  538               En uttorkad bäckfåra leder ner i gropen.",
  539          e_to In_Forest_1,
  540          w_to In_Forest_1,
  541          s_to In_Forest_1,
  542          n_to At_Slit_In_Streambed,
  543          d_to [;
  544              if (Grate hasnt locked && Grate hasnt open) {
  545                  print "(öppnar först gallret)^";
  546                  give Grate open;
  547              }
  548              return Grate;
  549          ];
  550  
  551  Scenic  -> "fem meter djup grop"
  552    with  name 'grop' 'gropen' 'jord' 'jorden' 'jordig' 'fem' 'm//' 'meter' 'djup' 'djupa' 'grop' 'gropen',
  553          short_name_def "fem meter djupa gropen",
  554          description "Du står i den.",
  555     has  def_article;
  556  
  557  Object  -> Grate "stålgaller"
  558    with  name 'stål' 'stålet' 'av' 'galler' 'gallret' 'stålgaller' 'stålgallret'
  559               'lås' 'låset' 'metall' 'metallen' 'metallgaller' 'metallgallret' 'stark' 'starkt' 'starka'
  560               'lucka' 'luckan' 'stållucka' 'stålluckan',
  561          short_name_def "stålgallret",
  562          description "Det ser bara ut som ett vanligt galler infattat i betong.",
  563          with_key set_of_keys,
  564          door_dir [;
  565              if (location == Below_The_Grate) return u_to;
  566              return d_to;
  567          ],
  568          door_to [;
  569              if (location == Below_The_Grate) return Outside_Grate;
  570              return Below_The_Grate;
  571          ],
  572          describe [;
  573              if (self has open) "^Gallret är öppet.";
  574              if (self hasnt locked) "^Gallret är olåst men stängt.";
  575              rtrue;
  576          ],
  577          found_in Below_The_Grate Outside_Grate,
  578    has   neuter static door openable lockable locked;
  579  
  580  ! ------------------------------------------------------------------------------
  581  !   Facilis descensus Averno...
  582  ! ------------------------------------------------------------------------------
  583  
  584  Room    Below_The_Grate "Under gallret"
  585    with  teleport_to
  586              'småsten' 'småstensgången' 'låg' 'låga' 'gång' 'gången' 'tunnel' 'tunneln' 'kryp' In_Cobble_Crawl
  587              'litet' 'lilla' 'hål' 'hålet' At_Top_Of_Small_Pit
  588              'skräp' 'skräpet' 'skräprum' 'skräprummet' In_Debris_Room,
  589          description
  590              "Du är i en liten kammare under ett meterbrett stålgaller upp mot ytan.
  591               Västerut kan du krypa in i en låg gång med småsten till golv.",
  592          w_to In_Cobble_Crawl,
  593          in_to In_Cobble_Crawl,
  594          u_to Grate,
  595    has   light;
  596  
  597  Scenic  "småsten"
  598    with  name 'småsten' 'småstenen' 'småstenar' 'småstenarna' 'sten'
  599               'stenen' 'stenar' 'stenarna' 'de' 'små' 'lilla',
  600          short_name_def "småstenen",
  601          description "Det är bara vanlig småsten.",
  602          found_in In_Cobble_Crawl In_Debris_Room Below_The_Grate,
  603    has   multitude pluralname proper;
  604  
  605  ! ------------------------------------------------------------------------------
  606  
  607  Room    In_Cobble_Crawl "I småstensgången"
  608    with  teleport_to
  609              'ytan' 'yta' 'ingenstans' 'ingång' 'ingången' Below_The_Grate
  610              'litet' 'lilla' 'hål' 'hålet' At_Top_Of_Small_Pit
  611              'skräp' 'skräpet' 'skräprum' 'skräprummet' In_Debris_Room,
  612          description
  613              "Du kryper över småsten i en låg gång.
  614              Det kommer in ett svagt ljus i gångens östra ände.",
  615          e_to Below_The_Grate,
  616          out_to Below_The_Grate,
  617          w_to In_Debris_Room,
  618          in_to In_Debris_Room,
  619    has   light;
  620  
  621  Object  -> wicker_cage "flätad bur"
  622    with  name 'bur' 'buren' 'liten' 'lilla' 'flätad' 'flätade' 'av' 'vidja' 'vidjan' 'vidjor' 'vidjorna',
  623          short_name_def "flätade buren",
  624          description "Det är en liten bur, flätad av vidjor.",
  625          initial "En liten flätad bur ligger slängd i närheten.",
  626          after [;
  627            Open:
  628              if (little_bird notin self) rfalse;
  629              print "(släpper ut ", (the) little_bird, ")^";
  630              <<Release little_bird>>;
  631          ],
  632    has   def_article container open openable transparent;
  633  
  634  ! ------------------------------------------------------------------------------
  635  
  636  Room    In_Debris_Room "I skräprummet"
  637    with  teleport_to
  638              'ytan' 'yta' 'ingång' 'ingången' Below_The_Grate
  639              'småsten' 'småstensgången' 'låg' 'låga' 'gång' 'gången' 'tunnel' 'tunneln' 'kryp' In_Cobble_Crawl
  640              'trång' 'trånga' 'ravin' 'ravinen' In_Awkward_Sloping_E_W_Canyon
  641              'litet' 'lilla' 'hål' 'hålet' At_Top_Of_Small_Pit,
  642          description
  643              "Du är i ett skräprum fyllt med grejer som sköljts in från ytan.
  644               En låg bred gång med småsten blir här helt igensatt av gyttja och skräp,
  645               men en trång ravin leder uppåt och västerut.
  646               ^^
  647               På väggen står antecknat: ~Magiskt ord XYZZY.~",
  648          e_to In_Cobble_Crawl,
  649          u_to In_Awkward_Sloping_E_W_Canyon,
  650          in_to In_Awkward_Sloping_E_W_Canyon,
  651          w_to In_Awkward_Sloping_E_W_Canyon,
  652          before [;
  653            Xyzzy:
  654              PlayerTo(Inside_Building);
  655              rtrue;
  656          ],
  657    has   nodwarf;
  658  
  659  Scenic  -> "skräp"
  660    with  name 'skräp' 'skräpet' 'grej' 'grejen' 'grejer' 'grejor' 'pryl' 'prylen' 'prylar'
  661               'dy' 'dyn' 'gyttja' 'gyttjan',
  662          short_name_def "skräpet",
  663          description "Usch.",
  664     has  neuter proper;
  665  
  666  Scenic  -> "anteckning"
  667    with  name 'anteckning' 'anteckningen',
  668          short_name_def "anteckningen",
  669          description "Anteckningen lyder: ~Magiskt ord XYZZY~.";
  670  
  671  Object  -> black_rod "svart stav med en rostig stjärna i änden"
  672    with  name 'svart' 'svarta' 'stav' 'staven' 'med' 'en' 'den'
  673               'rostig' 'rostiga' 'stjärna' 'stjärnan' 'järnstjärna' 'järnstjärnan'
  674               'i//' 'änden' 'meterlång' 'meterlånga',
  675          short_name_def "svarta staven med en rostig stjärna i änden",
  676          description "Det är en meterlång svart stav med en rostig stjärna i ena änden.",
  677          initial
  678              "En meterlång svart stav med en rostig stjärna i ena änden ligger i närheten.",
  679          before [;
  680            Wave:
  681              if (location == West_Side_Of_Fissure or On_East_Bank_Of_Fissure) {
  682                  if (caves_closed) "Märkligt. Inget händer.";
  683                  if (CrystalBridge notin nothing) {
  684                      remove CrystalBridge;
  685                      give CrystalBridge absent;
  686                      West_Side_Of_Fissure.e_to = nothing;
  687                      On_East_Bank_Of_Fissure.w_to = nothing;
  688                      "Kristallbron har försvunnit!";
  689                  }
  690                  else {
  691                      move CrystalBridge to location;
  692                      give CrystalBridge ~absent;
  693                      West_Side_Of_Fissure.e_to = CrystalBridge;
  694                      On_East_Bank_Of_Fissure.w_to = CrystalBridge;
  695                      "En kristallbro spänner nu över gapet.";
  696                  }
  697              }
  698              "Inget händer.";
  699          ],
  700     has  def_article;
  701  
  702  ! ------------------------------------------------------------------------------
  703  
  704  Room    In_Awkward_Sloping_E_W_Canyon "Sluttande Ö/V-ravin"
  705    with  teleport_to
  706              'ytan' 'yta' 'ingång' 'ingången' Below_The_Grate
  707              'skräp' 'skräpet' 'skräprum' 'skräprummet' In_Debris_Room
  708              'litet' 'lilla' 'hål' 'hålet' At_Top_Of_Small_Pit,
  709          description "Du är i en trång sluttande öst/väst-ravin.",
  710          d_to In_Debris_Room,
  711          e_to In_Debris_Room,
  712          u_to In_Bird_Chamber,
  713          w_to In_Bird_Chamber,
  714    has   nodwarf;
  715  
  716  ! ------------------------------------------------------------------------------
  717  !  Den lilla fågeln i sitt naturliga habitat
  718  ! ------------------------------------------------------------------------------
  719  
  720  Room    In_Bird_Chamber "Oranga flodkammaren"
  721    with  teleport_to
  722              'ytan' 'yta' 'ingång' 'ingången' Below_The_Grate
  723              'skräp' 'skräpet' 'skräprum' 'skräprummet' In_Debris_Room
  724              'trång' 'trånga' 'ravin' 'ravinen' In_Awkward_Sloping_E_W_Canyon
  725              'litet' 'lilla' 'hål' 'hålet' 'bra' 'gång' 'gången' At_Top_Of_Small_Pit,
  726          description
  727              "Du är i en fantastisk kammare, tio meter hög.
  728               Väggarna är frusna floder av orange sten.
  729               En trång ravin och en bra gång leder ut från östra och västra sidorna av kammaren.",
  730          e_to In_Awkward_Sloping_E_W_Canyon,
  731          w_to At_Top_Of_Small_Pit,
  732    has   nodwarf;
  733  
  734  Object  -> little_bird "liten fågel"
  735    with  name 'munter' 'muntra' 'glad' 'glada' 'sorgsen' 'sorgsna' 'ledsen' 'ledsna' 'lilla' 'liten' 'fågel' 'fågeln',
  736          short_name_def "lilla fågeln",
  737          initial "En munter liten fågel sitter och sjunger här.",
  738          before [;
  739            Examine:
  740              if (self in wicker_cage)
  741                  "Den lilla fågeln ser olycklig ut i buren.";
  742              "Den muntra lilla fågeln sitter här och sjunger.";
  743            Insert:
  744              if (second == wicker_cage)
  745                  <<Catch self>>;
  746              else
  747                  "Sätt inte fågeln i ", (the) second, "!";
  748            Drop, Remove:
  749              if (self in wicker_cage) {
  750                  print "(Fågeln slipper ut från buren.)^^";
  751                  <<Release self>>;
  752              }
  753            Take, Catch:
  754              if (self in wicker_cage)
  755                  "Du har redan den lilla fågeln.
  756                   Om du tar ut den ur buren kommer den troligen flyga iväg från dig.";
  757              if (wicker_cage notin player)
  758                  "Du kan fånga fågeln, men du kan inte bära den med dig.";
  759              if (black_rod in player)
  760                  "Fågeln var orädd när du kom in,
  761                   men när du närmar dig blir den störd och du kan inte fånga den.";
  762              move self to wicker_cage;
  763              give wicker_cage ~open;
  764              "Du fångar fågeln i den flätade buren.";
  765            Release:
  766              if (self notin wicker_cage)
  767                  "Fågeln sitter inte i någon bur.";
  768              give wicker_cage open;
  769              move self to location;
  770              if (Snake in location) {
  771                  remove Snake;
  772                  "Den lilla fågeln attackerar den gröna ormen,
  773                   och förvånansvärt snabbt tvingar den bort ormen.";
  774              }
  775              if (Dragon in location) {
  776                  remove self;
  777                  "Den lilla fågeln attackerar den gröna draken,
  778                   och förvånansvärt snabbt bränns den till en kolbit.
  779                   Askan blåser bort.";
  780              }
  781              "Den lilla fågeln flaxar ut i friheten.";
  782          ],
  783          life [;
  784            Give:
  785              "Den är inte hungrig. (Den bara längtar efter fjordarna).
  786               Dessutom misstänker jag att den skulle föredra fågelfrö.";
  787            Order, Ask, Answer:
  788              "Kvitter! Kviddevitt!";
  789            Attack:
  790              if (self in wicker_cage)
  791                  "Nej, lämna den stackars olyckliga fågeln i fred.";
  792              remove self;
  793              "Den lilla fågeln är nu död. Dess kropp försvinner.";
  794          ],
  795    has   def_article animate;
  796  
  797  ! ------------------------------------------------------------------------------
  798  
  799  Room    At_Top_Of_Small_Pit "Ovanför ett litet hål"
  800    with  teleport_to
  801              'ytan' 'yta' 'ingång' 'ingången' Below_The_Grate
  802              'skräp' 'skräpet' 'skräprum' 'skräprummet' In_Debris_Room
  803              'gång' 'gången' In_Bird_Chamber,
  804          description
  805              "Vid dina fötter finns ett litet hål som andas ut spår av vit dimma.
  806               En västlig gång slutar här föruom en liten spricka som fortsätter.
  807               ^^
  808               Grova trappsteg av sten leder ner i hålet.",
  809          e_to In_Bird_Chamber,
  810          w_to "Sprickan är alltför liten för att du ska kunna komma igenom den.",
  811          d_to [;
  812              if (large_gold_nugget in player) {
  813                  deadflag = 1;
  814                  "Du är på hålets botten med en bruten nacke.";
  815              }
  816              return In_Hall_Of_Mists;
  817          ],
  818          before [;
  819            Enter:
  820              if (noun == PitCrack)
  821                  "Sprickan är alltför liten för att du ska kunna komma igenom den.";
  822          ],
  823    has   nodwarf;
  824  
  825  Scenic  -> "litet hål"
  826    with  name 'litet' 'lilla' 'hål' 'hålet',
  827          short_name_def "lilla hålet",
  828          description "Hålet andas ut spår av vit dimma.",
  829     has  def_article neuter;
  830  
  831  Scenic  -> PitCrack "spricka"
  832    with  name 'spricka' 'sprickan' 'liten' 'lilla' 'trång' 'trånga',
  833          short_name_def "sprickan",
  834          description "Sprickan är väldigt liten -- alldeles för liten för att du ska kunna komma igenom den.";
  835  
  836  Scenic  "dimma"
  837    with  name 'dimma' 'dimman' 'ånga' 'ångan' 'vit' 'vita'
  838               'slöja' 'slöjan' 'slöjor' 'slöjorna' 'dimslöja' 'dimslöjan' 'dimslöjor' 'dimslöjorna',
  839          short_name_def "dimman",
  840          description
  841              "Dimma är en vit ånga, vanligen av vatten, som man ser ibland i grottor.
  842               Den kan dyka upp var som helst men är ofta ett tecken på ett djupt hål som leder ner till vatten.",
  843          found_in
  844              At_Top_Of_Small_Pit In_Hall_Of_Mists On_East_Bank_Of_Fissure
  845              At_Window_On_Pit_1 At_West_End_Of_Hall_Of_Mists In_Misty_Cavern
  846              In_Mirror_Canyon At_Reservoir At_Window_On_Pit_2 On_Sw_Side_Of_Chasm;
  847  
  848  ! ------------------------------------------------------------------------------
  849  !   Grottorna öppnar sig: Dimmornas Sal
  850  ! ------------------------------------------------------------------------------
  851  
  852  Room    In_Hall_Of_Mists "I Dimmornas Sal"
  853    with  teleport_to
  854              'vänster' In_Nugget_Of_Gold_Room
  855              'framåt' 'fortsätt' 'sal' 'salen' On_East_Bank_Of_Fissure
  856              'trappa' 'trappan' 'stentrappa' 'bergakungens' 'sal' In_Hall_Of_Mt_King
  857              'y2' At_Y2,
  858          description
  859              "Du är i ena änden av en enorm sal som sträcker sig framåt så långt ögat når åt väst.
  860               Det finns öppningar åt båda hållen.
  861               En bred stentrappa leder neråt.
  862               Salen är fylld av vita dimslöjor som svajar fram och tillbaka nästan som om de vore levande.
  863               En kall vind blåser uppför trappan.
  864               Det finns en gång vid toppen av ett schakt bakom dig.
  865               ^^
  866               Grova trappsteg av sten leder upp genom schaktet.",
  867          initial [;
  868              if (self has visited) rfalse;
  869              score = score + 25;
  870          ],
  871          s_to In_Nugget_Of_Gold_Room,
  872          w_to On_East_Bank_Of_Fissure,
  873          d_to In_Hall_Of_Mt_King,
  874          n_to In_Hall_Of_Mt_King,
  875          u_to [;
  876              if (large_gold_nugget in player) "Du kan inte klättra upp på kupolen.";
  877              return At_Top_Of_Small_Pit;
  878          ];
  879  
  880  Scenic  -> "bred stentrappa"
  881    with  name 'bred' 'breda' 'trappa' 'trappan' 'stentrappa' 'stentrappan',
  882          short_name_def "breda stentrappan",
  883          description "Trappan leder neråt."
  884     has  def_article;
  885  
  886  Scenic  -> "grova trappsteg av sten"
  887    with  name 'grov' 'grovt' 'grova' 'steg' 'steget' 'stegen' 'trappsteg' 'trappsteget' 'trappstegen'
  888               'av' 'sten' 'stentrappa' 'stentrappan' 'stentrappsteg' 'stentrappsteget' 'stentrappstegen',
  889          short_name_def "grova trappstegen av sten",
  890          articles "De" "de" 0,
  891          description "De grova trappstegen leder upp genom schaktet.",
  892    has   def_article pluralname multitude;
  893  
  894  Scenic  -> "schakt"
  895    with  name 'schakt' 'schaktet',
  896          short_name_def "schaktet",
  897          before [;
  898            Examine:
  899              if (large_gold_nugget in player)
  900                  "Jag är inte säker på att du kan komma upp med det du har med dig.";
  901              "Det ser ut som att du kanske kan klättra upp genom det.";
  902            Climb:
  903              MovePlayer(u_obj);
  904              rtrue;
  905          ],
  906     has  neuter;
  907  
  908  ! ------------------------------------------------------------------------------
  909  
  910  Room    In_Nugget_Of_Gold_Room "Lågt rum"
  911    with  teleport_to
  912              'sal' 'salen' 'dimmornas' In_Hall_Of_Mists,
  913          description
  914              "Det här är ett lågt rum med ett meddelande slarvigt skrivet på väggen:
  915               ^^
  916               ~Du kommer inte få upp den för trappan~.",
  917          n_to In_Hall_Of_Mists,
  918          out_to In_Hall_Of_Mists;
  919  
  920  Scenic  -> "meddelande"
  921    with  name 'meddelande' 'meddelandet' 'slarvigt' 'slarviga' 'skrivet' 'skrivna',
  922          short_name_def "meddelandet",
  923          description "Meddelandet lyder ~Du kommer inte få upp den för trappan~.",
  924     has  neuter;
  925  
  926  Treasure -> large_gold_nugget "stor guldklimp"
  927    with  name 'guld' 'guldet' 'klimp' 'klimpen' 'guldklimp' 'guldklimpen'
  928               'stor' 'stora' 'tung' 'tunga',
  929          short_name_def "stora guldklimpen",
  930          description "Det är en stor glimmande guldklimp!",
  931          initial "Det ligger en stor glimmande guldklimp här!"
  932     has  def_article;
  933  
  934  ! ------------------------------------------------------------------------------
  935  
  936  Class   FissureRoom
  937    class Room
  938    with  before [;
  939            Jump:
  940              if (CrystalBridge hasnt absent)
  941                  "Jag vill nog ändå föreslå att du går över bron istället för att hoppa.";
  942              deadflag = 1;
  943              "Du klarade det inte.";
  944          ],
  945          d_to "Klyftan är alltför skrämmande!";
  946  
  947  FissureRoom On_East_Bank_Of_Fissure "På östra sidan av klyftan"
  948    with  teleport_to
  949              'sal' 'salen' 'dimmornas' In_Hall_Of_Mists,
  950          description
  951              "Du är på östra sidan av en klyfta som går tvärs över hela salen.
  952               Dimman är väldigt tjock här, och klyftan är för bred att hoppa över.",
  953          e_to In_Hall_Of_Mists,
  954          w_to "Klyftan är för bred.";
  955  
  956  FissureRoom West_Side_Of_Fissure "Västra sidan av klyftan"
  957    with  description
  958              "Du är på västra sidan av klyftan i Dimmornas Sal.",
  959          w_to At_West_End_Of_Hall_Of_Mists,
  960          e_to "Klyftan är för bred.",
  961          n_to At_West_End_Of_Hall_Of_Mists,
  962          before [;
  963            Go:
  964              if (location == West_Side_Of_Fissure && noun == n_obj)
  965                  print
  966                      "Du har ålat genom en mycket låg, bred gång,
  967                       parallell med och norr om Dimmornas Sal.^";
  968          ];
  969  
  970  Treasure -> "diamanter"
  971    with  name 'diamant' 'diamanten' 'diamanter' 'diamanterna' 'flera' 'av' 'hög' 'högsta' 'kvalitet',
  972          short_name_def "diamanterna",
  973          articles 0 0 "några",
  974          description "De ser ut att vara av högsta kvalitet!",
  975          initial "Det finns diamanter här!",
  976    has   pluralname multitude;
  977  
  978  Object  CrystalBridge "kristallbro"
  979    with  name 'kristallbro' 'kristallbron' 'bro' 'bron' 'av' 'kristall',
  980          short_name_def "kristallbron",
  981          description "Den sträcker sig över klyftan, och ger dig därmed en väg över.",
  982          initial "En kristallbro sträcker sig nu över klyftan.",
  983          door_dir [;
  984              if (location == West_Side_Of_Fissure) return e_to;
  985              return w_to;
  986          ],
  987          door_to [;
  988              if (location == West_Side_Of_Fissure) return On_East_Bank_Of_Fissure;
  989              return West_Side_Of_Fissure;
  990          ],
  991          found_in On_East_Bank_Of_Fissure West_Side_Of_Fissure,
  992    has   static door open absent;
  993  
  994  Scenic  "klyfta"
  995    with  name 'bred' 'breda' 'klyfta' 'klyftan',
  996          short_name_def "klyftan",
  997          description "Klyftan ser alldeles för bred ut för att man ska kunna hoppa över den.",
  998          found_in On_East_Bank_Of_Fissure West_Side_Of_Fissure;
  999  
 1000  ! ------------------------------------------------------------------------------
 1001  
 1002  Room    At_West_End_Of_Hall_Of_Mists "I västra änden av Dimmornas Sal"
 1003    with  teleport_to
 1004              'liten' 'lilla' Alike_Maze_1
 1005              'låg' 'bred' 'kryp' At_East_End_Of_Long_Hall,
 1006          description
 1007              "Du är i västra änden av Dimmornas Sal.
 1008               En låg, bred gång med kryphöjd fortsätter västerut och en annan går norrut.
 1009               Söderut finns en liten gång knappt två meter över golvet.",
 1010          s_to Alike_Maze_1,
 1011          u_to Alike_Maze_1,
 1012          e_to West_Side_Of_Fissure,
 1013          w_to At_East_End_Of_Long_Hall,
 1014          n_to West_Side_Of_Fissure,
 1015          before [;
 1016            Go:
 1017              if (noun == n_obj)
 1018                  print
 1019                      "Du har krupit genom en mycket låg, bred gång
 1020                       parallell med och norr om Dimmornas Sal.^";
 1021          ];
 1022  
 1023  ! ------------------------------------------------------------------------------
 1024  !   Långa Salen väster om Dimmornas Sal
 1025  ! ------------------------------------------------------------------------------
 1026  
 1027  Room    At_East_End_Of_Long_Hall "I östra änden av Långa Salen"
 1028    with  teleport_to
 1029              'kryp' 'låg' 'låga' 'bred' 'breda' 'gång' 'gången' At_West_End_Of_Hall_Of_Mists
 1030              'runt' 'runda' 'halvmetersbrett' 'hål' 'hålet' Crossover,
 1031          description
 1032              "Du är i östra änden av en mycket lång sal som tycks sakna sidokammare.
 1033               Österut ligger en låg bred gång som sluttar uppåt.
 1034               Norrut ligger ett runt halvmeterbrett hål som sluttar neråt.",
 1035          e_to At_West_End_Of_Hall_Of_Mists,
 1036          u_to At_West_End_Of_Hall_Of_Mists,
 1037          w_to At_West_End_Of_Long_Hall,
 1038          n_to Crossover,
 1039          d_to Crossover;
 1040  
 1041  ! ------------------------------------------------------------------------------
 1042  
 1043  Room    At_West_End_Of_Long_Hall "I västra änden av Långa Salen"
 1044    with  description
 1045              "Du är i västra änden av en mycket lång, formlös sal.
 1046               Salen möter här en trång nord-sydlig gång.",
 1047          e_to At_East_End_Of_Long_Hall,
 1048          s_to Different_Maze_1,
 1049          n_to Crossover;
 1050  
 1051  ! ------------------------------------------------------------------------------
 1052  
 1053  Room    Crossover "N/S- och Ö/V-korsning"
 1054    with  description
 1055              "Du är i en korsning mellan en hög nord-sydlig gång och en låg öst-västlig gång.",
 1056          w_to At_East_End_Of_Long_Hall,
 1057          n_to Dead_End_7,
 1058          e_to In_West_Side_Chamber,
 1059          s_to At_West_End_Of_Long_Hall;
 1060  
 1061  Scenic  -> "korsning"
 1062    with  name 'korsning' 'korsningen',
 1063          short_name_def "korsningen",
 1064          description "Du vet lika mycket som jag just nu.";
 1065  
 1066  ! ------------------------------------------------------------------------------
 1067  !   Många återvändsgränder kommer behövas för labyrinten nedan, så
 1068  !   definiera en klass:
 1069  ! ------------------------------------------------------------------------------
 1070  
 1071  Class   DeadendRoom
 1072    with  short_name "Återvändsgränd",
 1073          description "Du har nått en återvändsgränd.",
 1074          cant_go "Du måste gå tillbaka samma väg som du kom.";
 1075  
 1076  DeadendRoom Dead_End_7
 1077    with  s_to Crossover,
 1078          out_to Crossover;
 1079  
 1080  ! ------------------------------------------------------------------------------
 1081  !   Bergakungens Sal och sidokammare
 1082  ! ------------------------------------------------------------------------------
 1083  
 1084  Room    In_Hall_Of_Mt_King "Bergakungens Sal"
 1085    with  teleport_to
 1086              'sal' 'salen' 'dimmornas' 'trappa' 'trappan' In_Hall_Of_Mists
 1087              'hemlig' 'hemliga' In_Secret_E_W_Canyon,
 1088          description
 1089              "Du är i Bergakungens Sal, med gångar åt alla håll.",
 1090          cant_go "Okej, kanske inte riktigt alla håll.",
 1091          u_to In_Hall_Of_Mists,
 1092          e_to In_Hall_Of_Mists,
 1093          n_to Low_N_S_Passage,
 1094          s_to In_South_Side_Chamber,
 1095          w_to In_West_Side_Chamber,
 1096          sw_to In_Secret_E_W_Canyon,
 1097          before [;
 1098            Go:
 1099              if (Snake in self && (noun == n_obj or s_obj or w_obj ||
 1100                                   (noun == sw_obj && random(100) <= 35)))
 1101                  "Du kan inte komma förbi ormen.";
 1102          ];
 1103  
 1104  Object  -> Snake "orm"
 1105    with  name 'orm' 'ormen' 'kobra' 'stor' 'stora' 'jättestor' 'jättestora'
 1106               'farlig' 'farliga' 'livsfarlig' 'livsfarliga' 'dödlig' 'dödliga'
 1107               'grön' 'gröna' 'vildsint' 'vildsinta' 'vild' 'vilda'
 1108               'giftig' 'giftiga',
 1109          short_name_def "ormen",
 1110          description "Jag skulle inte bråka med den om jag var du.",
 1111          initial "En gigantisk, grön, vildsint orm blockerar vägen!",
 1112          life [;
 1113            Order, Ask, Answer:
 1114              "Väääääs!";
 1115            ThrowAt:
 1116              if (noun == axe) <<Attack self>>;
 1117              <<Give noun self>>;
 1118            Give:
 1119              if (noun == little_bird) {
 1120                  remove little_bird;
 1121                  "Ormen har nu slukat din fågel.";
 1122              }
 1123              "Det finns inget här som den vill äta (förutom dig då, kanske).";
 1124            Attack:
 1125              "Att attackera ormen är både verkningslöst och mycket farligt.";
 1126            Take:
 1127              deadflag = 1;
 1128              "Den tar dig istället. Smask!";
 1129          ],
 1130    has   animate;
 1131  
 1132  ! ------------------------------------------------------------------------------
 1133  
 1134  Room    Low_N_S_Passage "Låg N/S-gång"
 1135    with  teleport_to
 1136              'bergakungens' 'sal' 'salen' In_Hall_Of_Mt_King
 1137              'y2' At_Y2
 1138              'hål' 'hålet' In_Dirty_Passage,
 1139          description
 1140              "Du är i en låg N/S-gång vid ett hål i golvet.
 1141               Hålet leder ner till en Ö/V-gång.",
 1142          s_to In_Hall_Of_Mt_King,
 1143          out_to In_Hall_Of_Mt_King,
 1144          d_to In_Dirty_Passage,
 1145          n_to At_Y2;
 1146  
 1147  Treasure -> "silvertackor"
 1148    with  name 'silvertacka' 'silvertackan' 'silvertackor' 'silvertackorna'
 1149               'tacka' 'tackan' 'tackor' 'tackorna' 'silver' 'silvret',
 1150          short_name_def "silvertackorna",
 1151          articles 0 0 "några",
 1152          description "De är nog värda en förmögenhet!",
 1153          initial "Det ligger silvertackor här!",
 1154     has  pluralname;
 1155  
 1156  ! ------------------------------------------------------------------------------
 1157  
 1158  Room    In_South_Side_Chamber "I södra sidokammaren"
 1159    with  teleport_to
 1160              'bergakungens' 'sal' 'salen' In_Hall_Of_Mt_King,
 1161          description "Du är i den södra sidokammaren.",
 1162          n_to In_Hall_Of_Mt_King,
 1163          out_to In_Hall_Of_Mt_King;
 1164  
 1165  Treasure -> "dyrbara smycken"
 1166    with  name 'dyrbar' 'dyrbara' 'smycke' 'smycket' 'smycken' 'smyckena' 'exquisite',
 1167          short_name_def "dyrbara smyckena",
 1168          articles "De" "de" "några",
 1169          description "De är helt utsökta!",
 1170          initial "Det ligger dyrbara smycken här!",
 1171     has  pluralname def_article;
 1172  
 1173  ! ------------------------------------------------------------------------------
 1174  
 1175  Room    In_West_Side_Chamber "I västra sidokammaren"
 1176    with  teleport_to
 1177              'bergakungens' 'sal' 'salen' In_Hall_Of_Mt_King,
 1178          description
 1179              "Du är i sidokamm