diff options
author | Steven Noonan <steven@uplinklabs.net> | 2009-10-20 16:16:59 -0700 |
---|---|---|
committer | Steven Noonan <steven@uplinklabs.net> | 2009-10-20 16:46:47 -0700 |
commit | 4862ac7ba83dc160fdc3f5f4639e79d24eb88630 (patch) | |
tree | 76b2c4954424aed30bf99b9957ce8026d4fecfbc /crawl-ref/source/abl-show.cc | |
parent | d6ea58e6f13e85f4121ab488c09721f6d388a977 (diff) | |
download | crawl-ref-4862ac7ba83dc160fdc3f5f4639e79d24eb88630.tar.gz crawl-ref-4862ac7ba83dc160fdc3f5f4639e79d24eb88630.zip |
gods: added "Chronos", the slow god
Signed-off-by: Brendan Hickey <brendan@bhickey.net>
Acked-by: Steven Noonan <steven@uplinklabs.net>
Diffstat (limited to 'crawl-ref/source/abl-show.cc')
-rw-r--r-- | crawl-ref/source/abl-show.cc | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/crawl-ref/source/abl-show.cc b/crawl-ref/source/abl-show.cc index 7490f9b65d..822b9dcc46 100644 --- a/crawl-ref/source/abl-show.cc +++ b/crawl-ref/source/abl-show.cc @@ -147,6 +147,8 @@ ability_type god_abilities[MAX_NUM_GODS][MAX_GOD_ABILITIES] = // Feawn {ABIL_FEAWN_SUNLIGHT, ABIL_FEAWN_PLANT_RING, ABIL_FEAWN_RAIN, ABIL_FEAWN_SPAWN_SPORES, ABIL_FEAWN_EVOLUTION }, + // Chronos + { ABIL_CHRONOS_PONDEROUSIFY, ABIL_CHRONOS_TIME_STEP, ABIL_CHRONOS_TIME_BEND, ABIL_CHRONOS_SLOUCH }, }; // The description screen was way out of date with the actual costs. @@ -334,6 +336,11 @@ static const ability_def Ability_List[] = { ABIL_FEAWN_SPAWN_SPORES, "Reproduction", 4, 0, 50, 2, ABFLAG_NONE}, { ABIL_FEAWN_EVOLUTION, "Evolution", 4, 0, 0, 2, ABFLAG_FRUIT}, + // Chronos + { ABIL_CHRONOS_PONDEROUSIFY, "Make Ponderous", 1, 0, 0, 0, ABFLAG_NONE }, + { ABIL_CHRONOS_TIME_STEP, "Step From Time", 1, 0, 0, 0, ABFLAG_NONE }, + { ABIL_CHRONOS_TIME_BEND, "Bend Time", 1, 0, 0, 0, ABFLAG_NONE }, + { ABIL_CHRONOS_SLOUCH, "Ruinous Time", 1, 0, 0, 0, ABFLAG_NONE }, { ABIL_HARM_PROTECTION, "Protection From Harm", 0, 0, 0, 0, ABFLAG_NONE }, { ABIL_HARM_PROTECTION_II, "Reliable Protection From Harm", @@ -809,6 +816,15 @@ static talent _get_talent(ability_type ability, bool check_confused) failure = 50 - (you.piety / 20) - (5 * you.skills[SK_EVOCATIONS]); break; + case ABIL_CHRONOS_PONDEROUSIFY: + case ABIL_CHRONOS_TIME_STEP: + case ABIL_CHRONOS_TIME_BEND: + case ABIL_CHRONOS_SLOUCH: + invoc = true; + perfect = true; + failure = 0; + break; + case ABIL_RENOUNCE_RELIGION: invoc = true; perfect = true; @@ -2073,6 +2089,43 @@ static bool _do_ability(const ability_def& abil) // Activated via prayer elsewhere. break; + case ABIL_CHRONOS_PONDEROUSIFY: + mprf(MSGCH_DIAGNOSTICS, "Making something ponderous."); + ponderousify_armour(); + break; + + case ABIL_CHRONOS_TIME_STEP: + mpr("You step out of the flow of time."); + break; + + case ABIL_CHRONOS_TIME_BEND: + { + mpr("The flow of time bends around you."); + + // TODO perhaps make power dependent on invocation? + // if so, this spell must train invocations too + // currently, has one-size-fits-all power level and duration, + // as if a wand of slow monster was zapped at each target + for ( adjacent_iterator ai; ai; ++ai ) + { + // Tile occupied by monster + monsters* mon = monster_at(*ai); + if(mon != NULL) { + mprf(MSGCH_GOD, "%s rebukes %s.", + god_name(you.religion).c_str(), + mon->name(DESC_NOCAP_THE).c_str()); + do_slow_monster(mon, KC_YOU); + } + } + break; + } + case ABIL_CHRONOS_SLOUCH: + mpr("You can feel time thicken."); + mprf(MSGCH_GOD, "your speed is %d", player_movement_speed()); + chronos_slouch(0); //TODO make pow not a dummy value. + break; + + case ABIL_RENOUNCE_RELIGION: if (yesno("Really renounce your faith, foregoing its fabulous benefits?", false, 'n') |