A while back, a very kind soul on this forum helped me with my perennial obsession with controlling the order objects are listed in rooms.
Consider this little game:
[code]“Test Game” by “C.E.J. Pacian”
The Vague Room is a room. “Who could ever leave this room?”
The Other Room is east of the Vague Room. “Actually, this room is better.”
The apple is a thing in the Other Room.
The chair is an enterable supporter in the Other Room.
The cute puppy is an animal in the vague room. “A cute puppy follows you, as ever.”
After going to a room:
now the cute puppy is in the location;
If we play this we get the following:
Which displeases me endlessly, because I want the puppy to be listed last in the room description.
Adding the following code:
[code]After choosing notable locale objects:
if the cute puppy is a notable-object listed in the Table of Locale Priorities:
now the cute puppy is mentioned.
The list-the-sidekick rule is listed after the you-can-also-see rule in the for printing the locale description rules.
This is the list-the-sidekick rule:
if the location of the cute puppy is the location of the player:
say “A cute puppy follows you, as always.”;
continue the activity.[/code]
Changes the result to this:
Perfect! Until we do this:
Based on the fact that the initial appearance is shown when you sit on the chair, it seems that the puppy’s initial appearance is getting displayed during some internal activity where I don’t want it to.
The rules command shows that the extra text is generated by the “describe what’s on scenery supporters in room descriptions rule”, but I have no idea what I can do with that information.
(Is controlling the order of things easier in the new version of I7? This has always seemed like a fundamental feature to me, but I realise that my opinion of what is fundamental seems be pretty unusual.)