public void evolveMove(Player player) {
        if (moving) {
            Move move = player.getMove();

            boolean timerEnded = move.updateTimer();
            if(timerEnded) {
                Direction dir = move.getDir();
                player.setOnSquare(dir);

                move.nextStep();
                player.setPosture(Posture.getPosture(dir, move.getStep()));

                if(move.isMoveFinished()) {
                    player.moveSquare(dir);
                    if(stopMovingAsked.get(dir) || !player.canWalkOnSquare(dir)) {
                        moving = false;
                    }
                }
            }
        }
    }