Inform - Support - Source

Back to List

Inventory
Complete

Backward
At End

Plain
Coloured
Gaudy

This code
in plain text

Browsing English.h

LanguageLM routine (lines 335-868)

335  [ LanguageLM n x1;
336    Prompt:  print "^>";
337    Miscellany:
338             switch(n)
339             {   1: "(considering the first sixteen objects only)^";
340                 2: "Nothing to do!";
341                 3: print " You have died ";
342                 4: print " You have won ";
343                 5: print "^Would you like to RESTART, RESTORE a saved game";
344                    #IFDEF DEATH_MENTION_UNDO;
345                    print ", UNDO your last move";
346                    #ENDIF;
347                    if (TASKS_PROVIDED==0)
348                        print ", give the FULL score for that game";
349                    if (deadflag==2 && AMUSING_PROVIDED==0)
350                        print ", see some suggestions for AMUSING things to do";
351                    " or QUIT?";
352                 6: "[Your interpreter does not provide ~undo~.  Sorry!]";
353                 7: "~Undo~ failed.  [Not all interpreters provide it.]";
354                 8: "Please give one of the answers above.";
355                 9: "^It is now pitch dark in here!";
356                10: "I beg your pardon?";
357                11: "[You can't ~undo~ what hasn't been done!]";
358                12: "[Can't ~undo~ twice in succession. Sorry!]";
359                13: "[Previous turn undone.]";
360                14: "Sorry, that can't be corrected.";
361                15: "Think nothing of it.";
362                16: "~Oops~ can only correct a single word.";
363                17: "It is pitch dark, and you can't see a thing.";
364                18: print "yourself";
365                19: "As good-looking as ever.";           
366                20: "To repeat a command like ~frog, jump~, just say
367                     ~again~, not ~frog, again~.";
368                21: "You can hardly repeat that.";
369                22: "You can't begin with a comma.";
370                23: "You seem to want to talk to someone, but I can't see whom.";
371                24: "You can't talk to ", (the) x1, ".";
372                25: "To talk to someone, try ~someone, hello~ or some such.";
373                26: "(first taking ", (the) not_holding, ")";
374                27: "I didn't understand that sentence.";
375                28: print "I only understood you as far as wanting to ";
376                29: "I didn't understand that number.";
377                30: "You can't see any such thing.";
378                31: "You seem to have said too little!";
379                32: "You aren't holding that!";
380                33: "You can't use multiple objects with that verb.";
381                34: "You can only use multiple objects once on a line.";
382                35: "I'm not sure what ~", (address) pronoun_word,
383                    "~ refers to.";
384                36: "You excepted something not included anyway!";
385                37: "You can only do that to something animate.";
386                38: #ifdef DIALECT_US;
387                    "That's not a verb I recognize.";
388                    #ifnot;
389                    "That's not a verb I recognise.";
390                    #endif;
391                39: "That's not something you need to refer to
392                     in the course of this game.";
393                40: "You can't see ~", (address) pronoun_word,
394                    "~ (", (the) pronoun_obj, ") at the moment.";
395                41: "I didn't understand the way that finished.";
396                42: if (x1==0) print "None";
397                    else print "Only ", (number) x1;
398                    print " of those ";
399                    if (x1==1) print "is"; else print "are";
400                    " available.";
401                43: "Nothing to do!";
402                44: "There are none at all available!";
403                45: print "Who do you mean, ";
404                46: print "Which do you mean, ";
405                47: "Sorry, you can only have one item here. Which exactly?";
406                48: print "Whom do you want";
407                    if (actor~=player) print " ", (the) actor; print " to ";
408                    PrintCommand(); print "?^";
409                49: print "What do you want";
410                    if (actor~=player) print " ", (the) actor; print " to ";
411                    PrintCommand(); print "?^";
412                50: print "Your score has just gone ";
413                    if (x1 > 0) print "up"; else { x1 = -x1; print "down"; }
414                    print " by ", (number) x1, " point";
415                    if (x1 > 1) print "s";
416                51: "(Since something dramatic has happened,
417                     your list of commands has been cut short.)";
418                52: "^Type a number from 1 to ", x1,
419                    ", 0 to redisplay or press ENTER.";
420                53: "^[Please press SPACE.]";
421             }
422   
423    ListMiscellany:
424             switch(n)
425             {   1: print " (providing light)";
426                 2: print " (which ", (isorare) x1, " closed)";
427                 3: print " (closed and providing light)";
428                 4: print " (which ", (isorare) x1, " empty)";
429                 5: print " (empty and providing light)";
430                 6: print " (which ", (isorare) x1, " closed and empty)";
431                 7: print " (closed, empty and providing light)";
432                 8: print " (providing light and being worn";
433                 9: print " (providing light";
434                10: print " (being worn";
435                11: print " (which ", (isorare) x1, " ";
436                12: print "open";
437                13: print "open but empty";
438                14: print "closed";
439                15: print "closed and locked";
440                16: print " and empty";
441                17: print " (which ", (isorare) x1, " empty)";
442                18: print " containing ";
443                19: print " (on ";
444                20: print ", on top of ";
445                21: print " (in ";
446                22: print ", inside ";
447             }
448   
449    Pronouns: switch(n)
450             {   1: print "At the moment, ";
451                 2: print "means ";
452                 3: print "is unset";
453                 4: "no pronouns are known to the game.";
454             }
455    Order:          print (The) x1;
456                    if (x1 has pluralname) print " have"; else print " has";
457                    " better things to do.";
458    Quit:    switch(n)
459             {   1: print "Please answer yes or no.";
460                 2: print "Are you sure you want to quit? ";
461             }
462    Restart: switch(n)
463             {   1: print "Are you sure you want to restart? ";
464                 2: "Failed.";
465             }
466    Restore: switch(n)
467             {   1: "Restore failed.";
468                 2: "Ok.";
469             }
470    Save:    switch(n)
471             {   1: "Save failed.";
472                 2: "Ok.";
473             }
474    Verify:  switch(n)
475             {   1: "The game file has verified as intact.";
476                 2: "The game file did not verify as intact,
477                     and may be corrupt.";
478             }
479    ScriptOn: switch(n)
480             {   1: "Transcripting is already on.";
481                 2: "Start of a transcript of";
482                 3: "Attempt to begin transcript failed.";
483             }
484    ScriptOff: switch(n)
485             {   1: "Transcripting is already off.";
486                 2: "^End of transcript.";
487                 3: "Attempt to end transcript failed.";
488             }
489    NotifyOn:       "Score notification on.";
490    NotifyOff:      "Score notification off.";
491    Places:         print "You have visited: ";
492    Objects: switch(n)
493             {   1: "Objects you have handled:^";
494                 2: "None.";
495                 3: print "   (worn)";
496                 4: print "   (held)";
497                 5: print "   (given away)";
498                 6: print "   (in ", (name) x1, ")";
499                 7: print "   (in ", (the) x1, ")";
500                 8: print "   (inside ", (the) x1, ")";
501                 9: print "   (on ", (the) x1, ")";
502                10: print "   (lost)";
503             }
504    Score:          if (deadflag) print "In that game you scored ";
505                    else print "You have so far scored ";
506                    print score, " out of a possible ", MAX_SCORE,
507                    ", in ", turns, " turn";
508                    if (turns~=1) print "s"; return;
509    FullScore: switch(n)
510             {   1: if (deadflag) print "The score was ";
511                    else          print "The score is ";
512                    "made up as follows:^";
513                 2: "finding sundry items";
514                 3: "visiting various places";
515                 4: print "total (out of ", MAX_SCORE; ")";
516             }
517    Inv:     switch(n)
518             {   1: "You are carrying nothing.";
519                 2: print "You are carrying";
520             }
521    Take:    switch(n)
522             {   1: "Taken.";
523                 2: "You are always self-possessed.";
524                 3: "I don't suppose ", (the) x1, " would care for that.";
525                 4: print "You'd have to get ";
526                    if (x1 has supporter) print "off "; else print "out of ";
527                    print_ret (the) x1, " first.";
528                 5: "You already have ", (thatorthose) x1, ".";
529                 6: if (noun has pluralname) print "Those seem ";
530                    else print "That seems ";
531                    "to belong to ", (the) x1, ".";
532                 7: if (noun has pluralname) print "Those seem ";
533                    else print "That seems ";
534                    "to be a part of ", (the) x1, ".";
535                 8: print_ret (Cthatorthose) x1, " ", (isorare) x1,
536                    "n't available.";
537                 9: print_ret (The) x1, " ", (isorare) x1, "n't open.";
538                10: if (x1 has pluralname) print "They're ";
539                    else print "That's ";
540                    "hardly portable.";
541                11: if (x1 has pluralname) print "They're ";
542                    else print "That's ";
543                    "fixed in place.";
544                12: "You're carrying too many things already.";
545                13: "(putting ", (the) x1, " into ", (the) SACK_OBJECT,
546                    " to make room)";
547             }
548    Drop:    switch(n)
549             {   1: if (x1 has pluralname) print (The) x1, " are ";
550                    else print (The) x1, " is ";
551                    "already here.";
552                 2: "You haven't got ", (thatorthose) x1, ".";
553                 3: "(first taking ", (the) x1, " off)";
554                 4: "Dropped.";
555             }
556    Remove:  switch(n)
557             {   1: if (x1 has pluralname) print "They are"; else print "It is";
558                    " unfortunately closed.";
559                 2: if (x1 has pluralname)
560                        print "But they aren't";
561                    else print "But it isn't";
562                    " there now.";
563                 3: "Removed.";
564             }
565    PutOn:   switch(n)
566             {   1: "You need to be holding ", (the) x1,
567                    " before you can put ", (itorthem) x1,
568                    " on top of something else.";
569                 2: "You can't put something on top of itself.";
570                 3: "Putting things on ", (the) x1, " would achieve nothing.";
571                 4: "You lack the dexterity.";
572                 5: "(first taking ", (itorthem) x1, " off)^";
573                 6: "There is no more room on ", (the) x1, ".";
574                 7: "Done.";
575                 8: "You put ", (the) x1, " on ", (the) second, ".";
576             }
577    Insert:  switch(n)
578             {   1: "You need to be holding ", (the) x1,
579                    " before you can put ", (itorthem) x1,
580                    " into something else.";
581                 2: print_ret (Cthatorthose) x1, " can't contain things.";
582                 3: print_ret (The) x1, " ", (isorare) x1, " closed.";
583                 4: "You'll need to take ", (itorthem) x1, " off first.";
584                 5: "You can't put something inside itself.";
585                 6: "(first taking ", (itorthem) x1, " off)^";
586                 7: "There is no more room in ", (the) x1, ".";
587                 8: "Done.";
588                 9: "You put ", (the) x1, " into ", (the) second, ".";
589             }
590    EmptyT:  switch(n)
591             {   1: print_ret (The) x1, " can't contain things.";
592                 2: print_ret (The) x1, " ", (isorare) x1, " closed.";
593                 3: print_ret (The) x1, " ", (isorare) x1, " empty already.";
594                 4: "That would scarcely empty anything.";
595             }
596    Give:    switch(n)
597             {   1: "You aren't holding ", (the) x1, ".";
598                 2: "You juggle ", (the) x1,
599                    " for a while, but don't achieve much.";
600                 3: print (The) x1;
601                    if (x1 has pluralname) print " don't";
602                    else print " doesn't";
603                    " seem interested.";
604             }
605    Show:    switch(n)
606             {   1: "You aren't holding ", (the) x1, ".";
607                 2: print_ret (The) x1, " ", (isorare) x1, " unimpressed.";
608             }
609    Enter:   switch(n)
610             {   1: print "But you're already ";
611                    if (x1 has supporter) print "on "; else print "in ";
612                    print_ret (the) x1, ".";
613                 2: if (x1 has pluralname) print "They're"; else print "That's";
614                    print " not something you can ";
615                    switch (verb_word) {
616                        'stand': "stand on.";
617                        'sit': "sit down on.";
618                        'lie': "lie down on.";
619                        default: "enter.";
620                    }
621                 3: "You can't get into the closed ", (name) x1, ".";
622                 4: "You can only get into something free-standing.";
623                 5: print "You get ";
624                    if (x1 has supporter) print "onto "; else print "into ";
625                    print_ret (the) x1, ".";
626                 6: print "(getting ";
627                    if (x1 has supporter) print "off "; else print "out of ";
628                    print (the) x1; ")";
629                 7: if (x1 has supporter) "(getting onto ", (the) x1, ")^";
630                    if (x1 has container) "(getting into ", (the) x1, ")^";
631                    "(entering ", (the) x1, ")^";
632             }
633    GetOff:         "But you aren't on ", (the) x1, " at the moment.";
634    Exit:    switch(n)
635             {   1: "But you aren't in anything at the moment.";
636                 2: "You can't get out of the closed ", (name) x1, ".";
637                 3: print "You get ";
638                    if (x1 has supporter) print "off "; else print "out of ";
639                    print_ret (the) x1, ".";
640             }
641    VagueGo:       "You'll have to say which compass direction to go in.";
642   
643    Go:      switch(n)
644             {   1: print "You'll have to get ";
645                    if (x1 has supporter) print "off "; else print "out of ";
646                    print_ret (the) x1, " first.";
647                 2: "You can't go that way.";
648                 3: "You are unable to climb ", (the) x1, ".";
649                 4: "You are unable to descend by ", (the) x1, ".";
650                 5: "You can't, since ", (the) x1, " ", (isorare) x1,
651                    " in the way.";
652                 6: print "You can't, since ", (the) x1;
653                    if (x1 has pluralname) " lead nowhere.";
654                    " leads nowhere.";
655             }
656   
657    LMode1:         " is now in its normal ~brief~ printing mode, which gives
658                     long descriptions of places never before visited and short
659                     descriptions otherwise.";
660    LMode2:         " is now in its ~verbose~ mode, which always gives long
661                     descriptions of locations
662                     (even if you've been there before).";
663    LMode3:         " is now in its ~superbrief~ mode, which always gives short
664                     descriptions of locations
665                     (even if you haven't been there before).";
666   
667    Look:    switch(n)
668             {   1: print " (on ", (the) x1, ")";
669                 2: print " (in ", (the) x1, ")";
670                 3: print " (as "; @print_obj x1; print ")";
671                 4: print "^On ", (the) x1;
672                    WriteListFrom(child(x1),
673                        ENGLISH_BIT + RECURSE_BIT + PARTINV_BIT
674                        + TERSE_BIT + ISARE_BIT + CONCEAL_BIT);
675                    ".";
676           default: if (x1~=location)
677                    {   if (x1 has supporter) print "^On "; else print "^In ";
678                        print (the) x1, " you";
679                    }
680                    else print "^You";
681                    print " can ";
682                    if (n==5) print "also "; print "see ";
683                    WriteListFrom(child(x1),
684                        ENGLISH_BIT + WORKFLAG_BIT + RECURSE_BIT
685                        + PARTINV_BIT + TERSE_BIT + CONCEAL_BIT);
686                    if (x1~=location) ".";
687                    " here.";
688             }
689   
690    Examine: switch(n)
691             {   1: "Darkness, noun.  An absence of light to see by.";
692                 2: "You see nothing special about ", (the) x1, ".";
693                 3: print (The) x1, " ", (isorare) x1, " currently switched ";
694                    if (x1 has on) "on."; else "off.";
695             }
696    LookUnder: switch(n)
697             {   1: "But it's dark.";
698                 2: "You find nothing of interest.";
699             }
700   
701    Search:  switch(n)
702             {   1: "But it's dark.";
703                 2: "There is nothing on ", (the) x1, ".";
704                 3: print "On ", (the) x1;
705                    WriteListFrom(child(x1),
706                        TERSE_BIT + ENGLISH_BIT + ISARE_BIT + CONCEAL_BIT);
707                    ".";
708                 4: "You find nothing of interest.";
709                 5: "You can't see inside, since ", (the) x1, " ",
710                    (isorare) x1, " closed.";
711                 6: print_ret (The) x1, " ", (isorare) x1, " empty.";
712                 7: print "In ", (the) x1;
713                    WriteListFrom(child(x1),
714                        TERSE_BIT + ENGLISH_BIT + ISARE_BIT + CONCEAL_BIT);
715                    ".";
716             }
717   
718    Unlock:  switch(n)
719             {   1: if (x1 has pluralname) print "They don't ";
720                    else print "That doesn't ";
721                    "seem to be something you can unlock.";
722                 2: print_ret (ctheyreorthats) x1,
723                    " unlocked at the moment.";
724                 3: if (x1 has pluralname) print "Those don't ";
725                    else print "That doesn't ";
726                    "seem to fit the lock.";
727                 4: "You unlock ", (the) x1, ".";
728             }
729    Lock:    switch(n)
730             {   1: if (x1 has pluralname) print "They don't ";
731                    else print "That doesn't ";
732                    "seem to be something you can lock.";
733                 2: print_ret (ctheyreorthats) x1, " locked at the moment.";
734                 3: "First you'll have to close ", (the) x1, ".";
735                 4: if (x1 has pluralname) print "Those don't ";
736                    else print "That doesn't ";
737                    "seem to fit the lock.";
738                 5: "You lock ", (the) x1, ".";
739             }
740   
741    SwitchOn: switch(n)
742             {   1: print_ret (ctheyreorthats) x1,
743                    " not something you can switch.";
744                 2: print_ret (ctheyreorthats) x1,
745                    " already on.";
746                 3: "You switch ", (the) x1, " on.";
747             }
748    SwitchOff: switch(n)
749             {   1: print_ret (ctheyreorthats) x1,
750                    " not something you can switch.";
751                 2: print_ret (ctheyreorthats) x1,
752                    " already off.";
753                 3: "You switch ", (the) x1, " off.";
754             }
755   
756    Open:    switch(n)
757             {   1: print_ret (ctheyreorthats) x1,
758                    " not something you can open.";
759                 2: if (x1 has pluralname) print "They seem ";
760                    else print "It seems ";
761                    "to be locked.";
762                 3: print_ret (ctheyreorthats) x1,
763                    " already open.";
764                 4: print "You open ", (the) x1, ", revealing ";
765                    if (WriteListFrom(child(x1),
766                        ENGLISH_BIT + TERSE_BIT + CONCEAL_BIT)==0) "nothing.";
767                    ".";
768                 5: "You open ", (the) x1, ".";
769             }
770   
771    Close:   switch(n)
772             {   1: print_ret (ctheyreorthats) x1,
773                    " not something you can close.";
774                 2: print_ret (ctheyreorthats) x1,
775                    " already closed.";
776                 3: "You close ", (the) x1, ".";
777             }
778    Disrobe: switch(n)
779             {   1: "You're not wearing ", (thatorthose) x1, ".";
780                 2: "You take off ", (the) x1, ".";
781             }
782    Wear:    switch(n)
783             {   1: "You can't wear ", (thatorthose) x1, "!";
784                 2: "You're not holding ", (thatorthose) x1, "!";
785                 3: "You're already wearing ", (thatorthose) x1, "!";
786                 4: "You put on ", (the) x1, ".";
787             }
788    Eat:     switch(n)
789             {   1: print_ret (ctheyreorthats) x1,
790                    " plainly inedible.";
791                 2: "You eat ", (the) x1, ". Not bad.";
792             }
793    Yes, No:        "That was a rhetorical question.";
794    Burn:           "This dangerous act would achieve little.";
795    Pray:           "Nothing practical results from your prayer.";
796    Wake:           "The dreadful truth is, this is not a dream.";
797    WakeOther:      "That seems unnecessary.";
798    Kiss:           "Keep your mind on the game.";
799    Think:          "What a good idea.";
800    Smell:          "You smell nothing unexpected.";
801    Listen:         "You hear nothing unexpected.";
802    Taste:          "You taste nothing unexpected.";
803    Touch:   switch(n)
804             {   1: "Keep your hands to yourself!";
805                 2: "You feel nothing unexpected.";
806                 3: "If you think that'll help.";
807             }
808    Dig:            "Digging would achieve nothing here.";
809    Cut:            "Cutting ", (thatorthose) x1, " up would achieve little.";
810    Jump:           "You jump on the spot, fruitlessly.";
811    JumpOver, Tie:  "You would achieve nothing by this.";
812    Drink:          "There's nothing suitable to drink here.";
813    Fill:           "But there's no water here to carry.";
814    Sorry:          #ifdef DIALECT_US;
815                    "Oh, don't apologize.";
816                    #ifnot;
817                    "Oh, don't apologise.";
818                    #endif;
819    Strong:         "Real adventurers do not use such language.";
820    Mild:           "Quite.";
821    Attack:         "Violence isn't the answer to this one.";
822    Swim:           "There's not enough water to swim in.";
823    Swing:          "There's nothing sensible to swing here.";
824    Blow:           "You can't usefully blow ", (thatorthose) x1, ".";
825    Rub:            "You achieve nothing by this.";
826    Set:            "No, you can't set ", (thatorthose) x1, ".";
827    SetTo:          "No, you can't set ", (thatorthose) x1, " to anything.";
828    WaveHands:      "You wave, feeling foolish.";
829    Wave:    switch(n)
830             {   1: "But you aren't holding ", (thatorthose) x1, ".";
831                 2: "You look ridiculous waving ", (the) x1, ".";
832             }
833    Pull, Push, Turn:
834             switch(n)
835             {   1: if (x1 has pluralname) print "Those are ";
836                    else print "It is ";
837                    "fixed in place.";
838                 2: "You are unable to.";
839                 3: "Nothing obvious happens.";
840                 4: "That would be less than courteous.";
841             }
842    PushDir: switch(n)
843             {   1: "Is that the best you can think of?";
844                 2: "That's not a direction.";
845                 3: "Not that way you can't.";
846             }
847    Squeeze: switch(n)
848             {   1: "Keep your hands to yourself.";
849                 2: "You achieve nothing by this.";
850             }
851    ThrowAt: switch(n)
852             {   1: "Futile.";
853                 2: "You lack the nerve when it comes to the crucial moment.";
854             }
855    Tell:    switch(n)
856             {   1: "You talk to yourself a while.";
857                 2: "This provokes no reaction.";
858             }
859    Answer, Ask:    "There is no reply.";
860    Buy:            "Nothing is on sale.";
861    Sing:           "Your singing is abominable.";
862    Climb:          "I don't think much is to be achieved by that.";
863    Wait:           "Time passes.";
864    Sleep:          "You aren't feeling especially drowsy.";
865    Consult:        "You discover nothing of interest in ", (the) x1, ".";
866  ];
867   
868  ! ---------------------------------------------------------------------------


Last updated 27 February 2004. This site is no longer supported; information may be out of date.
Maintained as a historical archive by the Interactive Fiction Technology Foundation. Copyright 1993-2018 IFTF, CC-BY-SA unless otherwise noted.
This page was originally managed by Graham Nelson (graham@gnelson.demon.co.uk) assisted by C Knight.