instead. Fixed a bug with affix_weapon_enchantment messaging (mea culpa.) Fixed shatter() messages getting surpressed.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1347 c06c8d41-db1a-0410-9941-cceddc491573
YCL3W2PFE6ILTGBFODCSXNPDIA46KVSZP2TI7HDMYAOEJT65RIEAC
PVQ2ASA77BWTNHDB2PWRQMPK5LNMACYLRKFGFJCCC6TAWXIFXLOQC
YKZQJ5NWBW2YL5HPTDARC3X72OUURM7HS3FATEFODDEUW7ROXQOAC
CIPVRZGLOZHCERK6YPOBV3P2E4IAB4H6D5EHLRQE2O5E4P4VCBUAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
B62ICMDTN5V7R7RBL4JALFVKEMVOOVLRSJASRNYS6CGFWBEEF5JQC
74LQ7JXVLAFSHLI7LCBKFX47CNTYSKGUQSXNX5FCIUIGCC2JTR3QC
RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC
SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC
QDTVLBRGHDTRUVT7I3O72K6TMOYAUSAJBZUHGOEFU2RKJNUPWZSQC
T2SN3NCG67IWNPYKDUUO45JADBS5QHFHAOD5V4ZYRRZ5CDTSEB6AC
77H4BWWPPGLM3PLZH4QTAJRXIZTSDVNCOKZE223I437FN2UJ34RQC
NNG27Y5ZQAZX6UD7F7M4F6KEZBEDFXPEEC3LFUSX4ESKT7K6UJQAC
DODCHP2S4I6VZKQAVXX6D76OPNFI2YWZ4XH3HZTMAJZXA2RJ3XRQC
X5WLJCJVW55SXZVP7IKP7ADCJIGNKN4PKAXFECVR6TNK7XSMZR7QC
MSQI3TH6T62JAXQGLL52QZCWAMC372TGB6ZNNRDGUGMJKBNNV2VAC
MBBPLL4SZUB3JUUYQYLZW7S5OXRCEGJX3WWADOQXGHWQ7BIKCY5QC
7AMQN7MITMXBNVDAK5VOXTQ4TZIAOD6ZLOFJG7GQMBTY23Y2BKSAC
strcpy(info, "You feel a");
strcat(info, (enhanced < -2) ? "n extraordinarily" :
(enhanced == -2) ? "n extremely" :
(enhanced == 2) ? " strong" :
(enhanced > 2) ? " huge"
: "");
strcat(info, (enhanced < 0) ? " numb sensation."
: " surge of power!");
mpr(info);
mprf("You feel a%s %s",
(enhanced < -2) ? "n extraordinarily" :
(enhanced == -2) ? "n extremely" :
(enhanced == 2) ? " strong" :
(enhanced > 2) ? " huge"
: "",
(enhanced < 0) ? " numb sensation."
: " surge of power!");
strcpy(info, "Your ");
strcat(info, (you.species == SP_NAGA) ? "underbelly feels" :
(you.species == SP_CENTAUR) ? "hooves feel"
: "feet feel");
strcat(info, " warm.");
mpr(info);
mprf("Your %s warm.",
(you.species == SP_NAGA) ? "underbelly feels" :
(you.species == SP_CENTAUR) ? "hooves feel"
: "feet feel");
snprintf(info, INFO_SIZE, "This spell is %s %s to %s.",
((chance >= 80) ? "very" :
(chance >= 60) ? "quite" :
(chance >= 45) ? "rather" :
(chance >= 30) ? "somewhat"
: "not that"),
((temp_rand1 == 0) ? "difficult" :
(temp_rand1 == 1) ? "tricky" :
"challenging"),
((temp_rand2 == 0) ? "memorise" :
(temp_rand2 == 1) ? "commit to memory" :
(temp_rand2 == 2) ? "learn" :
"absorb"));
mpr(info);
mprf("This spell is %s %s to %s.",
((chance >= 80) ? "very" :
(chance >= 60) ? "quite" :
(chance >= 45) ? "rather" :
(chance >= 30) ? "somewhat"
: "not that"),
((temp_rand1 == 0) ? "difficult" :
(temp_rand1 == 1) ? "tricky"
: "challenging"),
((temp_rand2 == 0) ? "memorise" :
(temp_rand2 == 1) ? "commit to memory" :
(temp_rand2 == 2) ? "learn"
: "absorb"));
snprintf( info, INFO_SIZE, "%s potion%s you are carrying explode%s!",
pcount > 1 ? "Some" : "A",
pcount > 1 ? "s" : "",
pcount > 1 ? "" : "s");
mpr(info);
mprf("%s potion%s you are carrying explode%s!",
pcount > 1 ? "Some" : "A",
pcount > 1 ? "s" : "",
pcount > 1 ? "" : "s");
bool plural = coinflip();
snprintf( info, INFO_SIZE, "%s blue arc%s ground%s harmlessly %s you.",
plural ? "Some" : "A",
plural ? "s" : "",
plural ? " themselves" : "s itself",
plural ? "around" : (coinflip() ? "beside" :
coinflip() ? "behind" : "before")
);
mpr(info);
const bool plural = coinflip();
mprf("%s blue arc%s ground%s harmlessly %s you.",
plural ? "Some" : "A",
plural ? "s" : "",
plural ? " themselves" : "s itself",
plural ? "around" : (coinflip() ? "beside" :
coinflip() ? "behind" : "before"));
snprintf( info, INFO_SIZE, "The sk%s explodes into sharp fragments of bone!",
(menv[mon].type == MONS_FLYING_SKULL) ? "ull" : "eleton");
mprf("The %s explodes into sharp fragments of bone!",
(menv[mon].type == MONS_FLYING_SKULL) ? "skull" : "skeleton");
snprintf( info, INFO_SIZE, "%s seems to be unnaturally hard.",
(grid == DNGN_PERMAROCK_WALL) ? "That wall"
: "The dungeon floor" );
explode = false;
mprf("%s seems to be unnaturally hard.",
(grid == DNGN_PERMAROCK_WALL) ? "That wall"
: "The dungeon floor");
{
snprintf( info, INFO_SIZE, "You hear a %svoice call your name.",
(see_grid( plox[0], plox[1] ) ? "distant " : "") );
mpr( info , MSGCH_SOUND );
}
mprf(MSGCH_SOUND, "You hear a dull thud.");
strcpy(info, "You ");
strcat(info, (flavour == BEAM_FIRE) ? "burn" :
(flavour == BEAM_COLD) ? "freeze" :
(flavour == BEAM_MISSILE) ? "crush" :
(flavour == BEAM_ELECTRICITY) ? "zap"
: "______");
strcat(info, " ");
strcat(info, ptr_monam( monster, DESC_NOCAP_THE ));
strcat(info, ".");
mpr(info);
mprf("You %s %s.",
(flavour == BEAM_FIRE) ? "burn" :
(flavour == BEAM_COLD) ? "freeze" :
(flavour == BEAM_MISSILE) ? "crush" :
(flavour == BEAM_ELECTRICITY) ? "zap"
: "______",
ptr_monam( monster, DESC_NOCAP_THE ));
snprintf( info, INFO_SIZE, "Power: %d, player's MR: %d, target: %d, roll: %d",
ench_power, player_res_magic(), mrchance, mrch2 );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS,
"Power: %d, player's MR: %d, target: %d, roll: %d",
ench_power, player_res_magic(), mrchance, mrch2 );
snprintf( info, INFO_SIZE, "You are %s poisoned.",
(you.poisoning > 10) ? "extremely" :
(you.poisoning > 5) ? "very" :
(you.poisoning > 3) ? "quite"
: "mildly" );
mpr(info);
mprf("You are %s poisoned.",
(you.poisoning > 10) ? "extremely" :
(you.poisoning > 5) ? "very" :
(you.poisoning > 3) ? "quite"
: "mildly" );
snprintf( info, INFO_SIZE, "Your flesh is rotting%s",
(you.rotting > 15) ? " before your eyes!":
(you.rotting > 8) ? " away quickly.":
(you.rotting > 4) ? " badly."
: ((you.species == SP_GHOUL && you.rotting > 0)
? " faster than usual." : ".") );
mpr(info);
mprf("Your flesh is rotting%s",
(you.rotting > 15) ? " before your eyes!" :
(you.rotting > 8) ? " away quickly." :
(you.rotting > 4) ? " badly." :
((you.species == SP_GHOUL && you.rotting) ?
" faster than usual." : ".") );
snprintf( info, INFO_SIZE, "Your hands are glowing %s red.",
(you.confusing_touch > 40) ? "an extremely bright" :
(you.confusing_touch > 20) ? "bright"
: "a soft" );
mpr(info);
mprf("Your hands are glowing %s red.",
(you.confusing_touch > 40) ? "an extremely bright" :
(you.confusing_touch > 20) ? "bright"
: "a soft" );
snprintf( info, INFO_SIZE, "You have a %sbond with your blade.",
(you.sure_blade > 15) ? "strong " :
(you.sure_blade > 5) ? ""
: "weak " );
mpr(info);
mprf("You have a %sbond with your blade.",
(you.sure_blade > 15) ? "strong " :
(you.sure_blade > 5) ? ""
: "weak " );
snprintf( info, INFO_SIZE,
"Your %s speed is %s%s%s.",
// order is important for these:
(swim) ? "swimming" :
(water) ? "wading" :
(fly) ? "flying" :
(lev) ? "levitating"
: "movement",
(water && !swim) ? "uncertain and " :
(!water && swift) ? "aided by the wind" : "",
mprf( "Your %s speed is %s%s%s.",
// order is important for these:
(swim) ? "swimming" :
(water) ? "wading" :
(fly) ? "flying" :
(lev) ? "levitating"
: "movement",
(water && !swim) ? "uncertain and " :
(!water && swift) ? "aided by the wind" : "",
(move_cost < 8) ? "very quick" :
(move_cost < 10) ? "quick" :
(move_cost == 10) ? "average" :
(move_cost < 13) ? "slow"
: "very slow" );
mpr(info);
(move_cost < 8) ? "very quick" :
(move_cost < 10) ? "quick" :
(move_cost == 10) ? "average" :
(move_cost < 13) ? "slow"
: "very slow" );
snprintf( info, INFO_SIZE,
"%s given your current equipment.",
(to_hit < 1) ? "You are completely incapable of fighting" :
(to_hit < 5) ? "Hitting even clumsy monsters is extremely awkward" :
(to_hit < 10) ? "Hitting average monsters is awkward" :
(to_hit < 15) ? "Hitting average monsters is difficult" :
(to_hit < 20) ? "Hitting average monsters is hard" :
(to_hit < 30) ? "Very agile monsters are a bit awkward to hit" :
(to_hit < 45) ? "Very agile monsters are a bit difficult to hit" :
(to_hit < 60) ? "Very agile monsters are a bit hard to hit" :
(to_hit < 100) ? "You feel comfortable with your ability to fight"
: "You feel confident with your ability to fight" );
mprf("%s given your current equipment.",
(to_hit < 1) ? "You are completely incapable of fighting" :
(to_hit < 5) ? "Hitting even clumsy monsters is extremely awkward" :
(to_hit < 10) ? "Hitting average monsters is awkward" :
(to_hit < 15) ? "Hitting average monsters is difficult" :
(to_hit < 20) ? "Hitting average monsters is hard" :
(to_hit < 30) ? "Very agile monsters are a bit awkward to hit" :
(to_hit < 45) ? "Very agile monsters are a bit difficult to hit" :
(to_hit < 60) ? "Very agile monsters are a bit hard to hit" :
(to_hit < 100) ? "You feel comfortable with your ability to fight"
: "You feel confident with your ability to fight" );
snprintf(info, INFO_SIZE, "You are %s resistant to magic.",
(mr < 10) ? "not" :
(mr < 30) ? "slightly" :
(mr < 60) ? "somewhat" :
(mr < 90) ? "quite" :
(mr < 120) ? "very" :
(mr < 140) ? "extremely" :
"incredibly");
mpr(info);
mprf("You are %s resistant to magic.",
(mr < 10) ? "not" :
(mr < 30) ? "slightly" :
(mr < 60) ? "somewhat" :
(mr < 90) ? "quite" :
(mr < 120) ? "very" :
(mr < 140) ? "extremely"
: "incredibly");
snprintf( info, INFO_SIZE, "You feel %sstealthy.",
(ustealth < 10) ? "extremely un" :
(ustealth < 20) ? "very un" :
(ustealth < 30) ? "un" :
(ustealth < 50) ? "fairly " :
(ustealth < 80) ? "" :
(ustealth < 120) ? "quite " :
(ustealth < 160) ? "very " :
(ustealth < 200) ? "extremely "
: "incredibly " );
mprf("You feel %sstealthy.",
(ustealth < 10) ? "extremely un" :
(ustealth < 20) ? "very un" :
(ustealth < 30) ? "un" :
(ustealth < 50) ? "fairly " :
(ustealth < 80) ? "" :
(ustealth < 120) ? "quite " :
(ustealth < 160) ? "very " :
(ustealth < 200) ? "extremely "
: "incredibly " );
strcpy(info, (new_level == 4) ?
"Your entire body has taken on an eerie glow!" :
"You are engulfed in a nimbus of crackling magics!");
mpr( (new_level == 4) ?
"Your entire body has taken on an eerie glow!" :
"You are engulfed in a nimbus of crackling magics!");
snprintf( info, INFO_SIZE, "You are %s with residual magics%c",
(new_level == 3) ? "practically glowing" :
(new_level == 2) ? "heavily infused"
: "contaminated",
(new_level == 3) ? '!' : '.');
mprf("You are %s with residual magics%s",
(new_level == 3) ? "practically glowing" :
(new_level == 2) ? "heavily infused"
: "contaminated",
(new_level == 3) ? "!" : ".");
snprintf( info, INFO_SIZE, "You feel %s contaminated with magical energies.",
(change < 0) ? "less" : "more" );
mpr( info, (change > 0) ? MSGCH_WARN : MSGCH_RECOVERY );
mprf((change > 0) ? MSGCH_WARN : MSGCH_RECOVERY,
"You feel %s contaminated with magical energies.",
(change > 0) ? "more" : "less" );
snprintf( info, INFO_SIZE, "%s you are carrying %s fire!",
(num_dest > 1) ? "Some of the scrolls" : "A scroll",
(num_dest > 1) ? "catch" : "catches" );
mprf("%s you are carrying %s fire!",
(num_dest > 1) ? "Some of the scrolls" : "A scroll",
(num_dest > 1) ? "catch" : "catches" );
snprintf( info, INFO_SIZE, "%s you are carrying %s and %s!",
(num_dest > 1) ? "Some of the potions" : "A potion",
(num_dest > 1) ? "freeze" : "freezes",
(num_dest > 1) ? "shatter" : "shatters" );
mprf("%s you are carrying %s and %s!",
(num_dest > 1) ? "Some of the potions" : "A potion",
(num_dest > 1) ? "freeze" : "freezes",
(num_dest > 1) ? "shatter" : "shatters" );
snprintf( info, INFO_SIZE, "%s you are carrying %s destroyed!",
(num_dest > 1) ? "Some items" : "An item",
(num_dest > 1) ? "were" : "was" );
mprf("%s you are carrying %s destroyed!",
(num_dest > 1) ? "Some items" : "An item",
(num_dest > 1) ? "were" : "was" );
snprintf( info, INFO_SIZE, "Mon #%d casts %s (#%d)", monster_index(monster),
mons_spell_name( spell_cast ), spell_cast );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS, "Mon #%d casts %s (#%d)",
monster_index(monster), mons_spell_name( spell_cast ), spell_cast);
snprintf( info, INFO_SIZE, "%s is skipping movement in order to follow.",
ptr_monam( monster, DESC_CAP_THE ) );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS,
"%s is skipping movement in order to follow.",
ptr_monam( monster, DESC_CAP_THE ) );
snprintf( info, INFO_SIZE,
"Power: %d, monster's MR: %d, target: %d, roll: %d",
pow, mrs, mrchance, mrch2 );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS,
"Power: %d, monster's MR: %d, target: %d, roll: %d",
pow, mrs, mrchance, mrch2 );
snprintf( info, INFO_SIZE, "You avoid triggering a%s trap.",
pbolt.name.c_str() );
mpr(info);
mprf( "You avoid triggering a%s trap.", pbolt.name.c_str() );
snprintf( info, INFO_SIZE, "Input %s%s trigger key: ",
keymap?
(keymc == KC_DEFAULT? "default " :
keymc == KC_LEVELMAP? "level-map " :
"targeting ") :
"",
(keymap ? "keymap" : "macro") );
mprf(MSGCH_PROMPT, "Input %s%s trigger key: ",
keymap ? (keymc == KC_DEFAULT ? "default " :
keymc == KC_LEVELMAP ? "level-map "
: "targeting ")
: "",
(keymap ? "keymap" : "macro") );
snprintf( info, INFO_SIZE, "There is a %s staircase leading down here.",
(grid == DNGN_ROCK_STAIRS_DOWN) ? "rock" : "stone" );
mpr(info);
mprf("There is a %s staircase leading down here.",
(grid == DNGN_ROCK_STAIRS_DOWN) ? "rock" : "stone" );
snprintf( info, INFO_SIZE, "There is a %s staircase leading upwards here.",
(grid == DNGN_ROCK_STAIRS_UP) ? "rock" : "stone" );
mpr(info);
mprf("There is a %s staircase leading upwards here.",
(grid == DNGN_ROCK_STAIRS_UP) ? "rock" : "stone" );
snprintf( info, INFO_SIZE, "Pick up %s? (y/n/a/*?g,/q)",
mitm[o].name(DESC_NOCAP_A).c_str() );
mpr( info, MSGCH_PROMPT );
mprf(MSGCH_PROMPT, "Pick up %s? (y/n/a/*?g,/q)",
mitm[o].name(DESC_NOCAP_A).c_str() );
snprintf( info, INFO_SIZE,
"mon #%d: range %d; long %d; pos (%d,%d); targ %d(%d,%d); flags %ld",
m, range, long_time, mon->x, mon->y,
mon->foe, mon->target_x, mon->target_y, mon->flags );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS,
"mon #%d: range %d; long %d; "
"pos (%d,%d); targ %d(%d,%d); flags %ld",
m, range, long_time, mon->x, mon->y,
mon->foe, mon->target_x, mon->target_y, mon->flags );
snprintf( info, INFO_SIZE, "This wand has %d charge%s left.",
you.inv[item_slot].plus,
(you.inv[item_slot].plus == 1) ? "" : "s" );
mpr(info);
mprf("This wand has %d charge%s left.",
you.inv[item_slot].plus,
(you.inv[item_slot].plus == 1) ? "" : "s" );
strcpy(info, "Mmmm... Yummy ");
strcat(info, (item_type == FOOD_APPLE) ? "apple." :
(item_type == FOOD_PEAR) ? "pear." :
(item_type == FOOD_APRICOT) ? "apricot."
: "fruit.");
mpr(info);
mprf("Mmmm... Yummy %s.",
(item_type == FOOD_APPLE) ? "apple." :
(item_type == FOOD_PEAR) ? "pear." :
(item_type == FOOD_APRICOT) ? "apricot."
: "fruit.");
snprintf(info, INFO_SIZE, "Mmm... %s",
(temp_rand == 0) ? "Ham and pineapple." :
(temp_rand == 2) ? "Vegetable." :
(temp_rand == 3) ? "Pepperoni." :
(temp_rand == 4) ? "Yeuchh - Anchovies!" :
(temp_rand == 5) ? "Cheesy." :
(temp_rand == 6) ? "Supreme." :
(temp_rand == 7) ? "Super Supreme!"
: "Chicken.");
mprf("Mmm... %s",
(temp_rand == 0) ? "Ham and pineapple." :
(temp_rand == 2) ? "Vegetable." :
(temp_rand == 3) ? "Pepperoni." :
(temp_rand == 4) ? "Yeuchh - Anchovies!" :
(temp_rand == 5) ? "Cheesy." :
(temp_rand == 6) ? "Supreme." :
(temp_rand == 7) ? "Super Supreme!"
: "Chicken.");
strcat(info, (temp_rand == 0) ? "Cheddar" :
(temp_rand == 1) ? "Edam" :
(temp_rand == 2) ? "Wensleydale" :
(temp_rand == 3) ? "Camembert" :
(temp_rand == 4) ? "Goat cheese" :
(temp_rand == 5) ? "Fruit cheese" :
(temp_rand == 6) ? "Mozzarella" :
(temp_rand == 7) ? "Sheep cheese"
: "Yak cheese");
strcat(info, ".");
mpr(info);
mprf("Mmm...%s.",
(temp_rand == 0) ? "Cheddar" :
(temp_rand == 1) ? "Edam" :
(temp_rand == 2) ? "Wensleydale" :
(temp_rand == 3) ? "Camembert" :
(temp_rand == 4) ? "Goat cheese" :
(temp_rand == 5) ? "Fruit cheese" :
(temp_rand == 6) ? "Mozzarella" :
(temp_rand == 7) ? "Sheep cheese"
: "Yak cheese");
snprintf( info, INFO_SIZE, "Ghost file \"%s\" seems to be invalid.",
cha_fil.c_str());
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS,
"Ghost file \"%s\" seems to be invalid.", cha_fil.c_str());
snprintf( info, INFO_SIZE, "Delay type: %d (%s), duration: %d",
delay.type, delay_name(delay.type), delay.duration );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS, "Delay type: %d (%s), duration: %d",
delay.type, delay_name(delay.type), delay.duration );
snprintf(info, INFO_SIZE, "You finish %s the corpse into pieces.",
(you.species == SP_TROLL ||
you.species == SP_GHOUL) ? "ripping" : "chopping" );
mpr(info);
mprf("You finish %s the corpse into pieces.",
(you.species==SP_TROLL || you.species == SP_GHOUL) ? "ripping"
: "chopping");
snprintf( info, INFO_SIZE, "You drop %s.",
quant_name(you.inv[delay.parm1], delay.parm2,
DESC_NOCAP_A).c_str());
mpr(info);
mprf("You drop %s.", quant_name(you.inv[delay.parm1], delay.parm2,
DESC_NOCAP_A).c_str());
snprintf( info, INFO_SIZE, "An altar grows from the floor %s!",
(you.species == SP_NAGA || you.species == SP_CENTAUR)
? "before you" : "at your feet");
mpr(info);
mprf("An altar grows from the floor %s!",
(you.species == SP_NAGA || you.species == SP_CENTAUR)
? "before you" : "at your feet");
snprintf( info, INFO_SIZE, "cloud type: %d delay: %d",
env.cloud[ env.cgrid[steth_x][steth_y] ].type,
env.cloud[ env.cgrid[steth_x][steth_y] ].decay );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS, "cloud type: %d delay: %d",
env.cloud[ env.cgrid[steth_x][steth_y] ].type,
env.cloud[ env.cgrid[steth_x][steth_y] ].decay );
snprintf( info, INFO_SIZE, "%s (id #%d; type=%d loc=(%d,%d) align=%s)",
monam( &menv[i], menv[i].number, menv[i].type, true,
DESC_CAP_THE ),
i, menv[i].type,
menv[i].x, menv[i].y,
((menv[i].attitude == ATT_FRIENDLY) ? "friendly" :
(menv[i].attitude == ATT_HOSTILE) ? "hostile" :
(menv[i].attitude == ATT_NEUTRAL) ? "neutral"
: "unknown alignment") );
mprf(MSGCH_DIAGNOSTICS, "%s (id #%d; type=%d loc=(%d,%d) align=%s)",
monam( &menv[i], menv[i].number, menv[i].type, true, DESC_CAP_THE ),
i, menv[i].type, menv[i].x, menv[i].y,
((menv[i].attitude == ATT_FRIENDLY) ? "friendly" :
(menv[i].attitude == ATT_HOSTILE) ? "hostile" :
(menv[i].attitude == ATT_NEUTRAL) ? "neutral"
: "unknown alignment") );
snprintf( info, INFO_SIZE,"HD=%d HP=%d/%d AC=%d EV=%d MR=%d SP=%d energy=%d num=%d flags=%04lx",
menv[i].hit_dice,
menv[i].hit_points, menv[i].max_hit_points,
menv[i].ac, menv[i].ev,
mons_resist_magic( &menv[i] ),
menv[i].speed, menv[i].speed_increment,
menv[i].number, menv[i].flags );
mprf(MSGCH_DIAGNOSTICS,
"HD=%d HP=%d/%d AC=%d EV=%d MR=%d SP=%d energy=%d num=%d flags=%04lx",
menv[i].hit_dice,
menv[i].hit_points, menv[i].max_hit_points,
menv[i].ac, menv[i].ev,
mons_resist_magic( &menv[i] ),
menv[i].speed, menv[i].speed_increment,
menv[i].number, menv[i].flags );
snprintf( info, INFO_SIZE, "hab=%s beh=%s(%d) foe=%s(%d) mem=%d target=(%d,%d)",
((hab == DNGN_DEEP_WATER) ? "water" :
(hab == DNGN_LAVA) ? "lava"
: "floor"),
((menv[i].behaviour == BEH_SLEEP) ? "sleep" :
(menv[i].behaviour == BEH_WANDER) ? "wander" :
(menv[i].behaviour == BEH_SEEK) ? "seek" :
(menv[i].behaviour == BEH_FLEE) ? "flee" :
(menv[i].behaviour == BEH_CORNERED) ? "cornered"
: "unknown"),
menv[i].behaviour,
((menv[i].foe == MHITYOU) ? "you" :
(menv[i].foe == MHITNOT) ? "none" :
(menv[menv[i].foe].type == -1) ? "unassigned monster"
: monam( &menv[menv[i].foe],
menv[menv[i].foe].number, menv[menv[i].foe].type,
true, DESC_PLAIN )),
menv[i].foe,
menv[i].foe_memory,
menv[i].target_x, menv[i].target_y );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS,
"hab=%s beh=%s(%d) foe=%s(%d) mem=%d target=(%d,%d)",
((hab == DNGN_DEEP_WATER) ? "water" :
(hab == DNGN_LAVA) ? "lava"
: "floor"),
((menv[i].behaviour == BEH_SLEEP) ? "sleep" :
(menv[i].behaviour == BEH_WANDER) ? "wander" :
(menv[i].behaviour == BEH_SEEK) ? "seek" :
(menv[i].behaviour == BEH_FLEE) ? "flee" :
(menv[i].behaviour == BEH_CORNERED) ? "cornered"
: "unknown"),
menv[i].behaviour,
((menv[i].foe == MHITYOU) ? "you" :
(menv[i].foe == MHITNOT) ? "none" :
(menv[menv[i].foe].type == -1) ? "unassigned monster"
: monam( &menv[menv[i].foe], menv[menv[i].foe].number,
menv[menv[i].foe].type, true, DESC_PLAIN )),
menv[i].foe,
menv[i].foe_memory,
menv[i].target_x, menv[i].target_y );
snprintf( info, INFO_SIZE, "resist: fire=%d cold=%d elec=%d pois=%d neg=%d",
mons_res_fire( &menv[i] ),
mons_res_cold( &menv[i] ),
mons_res_elec( &menv[i] ),
mons_res_poison( &menv[i] ),
mons_res_negative_energy( &menv[i] ) );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS, "resist: fire=%d cold=%d elec=%d pois=%d neg=%d",
mons_res_fire( &menv[i] ),
mons_res_cold( &menv[i] ),
mons_res_elec( &menv[i] ),
mons_res_poison( &menv[i] ),
mons_res_negative_energy( &menv[i] ) );
mpr( info );
snprintf( info, INFO_SIZE, " quant: %d; colour: %d; ident: 0x%08lx; ident_type: %d",
item.quantity, item.colour, item.flags,
get_ident_type( item.base_type, item.sub_type ) );
mprf(" quant: %d; colour: %d; ident: 0x%08lx; ident_type: %d",
item.quantity, item.colour, item.flags,
get_ident_type( item.base_type, item.sub_type ) );
snprintf( info, INFO_SIZE, "Held by monster #%d: %s at (%d,%d)",
j, ptr_monam( &menv[j], DESC_CAP_A ),
menv[j].x, menv[j].y );
mpr( info );
mprf("Held by monster #%d: %s at (%d,%d)",
j, ptr_monam( &menv[j], DESC_CAP_A ),
menv[j].x, menv[j].y );
mpr( "Program bug detected!", MSGCH_WARN );
snprintf( info, INFO_SIZE,
"Buggy monster detected: monster #%d; position (%d,%d)",
i, monster->x, monster->y );
mpr( info, MSGCH_WARN );
mprf( MSGCH_WARN, "Program bug detected!" );
mprf( MSGCH_WARN,
"Buggy monster detected: monster #%d; position (%d,%d)",
i, monster->x, monster->y );
snprintf( info, INFO_SIZE,
"explosion at (%d, %d) : t=%d c=%d f=%d hit=%d dam=%dd%d",
beam.target_x, beam.target_y,
beam.type, beam.colour, beam.flavour,
beam.hit, beam.damage.num, beam.damage.size );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS,
"explosion at (%d, %d) : t=%d c=%d f=%d hit=%d dam=%dd%d",
beam.target_x, beam.target_y,
beam.type, beam.colour, beam.flavour,
beam.hit, beam.damage.num, beam.damage.size );
snprintf( info, INFO_SIZE,
"Cost level: %d Skill points: %d Next cost level: %d",
you.skill_cost_level, you.total_skill_points,
skill_cost_needed( you.skill_cost_level + 1 ) );
mpr( info );
mprf( "Cost level: %d Skill points: %d Next cost level: %d",
you.skill_cost_level, you.total_skill_points,
skill_cost_needed( you.skill_cost_level + 1 ) );
snprintf( info, INFO_SIZE, "item:%3d link:%3d cl:%3d ty:%3d pl:%3d pl2:%3d sp:%3ld q:%3d",
i, mitm[i].link,
mitm[i].base_type, mitm[i].sub_type,
mitm[i].plus, mitm[i].plus2, mitm[i].special,
mitm[i].quantity );
mpr(info);
mprf("item:%3d link:%3d cl:%3d ty:%3d pl:%3d pl2:%3d "
"sp:%3ld q:%3d",
i, mitm[i].link,
mitm[i].base_type, mitm[i].sub_type,
mitm[i].plus, mitm[i].plus2, mitm[i].special,
mitm[i].quantity );
snprintf( info, INFO_SIZE, "%3d at (%2d,%2d), cl:%3d ty:%3d pl:%3d pl2:%3d sp:%3ld q:%3d",
igrd[i][j], i, j,
mitm[i].base_type, mitm[i].sub_type,
mitm[i].plus, mitm[i].plus2, mitm[i].special,
mitm[i].quantity );
mpr(info);
mprf("%3d at (%2d,%2d), cl:%3d ty:%3d pl:%3d pl2:%3d "
"sp:%3ld q:%3d",
igrd[i][j], i, j,
mitm[i].base_type, mitm[i].sub_type,
mitm[i].plus, mitm[i].plus2, mitm[i].special,
mitm[i].quantity );
snprintf( info, INFO_SIZE, "You are a level %d %s %s.",
you.experience_level,
species_name(you.species,you.experience_level),
you.class_name);
mpr(info);
mprf("You are a level %d %s %s.",
you.experience_level, species_name(you.species,you.experience_level),
you.class_name);
snprintf( info, INFO_SIZE,
"Level %d requires %ld experience (%d point%s to go!)",
you.experience_level + 1,
exp_needed(you.experience_level + 2) + 1,
xp_needed,
(xp_needed > 1) ? "s" : "");
mpr(info);
mprf( "Level %d requires %ld experience (%d point%s to go!)",
you.experience_level + 1,
exp_needed(you.experience_level + 2) + 1,
xp_needed,
(xp_needed > 1) ? "s" : "");
make_time_string( curr, buff, sizeof(buff) );
snprintf( info, INFO_SIZE, "Play time: %s (%ld turns)",
buff, you.num_turns );
snprintf( info, INFO_SIZE, "Number of monsters present: %d", ig2 );
mpr( info, MSGCH_DIAGNOSTICS );
snprintf( info, INFO_SIZE, "Number of clouds present: %d", env.cloud_no );
mpr( info, MSGCH_DIAGNOSTICS );
mprf( MSGCH_DIAGNOSTICS, "Number of monsters present: %d", ig2);
mprf( MSGCH_DIAGNOSTICS, "Number of clouds present: %d", env.cloud_no);
snprintf( info, INFO_SIZE, "Cost: mp=%d; hp=%d; food=%d; piety=%d",
abil.mp_cost, abil.hp_cost, food_cost, piety_cost );
mpr( info, MSGCH_DIAGNOSTICS );
mprf(MSGCH_DIAGNOSTICS, "Cost: mp=%d; hp=%d; food=%d; piety=%d",
abil.mp_cost, abil.hp_cost, food_cost, piety_cost );