private void checkStuck(Point tileX, Creature c) {
        float offsetX = map.getOffsetX();
        float X = c.getX();
        float DX = c.getDX();
        int width = c.getWidth();
        int tilePixelX = renderer.tilesToPixels(tileX.x);

        if (c instanceof Player) {
            if (DX > 0 && (Math.round(X + offsetX + width)) == tilePixelX) {
                System.out.println("unstucking");
                c.setX(tilePixelX - width - offsetX - 1);
            } else if (DX < 0 && (Math.round(X + offsetX) + 1) == (tilePixelX + 32)) {
                System.out.println("unstucking");
                c.setX(tilePixelX - offsetX + 32 + 1);
            }
        } else /* if (c instanceof 'Enemy') */ {
            if (DX > 0 && (Math.round(X + width)) == tilePixelX) {
                c.setX(tilePixelX - width - 1);
            } else if (DX < 0 && (Math.round(X) == tilePixelX)) {
                c.setX(tilePixelX + 1);
            }
        }
    }