I haven't looked through your code too much, but I'm sure there is significant improvement.
It might be easiest to just make mob->IsEgnaged() a virtual function and overload it in the client object. I can't think of anything that would break. The only time IsEngaged() is used in reference to a client is in the bot code as far as I'm aware. That way, you wouldn't have to mess with all of the group iterations in the bot code.
|