private void updateTransitive ( Collection < Tile > resolved , Tile tile , Tile neighbor , GroupTransition transitive ) { final String transitiveOut = transitive . getOut ( ) ; final Transition transition = new Transition ( TransitionType . CENTER , transitiveOut , transitiveOut ) ; final Collection < TileRef > refs = getTiles ( transition ) ; if ( ! refs . isEmpty ( ) ) { final TileRef ref = refs . iterator ( ) . next ( ) ; // Replace user tile with the needed tile to solve transition (restored later) final Tile newTile = map . createTile ( ref . getSheet ( ) , ref . getNumber ( ) , tile . getX ( ) , tile . getY ( ) ) ; map . setTile ( newTile ) ; // Replace neighbor with the needed tile to solve transition final Tile newTile2 = map . createTile ( ref . getSheet ( ) , ref . getNumber ( ) , neighbor . getX ( ) , neighbor . getY ( ) ) ; map . setTile ( newTile2 ) ; resolved . addAll ( resolve ( newTile2 ) ) ; } }
Update the transitive between tile and its neighbor .