!(game.getBoard().getHex( te.getPosition() ).containsTerrain(Terrains.ICE))) {
!game.getBoard().getHex(te.getPosition()).containsTerrain(Terrains.ICE)) {
    private void vehicleMotiveDamage(Tank te, int modifier) {        Vector vDesc = new Vector();        Report r;        int roll = Compute.d6(2) + modifier;        r = new Report(6305);        r.subject = te.getId();        r.add("movement system");        r.newlines = 0;        r.indent(3);        vDesc.addElement(r);        r = new Report(6310);        r.subject = te.getId();        r.add(roll);        r.newlines = 0;        vDesc.addElement(r);        if(roll <= 7) {            //no effect            r = new Report(6005);            r.subject = te.getId();            r.add(roll);            vDesc.addElement(r);        } else if (roll <=9) {            //minor damage            r = new Report(6470);            r.subject = te.getId();            r.add(roll);            vDesc.addElement(r);            te.addMovementDamage(1);        } else if (roll <12) {            //major damage            r = new Report(6135);            r.subject = te.getId();            vDesc.addElement(r);            te.addMovementDamage(2);            int nMP = te.getOriginalWalkMP();            if (nMP > 0) {                te.setOriginalWalkMP(nMP - 1);                if (te.getOriginalWalkMP()==0) {                    // Hovercraft reduced to 0MP over water sink                    if ( te.getMovementMode() == IEntityMovementMode.HOVER &&                         game.getBoard().getHex( te.getPosition() ).terrainLevel(Terrains.WATER) > 0 &&                         !(game.getBoard().getHex( te.getPosition() ).containsTerrain(Terrains.ICE))) {                        vDesc.addAll( destroyEntity(te, "a watery grave", false) );                    }                }            }        } else  {            r = new Report(6140);            r.subject = te.getId();            vDesc.addElement(r);            te.immobilize();            // Does the hovercraft sink?            IHex te_hex = game.getBoard().getHex( te.getPosition() );            if ( te.getMovementMode() == IEntityMovementMode.HOVER &&                 te_hex.terrainLevel(Terrains.WATER) > 0 &&                 !(te_hex.containsTerrain(Terrains.ICE))) {                vDesc.addAll( destroyEntity(te, "a watery grave", false) );            }            if(te instanceof VTOL) {                Report.addNewline(vDesc);                //report problem: add tab                vDesc.addAll( crashVTOL((VTOL)te));            }        }        addReport(vDesc);    }