mavor Posted December 29, 2009 Share Posted December 29, 2009 (edited) The code: For $i = 1 To 5 Step 1 msgbox(0,"test","test") ;first, find a path that matches our filter MsgBox(0,"the type of this path", _XMLGetAttrib($zonePath & "/" & $tempPathNameArray[$i], "type")) If (_XMLGetAttrib($zonePath & "/" & $tempPathNameArray[$i], "type") == $pathType) Then $pathPath = $zonePath & "/" & $tempPathNameArray[$i] ;now count how many nodes we have $nodeCount = _XMLGetNodeCount($pathPath & "/*") For $i = 0 To ($nodeCount - 1) Step 1 ;for each node, check and compare x and y values $temp1DArray[$i] = _XMLGetAttrib($pathPath & "/Node" & $i, "x") $temp1DArray2[$i] = _XMLGetAttrib($pathPath & "/Node" & $i, "y") $tempDistance = _Distance($playerX, $playerY, $temp1DArray[$i], $temp1DArray2[$i]) If $tempDistance < $minDist Then $minDist = $tempDistance $minDistx = $temp1DArray[$i] $minDisty = $temp1DArray2[$i] $minpathPath = $pathPath $minnodeNum = $i EndIf Next MsgBox(0,"returned a min dist of",$minDist) EndIf Next This for loop, when run by autoit, only pops up the msgbox "test" "test" a single time. But that is impossible! Because it is sitting in a for loop that goes to 5 with a step of 1!! What the heck?! *EDIT: Sorry i forgot basic array 101, never use the same array variable ($i) inside of a nested for loop. Oops can i get a delete? ( Edited December 29, 2009 by mavor Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now