git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4030 c06c8d41-db1a-0410-9941-cceddc491573
CRUW4EVU3UDWNKXBCPWWHWXXGE7EMEHKK3PLLUD7NWPYY4K2R3YAC
DZ2GM3MGYCEOQ24AMGGYIF2U4PAFHIACEPS7MUQ7TM35OL2YFQVAC
T4IH76FA5TWHFOZUJFHLQXQJENJHWTUZZP4EGNA7D4GTZY7D4ZKAC
SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC
6HG6JFO47Y3BZLU7Y6G3R2CX6JFGN4X5PKK6S5IGUXUYQ5GVZYFQC
T6TL6NTIOBYNUIONGK3JFZJ5ONWV6S4CTIRDC5JMKMCBGG5IY3EAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
7KWDC7XFNMBLSUO2HISIROBINZBX5T67LJEEXTAORXW2YZ7VWFGAC
H3552BCIAVBLKAYKE4DHFLBLFW5RGRMYBMRRYHYEB5IPIJRUVU5QC
44YRMW5JNVUBYX3M6UFQOPENNHGO7G2CRZ7SGPIIUTQGYWTRWENAC
VCISXSXE6WGRO6PQN7Y6IFZ7C4VFUMKQK6KGAXA6YZ5RCZIB64WAC
XXZGTB5UAFMP2SW2WWUHCTDY5TEM7LZEPAASEXKQLT7BSLBY3OTQC
return unset_level_flags(LFLAG_NO_TELE_CONTROL);
unset_level_flags(LFLAG_NO_TELE_CONTROL, silent);
bool in_los = false;
if (!silent)
{
for (int x = 0; x < GXM && !in_los; ++x)
for (int y = 0; y < GYM; ++y)
if (grd[x][y] == DNGN_STONE_WALL
&& see_grid(x, y))
{
in_los = true;
break;
}
}
replace_area_wrapper(DNGN_STONE_WALL, DNGN_CLEAR_ROCK_WALL);
if (!silent)
{
if (in_los)
mpr("Suddenly, all colour oozes out of the stone walls.",
MSGCH_MONSTER_ENCHANT);
else
mpr("You feel a strange vibration for a moment.",
MSGCH_MONSTER_ENCHANT);
}
return (true);
apply_to_level( level_id(BRANCH_SLIME_PITS, 6),
true,
_slime_pit_enable_teleport_control );
{
const level_id target(BRANCH_SLIME_PITS, 6);
if (is_existing_level(target))
apply_to_level(
target,
true,
target == level_id::current()?
_slime_pit_unlock_onlevel : _slime_pit_unlock_offlevel );
}
lua {{
-- Special effects for Slime:6
function slime_wall_morph(x)
local stone = dgn.feature_number('stone_wall')
local inlos = false
for x = 0, dgn.GXM - 1 do
for y = 0, dgn.GYM - 1 do
if dgn.grid(x, y) == stone and you.see_grid(x, y) then
inlos = true
break
end
end
if inlos then break end
end
dgn.replace_feat { stone_wall= "clear_rock_wall" }
if inlos then
crawl.mpr("Suddenly all colour oozes out of the stone walls.",
"monster_enchant")
else
crawl.mpr("You feel a strange vibration for a moment.",
"monster_enchant")
end
end