Changing a Definition

Is there a way to redefine a definition? Just defining a new meaning for it gives an error message saying it should be OK to redefine it in an extension, but then in the same error message says it can’t be defined in two places…

I would rather not do a replacement header for the entire Standard Rules Section SR1/0 - Language header, but these assumptions are embedded in it:

Definition: a thing is worn if the player is wearing it.
Definition: a thing is carried if the player is carrying it.
Definition: a thing is held if the player is holding it.

And for what I’m trying to do, I want to change that to

Definition: a thing is worn if someone is wearing it.
Definition: a thing is carried if someone is carrying it.
Definition: a thing is held if someone is holding it.

(I know the implications to this in actions and understanding of commands… I’m rewiring a lot of things in how actions work)

No need to redefine them, just add in your own definitions. If either definition is true then the adjective will be applied. (I guess it’s trickier if you want conflicting definitions.)

That’s exactly what I’m worried about though, and it’s just a mess going through and figuring out where I need to use my definition vs the established. “Held” is particularly nasty.

To decide which thing is the ultimate_holder of (A - a thing):
	let the the_ultimate_holder be a thing;
	if A is not incorporated by a person:
		if A is held by something (called B) or A is worn by B:
			now the_ultimate_holder is B;
etc...\

If I do this:

Definition: a thing is _worn if the player is wearing it.
Definition: a thing is _carried if the player is carrying it.
Definition: a thing is _held if the player is holding it.

Now I have a whole new set of worries that go beyond just the understanding command phrases, to where “held” is something I have to worry about redefining entirely everywhere. Really, I’m not sure if held and carried are problematic, but worn is for some reason. Hm, I just don’t want to rush into something that is going to break things in unexpected ways and then have to backtrack… that’s happened to me several times working in Inform so far.

if A is held by something (called B) or A is worn by B

That’s using the relations rather than the adjectives.

So it is… ugh, thank you for pointing that out. The problem was actually downstream from this rule but it looked to me like the definition, not the relation where it was being used.

Ok, so I don’t need this for this use case. It sounds like if there ever were a use case where replacing a definition were needed though, that this is impossible to do and you need instead to use a different definition or replace it with a replacement header? Well, since I don’t need it for now, that’s OK and good to know.

Thanks!