diff options
-rw-r--r-- | crawl-ref/source/acr.cc | 2 | ||||
-rw-r--r-- | crawl-ref/source/itemname.cc | 13 | ||||
-rw-r--r-- | crawl-ref/source/itemprop.cc | 8 | ||||
-rw-r--r-- | crawl-ref/source/itemprop.h | 1 | ||||
-rw-r--r-- | crawl-ref/source/makeitem.cc | 37 | ||||
-rw-r--r-- | crawl-ref/source/misc.cc | 4 | ||||
-rw-r--r-- | crawl-ref/source/randart.cc | 8 | ||||
-rw-r--r-- | crawl-ref/source/shopping.cc | 1 | ||||
-rw-r--r-- | crawl-ref/source/tile1.cc | 3 |
9 files changed, 45 insertions, 32 deletions
diff --git a/crawl-ref/source/acr.cc b/crawl-ref/source/acr.cc index 1793552274..b7b440ea8f 100644 --- a/crawl-ref/source/acr.cc +++ b/crawl-ref/source/acr.cc @@ -4167,7 +4167,7 @@ static void move_player(int move_x, int move_y) you.turn_is_over = 0; crawl_state.cancel_cmd_repeat(); } - else if (beholder) + else if (beholder && !attacking) { mprf("You cannot move away from %s!", beholder->name(DESC_NOCAP_THE, true).c_str()); diff --git a/crawl-ref/source/itemname.cc b/crawl-ref/source/itemname.cc index 7343c726ef..f17b412a85 100644 --- a/crawl-ref/source/itemname.cc +++ b/crawl-ref/source/itemname.cc @@ -1219,14 +1219,13 @@ std::string item_def::name_aux( description_level_type desc, { const short dhelm = get_helmet_desc( *this ); - buff << - ( - (dhelm == THELM_DESC_PLAIN) ? "" : - (dhelm == THELM_DESC_WINGED) ? "winged " : - (dhelm == THELM_DESC_HORNED) ? "horned " : + buff << + ((dhelm == THELM_DESC_PLAIN) ? "" : + (dhelm == THELM_DESC_WINGED) ? "winged " : + (dhelm == THELM_DESC_HORNED) ? "horned " : (dhelm == THELM_DESC_CRESTED) ? "crested " : - (dhelm == THELM_DESC_PLUMED) ? "plumed " : - (dhelm == THELM_DESC_SPIKED) ? "spiked " : + (dhelm == THELM_DESC_PLUMED) ? "plumed " : + (dhelm == THELM_DESC_SPIKED) ? "spiked " : (dhelm == THELM_DESC_VISORED) ? "visored " : (dhelm == THELM_DESC_JEWELLED) ? "jewelled " : "buggy "); diff --git a/crawl-ref/source/itemprop.cc b/crawl-ref/source/itemprop.cc index 14851779d4..a518f8970e 100644 --- a/crawl-ref/source/itemprop.cc +++ b/crawl-ref/source/itemprop.cc @@ -124,8 +124,6 @@ static armour_def Armour_prop[NUM_ARMOURS] = { ARM_HELMET, "helmet", 1, 0, 80, false, EQ_HELMET, SIZE_SMALL, SIZE_MEDIUM }, - { ARM_HELM, "helm", 1, 0, 80, - false, EQ_HELMET, SIZE_SMALL, SIZE_MEDIUM }, { ARM_CAP, "cap", 0, 0, 40, true, EQ_HELMET, SIZE_LITTLE, SIZE_LARGE }, @@ -817,9 +815,7 @@ bool is_helmet(const item_def& item) bool is_hard_helmet(const item_def &item) { - return (item.base_type == OBJ_ARMOUR - && (item.sub_type == ARM_HELMET || - item.sub_type == ARM_HELM)); + return (item.base_type == OBJ_ARMOUR && item.sub_type == ARM_HELMET); } void set_helmet_random_desc( item_def &item ) @@ -2404,11 +2400,11 @@ size_type item_size( const item_def &item ) case OBJ_ARMOUR: size = SIZE_MEDIUM; + switch (item.sub_type) { case ARM_GLOVES: case ARM_HELMET: - case ARM_HELM: case ARM_CAP: case ARM_WIZARD_HAT: case ARM_BOOTS: diff --git a/crawl-ref/source/itemprop.h b/crawl-ref/source/itemprop.h index 8f42cb6a19..1ea474ce27 100644 --- a/crawl-ref/source/itemprop.h +++ b/crawl-ref/source/itemprop.h @@ -29,7 +29,6 @@ enum armour_type ARM_SHIELD, ARM_CLOAK, ARM_HELMET, - ARM_HELM, ARM_CAP, ARM_WIZARD_HAT, ARM_GLOVES, diff --git a/crawl-ref/source/makeitem.cc b/crawl-ref/source/makeitem.cc index c4fd26ec6e..54586977fb 100644 --- a/crawl-ref/source/makeitem.cc +++ b/crawl-ref/source/makeitem.cc @@ -262,7 +262,6 @@ static int newwave_armour_colour(const item_def &item) item_colour = MAGENTA; break; case ARM_HELMET: - case ARM_HELM: item_colour = DARKGREY; break; case ARM_BOOTS: @@ -306,7 +305,6 @@ static int classic_armour_colour(const item_def &item) case ARM_WIZARD_HAT: item_colour = random_colour(); break; - case ARM_HELM: case ARM_HELMET: item_colour = LIGHTCYAN; break; @@ -1904,7 +1902,6 @@ static item_status_flag_type determine_armour_race(const item_def& item, rc = ISFLAG_ELVEN; break; - case ARM_HELM: case ARM_HELMET: if (one_chance_in(8)) rc = ISFLAG_ORCISH; @@ -1981,7 +1978,6 @@ static special_armour_type determine_armour_ego(const item_def& item, break; case ARM_HELMET: - case ARM_HELM: case ARM_CAP: rc = coinflip() ? SPARM_SEE_INVISIBLE : SPARM_INTELLIGENCE; break; @@ -4113,14 +4109,31 @@ armour_type get_random_armour_type(int item_level) // secondary armours: if (one_chance_in(5)) { - armtype = ARM_SHIELD + random2(5); - if ( armtype > ARM_HELMET ) - armtype += 3; - - if ( armtype == ARM_HELMET && one_chance_in(3) ) - armtype = ARM_HELMET + random2(4); - - if (armtype == ARM_SHIELD) // 33.3% + // same chance each + switch (random2(5)) + { + case 0: + armtype = ARM_SHIELD; + break; + case 1: + armtype = ARM_CLOAK; + break; + case 2: + armtype = ARM_HELMET; + break; + case 3: + armtype = ARM_GLOVES; + break; + case 4: + armtype = ARM_BOOTS; + break; + } + + if (armtype == ARM_HELMET && one_chance_in(3)) + { + armtype = ARM_HELMET + random2(3); + } + else if (armtype == ARM_SHIELD) // 33.3% { if (coinflip()) armtype = ARM_BUCKLER; // 50.0% diff --git a/crawl-ref/source/misc.cc b/crawl-ref/source/misc.cc index ae050e7acb..c162843083 100644 --- a/crawl-ref/source/misc.cc +++ b/crawl-ref/source/misc.cc @@ -302,6 +302,10 @@ static bool allow_bleeding_on_square(int x, int y) if (grd[x][y] >= DNGN_LAVA && grd[x][y] < DNGN_FLOOR) return (false); + // no spattering into fountains + if (grd[x][y] == DNGN_BLUE_FOUNTAIN || grd[x][y] == DNGN_SPARKLING_FOUNTAIN) + return (false); + // the good gods like to keep their altars pristine if (is_good_god(grid_altar_god(grd[x][y]))) return (false); diff --git a/crawl-ref/source/randart.cc b/crawl-ref/source/randart.cc index 6c3b325bc8..0a1e914a23 100644 --- a/crawl-ref/source/randart.cc +++ b/crawl-ref/source/randart.cc @@ -1214,12 +1214,18 @@ std::string randart_name( const item_def &item ) if (!item_type_known(item)) { std::string appear = getRandNameString(lookup, " appearance"); - if (appear.empty()) // nothing found for lookup + if (appear.empty() // nothing found for lookup + // don't allow "jewelled jewelled helmet" + || item.base_type == OBJ_ARMOUR + && item.sub_type == ARM_HELMET + && appear == "jewelled" + && get_helmet_desc(item) == THELM_DESC_JEWELLED) { appear = getRandNameString("general appearance"); if (appear.empty()) // still nothing found? appear = "non-descript"; } + result += appear; result += " "; result += item_base_name(item); diff --git a/crawl-ref/source/shopping.cc b/crawl-ref/source/shopping.cc index 4b92a783f0..f80d11d5fd 100644 --- a/crawl-ref/source/shopping.cc +++ b/crawl-ref/source/shopping.cc @@ -902,7 +902,6 @@ unsigned int item_value( item_def item, bool ident ) break; case ARM_HELMET: - case ARM_HELM: case ARM_CAP: case ARM_WIZARD_HAT: case ARM_BUCKLER: diff --git a/crawl-ref/source/tile1.cc b/crawl-ref/source/tile1.cc index 20e24e211f..6c2feea8b4 100644 --- a/crawl-ref/source/tile1.cc +++ b/crawl-ref/source/tile1.cc @@ -3178,9 +3178,6 @@ int tilep_equ_helm(const item_def &item) } return 0; - // Why are there both helms and helmets? -Enne - // It'd be like having catsup and ketchup in the same game. - case ARM_HELM: case ARM_HELMET: switch (helmet_desc) { |