static void _character_dump(doc_ptr doc) { spell_info spells[MAX_SPELLS]; int ct = _get_spells(spells, MAX_SPELLS); py_display_spells(doc, spells, ct); }
static void _character_dump(doc_ptr doc) { int ct = _count_open_terrain(); bool disrupt = heavy_armor(); if (!disrupt && p_ptr->lev >= 5) { spell_info spells[MAX_SPELLS]; int ct = _get_spells(spells, MAX_SPELLS); py_display_spells(doc, spells, ct); } doc_printf(doc, "<topic:Abilities>================================== <color:keypress>A</color>bilities ==================================\n\n"); /* Hack: Heavy Armor negates advantages of being in the open, and actually incurs penalties for being entrenched! */ if (disrupt) { doc_printf(doc, " * Your talents are disrupted by the weight of your armor.\n"); ct = 0; } else { if (ct >= 6) doc_printf(doc, " * You are out in the open (%d adjacent open squares).\n", ct); else if (ct >= 3) doc_printf(doc, " * You are somewhat confined (%d adjacent open squares).\n", ct); else doc_printf(doc, " * You are very confined (%d adjacent open squares).\n", ct); } /* Unfettered Body */ if (p_ptr->lev >= 1) { int amt = _unfettered_body(ct); if (amt > 0) doc_printf(doc, " * You gain %+d to your AC being out in the open.\n", amt); else if (amt < 0) doc_printf(doc, " * You lose %+d to your AC being so confined.\n", amt); } /* Unfettered Mind */ if (p_ptr->lev >= 1) { int amt = _unfettered_mind(ct); if (amt > 0) doc_printf(doc, " * You gain %+d to your Saving Throws being out in the open.\n", amt); else if (amt < 0) doc_printf(doc, " * You lose %+d to your Saving Throws being so confined.\n", amt); } if (!disrupt && p_ptr->lev >= 20) doc_printf(doc, " * You ambush sleeping monsters for extra damage.\n"); if (!disrupt && p_ptr->lev >= 50) doc_printf(doc, " * You have Peerless Stealth and will never aggravate monsters.\n"); doc_newline(doc); }
static void _character_dump(doc_ptr doc) { spell_info spells[MAX_SPELLS]; int ct = 0, i; for (i = 0; i < 4; i++) ct += _get_spells_imp(spells + ct, MAX_SPELLS - ct, i); py_display_spells(doc, spells, ct); }
static void _character_dump(doc_ptr doc) { if (_weapon_check() && p_ptr->lev >= 5) { spell_info spells[MAX_SPELLS]; int ct = _get_spells(spells, MAX_SPELLS); py_display_spells(doc, spells, ct); } }