Issue with Basic Screen Effects (10.1.2 release on Mac)

Getting into Inform 7 and trying to run the example code
for Basic Screen Effects and hitting some errors.

  • turn the background red - phrase not recognized
  • turn the background black - phrase not recognized
  • turn the background white - phrase not recognized

and some other errors.

Is Basic Screen Effects currently bugged?

Those phrases are Z-Machine only, and you’re probably compiling to Glulx.

For Glulx consider using the Glulx Text Effects or Glk Text Formatting extensions.


I ran into the same issue. Instead of looking for Glulx extensions that support color, I used bold vs. normal text (where bold indicates an unvisited room and normal text indicates a visited room). Here’s the customization I added to Sand-dancer (Sand Dancer):



[TODO: To view the output from the Property Checking extension, comment this section before the definition of Table of Fancy Status]
When play begins:
	clear the screen;
	clear only the status line;
	leave space;
	say "[story title]";
	say line break;
	say "by [story author]";
	say line break;
	say "[story headline]"; 
	leave space;
	say italic text;
	say "[story description]";
	say monospaced;
	leave space;
	say "If you have never played interactive fiction, enter HELP for guidance.";
	say paragraph break;
	say "Press SPACE to begin.";
	wait for the SPACE key;
	clear the screen;	
	leave space;		
	say normal text;

To leave space:
	say paragraph break;
	say paragraph break;

Table of Fancy Status
left    central    	right
" Region:   [regional area] "    ""    	"[top rose]" 
" [if in darkness]Darkness[otherwise]Location: [location][end if]"	""    	"[middle rose]" 
" "    	""    	"[bottom rose]" 
""	""	""
 " Locations visited: [number of rooms which are visited]/[number of rooms]" 	"Talents: [if player holds at least one talent][the list of held talents][otherwise]none[end if]"	"Cigarettes: [number of cigarettes enclosed by player]"

To say bold text:
	say "[bold type]".
To say normal text:
	say "[roman type]".
To say italic text:
	say "[italic type]".
To say monospaced:
	say "[fixed letter spacing]".
To say rose (way - a direction):
	let place be the room way from the location;
	if the place is a room, say 
		"[if the place is unvisited][bold text][way abbreviation][else][normal text][way abbreviation][end if][normal text]"; 
	otherwise say 
		"[way spacing]";
To say (way - a direction) abbreviation:
	choose row with a chosen way of way in the Table of Various Directions;
	say abbrev entry.

To say (way - a direction) spacing:
	choose row with a chosen way of way in the Table of Various Directions;
	say spacing entry.

To say regional area:
	if in darkness, rule succeeds;
	if location is in Around the Tower, say "Around the Tower";
	if location is in Office Interior, say "Office Interior";
Table of Various Directions
chosen way    	abbrev    	spacing
up    	"U "    	"  "	
northwest    	"NW "    	"   "
north    	" N"    	"   "
northeast    	"  NE"    	"   "
east    	"E"    	" "	
west    	"W"    	" "
southeast    	"  SE"    	"   "
south    	" S"    	"   "
southwest    	"SW "    	"   "
down    	"D "    	"  "
inside	" IN    "	"  "
outside	" OUT   "	"  "

To say top rose:
	say "[rose up][rose northwest][rose north][rose northeast][rose inside]  ".

To say middle rose:
	say "   [rose west]  +  [rose east]  ";

To say bottom rose:
	say "[rose down][rose southwest][rose south][rose southeast][rose outside]  ".
Rule for constructing the status line:
	fill status bar with Table of Fancy Status;
	rule succeeds.
1 Like