diff options
author | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-06-25 16:09:27 +0000 |
---|---|---|
committer | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-06-25 16:09:27 +0000 |
commit | e079a2dd1b6c583624f32a097f4a946d3c6c89c7 (patch) | |
tree | d7d8c4a0f4fc27858c2cc2135abfe53930d80881 | |
parent | 1bbfb19443867f8a1eee94732fb895c82c077e78 (diff) | |
download | crawl-ref-e079a2dd1b6c583624f32a097f4a946d3c6c89c7.tar.gz crawl-ref-e079a2dd1b6c583624f32a097f4a946d3c6c89c7.zip |
Elf genocide. I hope I caught all the references.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1650 c06c8d41-db1a-0410-9941-cceddc491573
-rw-r--r-- | crawl-ref/source/enum.h | 1 | ||||
-rw-r--r-- | crawl-ref/source/newgame.cc | 74 | ||||
-rw-r--r-- | crawl-ref/source/player.cc | 21 | ||||
-rw-r--r-- | crawl-ref/source/skills2.cc | 43 |
4 files changed, 12 insertions, 127 deletions
diff --git a/crawl-ref/source/enum.h b/crawl-ref/source/enum.h index 38c9cac85a..0cd8a141fc 100644 --- a/crawl-ref/source/enum.h +++ b/crawl-ref/source/enum.h @@ -3225,7 +3225,6 @@ enum special_wield_type // you.special_wield enum species_type { SP_HUMAN = 1, // 1 - SP_ELF, SP_HIGH_ELF, SP_GREY_ELF, SP_DEEP_ELF, // 5 diff --git a/crawl-ref/source/newgame.cc b/crawl-ref/source/newgame.cc index 6e787655fd..5df33ee42a 100644 --- a/crawl-ref/source/newgame.cc +++ b/crawl-ref/source/newgame.cc @@ -515,7 +515,6 @@ static void racialise_starting_equipment() // now add appropriate species type mod switch (you.species) { - case SP_ELF: case SP_HIGH_ELF: case SP_GREY_ELF: case SP_DEEP_ELF: @@ -650,7 +649,6 @@ static void give_species_bonus_hp() inc_max_hp(1); break; - case SP_ELF: case SP_GREY_ELF: case SP_HIGH_ELF: dec_max_hp(1); @@ -970,7 +968,6 @@ static bool class_allowed( species_type speci, job_type char_class ) switch (speci) { case SP_CENTAUR: - case SP_ELF: case SP_GHOUL: case SP_GNOME: case SP_GREY_ELF: @@ -1054,7 +1051,6 @@ static bool class_allowed( species_type speci, job_type char_class ) case SP_CENTAUR: case SP_DEMIGOD: case SP_DEMONSPAWN: - case SP_ELF: case SP_GREY_ELF: case SP_HIGH_ELF: case SP_HUMAN: @@ -1218,7 +1214,6 @@ static bool class_allowed( species_type speci, job_type char_class ) switch (speci) { - case SP_ELF: case SP_GREY_ELF: case SP_HALFLING: case SP_HIGH_ELF: @@ -1267,7 +1262,6 @@ static bool class_allowed( species_type speci, job_type char_class ) switch (speci) { - case SP_ELF: case SP_GHOUL: case SP_GNOME: case SP_GREY_ELF: @@ -1294,7 +1288,6 @@ static bool class_allowed( species_type speci, job_type char_class ) switch (speci) { case SP_CENTAUR: - case SP_ELF: case SP_GNOME: case SP_GREY_ELF: case SP_HALFLING: @@ -1726,7 +1719,6 @@ static void species_stat_init(species_type which_species) case SP_DEMIGOD: sb = 7; ib = 7; db = 7; break; // 21+7 case SP_DEMONSPAWN: sb = 4; ib = 4; db = 4; break; // 12+7 - case SP_ELF: sb = 5; ib = 8; db = 8; break; // 21 case SP_HIGH_ELF: sb = 5; ib = 9; db = 8; break; // 22 case SP_GREY_ELF: sb = 4; ib = 9; db = 8; break; // 21 case SP_DEEP_ELF: sb = 3; ib = 10; db = 8; break; // 21 @@ -2880,63 +2872,17 @@ static job_type letter_to_class(int keyn) static species_type letter_to_species(int keyn) { - switch (keyn) - { - case 'a': - return SP_HUMAN; - case 'b': - return SP_ELF; - case 'c': - return SP_HIGH_ELF; - case 'd': - return SP_GREY_ELF; - case 'e': - return SP_DEEP_ELF; - case 'f': - return SP_SLUDGE_ELF; - case 'g': - return SP_HILL_DWARF; - case 'h': - return SP_MOUNTAIN_DWARF; - case 'i': - return SP_HALFLING; - case 'j': - return SP_HILL_ORC; - case 'k': - return SP_KOBOLD; - case 'l': - return SP_MUMMY; - case 'm': - return SP_NAGA; - case 'n': - return SP_GNOME; - case 'o': - return SP_OGRE; - case 'p': - return SP_TROLL; - case 'q': - return SP_OGRE_MAGE; - case 'r': // draconian - return static_cast<species_type>(SP_RED_DRACONIAN + random2(9)); - case 's': - return SP_CENTAUR; - case 't': - return SP_DEMIGOD; - case 'u': - return SP_SPRIGGAN; - case 'v': - return SP_MINOTAUR; - case 'w': - return SP_DEMONSPAWN; - case 'x': - return SP_GHOUL; - case 'y': - return SP_KENKU; - case 'z': - return SP_MERFOLK; - default: + if ( keyn < 'a' || keyn > 'z' ) return SP_UNKNOWN; - } + const int offset = keyn - 'a'; + int rc; + if ( offset + SP_HUMAN < SP_RED_DRACONIAN ) + rc = offset + SP_HUMAN; + else if ( offset + SP_HUMAN == SP_RED_DRACONIAN ) // random draco + rc = SP_RED_DRACONIAN + random2(9); + else // skip over draconian species + rc = offset + (SP_BASE_DRACONIAN - SP_RED_DRACONIAN) + 1; + return static_cast<species_type>(rc); } static char species_to_letter(int spec) diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc index e2dfda3b8f..17946f615c 100644 --- a/crawl-ref/source/player.cc +++ b/crawl-ref/source/player.cc @@ -402,7 +402,6 @@ bool player_genus(unsigned char which_genus, unsigned char species) case SP_BASE_DRACONIAN: return (which_genus == GENPC_DRACONIAN); - case SP_ELF: case SP_HIGH_ELF: case SP_GREY_ELF: case SP_DEEP_ELF: @@ -796,7 +795,6 @@ int player_res_magic(void) break; case SP_HIGH_ELF: case SP_GREY_ELF: - case SP_ELF: case SP_SLUDGE_ELF: case SP_HILL_DWARF: case SP_MOUNTAIN_DWARF: @@ -2299,19 +2297,6 @@ void level_change(void) modify_stat(STAT_RANDOM, 1, false); break; - case SP_ELF: - if (you.experience_level % 3) - hp_adjust--; - else - mp_adjust++; - - if (!(you.experience_level % 4)) - { - modify_stat( (coinflip() ? STAT_INTELLIGENCE - : STAT_DEXTERITY), 1, false ); - } - break; - case SP_HIGH_ELF: if (you.experience_level == 15) { @@ -3360,7 +3345,6 @@ char *species_name( int speci, int level, bool genus, bool adj, bool cap ) { switch (speci) { - case SP_ELF: default: strcpy( species_buff, "Elf" ); break; @@ -3553,7 +3537,6 @@ int species_exp_mod(char species) return 10; case SP_GNOME: return 11; - case SP_ELF: case SP_SLUDGE_ELF: case SP_NAGA: case SP_GHOUL: @@ -4057,7 +4040,7 @@ void set_mp(int new_amount, bool max_too) static const char * Species_Abbrev_List[ NUM_SPECIES ] = - { "XX", "Hu", "El", "HE", "GE", "DE", "SE", "HD", "MD", "Ha", + { "XX", "Hu", "HE", "GE", "DE", "SE", "HD", "MD", "Ha", "HO", "Ko", "Mu", "Na", "Gn", "Og", "Tr", "OM", "Dr", "Dr", "Dr", "Dr", "Dr", "Dr", "Dr", "Dr", "Dr", "Dr", "Dr", "Dr", "Ce", "DG", "Sp", "Mi", "DS", "Gh", "Ke", "Mf" }; @@ -5122,7 +5105,7 @@ int player::mons_species() const { case SP_HILL_ORC: return (MONS_ORC); - case SP_ELF: case SP_HIGH_ELF: case SP_GREY_ELF: + case SP_HIGH_ELF: case SP_GREY_ELF: case SP_DEEP_ELF: case SP_SLUDGE_ELF: return (MONS_ELF); default: diff --git a/crawl-ref/source/skills2.cc b/crawl-ref/source/skills2.cc index 40f74605b5..2f3507eb17 100644 --- a/crawl-ref/source/skills2.cc +++ b/crawl-ref/source/skills2.cc @@ -169,49 +169,6 @@ const int spec_skills[ NUM_SPECIES ][40] = (100 * 75) / 100, // SK_EVOCATIONS }, - { // SP_ELF (2) - 120, // SK_FIGHTING - 80, // SK_SHORT_BLADES - 80, // SK_LONG_SWORDS - 110, // SK_UNUSED_1 - 120, // SK_AXES - 130, // SK_MACES_FLAILS - 130, // SK_POLEARMS - 100, // SK_STAVES - 120, // SK_SLINGS - 60, // SK_BOWS - 100, // SK_CROSSBOWS - 90, // SK_DARTS - 80, // SK_RANGED_COMBAT - 120, // SK_ARMOUR - 80, // SK_DODGING - 80, // SK_STEALTH - 100, // SK_STABBING - 120, // SK_SHIELDS - 100, // SK_TRAPS_DOORS - 110, // SK_UNARMED_COMBAT - 100, // undefined - 100, // undefined - 100, // undefined - 100, // undefined - 100, // undefined - (80 * 130) / 100, // SK_SPELLCASTING - 105, // SK_CONJURATIONS - 70, // SK_ENCHANTMENTS - 100, // SK_SUMMONINGS - 120, // SK_NECROMANCY - 100, // SK_TRANSLOCATIONS - 100, // SK_TRANSMIGRATION - 100, // SK_DIVINATIONS - 100, // SK_FIRE_MAGIC - 100, // SK_ICE_MAGIC - 70, // SK_AIR_MAGIC - 130, // SK_EARTH_MAGIC - 110, // SK_POISON_MAGIC - (100 * 75) / 100, // SK_INVOCATIONS - (80 * 75) / 100, // SK_EVOCATIONS - }, - { // SP_HIGH_ELF (3) 100, // SK_FIGHTING 70, // SK_SHORT_BLADES |