2013/02/23
■ [変愚蛮怒/スポイラー]aggravate_monsters()関数による「周囲のモンスターを怒らせる」処理(変愚蛮怒 Ver2.1.2 rev3327)
aggravate_monsters()関数で処理される。
void aggravate_monsters(int who)
引数のwhoは誰が発生させたかを指し、0なら@さんがトラップを踏んだか、自発的な魔法により引き起こしたもの、0以外ならモンスターが魔法で引き起こしたものであることを指す。
以下の場合に呼ばれる場合がある。
- ★拍子木の発動。
- 床トラップの「警報装置」
- 床トラップの「開門装置」
- 箱トラップの「警報装置」
- カオス魔法失敗時かシャッフル「運命の輪」を引いた時のランダム効果。
- 歌の失敗時
- エキサイト・モンスターの巻物
- 反感のロッド
- (今はコメントアウトされている)呪われているアーティファクトを発動した時。
- シャッフルで「不調和の剣」を引いた時
- 剣術「気迫の雄叫び」による轟音攻撃の副作用
- ものまねの「叫ぶ」
- 敵モンスターの「叫ぶ」
- 青魔法の「叫ぶ」
- 突然変異「叫ぶ」による轟音攻撃の副作用
- 悪魔魔法「血の呪い」の効果の一つ
- 太古の怨念の効果の一つ
予め断っておくと、この効果は@さんが意図的に発動したものであっても必ずデメリットしかない。
処理の流れは以下の通りである。
- フロア中の全モンスターを対象に以下の判定を行う。
- 怒らせる処理を発生させたモンスター自身ならキャンセル
- モンスターが@さんから距離39マス以内にいた場合、モンスターは即座に目を覚まし、ペット化に対する耐性を持つ。
- @さんの視界内にいるモンスターの場合、+100ターン加速する。
- 加速したモンスターが一体でもいた場合「付近で何かが突如興奮したような感じを受けた!」とメッセージを流す。
- 加速したモンスターはいないが、目を覚ましたモンスターがいた場合は「何かが突如興奮したような騒々しい音が遠くに聞こえた!」とメッセージを流す。
- 実害が何もなかった場合は一切メッセージが流れない。