Macro don't reset

Hi there,

I have an issue with my macro not resetting out of combat, this is the macro:

{
    ["Variables"] = {
        ["KeyRelease"] = {
            [1] = "/targetenemy [noharm,nodead][dead]",
            [2] = "/startattack [nocombat,nomod]"
        },
        ["KeyPress"] = {
            [1] = "/cast Blood Fury",
            [2] = "/use [pet:primal storm elemental]  tempest"
        }
    },
    ["Actions"] = {
        [1] = {
            [1] = {
                [1] = "~~KeyPress~~",
                [2] = "/cast [nochanneling] Nature's Swiftness",
                [3] = "~~KeyRelease~~",
                ["Type"] = "Action"
            },
            [2] = {
                [1] = "~~KeyPress~~",
                [2] = "/cast [nochanneling] Elemental Blast",
                [3] = "~~KeyRelease~~",
                ["Type"] = "Action"
            },
            [3] = {
                [1] = "~~KeyPress~~",
                [2] = "/cast [nochanneling] Stormkeeper",
                [3] = "~~KeyRelease~~",
                ["Type"] = "Action"
            },
            [4] = {
                [1] = "~~KeyPress~~",
                [2] = "/castsequence [nochanneling] Icefury, Frost Shock, Frost Shock, Frost Shock, Frost Shock",
                [3] = "~~KeyRelease~~",
                ["Type"] = "Action"
            },
            [5] = {
                [1] = "~~KeyPress~~",
                [2] = "/cast [nochanneling] Lightning Bolt",
                [3] = "~~KeyRelease~~",
                ["Type"] = "Action"
            },
            ["Type"] = "Loop",
            ["Repeat"] = 2,
            ["StepFunction"] = "Sequential"
        }
    },
    ["InbuiltVariables"] = {
        ["Trinket1"] = false,
        ["Trinket2"] = false
    }
}


Combat is on a Silver check box (I even tested Gold)
In Options Reset Macro when out of combat is checked

The issue is: When start hitting macro, it starts normally, when the macro reach Icefury then cast a Frost shock once or twice … then I decide to stop

I check that I’m out of combat (between packs or on Dummy)
Then I restart hitting the macro, seems like the macro continue and complete missing Frost Shock since I set up to hit 4 Frost shock after my Icefury, so if I stopped on 2 Frost shock, the macro restart with 2 Frost shock before restarting from the top

I tried priority or sequential, same results
I deleted the macro and start over, same results

The most strange is that I have another macro for Cleave with the same line, when I stop the ST macro without finishing my 4 Frost shock and start using the cleave macro, it always start with 2 Frost shock

#ifWinActive World of Warcraft ;Checks if the World of Warcraft window is opened
#MaxThreadsPerHotkey 2 ;Used to control how many “instances” of a given hotkey or hotstring subroutine are allowed to exist simultaneously

SendTime:= 250 ; Time in milliseconds to repeat key press
$0:: ; Number 0
$^0:: ; Ctrl + 0
$+0:: ; Shift + 0
$!0:: ; Alt + 0
Loop ;Begins the code for looping/repeats
{ ;Begging code structure
if not GetKeyState(“0”, “P”) ;Checks to see if a key is pressed down
break ; Terminates the Loop
if GetKeyState(“Ctrl”, “P”) ;Checks if Ctrl is pressed
Send ^0 ;Sends Ctrl + 0
else if GetKeyState(“Shift”, “P”) ;Checks if Shift is pressed
Send +0 ;Sends Shift + 0
else if GetKeyState(“Alt”, “P”) ;Checks if Alt is pressed
Send !1 ;Sends Alt + 0
else ;Checks if Number 1 is pressed
Send 1 ;Sends Number 1
sleep %SendTime% ;Sends whatever sendTime value is set as
} ;Ending code structure
return

$1::
$^1::
$+1::
$!1::
Loop{
if not GetKeyState(“1”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^1
else if GetKeyState(“Shift”, “P”)
Send +1
else if GetKeyState(“Alt”, “P”)
Send !1
else
Send 1
sleep %SendTime%
}
return

$2::
$^2::
$+2::
$!2::
Loop{
if not GetKeyState(“2”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^2
else if GetKeyState(“Shift”, “P”)
Send +2
else if GetKeyState(“Alt”, “P”)
Send !2
else
Send 2
sleep %SendTime%
}
return

$3::
$^3::
$+3::
$!3::
Loop{
if not GetKeyState(“3”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^3
else if GetKeyState(“Shift”, “P”)
Send +3
else if GetKeyState(“Alt”, “P”)
Send !3
else
Send 3
sleep %SendTime%
}
return

$4::
$^4::
$+4::
$!4::
Loop{
if not GetKeyState(“4”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^4
else if GetKeyState(“Shift”, “P”)
Send +4
else if GetKeyState(“Alt”, “P”)
Send !4
else
Send 4
sleep %SendTime%
}
return

$5::
$^5::
$+5::
$!5::
Loop{
if not GetKeyState(“5”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^5
else if GetKeyState(“Shift”, “P”)
Send +5
else if GetKeyState(“Alt”, “P”)
Send !5
else
Send 5
sleep %SendTime%
}
return

$6::
$^6::
$+6::
$!6::
Loop{
if not GetKeyState(“6”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^6
else if GetKeyState(“Shift”, “P”)
Send +6
else if GetKeyState(“Alt”, “P”)
Send !6
else
Send 6
sleep %SendTime%
}
return

$7::
$^7::
$+7::
$!7::
Loop{
if not GetKeyState(“7”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^7
else if GetKeyState(“Shift”, “P”)
Send +7
else if GetKeyState(“Alt”, “P”)
Send !7
else
Send 7
sleep %SendTime%
}
return

$8::
$^8::
$+8::
$!8::
Loop{
if not GetKeyState(“8”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^8
else if GetKeyState(“Shift”, “P”)
Send +8
else if GetKeyState(“Alt”, “P”)
Send !8
else
Send 8
sleep %SendTime%
}
return

$9::
$^9::
$+9::
$!9::
Loop{
if not GetKeyState(“9”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^9
else if GetKeyState(“Shift”, “P”)
Send +9
else if GetKeyState(“Alt”, “P”)
Send !9
else
Send 9
sleep %SendTime%
}
return

$q::
$^q::
$+q::
$!q::
Loop{
if not GetKeyState(“q”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^q
else if GetKeyState(“Shift”, “P”)
Send +q
else if GetKeyState(“Alt”, “P”)
Send !q
else
Send q
sleep %SendTime%
}
return

$e::
$^e::
$+e::
$!e::
Loop{
if not GetKeyState(“e”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^e
else if GetKeyState(“Shift”, “P”)
Send +e
else if GetKeyState(“Alt”, “P”)
Send !e
else
Send e
sleep %SendTime%
}
return

$r::
$^r::
$+r::
$!r::
Loop{
if not GetKeyState(“r”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^r
else if GetKeyState(“Shift”, “P”)
Send +r
else if GetKeyState(“Alt”, “P”)
Send !r
else
Send r
sleep %SendTime%
}
return

$t::
$^t::
$+t::
$!t::
Loop{
if not GetKeyState(“t”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^t
else if GetKeyState(“Shift”, “P”)
Send +t
else if GetKeyState(“Alt”, “P”)
Send !t
else
Send t
sleep %SendTime%
}
return

$f::
$^f::
$+f::
$!f::
Loop{
if not GetKeyState(“f”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^f
else if GetKeyState(“Shift”, “P”)
Send +f
else if GetKeyState(“Alt”, “P”)
Send !f
else
Send f
sleep %SendTime%
}
return

$g::
$^g::
$+g::
$!g::
Loop{
if not GetKeyState(“g”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^g
else if GetKeyState(“Shift”, “P”)
Send +g
else if GetKeyState(“Alt”, “P”)
Send !g
else
Send g
sleep %SendTime%
}
return

$z::
$^z::
$+z::
$!z::
Loop{
if not GetKeyState(“z”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^z
else if GetKeyState(“Shift”, “P”)
Send +z
else if GetKeyState(“Alt”, “P”)
Send !z
else
Send z
sleep %SendTime%
}
return

$x::
$^x::
$+x::
$!x::
Loop{
if not GetKeyState(“x”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^x
else if GetKeyState(“Shift”, “P”)
Send +x
else if GetKeyState(“Alt”, “P”)
Send !x
else
Send x
sleep %SendTime%
}
return

$c::
$^c::
$+c::
$!c::
Loop{
if not GetKeyState(“c”, “P”)
break
if GetKeyState(“Ctrl”, “P”)
Send ^c
else if GetKeyState(“Shift”, “P”)
Send +c
else if GetKeyState(“Alt”, “P”)
Send !c
else
Send c
sleep %SendTime%
}
return

$v::
$^v::
$+v::
$!v::
Loop{
if not GetKeyState(“v”, “P”)
break
if GetKeyState(“vtrl”, “P”)
Send ^v
else if GetKeyState(“Shift”, “P”)
Send +v
else if GetKeyState(“Alt”, “P”)
Send !v
else
Send v
sleep %SendTime%
}
return

f12::Suspend
^f12::Reload
End::ExitApp

think i miss posted this reply sorry if i did