Fixed '5' resting being broken.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@788 c06c8d41-db1a-0410-9941-cceddc491573
UDYVF65OZSNPANLHDI3ODBEGUAKAVZ4KH4OZFAKR2CQJPO4AXU6QC R325RPUV26YH65VIJKYEFZ2XCVXQHO5N3ELPX6RNQ5TSI3JJNQGQC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC 3YK4G4IQBXW63HPGU5WRTV6L2FCMKAK4DOTCHFK2FNSB5B3Y3PVQC ZP2KE7A2LE7Z2S7AC45WE4CXDSEVDTWIMV2EM4IBUKXYJIDU6R7QC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC const int cloud_type = env.cloud[ cloud ].type;return cloud_type == CLOUD_GREY_SMOKE ||cloud_type == CLOUD_GREY_SMOKE_MON ||cloud_type == CLOUD_BLUE_SMOKE ||cloud_type == CLOUD_BLUE_SMOKE_MON ||cloud_type == CLOUD_PURP_SMOKE ||cloud_type == CLOUD_PURP_SMOKE_MON ||cloud_type == CLOUD_BLACK_SMOKE ||cloud_type == CLOUD_BLACK_SMOKE_MON ||cloud_type == CLOUD_MIST;
const cloud_type ctype = (cloud_type) env.cloud[ cloud ].type;return !is_damaging_cloud(ctype);
bool is_damaging_cloud(cloud_type type){switch (type){case CLOUD_FIRE:case CLOUD_FIRE_MON:case CLOUD_STINK:case CLOUD_STINK_MON:case CLOUD_COLD:case CLOUD_COLD_MON:case CLOUD_POISON:case CLOUD_POISON_MON:case CLOUD_STEAM:case CLOUD_STEAM_MON:case CLOUD_MIASMA:case CLOUD_MIASMA_MON:return (true);default:return (false);}}
std::string cloud_name(cloud_type type){switch (type){case CLOUD_FIRE:case CLOUD_FIRE_MON:return "flame";case CLOUD_STINK:case CLOUD_STINK_MON:return "noxious fumes";case CLOUD_COLD:case CLOUD_COLD_MON:return "freezing vapour";case CLOUD_POISON:case CLOUD_POISON_MON:return "poison gases";case CLOUD_GREY_SMOKE:case CLOUD_GREY_SMOKE_MON:return "grey smoke";case CLOUD_BLUE_SMOKE:case CLOUD_BLUE_SMOKE_MON:return "blue smoke";case CLOUD_PURP_SMOKE:case CLOUD_PURP_SMOKE_MON:return "purple smoke";case CLOUD_STEAM:case CLOUD_STEAM_MON:return "steam";case CLOUD_MIASMA:case CLOUD_MIASMA_MON:return "foul pestilence";case CLOUD_BLACK_SMOKE:case CLOUD_BLACK_SMOKE_MON:return "black smoke";case CLOUD_MIST:return "thin mist";default:return "buggy goodness";}}
return false;
if (in_bounds(you.x_pos, you.y_pos)&& env.cgrid[you.x_pos][you.y_pos] != EMPTY_CLOUD){const cloud_type type = (cloud_type)env.cloud[ env.cgrid[you.x_pos][you.y_pos] ].type;if (is_damaging_cloud(type)){if (announce)mprf(MSGCH_WARN, "You're standing in a cloud of %s!",cloud_name(type).c_str());return (false);}
strcpy(info, "There is a cloud of ");strcat(info,(cloud_type == CLOUD_FIRE|| cloud_type == CLOUD_FIRE_MON) ? "flame" :(cloud_type == CLOUD_STINK|| cloud_type == CLOUD_STINK_MON) ? "noxious fumes" :(cloud_type == CLOUD_COLD|| cloud_type == CLOUD_COLD_MON) ? "freezing vapour" :(cloud_type == CLOUD_POISON|| cloud_type == CLOUD_POISON_MON) ? "poison gases" :(cloud_type == CLOUD_GREY_SMOKE|| cloud_type == CLOUD_GREY_SMOKE_MON) ? "grey smoke" :(cloud_type == CLOUD_BLUE_SMOKE|| cloud_type == CLOUD_BLUE_SMOKE_MON) ? "blue smoke" :(cloud_type == CLOUD_PURP_SMOKE|| cloud_type == CLOUD_PURP_SMOKE_MON) ? "purple smoke" :(cloud_type == CLOUD_STEAM|| cloud_type == CLOUD_STEAM_MON) ? "steam" :(cloud_type == CLOUD_MIASMA|| cloud_type == CLOUD_MIASMA_MON) ? "foul pestilence" :(cloud_type == CLOUD_BLACK_SMOKE|| cloud_type == CLOUD_BLACK_SMOKE_MON) ? "black smoke" :(cloud_type == CLOUD_MIST)? "thin mist" :"buggy goodness");strcat(info, " here.");mpr(info);
mprf("There is a cloud of %s here.", cloud_name(ctype).c_str());