# | Line 309 | Line 309 | srcblocked(RAY *r) | |
---|---|---|
309 | if (obs == OVOID) | |
310 | return(0); | |
311 | op = objptr(obs); /* check for intersection */ | |
312 | < | return((*ofun[op->otype].funp)(op, r)); |
312 | > | if (!(*ofun[op->otype].funp)(op, r)) |
313 | > | return(0); |
314 | > | op = source[r->rsrc].so; /* check source really obstructed */ |
315 | > | if ((*ofun[op->otype].funp)(op, r)) { |
316 | > | rayclear(r); /* actually, source in front! */ |
317 | > | return(0); |
318 | > | } |
319 | > | return(1); /* source truly blocked */ |
320 | } | |
321 | ||
322 |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |