diff --git a/src/simulation/elements/LSNS.cpp b/src/simulation/elements/LSNS.cpp index dfe941157..f65a956d2 100644 --- a/src/simulation/elements/LSNS.cpp +++ b/src/simulation/elements/LSNS.cpp @@ -60,6 +60,8 @@ static int update(UPDATE_FUNC_ARGS) if (BOUNDS_CHECK && (rx || ry)) { int r = pmap[y + ry][x + rx]; + if (!r) + r = sim->photons[y + ry][x + rx]; if (!r) continue; int rt = TYP(r); diff --git a/src/simulation/elements/TSNS.cpp b/src/simulation/elements/TSNS.cpp index 198ab79d1..3282bf835 100644 --- a/src/simulation/elements/TSNS.cpp +++ b/src/simulation/elements/TSNS.cpp @@ -60,6 +60,8 @@ static int update(UPDATE_FUNC_ARGS) if (BOUNDS_CHECK && (rx || ry)) { int r = pmap[y+ry][x+rx]; + if (!r) + r = sim->photons[y+ry][x+rx]; if (!r) continue; int rt = TYP(r);