Taking before throwing

There’s a bucket. There’s water in the bucket. There’s an INSTEAD OF rule that says instead of throwing the water (like, throwing it at a burning tree) you should throw the bucket instead. There’s an INSTEAD OF rule that says instead of taking the water, you get wet and the water is nowhere (to stop you from removing the water from the bucket). However if the player tries to throw the water at the burning tree, it still hits the rule for taking the water, so instead of throwing the bucket at the tree, the player gets wet and the water goes nowhere. Is there a way to fix this so the player doesn’t try to take the water before throwing it?

2 Likes

You can do something like:

The carrying requirements rule does nothing when the noun is the water and the second noun is the tree.
2 Likes

Thanks, I’ll try that!

That didn’t do it. Throwing the water at the tree still results in you spilling water on yourself.

Looks like there’s something called the “can’t put what’s not held” rule being invoked. Gonna see if I can do anything with that.

EDIT:

Nope. Bypassing that gives me “Putting things on the tree would achieve nothing.”

Without seeing your code, is there a need for both of these to be “instead” rules? An instead rule will preempt a check rule, but all instead rules happen at the same time (it’s one rulebook)

2 Likes

Bingo. Making the water taking rule a check, in combination with bypassing the carrying requirements rule, fixed it. Thanks y’all!

2 Likes

I would recommend a “before” rule, here, since those run before general feasibility checks. (That’s the difference between “before” and “instead”.)

3 Likes