;Dance pad walking controller for Exult ;Author: Tomas Florian ;version 0.02 ;May 9,06 added progressively faster movement rate as the combo rate increases #SingleInstance fast:=4 medium:=7 slow:=10 fastRate:=2000 mediumRate:=600 slowRate:=300 heading=u lastpad=r eastCombo:=0 westCombo:=0 southCombo:=0 northCombo:=0 sendArrow(direction,movementRate) { if movementRate = 0 duration:=300 else if movementRate =1 duration:=400 else if movementRate =2 { duration:=200 Send {Shift down} } else if movementRate =3 { duration:=400 Send {Shift down} } ;Walk in the specified direction if direction = n { Send {Up down} Sleep %duration% Send {Up up} } else if direction = e { Send {Right down} Sleep %duration% Send {Right up} } else if direction = s { Send {Down down} Sleep %duration% Send {Down up} } else if direction = w { Send {Left down} Sleep %duration% Send {Left up} } else if direction = ne { Send {NumpadPgUp down} Sleep %duration% Send {NumpadPgUp up} } else if direction = se { Send {NumpadPgDn down} Sleep %duration% Send {NumpadPgDn up} } else if direction = nw { Send {NumpadHome down} Sleep %duration% Send {NumpadHome up} } else if direction = sw { Send {NumpadEnd down} Sleep %duration% Send {NumpadEnd up} } else { Msgbox Invalid arrow %direction% } Send {Shift up} return } 1Joy13:: ;UP if lastpad = ne { heading = n northCombo+=1 eastCombo=0 westCombo=0 southCombo=0 } else if lastpad = sw { heading = w westCombo+=1 eastCombo=0 southCombo=0 northCombo=0 } else { heading = nw eastCombo=0 westCombo=0 southCombo=0 northCombo=0 } if northCombo > 3 movementRate:=1 if southCombo > 3 movementRate:=1 if eastCombo > 3 movementRate:=1 if westCombo > 3 movementRate:=1 if northCombo > 4 movementRate:=2 if southCombo > 4 movementRate:=2 if eastCombo > 4 movementRate:=2 if westCombo > 4 movementRate:=2 if northCombo > 5 movementRate:=3 if southCombo > 5 movementRate:=3 if eastCombo > 5 movementRate:=3 if westCombo > 5 movementRate:=3 SendArrow(heading,movementRate) lastPad=nw return 1Joy14:: ;RIGHT if lastpad = nw { heading = n northCombo+=1 eastCombo=0 westCombo=0 southCombo=0 } else if lastpad = se { heading = e eastCombo+=1 southCombo=0 westCombo=0 northCombo=0 } else { heading = ne eastCombo=0 westCombo=0 southCombo=0 northCombo=0 } movementRate=0 if northCombo > 3 movementRate:=1 if southCombo > 3 movementRate:=1 if eastCombo > 3 movementRate:=1 if westCombo > 3 movementRate:=1 if northCombo > 4 movementRate:=2 if southCombo > 4 movementRate:=2 if eastCombo > 4 movementRate:=2 if westCombo > 4 movementRate:=2 if northCombo > 5 movementRate:=3 if southCombo > 5 movementRate:=3 if eastCombo > 5 movementRate:=3 if westCombo > 5 movementRate:=3 SendArrow(heading,movementRate) lastPad=ne return 1Joy15:: ;DOWN if lastpad = sw { heading = s southCombo+=1 eastCombo=0 westCombo=0 northCombo=0 } else if lastpad = ne { heading = e eastCombo+=1 southCombo=0 westCombo=0 northCombo=0 } else { heading = se eastCombo=0 westCombo=0 southCombo=0 northCombo=0 } movementRate=0 if northCombo > 3 movementRate:=1 if southCombo > 3 movementRate:=1 if eastCombo > 3 movementRate:=1 if westCombo > 3 movementRate:=1 if northCombo > 4 movementRate:=2 if southCombo > 4 movementRate:=2 if eastCombo > 4 movementRate:=2 if westCombo > 4 movementRate:=2 if northCombo > 5 movementRate:=3 if southCombo > 5 movementRate:=3 if eastCombo > 5 movementRate:=3 if westCombo > 5 movementRate:=3 SendArrow(heading,movementRate) lastPad=se return 1Joy16:: ;LEFT if lastpad = nw { heading = w westCombo+=1 eastCombo=0 southCombo=0 northCombo=0 } else if lastpad = se { heading = s southCombo+=1 eastCombo=0 westCombo=0 northCombo=0 } else { heading = sw eastCombo=0 westCombo=0 southCombo=0 northCombo=0 } movementRate=0 if northCombo > 3 movementRate:=1 if southCombo > 3 movementRate:=1 if eastCombo > 3 movementRate:=1 if westCombo > 3 movementRate:=1 if northCombo > 4 movementRate:=2 if southCombo > 4 movementRate:=2 if eastCombo > 4 movementRate:=2 if westCombo > 4 movementRate:=2 if northCombo > 5 movementRate:=3 if southCombo > 5 movementRate:=3 if eastCombo > 5 movementRate:=3 if westCombo > 5 movementRate:=3 SendArrow(heading,movementRate) lastPad=sw return 1Joy10:: ;start button Send i return 1Joy2:: ;O button Send c return