! Testing that held and creature tokens parse all/all-but correctly ! Testing issue 60 (sentence splitting) ! ! #Iftrue (#version_number == 8); Constant USEINFORM; #Endif; Constant Story "Parser test"; Constant Headline "^A parser test suite for PunyInform.^"; Serial "200827"; Constant INITIAL_LOCATION_VALUE = Room; ! Uncomment to show time instead of score/turns !Statusline time; !Constant DEBUG; !Constant DEBUG_PARSEANDPERFORM; !Constant DEBUG_PARSEPATTERN; !Constant DEBUG_PARSETOKEN; !Constant DEBUG_CHECKNOUN; !Constant DEBUG_GETNEXTNOUN; !Constant DEBUG_SCOPE; ! Uncomment to add optional features to PunyLib !Constant DEBUG; !Constant CUSTOM_ABBREVIATIONS; !Constant OPTIONAL_ALLOW_WRITTEN_NUMBERS; Constant OPTIONAL_EXTENDED_METAVERBS; !Constant OPTIONAL_EXTENDED_VERBSET; !Constant OPTIONAL_FULL_SCORE; !Constant OPTIONAL_FULL_DIRECTIONS; !Constant OPTIONAL_GUESS_MISSING_NOUN; !Constant OPTIONAL_MANUAL_SCOPE; !Constant RUNTIME_ERRORS = 0; #Ifdef USEINFORM; Include "Parser"; Include "VerbLib"; #IfNot; Include "globals.h"; #EndIf; #Ifndef USEINFORM; Include "puny.h"; #EndIf; ! Uncomment to add PunyLib extensions !Include "ext_menu.h"; !Include "ext_flags.h"; !Include "ext_quote_box.h"; !Include "ext_cheap_scenery.h"; #Ifdef USEINFORM; Include "Grammar"; #Endif; Object Room "Room" with description "You are in a room.", s_to Room2, has light; Object Room2 "Room 2" with description "You are in another room.", n_to Room, has light; Object apple "apple" Room with name 'apple', Before [; eat: deadflag = 2; ], has edible; Object banana "banana" Room with name 'banana', has edible; Object orange "orange" Room2 with name 'orange', has edible; Object bob "Bob" Room with name 'bob' has animate proper; Object bush "bush" Room with name 'bush', Before [; Search: move pineapple to player; !give apple ~concealed; "You find a pineapple. You take it."; ], has; Object pineapple "pineapple" with name 'pineapple', has concealed; [ Initialise; #IfDef USEINFORM; location=INITIAL_LOCATION_VALUE; #EndIf; ];