Ok after some further investigation heres what i've found. Its still not working just like i want but i'm getting closer.
The way that aa_timers is working atm is:
When the effect first goes off it sets begin < end
If you click it again it sets begin = end
it rotates in this cycle and does not go down in time.
The way i have this working now it will go off every other time
So i was looking in database::UpdateTimersClientConnected(int32 charid)
and heres what i found
Code:
if (!RunQuery(query, MakeAnyLenString(&query, "update aa_timers set end=(UNIX_TIMESTAMP(now())+(end-begin)),begin=UNIX_TIMESTAMP(now()) where charid=%i",charid), errbuf))
correct me if i'm wrong but the way they have it increases both end and begin and not only begin so no matter what they will have the same difference. Cant think of a way to fix it because i've got to go do some homework. Almost there though if u can think of a fix before i get back post it.