The so-called "controversy" all started when you use * instead of #
The * makes your script listen to both PM and channel. What Scakk did was alter your script to listen to $chan only.
I didn't test mine, but upon a brief testing I conducted, it seems to have worked. $chan returns $null in PM. Your originally used $active, and that'll trigger in every mIRC window, so say if you're looking at the status, you'll get the script sending you the output there.