DennisWG / Roid-Macros

Vanilla macros on steroids!
MIT License
58 stars 16 forks source link

Conditionally disable auto targeting. #36

Closed atholbro closed 6 years ago

atholbro commented 6 years ago

The changes in this pull request disable automatic targeting when the user disables auto self casting under interface options. With the current release version, Roid-Macros will always self cast on the player when no target is selected.

So the following macro: /cast [@mouseover,help] Renew

Will always cast renew on the player if they have no target. After these changes, Roid-Macros will only do this if the interface option for auto self cast is enabled. So basically if auto self cast is selected, nothing changes, if it's not selected, then it works as the user expects.

I also discovered an issue if the user uses a macro that casts a spell (say @mouseover) while another spell is awaiting a target. With the release version, the spell you have pending will be cast on the target, and that target will remain the target when the macro completes. This is odd as you previously had no target selected, and it casts the wrong spell! The last commit fixes this by canceling the pending cast before selecting a target. At first I thought this was related to the auto self casting change, but I went back to master and the issue still occurs. I would have split the PR otherwise and can do so still if you'd like.

DennisWG commented 6 years ago

Looking good! Thank you very much for contributing!