thanks man
i did try that but it didnt work. but it was needed to be
Code:
Local $mpos = MouseGetPos()
all working now
thank and +rep for helping me 
if any one is interested in using the script go for it, its fast and reliable
it also swaps both rings, but it will not be of any use if you dont put in your own mouse cords. the hot key to activate is page down
Code:
#include<misc.au3>
Local $mpos = MouseGetPos()
While 1
if WinWaitActive ( "Diablo III" ) Then
While _IsPressed ( '22' )
Local $mpos = MouseGetPos()
;$mpos[0] = x, $mpos[1] = y
send ( "i" )
Sleep(5)
MouseMove(1872, 805, 1)
MouseClick("Right")
MouseMove(1824, 805, 1)
Sleep(5)
MouseClick("Right")
MouseMove(1776, 805, 1)
Sleep(5)
MouseClick("Right")
MouseMove(1726, 805, 1)
Sleep(5)
MouseClick("Right")
MouseMove(1679, 805, 1)
Sleep(5)
Send( "{altdown}" )
MouseClick("Right")
Send( "{altup}" )
MouseMove(1628, 805, 1)
Sleep(5)
MouseClick("Right")
Sleep(5)
MouseMove(1629, 849, 1)
MouseClick("Right")
Sleep(5)
MouseMove(1579, 805, 1)
MouseClick("Right")
Sleep(5)
MouseMove(1532, 805, 1)
MouseClick("Right")
Sleep(5)
MouseMove(1485, 805, 1)
MouseClick("Right")
Sleep(5)
MouseMove(1676, 853, 1)
MouseClick("Right")
Sleep(5)
MouseMove(1483, 805, 1)
MouseClick("Right")
Sleep(5)
MouseMove(1443, 805, 1)
MouseClick("Right")
Sleep(5)
send ( "i" )
MouseMove($mpos[0],$mpos[1],0)
Sleep(3000)
WEnd
EndIf
WEnd