Posts: 757
Threads: 93
Joined: Oct 2013
10-29-2013, 08:42 PM
(This post was last modified: 10-29-2013, 08:43 PM by TauTau.)
How can I wait adequately until a cast is finished? I try to cast my pet:
Code:
if ( action ) then
if (ActionList:IsCasting() == false) then
ActionList:Cast(action.id,0)
end
end
but it still casts twice or thrice, sinc eit doesn't see that the pet is already there it seems. Is there some kind of "wait" command? Couldn't find it in the LUA reference
Posts: 694
Threads: 38
Joined: Jan 2013
You can try playing with action.isready but it appears that there are some internal timing inconsistencies with these functions that we're still trying to work out. I agree that it's annoying and getting rid of the spam is one of our priorities. You could probably use timers to get rid of it but that's rather barbaric and we'd prefer to use the client functionality instead of sticking timers everywhere in the code.
Posts: 757
Threads: 93
Joined: Oct 2013
the problem here I think is, that I rely on IsCasting(), and the actual cast really is over, but the check I do before
Code:
local mypet = Player.pet
if ( TableSize(mypet) < 1) then
doesn't seem to see the pet (while I do ;))
Posts: 694
Threads: 38
Joined: Jan 2013
Yeah, that's what I mean, there are some inconsistencies that we may have to dig deeper into in terms of skill latency etc. It could be due to the event system that ffxiv uses which seems to add some noticeable latency into most game actions.
Posts: 757
Threads: 93
Joined: Oct 2013
ok... I think I can live with that, it's not that annoying ;) However I found something else, how do I check if I'm mounted? Just noted that it tries to cast while mounted... I'd expect a Player.IsMounted() but the docs don't show it ;)