I propose that the GroupAI interface be updated. It isnt robust enough and is very limited in comparison tot he more sutied globalAI interface. I suggest that the GroupAI itnerface be able to add and remove other groups as the globalAI is, and that it be able to have more control over UI and camera.
For example, adding commandfinished or enemy destroyed to the GroupAI class would help a lot.
GroupAI redo
Moderators: hoijui, Moderators
UnitIdle is essentially the same as something like CommandFinished(), so you can use that instead.
I'm thinking of moving the shared global AI and group AI functions to a general ISpringCallback class (Such as the add and remove group AI functions). This could be useful in the future too for other DLL based stuff that might be added to the spring engine.
It will require some code changes in the group and global AI's though, are all AI developers ok with that?
I'll add an EnemyDestroyed function too while I'm at it.
Maybe SJ could comment on the UI stuff, since I'm not sure if that's located in the same thread (app thread, not forum thread
). Is it possible to use OpenGL/font rendering/UI code in the AI callback?
I'm thinking of moving the shared global AI and group AI functions to a general ISpringCallback class (Such as the add and remove group AI functions). This could be useful in the future too for other DLL based stuff that might be added to the spring engine.
It will require some code changes in the group and global AI's though, are all AI developers ok with that?
I'll add an EnemyDestroyed function too while I'm at it.
Maybe SJ could comment on the UI stuff, since I'm not sure if that's located in the same thread (app thread, not forum thread

No, there's no real way of changing the GUI save things such as refreshing the icons as shown by SJ's central build AI, adding panels and so on would have to be done by making new windows and hiding the toolbars/ borders and setting them as always ontop.
Camera position and direction control would be nice for GroupAI or GlobalAI helpers as SJ plans. And giving units to another player under GlobalAI would be useful for tutorials/ scenarios etc
Camera position and direction control would be nice for GroupAI or GlobalAI helpers as SJ plans. And giving units to another player under GlobalAI would be useful for tutorials/ scenarios etc
Yes true, but the problem here is that you just can't start calling functions that might be running another thread, unless they have been made thread-safe by things like mutexes.No, there's no real way of changing the GUI save things such as refreshing the icons as shown by SJ's central build AI, adding panels and so on would have to be done by making new windows and hiding the toolbars/ borders and setting them as always ontop.
Since SJ has given me commit access to CVS, I'll be adding the camera positioning functions to the callback. I think SJ can spend his time in a better way.
What do you mean with direction control?