From d21c61aa52682b496bcc7cbaa764ae91b1d46cc2 Mon Sep 17 00:00:00 2001 From: jacksonmj Date: Wed, 29 Feb 2012 21:43:28 +0000 Subject: [PATCH] Prevent ARAY passing through some non-conductive materials, and let normal ARAY pass through sparked INWR --- src/elements/aray.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/elements/aray.c b/src/elements/aray.c index c1a1bf4a4..32f112444 100644 --- a/src/elements/aray.c +++ b/src/elements/aray.c @@ -44,12 +44,11 @@ int update_ARAY(UPDATE_FUNC_ARGS) { } else if ((r&0xFF)==PT_FILT) {//get color if passed through FILT colored = parts[r>>8].ctype; //this if prevents BRAY from stopping on certain materials - } else if ((r&0xFF)!=PT_STOR && (r&0xFF)!=PT_INWR && (r&0xFF)!=PT_ARAY && (r&0xFF)!=PT_WIFI && !((r&0xFF)==PT_SWCH && parts[r>>8].life>=10)) { + } else if ((r&0xFF)!=PT_STOR && (r&0xFF)!=PT_INWR && ((r&0xFF)!=PT_SPRK || parts[r>>8].ctype!=PT_INWR) && (r&0xFF)!=PT_ARAY && (r&0xFF)!=PT_WIFI && !((r&0xFF)==PT_SWCH && parts[r>>8].life>=10)) { if (nyy!=0 || nxx!=0) { create_part(-1, x+nxi+nxx, y+nyi+nyy, PT_SPRK); } - //if (!(nostop && (ptypes[r&0xFF].properties&PROP_CONDUCTS))) { - if (!(nostop && parts[r>>8].ctype >= 0 && parts[r>>8].ctype < PT_NUM && (ptypes[parts[r>>8].ctype].properties&PROP_CONDUCTS))) { + if (!(nostop && parts[r>>8].type==PT_SPRK && parts[r>>8].ctype >= 0 && parts[r>>8].ctype < PT_NUM && (ptypes[parts[r>>8].ctype].properties&PROP_CONDUCTS))) { docontinue = 0; } else { docontinue = 1;