summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorHaran Pilpel <haranp@users.sourceforge.net>2010-01-03 23:27:14 +0200
committerHaran Pilpel <haranp@users.sourceforge.net>2010-01-03 23:27:14 +0200
commit49840080f1506e463f49fe21f380c4810a3b4ad1 (patch)
treeb655e9d5b5ac2f8b7cb9268cfe0cc55a752dde16 /crawl-ref
parenta549338acb9b85755c01065b3fb0e2198506e75a (diff)
parentce683203784375b841d686a36083c1448fa653db (diff)
downloadcrawl-ref-49840080f1506e463f49fe21f380c4810a3b4ad1.tar.gz
crawl-ref-49840080f1506e463f49fe21f380c4810a3b4ad1.zip
Merge branch 'master' of ssh://crawl-ref.git.sourceforge.net/gitroot/crawl-ref/crawl-ref
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/dat/altar.des141
-rw-r--r--crawl-ref/source/mon-project.cc13
-rw-r--r--crawl-ref/source/mon-stuff.cc4
-rw-r--r--crawl-ref/source/spl-book.cc2
4 files changed, 141 insertions, 19 deletions
diff --git a/crawl-ref/source/dat/altar.des b/crawl-ref/source/dat/altar.des
index a9706762bd..9d67838a2d 100644
--- a/crawl-ref/source/dat/altar.des
+++ b/crawl-ref/source/dat/altar.des
@@ -555,6 +555,18 @@ xdddx
xxxxx
ENDMAP
+NAME: fedhas_bush_and_centaur_altar
+KFEAT: _ = altar_fedhas
+MONS: centaur, bush
+MAP
+......
+.2222..
+.21222.
+.22_22.
+...22..
+.222..
+ENDMAP
+
######################################
# IV Overflow altars
######################################
@@ -660,6 +672,107 @@ ENDMAP
### Elyvilon overflow altars ##################################################
+NAME: elyvilon_altar_1
+TAGS: uniq_altar_elyvilon temple_overflow_elyvilon
+DEPTH: D:2-20
+KFEAT: C = altar_elyvilon
+SUBST: X : T G t 1 2 3
+MONS: plant, bush, fungus
+KMASK: T = no_monster_gen
+MAP
+ xx@xx
+ x...x
+ x.X.x
+ x...x
+ xx.xx
+ x.x
+xxxxx xx.xx xxxxx
+x...xxx...xxx...x
+@.X.....C.....X.@
+x...xxx...xxx...x
+xxxxx xx.xx xxxxx
+ x.x
+ xx.xx
+ x...x
+ x.X.x
+ x...x
+ xx@xx
+ENDMAP
+
+NAME: elyvilon_altar_2
+TAGS: uniq_altar_elyvilon temple_overflow_elyvilon no_pool_fixup no_monster_gen
+DEPTH: D:2-20
+KFEAT: C = altar_elyvilon
+NSUBST: W = 1:Z / *:W
+KMONS: Z = big fish att:good_neutral
+KFEAT: Z = W
+MAP
+@wWw@
+wwWww
+WWCWW
+wwWww
+@wWw@
+ENDMAP
+
+NAME: elyvilon_altar_3
+TAGS: uniq_altar_elyvilon temple_overflow_elyvilon no_pool_fixup
+DEPTH: D:2-20
+KFEAT: C = altar_elyvilon
+KMASK: w = no_monster_gen
+KMASK: W = no_monster_gen
+MONS: butterfly
+MAP
+ ttttttttttttt
+ ttttttttttttttt
+ tttttttt.tttttttt
+ .....ttttt..1..ttttt.....
+ .......ttt.......ttt.......
+...wWw...t...wWw...t...wWw...
+..wwWww.....wwWww.....wwWww..
+@.WWtWW.1.1.WWCWW.1.1.WWtWW.@
+..wwWww.....wwWww.....wwWww..
+...wWw...t...wWw...t...wWw...
+ .......ttt.......ttt.......
+ .....ttttt..1..ttttt.....
+ tttttttt.tttttttt
+ ttttttttttttttt
+ ttttttttttttt
+ENDMAP
+
+NAME: elyvilon_altar_4
+TAGS: uniq_altar_elyvilon temple_overflow_elyvilon no_monster_gen
+DEPTH: D:2-20
+KFEAT: C = altar_elyvilon
+MONS: patrolling quokka att:good_neutral
+MAP
+xxx.@.xxx
+xWW...WWx
+xW..t..Wx
+....1....
+@.t.C.t.@
+.........
+xW..t..Wx
+xWW...WWx
+xxx.@.xxx
+ENDMAP
+
+NAME: elyvilon_altar_5
+TAGS: uniq_altar_elyvilon temple_overflow_elyvilon
+DEPTH: D:2-20
+KFEAT: C = altar_elyvilon
+KMASK: T = no_monster_gen
+MAP
+.............
+.c.c.c.c.c.c.
+.............
+...T.....T...
+@.....C.....@
+...T.....T...
+.............
+.c.c.c.c.c.c.
+.............
+ENDMAP
+
### Fedhas overflow altars ####################################################
NAME: fedhas_altar_1
@@ -724,19 +837,6 @@ xxxxxxxtttttttx
xxxxxxxxxxxxxxx
ENDMAP
-NAME: fedhas_altar_5
-TAGS: uniq_altar_fedhas
-KFEAT: _ = altar_fedhas
-MONS: centaur, bush
-MAP
-......
-.2222..
-.21222.
-.22_22.
-...22..
-.222..
-ENDMAP
-
# Threat: two big fish. Loot: some fruits.
# The oklob plant may be abusable (if so, remove it).
NAME: tgw_fedhas
@@ -1040,6 +1140,21 @@ ENDMAP
### Yredelemnul overflow altars ###############################################
+NAME: yredelemnul_altar_1
+TAGS: uniq_altar_yredelemnul temple_overflow_yredelemnul
+DEPTH: D:2-20
+KFEAT: C = altar_yredelemnul
+KMONS: f = w:2 col:darkgrey plant name:withered name_adjective \
+ tile:mons_withered_plant / w:1 col:lightgrey plant name:withered \
+ name_adjective tile:mons_withered_plant
+MAP
+.....
+.f.f.
+..C..
+.f.f.
+.....
+ENDMAP
+
### Zin overflow altars #######################################################
NAME: zin_angel
diff --git a/crawl-ref/source/mon-project.cc b/crawl-ref/source/mon-project.cc
index aa2b29f22e..6e00408a54 100644
--- a/crawl-ref/source/mon-project.cc
+++ b/crawl-ref/source/mon-project.cc
@@ -52,10 +52,15 @@ bool cast_iood(actor *caster, int pow, bolt *beam)
monsters &mon = menv[mind];
const coord_def pos = caster->pos();
- mon.props["iood_x"] = (float)pos.x;
- mon.props["iood_y"] = (float)pos.y;
- mon.props["iood_vx"] = (float)(beam->target.x - pos.x);
- mon.props["iood_vy"] = (float)(beam->target.y - pos.y);
+ beam->choose_ray();
+ dprf("beam (%d,%d)+t*(%d,%d) ray (%f,%f)+t*(%f,%f)",
+ pos.x, pos.y, beam->target.x - pos.x, beam->target.y - pos.y,
+ beam->ray.r.start.x - 0.5, beam->ray.r.start.y - 0.5,
+ beam->ray.r.dir.x, beam->ray.r.dir.y);
+ mon.props["iood_x"].get_float() = beam->ray.r.start.x - 0.5;
+ mon.props["iood_y"].get_float() = beam->ray.r.start.y - 0.5;
+ mon.props["iood_vx"].get_float() = beam->ray.r.dir.x;
+ mon.props["iood_vy"].get_float() = beam->ray.r.dir.y;
mon.props["iood_kc"].get_byte() = (caster->atype() == ACT_PLAYER) ? KC_YOU :
((monsters*)caster)->friendly() ? KC_FRIENDLY : KC_OTHER;
mon.props["iood_pow"].get_short() = pow;
diff --git a/crawl-ref/source/mon-stuff.cc b/crawl-ref/source/mon-stuff.cc
index 1395161b51..43db612472 100644
--- a/crawl-ref/source/mon-stuff.cc
+++ b/crawl-ref/source/mon-stuff.cc
@@ -3337,10 +3337,12 @@ int mons_pick_best_missile(monsters *mons, item_def **launcher,
if (launch && missiles && !missiles->launched_by(*launch))
launch = NULL;
+ const int n_usable_melee_weapons(mons_wields_two_weapons(mons) ? 2 : 1);
const int tdam =
mons_thrown_weapon_damage(
melee,
- melee_weapon_count == 1 && melee->quantity == 1);
+ melee_weapon_count == n_usable_melee_weapons
+ && melee->quantity == 1);
const int fdam = mons_missile_damage(mons, launch, missiles);
if (!tdam && !fdam)
diff --git a/crawl-ref/source/spl-book.cc b/crawl-ref/source/spl-book.cc
index 29e3c69d1f..23efc42d75 100644
--- a/crawl-ref/source/spl-book.cc
+++ b/crawl-ref/source/spl-book.cc
@@ -485,10 +485,10 @@ static spell_type spellbook_template_array[][SPELLBOOK_SIZE] =
// Book of Brands
{SPELL_CORONA,
SPELL_SWIFTNESS,
- SPELL_CAUSE_FEAR,
SPELL_FIRE_BRAND,
SPELL_FREEZING_AURA,
SPELL_POISON_WEAPON,
+ SPELL_CAUSE_FEAR,
SPELL_NO_SPELL,
SPELL_NO_SPELL,
},