((Sprite) pathSprites.get(pathSprites.size() - 1)).hidden = true;
pathSprites.get(pathSprites.size() - 1).hidden = true;
    public void drawMovementData(MovePath md) {        ArrayList<Sprite> temp = pathSprites;        MoveStep previousStep = null;        clearMovementData();        for (Enumeration i = md.getSteps(); i.hasMoreElements();) {            final MoveStep step = (MoveStep) i.nextElement();            // check old movement path for reusable step sprites            boolean found = false;            for (Iterator j = temp.iterator(); j.hasNext();) {                final StepSprite sprite = (StepSprite) j.next();                if (sprite.getStep().canReuseSprite(step)) {                    pathSprites.add(sprite);                    found = true;                }            }            if (!found) {                if (previousStep != null &&                        (step.getType() == MovePath.STEP_UP ||                        step.getType() == MovePath.STEP_DOWN) &&                        (previousStep.getType() == MovePath.STEP_UP ||                        previousStep.getType() == MovePath.STEP_DOWN)) {                    //Mark the previous elevation change sprite hidden                    // so that we can draw a new one in it's place without                    // having overlap.                    ((Sprite) pathSprites.get(pathSprites.size() - 1)).hidden = true;                }                pathSprites.add(new StepSprite(step));            }            previousStep = step;        }    }