From 752bd48a4bbbd949bee4dde407be8b1959c5f013 Mon Sep 17 00:00:00 2001 From: dis- Date: Sun, 10 Feb 2013 13:54:23 +0000 Subject: [PATCH] Apply Critical-Expected-Value to 'C' window. --- src/bldg.c | 2 +- src/externs.h | 1 + src/files.c | 15 +++++++++++++-- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/bldg.c b/src/bldg.c index 878d3abf7..ac99c9bd7 100644 --- a/src/bldg.c +++ b/src/bldg.c @@ -3126,7 +3126,7 @@ static void town_history(void) } -static s16b calc_expext_cirt(int weight, int plus, int dam, s16b meichuu, bool dokubari) +s16b calc_expext_cirt(int weight, int plus, int dam, s16b meichuu, bool dokubari) { long i,k, num; diff --git a/src/externs.h b/src/externs.h index 701e15407..7aebec505 100644 --- a/src/externs.h +++ b/src/externs.h @@ -1294,6 +1294,7 @@ extern void quest_discovery(int q_idx); extern int quest_number(int level); extern int random_quest_number(int level); extern bool tele_town(void); +extern s16b calc_expext_cirt(int weight, int plus, int dam, s16b meichuu, bool dokubari); /* util.c */ extern errr path_parse(char *buf, int max, cptr file); diff --git a/src/files.c b/src/files.c index be4f3bd4a..66fe23287 100644 --- a/src/files.c +++ b/src/files.c @@ -2078,13 +2078,14 @@ static cptr likert(int x, int y) */ static void display_player_various(void) { - int tmp, damage[2], blows1, blows2, i, basedam; + int tmp, damage[2], to_h[2], blows1, blows2, i, basedam; int xthn, xthb, xfos, xsrh; int xdis, xdev, xsav, xstl; cptr desc; int muta_att = 0; u32b flgs[TR_FLAG_SIZE]; int shots, shot_frac; + bool dokubari; object_type *o_ptr; @@ -2159,9 +2160,19 @@ static void display_player_various(void) /* Average damage per round */ if (o_ptr->k_idx) { - if (object_is_known(o_ptr)) damage[i] += o_ptr->to_d * 100; + to_h[i] = 0; + dokubari = FALSE; + + if((o_ptr->tval == TV_SWORD) && (o_ptr->sval == SV_DOKUBARI)) dokubari = TRUE; + if (object_is_known(o_ptr)) + { + damage[i] += o_ptr->to_d * 100; + to_h[i] += o_ptr->to_h; + } basedam = ((o_ptr->dd + p_ptr->to_dd[i]) * (o_ptr->ds + p_ptr->to_ds[i] + 1)) * 50; object_flags_known(o_ptr, flgs); + + basedam = calc_expext_cirt(o_ptr->weight, to_h[i], basedam, p_ptr->dis_to_h[i], dokubari); if ((o_ptr->ident & IDENT_MENTAL) && ((o_ptr->name1 == ART_VORPAL_BLADE) || (o_ptr->name1 == ART_CHAINSWORD))) { /* vorpal blade */ -- 2.11.0