I'm working on a mapper for the mud I'm playing on, and denyCurrentSend and sysDataSendRequest plays a big role in it. Essentially what I'm doing is checking if I should be doing anything extra before sending the direction, if I have to, then I deny the send, send whatever I wanted before it, then resend the direction.
However I've started experiencing unexpected behavior.
I've managed to track down a bug that may be causing the issue I'm experiencing. The following, bare minimum script:
Have an alias/script sending to the server:
have a script like this:
Means, I first deny the current send, then replace with a new. Right? No.
Outcome:
You say: replacethis
Expected:
You say: replaced
Now, if I switch two lines around, I get the expected behavior, but just looks broken to me:
Means I send the new text, then deny the current send... but isn't that the new current send, not the one I wanted to replace? I'm confused.
Note:
I used to have temp aliases for a similar purpose, but found this way of doing more expandable. One of the main drawback of that is I would have to create an alias for all possible way of entering a direction. Not to mention there are ways to skip alias pattern matching. sysDataSendRequest is more reliable.