examining....for the first time

Really quick question. How do I make an object be unexamined so I can use ‘for the first time’.

So, rather than the cumbersome:

[code]A thing can be examined or unexamined.
Carry out examining something: now the noun is examined.

The player carries a widget. The widget is unexamined.

Instead of examining the widget:
if the…etc…[/code]

I can just use:

[code]After examining the widget for the first time:
say “some text”.

Instead of eating the cookie:
now the widget is ??? [i.e. next time it gets examined, it’s as if for the first time]
[/code]

Thanks in advance…
McT

“First time” counters are generated automatically by Inform. I don’t think there’s any way to reset them even with I6 hacks.

Nooo…! Don’t say that. Much re-factoring will be required if true!

The counters are stored in an I6 array, but there’s no way to reliably know which of the array’s elements stores a specific rule’s counter. In any case trying to reset the internal first time counters would be much, much more cumbersome than using custom flags.

[redacted. I’m an idiot.]
Ouch. Oh well, back to drawing board.

Maybe you can do what you want by applying an adjective to the widget and using it in the “…for the first time” rule, so you basically get two whacks at “…for the first time”? This works (in whatever version of Inform playfic uses):

Lab is a room. The player carries a widget. The widget can be set or reset. The widget is set. After examining the set widget for the first time: say "This is the first time you've examined the widget before eating the cookie." After examining the reset widget for the first time: say "This is the first time you've examined the widget after eating the cookie." The player carries a cookie. The cookie is edible. Carry out eating the cookie: now the widget is reset. Test me with "x widget/x widget/eat cookie/x widget/x widget".

It wouldn’t let you reset an arbitrary number of times, though.

Thanks Matt - unfortunately I’m going to be examining multiple first times - it’s one of the key mechanics of my new game. Looks like i’m going to need to be cumbersome.

It’s not that hard to add a new adjective, as you showed in your first post, and you can then use it for everything.

Instead of examining the unexamined widget...
Instead of examining the unexamined foobar...
Instead of examining the unexamined frobozz...

Look at Emily’s “mood variation” extension which lets you pick a variation within quotes by a mood adjective. Maybe that could work combined with incrementing mood after saying a quip then resetting when the character does something else.