From ba0dc9345572f0120a622a15eb1c4ef461110b65 Mon Sep 17 00:00:00 2001 From: Adam Borowski Date: Tue, 15 Dec 2009 15:35:28 +0100 Subject: Remove code duplication by making artifacts use SPARM_SPIRIT_SHIELD. --- crawl-ref/source/art-data.txt | 6 ++++-- crawl-ref/source/artefact.cc | 2 +- crawl-ref/source/describe.cc | 2 -- crawl-ref/source/enum.h | 1 - crawl-ref/source/item_use.cc | 10 ---------- crawl-ref/source/player.cc | 3 +-- crawl-ref/source/util/art-data.pl | 3 +-- crawl-ref/source/wiz-item.cc | 6 ++---- 8 files changed, 9 insertions(+), 24 deletions(-) diff --git a/crawl-ref/source/art-data.txt b/crawl-ref/source/art-data.txt index 36bfd3dfd4..d258c90130 100644 --- a/crawl-ref/source/art-data.txt +++ b/crawl-ref/source/art-data.txt @@ -798,7 +798,8 @@ PLUS: +2 COLOUR: DARKGREY TILE: urand_bear TILE_EQ: bear -BOOL: life, berserk, spirit +BRAND: SPARM_SPIRIT_SHIELD +BOOL: life, berserk MAGIC: 50 DESC_END: Once owned by Ukta, a powerful ogre shaman, this fur hat houses the spirit of an especially mighty bear. @@ -1021,8 +1022,9 @@ PLUS: +6 COLOUR: ETC_GOLD TILE: urand_gong TILE_EQ: gong +BRAND: SPARM_SPIRIT_SHIELD MAGIC: 50 -BOOL: elec, life, spirit +BOOL: elec, life DESC: This is a large gong; you wonder if it could be worn as a shield. DESC_ID: This shield surely will be heard! diff --git a/crawl-ref/source/artefact.cc b/crawl-ref/source/artefact.cc index 46e9b84d6a..9b2cc6feed 100644 --- a/crawl-ref/source/artefact.cc +++ b/crawl-ref/source/artefact.cc @@ -1067,7 +1067,7 @@ void static _get_randart_properties(const item_def &item, if (!done_powers && one_chance_in(10) && aclass == OBJ_ARMOUR && (atype == ARM_CAP || atype == ARM_SHIELD)) { - proprt[ARTP_SPIRIT_SHIELD] = 1; + proprt[ARTP_BRAND] = SPARM_SPIRIT_SHIELD; power_level++; } diff --git a/crawl-ref/source/describe.cc b/crawl-ref/source/describe.cc index 83ea1d2e2b..7d40a8a2cc 100644 --- a/crawl-ref/source/describe.cc +++ b/crawl-ref/source/describe.cc @@ -201,7 +201,6 @@ static std::vector _randart_propnames( const item_def& item ) { "rC", ARTP_COLD, 1 }, { "rN", ARTP_NEGATIVE_ENERGY, 1 }, { "MR", ARTP_MAGIC, 2 }, - { "Spirit", ARTP_SPIRIT_SHIELD, 2 }, // Quantitative attributes { "AC", ARTP_AC, 0 }, @@ -393,7 +392,6 @@ static std::string _randart_descrip( const item_def &item ) { ARTP_LEVITATE, "It lets you levitate.", false}, { ARTP_BLINK, "It lets you blink.", false}, { ARTP_BERSERK, "It lets you go berserk.", false}, - { ARTP_SPIRIT_SHIELD, "It shields you from harm at the cost of magical power.", false}, { ARTP_NOISES, "It makes noises.", false}, { ARTP_PREVENT_SPELLCASTING, "It prevents spellcasting.", false}, { ARTP_CAUSE_TELEPORTATION, "It causes teleportation.", false}, diff --git a/crawl-ref/source/enum.h b/crawl-ref/source/enum.h index 0e9efee2fa..cec66b0228 100644 --- a/crawl-ref/source/enum.h +++ b/crawl-ref/source/enum.h @@ -2560,7 +2560,6 @@ enum artefact_prop_type ARTP_CURSED, ARTP_STEALTH, ARTP_MAGICAL_POWER, - ARTP_SPIRIT_SHIELD, ARTP_NUM_PROPERTIES // 30 }; diff --git a/crawl-ref/source/item_use.cc b/crawl-ref/source/item_use.cc index e10141dad6..4bd5082d00 100644 --- a/crawl-ref/source/item_use.cc +++ b/crawl-ref/source/item_use.cc @@ -5701,16 +5701,6 @@ void use_artefact(item_def &item, bool *show_msgs, bool unmeld) if (proprt[ARTP_NOISES]) you.attribute[ATTR_NOISES] = 1; - if (proprt[ARTP_SPIRIT_SHIELD]) - { - set_mp(0, false); - mpr("You feel the spirits watch over you."); - if (you.species == SP_DEEP_DWARF) - mpr("Now linked to your health, your magic stops regenerating."); - - artefact_wpn_learn_prop(item, ARTP_SPIRIT_SHIELD); - } - if (!alreadyknown && Options.autoinscribe_artefacts) add_autoinscription(item, artefact_auto_inscription(item)); diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc index cfe022232d..7975d102f0 100644 --- a/crawl-ref/source/player.cc +++ b/crawl-ref/source/player.cc @@ -3847,8 +3847,7 @@ int player_mental_clarity(bool calc_unid, bool items) int player_spirit_shield(bool calc_unid) { return player_equip(EQ_AMULET, AMU_GUARDIAN_SPIRIT, calc_unid) - + player_equip_ego_type(EQ_HELMET, SPARM_SPIRIT_SHIELD) - + scan_artefacts(ARTP_SPIRIT_SHIELD); + + player_equip_ego_type(EQ_HELMET, SPARM_SPIRIT_SHIELD); } // Returns whether the player has the effect of the amulet from a diff --git a/crawl-ref/source/util/art-data.pl b/crawl-ref/source/util/art-data.pl index 67a4dfe476..55bfad78f3 100755 --- a/crawl-ref/source/util/art-data.pl +++ b/crawl-ref/source/util/art-data.pl @@ -46,7 +46,6 @@ my %field_type = ( RND_TELE => "bool", SEEINV => "bool", SPECIAL => "bool", - SPIRIT => "bool", STEALTH => "num", STR => "num", VALUE => "num", @@ -475,7 +474,7 @@ my @art_order = ( "SEEINV", "INV", "LEV", "BLINK", "BERSERK", "NOISES", "\n", "NOSPELL", "RND_TELE", "NOTELEP", "ANGRY", "METAB", "\n", "MUTATE", "ACC", "DAM", "CURSED", "STEALTH", "MP", "\n", - "SPIRIT", "}", + "}", "DESC", "\n", "DESC_ID", "\n", diff --git a/crawl-ref/source/wiz-item.cc b/crawl-ref/source/wiz-item.cc index 903dd91292..31550b2edb 100644 --- a/crawl-ref/source/wiz-item.cc +++ b/crawl-ref/source/wiz-item.cc @@ -270,8 +270,7 @@ const char* _prop_name[ARTP_NUM_PROPERTIES] = { "Dam", "Curse", "Stlth", - "MP", - "Spirit" + "MP" }; #define ARTP_VAL_BOOL 0 @@ -307,8 +306,7 @@ char _prop_type[ARTP_NUM_PROPERTIES] = { ARTP_VAL_ANY, //DAMAGE ARTP_VAL_POS, //CURSED ARTP_VAL_ANY, //STEALTH - ARTP_VAL_ANY, //MAGICAL_POWER - ARTP_VAL_BOOL //SPIRIT_SHIELD + ARTP_VAL_ANY //MAGICAL_POWER }; static void _tweak_randart(item_def &item) -- cgit v1.2.3-54-g00ecf