As i can see, it’s my lighting effect youre looking for 
well its pretty simple, albeit limited. no shaders or raycasting involved, it is just a floodfill algorithm tweaked to fit my tile system.
http://www.java-gaming.org/index.php?topic=26363.0 is the article (last post) that got me somewhere after months of headaches, though you will have to find a way to make it work with your system. I used to algorithm from before he rounded off so it keeps the retro look.
My code looks something like this just so you can see what an example of a system implemented version would be(more complex things since i also have color lighting and a separate array for light tiles)
public void applyLightRec(int x, int y, int lastLight, int xt, int yt, int r, int g, int b, int alph) {
int x1 = (int) (xt + ( TritonForge.pixel.width / TileArt.tileSize) + 2);
int y1 = (int) (yt + ( TritonForge.pixel.height / TileArt.tileSize) + 2);
if (x < xt-10 || x > x1+10)return;
if (y < yt-10 || y > y1+10)return;
int newLight = lastLight+getLightBlockingAmmountAt(x, y);
if (newLight >= getLight(x, y)) return;
Light u = light[x][y-1];
Light d = light[x][y+1];
Light ri = light[x+1][y];
Light l = light[x-1][y];
light[x][y].r = r;
light[x][y].gr = g;
light[x][y].b = b;
light[x][y].alph = alph;
light[x][y].lighting = newLight;
Color col = new Color(r,g,b,alph);
Color col1 = new Color(u.r,u.gr,u.b,u.alph);
Color col2 = new Color(ri.r,ri.gr,ri.b,ri.alph);
Color col3 = new Color(d.r,d.gr,d.b,d.alph);
Color col4 = new Color(l.r,l.gr,l.b,l.alph);
Color new1 = blend(col,col1);
Color new2 = blend(col,col2);
Color new3 = blend(col,col3);
Color new4 = blend(col,col4);
applyLightRec(x+1, y, newLight, xt, yt,new1.getRed(),new1.getGreen(),new1.getBlue(), new1.getAlpha());
applyLightRec(x, y+1, newLight, xt, yt,new3.getRed(),new3.getGreen(),new3.getBlue(), new3.getAlpha());
applyLightRec(x-1, y, newLight, xt, yt,new4.getRed(),new4.getGreen(),new4.getBlue(), new4.getAlpha());
applyLightRec(x, y-1, newLight, xt, yt,new2.getRed(),new2.getGreen(),new2.getBlue(), new2.getAlpha());
}
Best of luck