[I7] Describe the player with indexed text

I’m looking at example 408 (Fido), and I’d like to apply it to the player.

[code]Lab is a room.

The player has some indexed text called the nickname. The nickname of the player is “nothing”. Understand the nickname property as describing the player. [/code]

This works just fine for a non-player object, but for players, it produces:

Problem. You wrote ‘Understand the nickname property as describing the player’ : but I don’t understand what thing or kind that refers to, but it does need to be a thing or kind and not (say) a value. For instance, ‘understand the transparent property as describing a container.’

I can handle this by creating a separate object, setting up the nickname property, and changing the player to the separate object, but it seems a little kludgy. Does anyone have a cleaner approach?

I should add, here’s my currently-implemented workaround. Which is arguably even more kludgy than just changing the player, but doesn’t require me to stash “your former self” somewhere.

[code]The secret-name object is a privately-named thing. The secret-name object is part of the player. The secret-name object has some indexed text called the name. The name of the secret-name object is “nothing”. Understand the name property as describing the secret-name object.

Before doing something with the secret-name object:
if the noun is the secret-name object:
now the noun is the player;
else if the second noun is the secret-name object:
now the second noun is the player;
try the current action instead.[/code]

The name of the default player is ‘yourself’. ‘The player’ isn’t a thing or a kind; it’s a value that points to one.

Worked like a charm! Thanks.