HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

How to make this GUI spell both MUI and working?

03-15-2009, 03:29 PM#1
Michael Peppers
Here it is:

Cunning Inspiration:
Cunning Inspiration
Collapse Events
Unit - A unit starts the effect of an ability
Collapse Conditions
(Ability being cast) equal to Cunning Inspiration
Collapse Actions
Custom script: local unit udg_CunningTarget
Set CunningTarget = (Target unit of ability being cast)
Unit - Add Spellbook to CunningTarget
Wait 0.10 seconds
Wait until ((CunningTarget has buff Cunning Inspiration ) equal to FALSE), checking every 0.10 seconds
Unit - Remove Spellbook from CunningTarget
Custom script: set udg_CunningTarget = null

Issue: If I disable darkwulfv's third way of MUI in GUI (globals treated as locals) it's not MUI anymore, if I keep it the "Wait until Condition" action doesn't work properly, ending the trigger at its first check.
Suggestions? (other than: learn JASS, because I know I have to...)
03-15-2009, 03:36 PM#2
moyack
Learn jass. Sorry, but there's no other way.
03-15-2009, 03:41 PM#3
Michael Peppers
Quote:
Originally Posted by moyack
Learn jass. Sorry, but there's no other way.

Probably you're right. Ok, let's see if I manage to learn JASS and do this before the end of the Race Contest...
03-15-2009, 03:45 PM#4
darkwulfv
The problem is that "Wait until condition" makes a new function, which my locals trick doesn't work with. You'd have to learn JASS, as moyack said.
03-15-2009, 03:49 PM#5
Anitarf
Quote:
Originally Posted by moyack
Learn jass. Sorry, but there's no other way.
Sure there is. I wouldn't suggest it, though. Making a proper MUI spell in GUI is a big mess, at least in those cases in which it's possible at all.

You'd basically need to construct the equivalent of vJass structs in GUI, and it's already a pain to simulate them in regular JASS.

With vJass (and the right system), however, making a spell like this is a piece of cake, it's a simple matter of adding a few lines of code to one of the existing templates.
03-15-2009, 04:02 PM#6
Michael Peppers
So, three skilled JASSers tell me it's (nearly) impossible in GUI or inconvenient at all, included the creator of the MUI method I'm using, and one of them sponsorizes its buff system... (Just joking :P, but yes, I guess I'll need it for this spell, thanks to point me that, of course I'll rep you the time I'll download it.)

Well, if it isn't another proof of GUI's limits, then I don't know in what to believe anymore.

Thanks for the advice, although I hoped there was another way...
03-15-2009, 04:28 PM#7
darkwulfv
Quote:
included the creator of the MUI method I'm using,
Quick clarification; I didn't create that method, I just documented it in a tutorial. =P
03-15-2009, 04:30 PM#8
Michael Peppers
Too bad, I even Repped you for that XD
03-15-2009, 04:32 PM#9
darkwulfv
And just so you know, this spell is extremely easy to make into JASS. For the "wait for condition", you could just do a loop with a .21 second wait (PolledWait, that is) and exit said loop when the unit has the buff, and then do the following actions. It's really quite simple.
03-15-2009, 04:36 PM#10
Michael Peppers
Then it comes the real problem: how to make a buff independent from the others? Now if the target (copied Inner Fire so far) is targeted by another spell of the same type, the first is being cancelled by the second. Anitarf's system needed?
03-15-2009, 04:37 PM#11
darkwulfv
Ah...Hmm... Well, you could base it off of a buff that's hardly ever used, if ever. You know what I mean?
03-15-2009, 04:40 PM#12
Michael Peppers
Quote:
Originally Posted by darkwulfv
Ah...Hmm... Well, you could base it off of a buff that's hardly ever used, if ever. You know what I mean?

I've searched for autocasts that works in the same way of Inner Fire, but so far they are all massively used spells, and if it works in another way, then the autocast is relatively useless, unless also that can be tweaked someway via triggers...
I always forget to specify something about my spells, yep, this is an autocast.
03-15-2009, 04:50 PM#13
darkwulfv
Ahh... that kind of makes it harder. But I think if you base the buff itself off of a different buff than Inner Fire it won't clash. I'm not 100% sure, you may want to test that. (Buffs don't have to be based off the buff of the spell you're using it for)
03-15-2009, 05:00 PM#14
cosmicat
Unfortunately, any buff generated by an ability based on Inner Fire will override any other buff generated by an ability based on Inner Fire. The same applies to every auto-cast buff-placing spell: Frost Armor, Parasite, etc etc etc. As far as I know (and I have tested quite a bit), the only way to stack buffs is to use a debuff-placer ability (like Envenomed Spears). This requires a dummy-caster to attack, though.

Edit: After looking into Anitarf's ABuff system, I see that he uses auras to place the buffs. Happily, this method for buff placement works and is compatible with other auras. Yay!
03-15-2009, 05:02 PM#15
Michael Peppers
Quote:
Originally Posted by cosmicat
Unfortunately, any buff generated by an ability based on Inner Fire will override any other buff generated by an ability based on Inner Fire.

Just tested. x.x