Space allowing, differentiate between hydras with different numbers of heads in the monster list. (This is probably only interesting in the Swamp.)
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5993 c06c8d41-db1a-0410-9941-cceddc491573
N6J4ANT3WFBQYTFDPZFVF2PWS2S7CK4GHHX4UV3JW4VWAKETZR5AC
6XSOB55JCEWQK7OANHLEIPOIUGH32ZEB35A7XLBKSFJ5YH5GCZ4AC
6WQOAP6P6DQSCNKDMLKTLEHF7KCFQGTBHCCLGHBB7EGXJYKKWJWAC
QXD3HX6QQ37PW6HVKIIKGFLO2ACROLUGKK66KFX7ED6SO4FDXB2AC
Z6XF4AIERIW4U4AR3HU2ILYFZ54IK4K4ORQ6JKCEWRO5LZODWDDAC
77H4BWWPPGLM3PLZH4QTAJRXIZTSDVNCOKZE223I437FN2UJ34RQC
JBZ7NU4BB5PGQWCOSZHD5OQUHQIVOD4XGJLSJQ7BUGQEGPRTVGZQC
ACDPN464TK2LKLHSDN3YVRHAPF7WLSLLU3UHIYEXKFDEZPEU3XSQC
U3KGUJJQWQORJIIFH3ADVNIEEX5HOX6KEOXO7DJSL7L3Z6GG3PAQC
2N5AKUYV6EUUT254C47WSHZKD7FGN65JKJ3RCKSDP74XJIHIFMDQC
IIN7AVA6JYRBXH6ZYRR7BY7TV6PW7ANAQ2A3PD55FKBKKQFEEF2AC
IHOKNI4O7EEW4UBMKHP6XOZNEIQSW4AYOT4O3JXUIXNNR553IQAQC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
TRNEOO3YKZSUGYTJZDDXZTJFQJXY6PWKBDJXAOLY3FZAD6WHTUTQC
J44YLLLSMPKEY3IXV3CPOM257PQZW45A4QWSSBYVFXS5T5XGQQWAC
HAM54HXIO2245W6REO4RZDY2QMIH476AWWJSMYAMSYYNEBBJSHWAC
NO2HRD7RZS42S55UG4FQ5EFQDY6WYWKGIXHUKYLWF36HHE3VZ7WAC
F2YWDQUXULLS2WKLVMNEJKEGSGG2MPEREVI2RKH7ROS2YYKKMXHAC
ZNMUUTINYIFCCBFSQDKTTXWXEGAXLDCGPX47NK3Q7NUHRH7S4GXQC
BDFIS53HAIHOCXQ5BE7WCO2MEOFCUQPFY4JGUWVLWY6JO3IFMEKQC
OEHJJ5X5CBOHTXISZLJHVLCAPH77RYSVKKBGW3US2GGXZMZJ5CEQC
V4DWL5WBO2JCODVS5QQNWXDH4DAYZN3D5V3UDCHM2KKOMADOTEDQC
text << "One of your skills just got raised. To view or manage your "
"skill set, type <w>m</w>.";
text << "One of your skills just got raised. You can train your skills "
"or pick up new ones by performing the corresponding actions. "
"To view or manage your skill set, type <w>m</w>.";
"You can then find said file in the <w>/morgue</w> folder ("
<< you.your_name << ".txt) and read it at your leasure. Also, "
"You can then find said file in the <w>/morgue</w> folder (<w>"
<< you.your_name << ".txt</w>) and read it at your leasure. Also, "
text <<
"This screen shows your character's set of talents. You can gain new " EOL
"abilities via certain items, through religion or by way of mutations. " EOL
"Activation of an ability usually comes at a cost, e.g. nutrition or " EOL
"Magic power. ";
if (you.religion != GOD_NO_GOD)
{
text <<
"<w>Renounce Religion</w> will make your character leave your god" EOL
"(and usually anger said god)";
std::string broken = "This screen shows your character's set of talents. "
"You can gain new abilities via certain items, through religion or by "
"way of mutations. Activation of an ability usually comes at a cost, "
"e.g. nutrition or Magic power. If, from the main screen, you press "
"<w>a!</w> you can read your abilities' descriptions.";
linebreak_string2(broken, _get_tutorial_cols());
text << broken;
text <<
"This screen shows the skill set of your character. You can pick up new" EOL
"skills by performing the corresponding actions. The number next to the" EOL
"skill is your current level, the higher the better. The <cyan>cyan percent " EOL
"value</cyan> shows your progress towards the next skill level. You can toggle" EOL
"which skills to train by pressing their slot letters. A <darkgrey>greyish</darkgrey> skill " EOL
"will increase at a decidedly slower rate and ease training of others. ";
std::string broken = "This screen shows the skill set of your character. "
"The number next to the skill is your current level, the higher the "
"better. The <cyan>cyan percent value</cyan> shows your progress "
"towards the next skill level. You can toggle which skills to train by "
"pressing their slot letters. A <darkgrey>greyish</darkgrey> skill "
"will increase at a decidedly slower rate and ease training of others. "
"Press <w>?</w> to read your skills' descriptions.";
linebreak_string2(broken, _get_tutorial_cols());
text << broken;
text << "</" << colour_to_str(channel_to_colour(MSGCH_TUTORIAL)) << ">";
formatted_string::parse_string(text.str(), false).display();
}
void print_tut_skills_description_info()
{
textcolor(channel_to_colour(MSGCH_TUTORIAL));
std::ostringstream text;
text << "<" << colour_to_str(channel_to_colour(MSGCH_TUTORIAL)) << ">";
std::string broken = "This screen shows the skill set of your character. "
"Press the letter of a skill to read its description, "
"or press <w>?</w> again to return to the skill "
"selection.";
linebreak_string2(broken, _get_tutorial_cols());
text << broken;
cgotoxy(1, bottom_line-5);
// Doesn't mention the toggle between progress/aptitudes.
print_tut_skills_info();
if (show_description)
{
cgotoxy(1, bottom_line-2);
// Doesn't mention the toggle between progress/aptitudes.
print_tut_skills_description_info();
}
else
{
cgotoxy(1, bottom_line-5);
// Doesn't mention the toggle between progress/aptitudes.
print_tut_skills_info();
}
return (true);
// Because of the type checks above, if one of the two is zombified, so is
// the other, and of the same type.
if (mons_is_zombified(m1.m_mon)
&& m1.m_mon->base_monster < m2.m_mon->base_monster)
{
return (true);
}
// Both monsters are hydras or hydra zombies, sort by number of heads.
if (m1.m_mon->has_hydra_multi_attack()
&& m1.m_mon->number > m2.m_mon->number)
{
return (true);
}
You enter a state of frenzied rage. It is prolonged by killing. Once
over, you are slowed and exhausted, unable to immediately berserk
again. Unless other sources of rage, Trog prevents you from passing
out.
Berserk greatly if temporarily increases your hit points and damage
output in melee fights. It will time out quickly if you don't kill
anything, but may be extended by multiple kills. While berserk, you
cannot perform a number of actions such as, for example, (un)wield a
weapon, quaff something, zap wands, or evoke items.
Such a rage is usually followed by deep exhaustion, a time during
which you are slowed down, and cannot berserk again. Unlike other
sources of rage, Trog prevents you from passing out.
if (Options.tutorial_left)
{
// XXX This could be buggy if you manage to pick up lots and lots
// of abilities during the tutorial.
abil_menu.set_more(tut_abilities_info());
abil_menu.set_flags(MF_SINGLESELECT | MF_ANYPRINTABLE |
MF_ALWAYS_SHOW_MORE);
}