In previous attempts to make an actionbar, I've noticed that people liked to manually code the spells in for each slot. This struck me as tedious, annoying, and inefficient. A couple days ago, I set out to create a library that could transparently do the work for you in creating action bars, and take the work out of it. My goals at the time were simple: to make and draw an action bar without ever having to tell the library about spells.
I think I've succeeded.
Demonstration video by onetwo.
But I'm not done yet. I'm currently working on tieing libActionBar into a few more libraries, such as LibHotkey, which will allow you to escape the tedious mouse usage that's required at the moment. The plan is to have it so that you can choose between two styles of hotkeys:
WoW-style (1-9 at the top of your keyboard, depending on which order the abilities are in)
RTS-style (individual hotkeys read from the abilities and used)
Nice use of Catalog Entries. Overall a very nice library.
One issue, however. I think it's not such a good idea to let point/unit target abilities hit right infront of the caster if no unit is selected.
E.g. you want to attack something but it dies the moment you click the button. The spell would go somewhere, even though it's not intended to.
And with the delay that keypresses have it's a thing that could happen more often.
Some basic questions as I'm new to this: I need to include the code as "custom script"? And how can I then call the init functions (custom script does only allow one init function without parameters)? Is there a way to call a function of a custom script from GUI?
Thanks!
I don't support using GUI with this library, but there are workarounds to use it in GUI anyways.
You can use the import manager to include it, and then just call it from custom script. You'd have to edit the MapScript.galaxy header though every time to include "libactionbar" or whatever you named the imported file.
Bumping this as I'm fairly sure this could still be useful to the right project. There have been numerous updates to the code as far as functionality goes, but I haven't done too much more other than fix bugs. The code is now in another project's GitHub repository, but I can fork it if anyone is seriously interested in developing it.
Ultimately, I'd love to see someone take this and add a better targeting system to it, and maybe integrate it with the keyboard better. I'd love to see what the right mapper could do with it. :)
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
In previous attempts to make an actionbar, I've noticed that people liked to manually code the spells in for each slot. This struck me as tedious, annoying, and inefficient. A couple days ago, I set out to create a library that could transparently do the work for you in creating action bars, and take the work out of it. My goals at the time were simple: to make and draw an action bar without ever having to tell the library about spells.
I think I've succeeded.
Demonstration video by onetwo.
But I'm not done yet. I'm currently working on tieing libActionBar into a few more libraries, such as LibHotkey, which will allow you to escape the tedious mouse usage that's required at the moment. The plan is to have it so that you can choose between two styles of hotkeys:
You can find my work and basic documentation on the assets page: http://www.sc2mapster.com/assets/libactionbar/
I'd like to thank Helral for helping me figure out how to access the very stupid catalogs without causing errors all over the place.
Nice use of Catalog Entries. Overall a very nice library.
One issue, however. I think it's not such a good idea to let point/unit target abilities hit right infront of the caster if no unit is selected.
E.g. you want to attack something but it dies the moment you click the button. The spell would go somewhere, even though it's not intended to.
And with the delay that keypresses have it's a thing that could happen more often.
@s3rius: Go
No, I use regular old validated orders to use the abilities. If the unit had died the OrderIsValid() check would fail and it would never be issued.
No problem :)
Some basic questions as I'm new to this: I need to include the code as "custom script"? And how can I then call the init functions (custom script does only allow one init function without parameters)? Is there a way to call a function of a custom script from GUI? Thanks!
I don't support using GUI with this library, but there are workarounds to use it in GUI anyways.
You can use the import manager to include it, and then just call it from custom script. You'd have to edit the MapScript.galaxy header though every time to include "libactionbar" or whatever you named the imported file.
sorry but how do I put it on im kinda noob to galaxy editor, but i can trigger :o
its awesome though ^^
It's been a while, but updated!
The latest version is more responsive, pretty, and doesn't error out. xD
Once patch 1.2 comes and you can create better UI, im guessing this comes useles :/.
Bumping this as I'm fairly sure this could still be useful to the right project. There have been numerous updates to the code as far as functionality goes, but I haven't done too much more other than fix bugs. The code is now in another project's GitHub repository, but I can fork it if anyone is seriously interested in developing it.
https://github.com/Motive/CortexEngine/blob/master/Common/lib/libactionbar.galaxy
Ultimately, I'd love to see someone take this and add a better targeting system to it, and maybe integrate it with the keyboard better. I'd love to see what the right mapper could do with it. :)