diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-12-11 11:31:22 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-12-11 11:31:22 +0000 |
commit | cc9ba6c05755e235c14daa555bbd037813f91a6e (patch) | |
tree | 7373373a33fabd4bc5c163d64ba767f18edf3093 /crawl-ref/source | |
parent | a9ac64d3b972306982b27c81632182864022f939 (diff) | |
download | crawl-ref-cc9ba6c05755e235c14daa555bbd037813f91a6e.tar.gz crawl-ref-cc9ba6c05755e235c14daa555bbd037813f91a6e.zip |
* Nerf harpies a bit: they are now slower and have no bite attack
(which didn't make sense anyway).
* Also list player god in the saved game selection menu.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7808 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source')
-rw-r--r-- | crawl-ref/source/externs.h | 2 | ||||
-rw-r--r-- | crawl-ref/source/mon-data.h | 6 | ||||
-rw-r--r-- | crawl-ref/source/monstuff.cc | 34 | ||||
-rw-r--r-- | crawl-ref/source/player.cc | 20 | ||||
-rw-r--r-- | crawl-ref/source/rltiles/dc-dngn.txt | 2 | ||||
-rw-r--r-- | crawl-ref/source/tags.cc | 34 |
6 files changed, 54 insertions, 44 deletions
diff --git a/crawl-ref/source/externs.h b/crawl-ref/source/externs.h index f70b4376c7..4be82a7c62 100644 --- a/crawl-ref/source/externs.h +++ b/crawl-ref/source/externs.h @@ -1136,6 +1136,8 @@ struct player_save_info bool wizard; species_type species; std::string class_name; + god_type religion; + player_save_info operator=(const player& rhs); bool operator<(const player_save_info& rhs) const; std::string short_desc() const; diff --git a/crawl-ref/source/mon-data.h b/crawl-ref/source/mon-data.h index 422064a433..a3116488fa 100644 --- a/crawl-ref/source/mon-data.h +++ b/crawl-ref/source/mon-data.h @@ -2160,11 +2160,11 @@ static monsterentry mondata[] = { M_FLIES | M_WARM_BLOOD | M_BATTY, MR_RES_POISON, 1000, 12, MONS_HARPY, MONS_HARPY, MH_NATURAL, -3, - { {AT_BITE, AF_PLAIN, 10}, {AT_CLAW, AF_PLAIN, 8}, - {AT_CLAW, AF_STEAL_FOOD, 5}, AT_NO_ATK }, + { {AT_CLAW, AF_PLAIN, 10}, {AT_CLAW, AF_STEAL_FOOD, 8}, + AT_NO_ATK, AT_NO_ATK }, { 7, 3, 5, 0 }, 2, 10, MST_NO_SPELLS, CE_CONTAMINATED, Z_BIG, S_SCREECH, I_NORMAL, - HT_LAND, 30, DEFAULT_ENERGY, MONUSE_NOTHING, SIZE_MEDIUM + HT_LAND, 25, DEFAULT_ENERGY, MONUSE_NOTHING, SIZE_MEDIUM }, // ice beast ('I') diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc index 513388d10a..ca69ef8926 100644 --- a/crawl-ref/source/monstuff.cc +++ b/crawl-ref/source/monstuff.cc @@ -1762,7 +1762,7 @@ static bool _is_poly_power_unsuitable( poly_power_type power, } } -// if targetc == RANDOM_MONSTER, then relpower indicates the desired +// If targetc == RANDOM_MONSTER, then relpower indicates the desired // power of the new monster, relative to the current monster. // Relaxation still takes effect when needed, no matter what relpower // says. @@ -1820,25 +1820,29 @@ bool monster_polymorph(monsters *monster, monster_type targetc, // Messaging. bool can_see = you.can_see(monster); - if (mons_is_shapeshifter(monster)) - str_polymon = " changes into "; - else if (targetc == MONS_PULSATING_LUMP) - str_polymon = " degenerates into "; - else - str_polymon = " evaporates and reforms as "; - - if (!can_see) - str_polymon += "something you cannot see!"; + if (monster->type == MONS_OGRE && targetc == MONS_TWO_HEADED_OGRE) + str_polymon = " grows a second head!"; else { - str_polymon += mons_type_name(targetc, DESC_NOCAP_A); + if (mons_is_shapeshifter(monster)) + str_polymon = " changes into "; + else if (targetc == MONS_PULSATING_LUMP) + str_polymon = " degenerates into "; + else + str_polymon = " evaporates and reforms as "; + + if (!can_see) + str_polymon += "something you cannot see!"; + else + { + str_polymon += mons_type_name(targetc, DESC_NOCAP_A); - if (targetc == MONS_PULSATING_LUMP) - str_polymon += " of flesh"; + if (targetc == MONS_PULSATING_LUMP) + str_polymon += " of flesh"; - str_polymon += "!"; + str_polymon += "!"; + } } - bool player_messaged = simple_monster_message(monster, str_polymon.c_str()); // Even if the monster transforms from one type that can behold the diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc index ef3d1a5f66..5dbd7003eb 100644 --- a/crawl-ref/source/player.cc +++ b/crawl-ref/source/player.cc @@ -5788,19 +5788,20 @@ void player::init() player_save_info player_save_info::operator=(const player& rhs) { - name = rhs.your_name; - experience = rhs.experience; + name = rhs.your_name; + experience = rhs.experience; experience_level = rhs.experience_level; - wizard = rhs.wizard; - species = rhs.species; - class_name = rhs.class_name; - return *this; + wizard = rhs.wizard; + species = rhs.species; + class_name = rhs.class_name; + religion = rhs.religion; + return (*this); } bool player_save_info::operator<(const player_save_info& rhs) const { - return experience < rhs.experience || - (experience == rhs.experience && name < rhs.name); + return experience < rhs.experience + || (experience == rhs.experience && name < rhs.name); } std::string player_save_info::short_desc() const @@ -5810,6 +5811,9 @@ std::string player_save_info::short_desc() const << species_name(species, experience_level) << ' ' << class_name; + if (religion != GOD_NO_GOD) + desc << " of " << god_name(religion); + #ifdef WIZARD if (wizard) desc << " (WIZ)"; diff --git a/crawl-ref/source/rltiles/dc-dngn.txt b/crawl-ref/source/rltiles/dc-dngn.txt index 40ffda2fb2..1fc9b95cd3 100644 --- a/crawl-ref/source/rltiles/dc-dngn.txt +++ b/crawl-ref/source/rltiles/dc-dngn.txt @@ -378,7 +378,7 @@ shop_jewellery SHOP_JEWELLERY shop_potions SHOP_POTIONS %back none %shrink 1 -dngn_abandoned_shop ABANDONED_SHOP +dngn_abandoned_shop DNGN_ABANDONED_SHOP %sdir dc-dngn dngn_enter_labyrinth DNGN_ENTER_LABYRINTH diff --git a/crawl-ref/source/tags.cc b/crawl-ref/source/tags.cc index 98eb7be697..9f1bae2103 100644 --- a/crawl-ref/source/tags.cc +++ b/crawl-ref/source/tags.cc @@ -1261,24 +1261,24 @@ static void tag_read_you(reader &th, char minorVersion) unmarshallCString(th, you.your_name, 30); - you.religion = static_cast<god_type>(unmarshallByte(th)); - you.piety = unmarshallByte(th); - you.rotting = unmarshallByte(th); - you.symbol = unmarshallByte(th); - you.colour = unmarshallByte(th); - you.pet_target = unmarshallShort(th); - - you.max_level = unmarshallByte(th); - you.where_are_you = static_cast<branch_type>( unmarshallByte(th) ); - you.char_direction = static_cast<game_direction_type>(unmarshallByte(th)); - you.your_level = unmarshallByte(th); - you.is_undead = static_cast<undead_state_type>(unmarshallByte(th)); - you.special_wield = unmarshallByte(th); - you.berserk_penalty = unmarshallByte(th); - you.sage_bonus_skill = static_cast<skill_type>(unmarshallShort(th)); + you.religion = static_cast<god_type>(unmarshallByte(th)); + you.piety = unmarshallByte(th); + you.rotting = unmarshallByte(th); + you.symbol = unmarshallByte(th); + you.colour = unmarshallByte(th); + you.pet_target = unmarshallShort(th); + + you.max_level = unmarshallByte(th); + you.where_are_you = static_cast<branch_type>( unmarshallByte(th) ); + you.char_direction = static_cast<game_direction_type>(unmarshallByte(th)); + you.your_level = unmarshallByte(th); + you.is_undead = static_cast<undead_state_type>(unmarshallByte(th)); + you.special_wield = unmarshallByte(th); + you.berserk_penalty = unmarshallByte(th); + you.sage_bonus_skill = static_cast<skill_type>(unmarshallShort(th)); you.sage_bonus_degree = unmarshallLong(th); - you.level_type = static_cast<level_area_type>( unmarshallByte(th) ); - you.level_type_name = unmarshallString(th); + you.level_type = static_cast<level_area_type>( unmarshallByte(th) ); + you.level_type_name = unmarshallString(th); if (minorVersion >= TAG_MINOR_LUADGN) { |