You can recapture an image based upon the original capture location if you add the size of that image to the original capture coordinates. This will create a rectangle that you can use to capture a new image via the CaptureScreen command.
params imageName, newName
Put ImageInfo(ImageName) into info
Put info.CaptureLocation into first -- original capture coordinates
Put Info.ImageSize plus first into last -- image size plus capture coord
// replace previous search type with tolerant
put (SearchType:"Tolerant") into captureInfo
add properties of info to captureInfo
put item 1 to -2 delimited by "/" of info.imageName into path
put path & "/" & newName into location
// perform image capture
CaptureScreen (Name: location, Rect: (first, last), ImageInfo:captureInfo)
You can use this script with:
CaptureImageLocation "originalImageName", "newName"
I should also mention that this method of recapturing images based upon the original image capture location can be a little risky. There is no guarantee that the new image on the screen will appear in the same location where the original image was previously captured. Therefore, the code above will ONLY work if the new images are located at the exact screen coordinates where the original image was captured.