魔法効果の実装/ Spell code (part 2) [詳細]
関数 | |
void | self_knowledge (void) |
自己分析処理(Nethackからのアイデア) / self-knowledge... [詳細] | |
static int | report_magics_aux (int dur) |
魔法効果時間のターン数に基づいて表現IDを返す。 [詳細] | |
void | report_magics (void) |
現在の一時的効果一覧を返す / Report all currently active magical effects. [詳細] | |
static bool | detect_feat_flag (int range, int flag, bool known) |
プレイヤー周辺の地形を感知する [詳細] | |
bool | detect_traps (int range, bool known) |
プレイヤー周辺のトラップを感知する / Detect all traps on current panel [詳細] | |
bool | detect_doors (int range) |
プレイヤー周辺のドアを感知する / Detect all doors on current panel [詳細] | |
bool | detect_stairs (int range) |
プレイヤー周辺の階段を感知する / Detect all stairs on current panel [詳細] | |
bool | detect_treasure (int range) |
プレイヤー周辺の地形財宝を感知する / Detect any treasure on the current panel [詳細] | |
bool | detect_objects_gold (int range) |
プレイヤー周辺のアイテム財宝を感知する / Detect all "gold" objects on the current panel [詳細] | |
bool | detect_objects_normal (int range) |
通常のアイテムオブジェクトを感知する / Detect all "normal" objects on the current panel [詳細] | |
bool | detect_objects_magic (int range) |
魔法効果のあるのアイテムオブジェクトを感知する / Detect all "magic" objects on the current panel. [詳細] | |
bool | detect_monsters_normal (int range) |
一般のモンスターを感知する / Detect all "normal" monsters on the current panel [詳細] | |
bool | detect_monsters_invis (int range) |
不可視のモンスターを感知する / Detect all "invisible" monsters around the player [詳細] | |
bool | detect_monsters_evil (int range) |
邪悪なモンスターを感知する / Detect all "evil" monsters on current panel [詳細] | |
bool | detect_monsters_nonliving (int range) |
無生命のモンスターを感知する(アンデッド、悪魔系を含む) / Detect all "nonliving", "undead" or "demonic" monsters on current panel [詳細] | |
bool | detect_monsters_mind (int range) |
精神のあるモンスターを感知する / Detect all monsters it has mind on current panel [詳細] | |
bool | detect_monsters_string (int range, cptr Match) |
該当シンボルのモンスターを感知する / Detect all (string) monsters on current panel [詳細] | |
bool | detect_monsters_xxx (int range, u32b match_flag) |
flags3に対応するモンスターを感知する / A "generic" detect monsters routine, tagged to flags3 [詳細] | |
bool | detect_all (int range) |
全感知処理 / Detect everything [詳細] | |
bool | project_hack (int typ, int dam) |
視界内モンスターに魔法効果を与える / Apply a "project()" directly to all viewable monsters [詳細] | |
bool | speed_monsters (void) |
視界内モンスターを加速する処理 / Speed monsters [詳細] | |
bool | slow_monsters (int power) |
視界内モンスターを加速する処理 / Slow monsters [詳細] | |
bool | sleep_monsters (int power) |
視界内モンスターを眠らせる処理 / Sleep monsters [詳細] | |
bool | banish_evil (int dist) |
視界内の邪悪なモンスターをテレポート・アウェイさせる処理 / Banish evil monsters [詳細] | |
bool | turn_undead (void) |
視界内のアンデッド・モンスターを恐怖させる処理 / Turn undead [詳細] | |
bool | dispel_undead (int dam) |
視界内のアンデッド・モンスターにダメージを与える処理 / Dispel undead monsters [詳細] | |
bool | dispel_evil (int dam) |
視界内の邪悪なモンスターにダメージを与える処理 / Dispel evil monsters [詳細] | |
bool | dispel_good (int dam) |
視界内の善良なモンスターにダメージを与える処理 / Dispel good monsters [詳細] | |
bool | dispel_monsters (int dam) |
視界内のあらゆるモンスターにダメージを与える処理 / Dispel all monsters [詳細] | |
bool | dispel_living (int dam) |
視界内の生命のあるモンスターにダメージを与える処理 / Dispel 'living' monsters [詳細] | |
bool | dispel_demons (int dam) |
視界内の悪魔系モンスターにダメージを与える処理 / Dispel 'living' monsters [詳細] | |
bool | crusade (void) |
視界内のモンスターに「聖戦」効果を与える処理 [詳細] | |
void | aggravate_monsters (int who) |
視界内モンスターを怒らせる処理 / Wake up all monsters, and speed up "los" monsters. [詳細] | |
bool | genocide_aux (int m_idx, int power, bool player_cast, int dam_side, cptr spell_name) |
モンスターへの単体抹殺処理サブルーチン / Delete a non-unique/non-quest monster [詳細] | |
bool | symbol_genocide (int power, bool player_cast) |
モンスターへのシンボル抹殺処理ルーチン / Delete all non-unique/non-quest monsters of a given "type" from the level [詳細] | |
bool | mass_genocide (int power, bool player_cast) |
モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) monsters [詳細] | |
bool | mass_genocide_undead (int power, bool player_cast) |
アンデッド・モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) undead [詳細] | |
bool | probing (void) |
周辺モンスターを調査する / Probe nearby monsters [詳細] | |
bool | destroy_area (int y1, int x1, int r, bool in_generate) |
*破壊*処理を行う / The spell of destruction [詳細] | |
bool | earthquake_aux (int cy, int cx, int r, int m_idx) |
地震処理(サブルーチン) / Induce an "earthquake" of the given radius at the given location. [詳細] | |
bool | earthquake (int cy, int cx, int r) |
地震処理(プレイヤーの中心発動) / Induce an "earthquake" of the given radius at the given location. [詳細] | |
void | discharge_minion (void) |
ペット爆破処理 / [詳細] | |
static void | cave_temp_room_lite (void) |
部屋全体を照らすサブルーチン [詳細] | |
static void | cave_temp_room_unlite (void) |
部屋全体を暗くするサブルーチン [詳細] | |
static int | next_to_open (int cy, int cx, bool(*pass_bold)(int, int)) |
周辺に関数ポインタの条件に該当する地形がいくつあるかを計算する / Determine how much contiguous open space this grid is next to [詳細] | |
static int | next_to_walls_adj (int cy, int cx, bool(*pass_bold)(int, int)) |
周辺に関数ポインタの条件に該当する地形がいくつあるかを計算する / Determine how much contiguous open space this grid is next to [詳細] | |
static void | cave_temp_room_aux (int y, int x, bool only_room, bool(*pass_bold)(int, int)) |
部屋内にある一点の周囲に該当する地形数かいくつあるかをグローバル変数temp_nに返す / Aux function – see below [詳細] | |
static bool | cave_pass_lite_bold (int y, int x) |
指定のマスが光を通すか(LOSフラグを持つか)を返す。 / Aux function – see below [詳細] | |
static void | cave_temp_lite_room_aux (int y, int x) |
部屋内にある一点の周囲がいくつ光を通すかをグローバル変数temp_nに返す / Aux function – see below [詳細] | |
static bool | cave_pass_dark_bold (int y, int x) |
指定のマスが光を通さず射線のみを通すかを返す。 / Aux function – see below [詳細] | |
static void | cave_temp_unlite_room_aux (int y, int x) |
部屋内にある一点の周囲がいくつ射線を通すかをグローバル変数temp_nに返す / Aux function – see below [詳細] | |
void | lite_room (int y1, int x1) |
指定された部屋内を照らす / Illuminate any room containing the given location. [詳細] | |
void | unlite_room (int y1, int x1) |
指定された部屋内を暗くする / Darken all rooms containing the given location [詳細] | |
bool | lite_area (int dam, int rad) |
プレイヤー位置を中心にLITE_WEAK属性を通じた照明処理を行う / Hack – call light around the player Affect all monsters in the projection radius [詳細] | |
bool | unlite_area (int dam, int rad) |
プレイヤー位置を中心にLITE_DARK属性を通じた消灯処理を行う / Hack – call light around the player Affect all monsters in the projection radius [詳細] | |
bool | fire_ball (int typ, int dir, int dam, int rad) |
ボール系スペルの発動 / Cast a ball spell [詳細] | |
bool | fire_rocket (int typ, int dir, int dam, int rad) |
ロケット系スペルの発動(詳細な差は確認中) / Cast a ball spell [詳細] | |
bool | fire_ball_hide (int typ, int dir, int dam, int rad) |
ボール(ハイド)系スペルの発動 / Cast a ball spell [詳細] | |
bool | fire_meteor (int who, int typ, int y, int x, int dam, int rad) |
メテオ系スペルの発動 / Cast a meteor spell [詳細] | |
bool | fire_blast (int typ, int dir, int dd, int ds, int num, int dev) |
ブラスト系スペルの発動 / Cast a blast spell [詳細] | |
bool | teleport_swap (int dir) |
モンスターとの位置交換処理 / Switch position with a monster. [詳細] | |
bool | project_hook (int typ, int dir, int dam, int flg) |
指定方向に飛び道具を飛ばす(フラグ任意指定) / Hack – apply a "projection()" in a direction (or at the target) [詳細] | |
bool | fire_bolt (int typ, int dir, int dam) |
ボルト系スペルの発動 / Cast a bolt spell. [詳細] | |
bool | fire_beam (int typ, int dir, int dam) |
ビーム系スペルの発動 / Cast a beam spell. [詳細] | |
bool | fire_bolt_or_beam (int prob, int typ, int dir, int dam) |
確率に応じたボルト系/ビーム系スペルの発動 / Cast a bolt spell, or rarely, a beam spell. [詳細] | |
bool | lite_line (int dir, int dam) |
LITE_WEAK属性による光源ビーム処理 [詳細] | |
bool | drain_life (int dir, int dam) |
吸血ボルト処理 [詳細] | |
bool | wall_to_mud (int dir, int dam) |
岩石溶解処理 [詳細] | |
bool | wizard_lock (int dir) |
魔法の施錠処理 [詳細] | |
bool | destroy_door (int dir) |
ドア破壊処理 [詳細] | |
bool | disarm_trap (int dir) |
トラップ解除処理 [詳細] | |
bool | heal_monster (int dir, int dam) |
モンスター回復処理 [詳細] | |
bool | speed_monster (int dir, int power) |
モンスター加速処理 [詳細] | |
bool | slow_monster (int dir, int power) |
モンスター減速処理 [詳細] | |
bool | sleep_monster (int dir, int power) |
モンスター催眠処理 [詳細] | |
bool | stasis_monster (int dir) |
モンスター拘束(STASIS)処理 [詳細] | |
bool | stasis_evil (int dir) |
邪悪なモンスター拘束(STASIS)処理 [詳細] | |
bool | confuse_monster (int dir, int plev) |
モンスター混乱処理 [詳細] | |
bool | stun_monster (int dir, int plev) |
モンスター朦朧処理 [詳細] | |
bool | poly_monster (int dir, int power) |
チェンジモンスター処理 [詳細] | |
bool | clone_monster (int dir) |
クローンモンスター処理 [詳細] | |
bool | fear_monster (int dir, int plev) |
モンスター恐慌処理 [詳細] | |
bool | death_ray (int dir, int plev) |
死の光線処理 [詳細] | |
bool | teleport_monster (int dir, int distance) |
モンスター用テレポート処理 [詳細] | |
bool | door_creation (void) |
ドア生成処理(プレイヤー中心に周囲1マス) / Hooks – affect adjacent grids (radius 1 ball attack) [詳細] | |
bool | trap_creation (int y, int x) |
トラップ生成処理(起点から周囲1マス) [詳細] | |
bool | tree_creation (void) |
森林生成処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | glyph_creation (void) |
魔法のルーン生成処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | wall_stone (void) |
壁生成処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | destroy_doors_touch (void) |
ドア破壊処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | disarm_traps_touch (void) |
トラップ解除処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | sleep_monsters_touch (void) |
スリープモンスター処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | animate_dead (int who, int y, int x) |
死者復活処理(起点より周囲5マス) [詳細] | |
void | call_chaos (void) |
混沌招来処理 [詳細] | |
bool | activate_ty_curse (bool stop_ty, int *count) |
TY_CURSE処理発動 / Activate the evil Topi Ylinen curse. [詳細] | |
int | activate_hi_summon (int y, int x, bool can_pet) |
HI_SUMMON(上級召喚)処理発動 [詳細] | |
int | summon_cyber (int who, int y, int x) |
サイバーデーモンの召喚 [詳細] | |
void | wall_breaker (void) |
周辺破壊効果(プレイヤー中心) [詳細] | |
bool | confuse_monsters (int dam) |
パニック・モンスター効果(プレイヤー視界範囲内) / Confuse monsters [詳細] | |
bool | charm_monsters (int dam) |
チャーム・モンスター効果(プレイヤー視界範囲内) / Charm monsters [詳細] | |
bool | charm_animals (int dam) |
動物魅了効果(プレイヤー視界範囲内) / Charm Animals [詳細] | |
bool | stun_monsters (int dam) |
モンスター朦朧効果(プレイヤー視界範囲内) / Stun monsters [詳細] | |
bool | stasis_monsters (int dam) |
モンスター停止効果(プレイヤー視界範囲内) / Stasis monsters [詳細] | |
bool | mindblast_monsters (int dam) |
モンスター精神攻撃効果(プレイヤー視界範囲内) / Mindblast monsters [詳細] | |
bool | banish_monsters (int dist) |
モンスター追放効果(プレイヤー視界範囲内) / Banish all monsters [詳細] | |
bool | turn_evil (int dam) |
邪悪退散効果(プレイヤー視界範囲内) / Turn evil [詳細] | |
bool | turn_monsters (int dam) |
全モンスター退散効果(プレイヤー視界範囲内) / Turn everyone [詳細] | |
bool | deathray_monsters (void) |
死の光線(プレイヤー視界範囲内) / Death-ray all monsters (note: OBSCENELY powerful) [詳細] | |
bool | charm_monster (int dir, int plev) |
チャーム・モンスター(1体) [詳細] | |
bool | control_one_undead (int dir, int plev) |
アンデッド支配(1体) [詳細] | |
bool | control_one_demon (int dir, int plev) |
悪魔支配(1体) [詳細] | |
bool | charm_animal (int dir, int plev) |
動物支配(1体) [詳細] | |
bool | charm_living (int dir, int plev) |
生物支配(1体) [詳細] | |
bool | kawarimi (bool success) |
変わり身処理 [詳細] | |
bool | rush_attack (bool *mdeath) |
入身処理 / "Rush Attack" routine for Samurai or Ninja [詳細] | |
void | remove_all_mirrors (bool explode) |
全鏡の消去 / Remove all mirrors in this floor [詳細] | |
変数 | |
static cptr | report_magic_durations [] |
魔法効果の実装/ Spell code (part 2)
int activate_hi_summon | ( | int | y, |
int | x, | ||
bool | can_pet | ||
) |
HI_SUMMON(上級召喚)処理発動
y | 召喚位置Y座標 |
x | 召喚位置X座標 |
can_pet | プレイヤーのペットとなる可能性があるならばTRUEにする |
TY_CURSE処理発動 / Activate the evil Topi Ylinen curse.
stop_ty | 再帰処理停止フラグ |
count | 発動回数 |
rr9: Stop the nasty things when a Cyberdemon is summoned or the player gets paralyzed.
void aggravate_monsters | ( | int | who | ) |
視界内モンスターを怒らせる処理 / Wake up all monsters, and speed up "los" monsters.
who | 怒らせる原因を起こしたモンスター(0ならばプレイヤー) |
bool animate_dead | ( | int | who, |
int | y, | ||
int | x | ||
) |
死者復活処理(起点より周囲5マス)
who | 術者モンスターID(0ならばプレイやー) |
y | 起点Y座標 |
x | 起点X座標 |
bool banish_evil | ( | int | dist | ) |
視界内の邪悪なモンスターをテレポート・アウェイさせる処理 / Banish evil monsters
bool banish_monsters | ( | int | dist | ) |
モンスター追放効果(プレイヤー視界範囲内) / Banish all monsters
dist | 効力(距離) |
void call_chaos | ( | void | ) |
混沌招来処理
|
static |
指定のマスが光を通さず射線のみを通すかを返す。 / Aux function – see below
y | 指定Y座標 |
x | 指定X座標 |
|
static |
指定のマスが光を通すか(LOSフラグを持つか)を返す。 / Aux function – see below
y | 指定Y座標 |
x | 指定X座標 |
|
static |
部屋内にある一点の周囲がいくつ光を通すかをグローバル変数temp_nに返す / Aux function – see below
y | 指定Y座標 |
x | 指定X座標 |
部屋内にある一点の周囲に該当する地形数かいくつあるかをグローバル変数temp_nに返す / Aux function – see below
y | 部屋内のy座標1点 |
x | 部屋内のx座標1点 |
only_room | 部屋内地形のみをチェック対象にするならば TRUE |
pass_bold | 地形条件を返す関数ポインタ |
|
static |
部屋全体を照らすサブルーチン
This routine clears the entire "temp" set. This routine will Perma-Lite all "temp" grids. This routine is used (only) by "lite_room()" Dark grids are illuminated. Also, process all affected monsters.
SMART monsters always wake up when illuminated NORMAL monsters wake up 1/4 the time when illuminated STUPID monsters wake up 1/10 the time when illuminated
|
static |
部屋全体を暗くするサブルーチン
This routine clears the entire "temp" set. This routine will "darken" all "temp" grids. In addition, some of these grids will be "unmarked". This routine is used (only) by "unlite_room()" Also, process all affected monsters
|
static |
部屋内にある一点の周囲がいくつ射線を通すかをグローバル変数temp_nに返す / Aux function – see below
y | 指定Y座標 |
x | 指定X座標 |
bool charm_animal | ( | int | dir, |
int | plev | ||
) |
動物支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool charm_animals | ( | int | dam | ) |
動物魅了効果(プレイヤー視界範囲内) / Charm Animals
dam | 効力 |
bool charm_living | ( | int | dir, |
int | plev | ||
) |
生物支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool charm_monster | ( | int | dir, |
int | plev | ||
) |
チャーム・モンスター(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool charm_monsters | ( | int | dam | ) |
チャーム・モンスター効果(プレイヤー視界範囲内) / Charm monsters
dam | 効力 |
bool clone_monster | ( | int | dir | ) |
クローンモンスター処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool confuse_monster | ( | int | dir, |
int | plev | ||
) |
モンスター混乱処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(=効力) |
bool confuse_monsters | ( | int | dam | ) |
パニック・モンスター効果(プレイヤー視界範囲内) / Confuse monsters
dam | 効力 |
bool control_one_demon | ( | int | dir, |
int | plev | ||
) |
悪魔支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool control_one_undead | ( | int | dir, |
int | plev | ||
) |
アンデッド支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool crusade | ( | void | ) |
視界内のモンスターに「聖戦」効果を与える処理
bool death_ray | ( | int | dir, |
int | plev | ||
) |
死の光線処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(効力はplev*200) |
bool deathray_monsters | ( | void | ) |
死の光線(プレイヤー視界範囲内) / Death-ray all monsters (note: OBSCENELY powerful)
*破壊*処理を行う / The spell of destruction
y1 | 破壊の中心Y座標 |
x1 | 破壊の中心X座標 |
r | 破壊の半径 |
in_generate | ダンジョンフロア生成中の処理ならばTRUE |
This spell "deletes" monsters (instead of "killing" them).
Later we may use one function for both "destruction" and "earthquake" by using the "full" to select "destruction".
bool destroy_door | ( | int | dir | ) |
ドア破壊処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool destroy_doors_touch | ( | void | ) |
ドア破壊処理(プレイヤー中心に周囲1マス)
bool detect_all | ( | int | range | ) |
全感知処理 / Detect everything
range | 効果範囲 |
bool detect_doors | ( | int | range | ) |
プレイヤー周辺のドアを感知する / Detect all doors on current panel
range | 効果範囲 |
プレイヤー周辺の地形を感知する
range | 効果範囲 |
flag | 特定地形ID |
known | 地形から危険フラグを外すならTRUE |
bool detect_monsters_evil | ( | int | range | ) |
邪悪なモンスターを感知する / Detect all "evil" monsters on current panel
range | 効果範囲 |
bool detect_monsters_invis | ( | int | range | ) |
不可視のモンスターを感知する / Detect all "invisible" monsters around the player
range | 効果範囲 |
bool detect_monsters_mind | ( | int | range | ) |
精神のあるモンスターを感知する / Detect all monsters it has mind on current panel
range | 効果範囲 |
bool detect_monsters_nonliving | ( | int | range | ) |
無生命のモンスターを感知する(アンデッド、悪魔系を含む) / Detect all "nonliving", "undead" or "demonic" monsters on current panel
range | 効果範囲 |
bool detect_monsters_normal | ( | int | range | ) |
一般のモンスターを感知する / Detect all "normal" monsters on the current panel
range | 効果範囲 |
該当シンボルのモンスターを感知する / Detect all (string) monsters on current panel
range | 効果範囲 |
Match | 対応シンボルの混じったモンスター文字列(複数指定化) |
flags3に対応するモンスターを感知する / A "generic" detect monsters routine, tagged to flags3
range | 効果範囲 |
match_flag | 感知フラグ |
bool detect_objects_gold | ( | int | range | ) |
プレイヤー周辺のアイテム財宝を感知する / Detect all "gold" objects on the current panel
range | 効果範囲 |
bool detect_objects_magic | ( | int | range | ) |
魔法効果のあるのアイテムオブジェクトを感知する / Detect all "magic" objects on the current panel.
range | 効果範囲 |
This will light up all spaces with "magic" items, including artifacts, ego-items, potions, scrolls, books, rods, wands, staves, amulets, rings, and "enchanted" items of the "good" variety.
It can probably be argued that this function is now too powerful.
bool detect_objects_normal | ( | int | range | ) |
通常のアイテムオブジェクトを感知する / Detect all "normal" objects on the current panel
range | 効果範囲 |
bool detect_stairs | ( | int | range | ) |
プレイヤー周辺の階段を感知する / Detect all stairs on current panel
range | 効果範囲 |
プレイヤー周辺のトラップを感知する / Detect all traps on current panel
range | 効果範囲 |
known | 感知外範囲を超える警告フラグを立てる場合TRUEを返す |
bool detect_treasure | ( | int | range | ) |
プレイヤー周辺の地形財宝を感知する / Detect any treasure on the current panel
range | 効果範囲 |
bool disarm_trap | ( | int | dir | ) |
トラップ解除処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool disarm_traps_touch | ( | void | ) |
トラップ解除処理(プレイヤー中心に周囲1マス)
void discharge_minion | ( | void | ) |
ペット爆破処理 /
bool dispel_demons | ( | int | dam | ) |
視界内の悪魔系モンスターにダメージを与える処理 / Dispel 'living' monsters
bool dispel_evil | ( | int | dam | ) |
視界内の邪悪なモンスターにダメージを与える処理 / Dispel evil monsters
bool dispel_good | ( | int | dam | ) |
視界内の善良なモンスターにダメージを与える処理 / Dispel good monsters
bool dispel_living | ( | int | dam | ) |
視界内の生命のあるモンスターにダメージを与える処理 / Dispel 'living' monsters
bool dispel_monsters | ( | int | dam | ) |
視界内のあらゆるモンスターにダメージを与える処理 / Dispel all monsters
bool dispel_undead | ( | int | dam | ) |
視界内のアンデッド・モンスターにダメージを与える処理 / Dispel undead monsters
bool door_creation | ( | void | ) |
ドア生成処理(プレイヤー中心に周囲1マス) / Hooks – affect adjacent grids (radius 1 ball attack)
bool drain_life | ( | int | dir, |
int | dam | ||
) |
吸血ボルト処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
bool earthquake | ( | int | cy, |
int | cx, | ||
int | r | ||
) |
地震処理(プレイヤーの中心発動) / Induce an "earthquake" of the given radius at the given location.
cy | 中心Y座標 |
cx | 中心X座標 |
r | 効果半径 |
bool earthquake_aux | ( | int | cy, |
int | cx, | ||
int | r, | ||
int | m_idx | ||
) |
地震処理(サブルーチン) / Induce an "earthquake" of the given radius at the given location.
cy | 中心Y座標 |
cx | 中心X座標 |
r | 効果半径 |
m_idx | 地震を起こしたモンスターID(0ならばプレイヤー) |
This will turn some walls into floors and some floors into walls.
The player will take damage and "jump" into a safe grid if possible, otherwise, he will "tunnel" through the rubble instantaneously.
Monsters will take damage, and "jump" into a safe grid if possible, otherwise they will be "buried" in the rubble, disappearing from the level in the same way that they do when genocided.
Note that thus the player and monsters (except eaters of walls and passers through walls) will never occupy the same grid as a wall. Note that as of now (2.7.8) no monster may occupy a "wall" grid, even for a single turn, unless that monster can pass_walls or kill_walls. This has allowed massive simplification of the "monster" code.
bool fear_monster | ( | int | dir, |
int | plev | ||
) |
モンスター恐慌処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(=効力) |
bool fire_ball | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | rad | ||
) |
ボール系スペルの発動 / Cast a ball spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
rad | 半径 |
Stop if we hit a monster, act as a "ball" Allow "target" mode to pass over monsters Affect grids, objects, and monsters
bool fire_ball_hide | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | rad | ||
) |
ボール(ハイド)系スペルの発動 / Cast a ball spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
rad | 半径 |
Stop if we hit a monster, act as a "ball" Allow "target" mode to pass over monsters Affect grids, objects, and monsters
bool fire_beam | ( | int | typ, |
int | dir, | ||
int | dam | ||
) |
ビーム系スペルの発動 / Cast a beam spell.
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
Pass through monsters, as a "beam". Affect monsters, grids and objects.
bool fire_blast | ( | int | typ, |
int | dir, | ||
int | dd, | ||
int | ds, | ||
int | num, | ||
int | dev | ||
) |
ブラスト系スペルの発動 / Cast a blast spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dd | 威力ダイス数 |
ds | 威力ダイス目 |
num | 基本回数 |
dev | 回数分散 |
bool fire_bolt | ( | int | typ, |
int | dir, | ||
int | dam | ||
) |
ボルト系スペルの発動 / Cast a bolt spell.
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
Stop if we hit a monster, as a "bolt". Affect monsters and grids (not objects).
bool fire_bolt_or_beam | ( | int | prob, |
int | typ, | ||
int | dir, | ||
int | dam | ||
) |
確率に応じたボルト系/ビーム系スペルの発動 / Cast a bolt spell, or rarely, a beam spell.
prob | ビーム化する確率(%) |
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
Pass through monsters, as a "beam". Affect monsters, grids and objects.
bool fire_meteor | ( | int | who, |
int | typ, | ||
int | y, | ||
int | x, | ||
int | dam, | ||
int | rad | ||
) |
メテオ系スペルの発動 / Cast a meteor spell
who | スぺル詠唱者のモンスターID(0=プレイヤー) |
typ | 効果属性 |
dam | 威力 |
rad | 半径 |
y | 中心点Y座標 |
x | 中心点X座標 |
Cast a meteor spell, defined as a ball spell cast by an arbitary monster, player, or outside source, that starts out at an arbitrary location, and leaving no trail from the "caster" to the target. This function is especially useful for bombardments and similar. -LM- Option to hurt the player.
bool fire_rocket | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | rad | ||
) |
ロケット系スペルの発動(詳細な差は確認中) / Cast a ball spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
rad | 半径 |
Stop if we hit a monster, act as a "ball" Allow "target" mode to pass over monsters Affect grids, objects, and monsters
モンスターへの単体抹殺処理サブルーチン / Delete a non-unique/non-quest monster
m_idx | 抹殺するモンスターID |
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
dam_side | プレイヤーへの負担ダメージ量(1d(dam_side)) |
spell_name | 抹殺効果を起こした魔法の名前 |
bool glyph_creation | ( | void | ) |
魔法のルーン生成処理(プレイヤー中心に周囲1マス)
bool heal_monster | ( | int | dir, |
int | dam | ||
) |
モンスター回復処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
変わり身処理
success | 判定成功上の処理ならばTRUE |
bool lite_area | ( | int | dam, |
int | rad | ||
) |
プレイヤー位置を中心にLITE_WEAK属性を通じた照明処理を行う / Hack – call light around the player Affect all monsters in the projection radius
dam | 威力 |
rad | 効果半径 |
bool lite_line | ( | int | dir, |
int | dam | ||
) |
LITE_WEAK属性による光源ビーム処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
void lite_room | ( | int | y1, |
int | x1 | ||
) |
指定された部屋内を照らす / Illuminate any room containing the given location.
y1 | 指定Y座標 |
x1 | 指定X座標 |
モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) monsters
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
アンデッド・モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) undead
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
bool mindblast_monsters | ( | int | dam | ) |
モンスター精神攻撃効果(プレイヤー視界範囲内) / Mindblast monsters
dam | 効力 |
|
static |
周辺に関数ポインタの条件に該当する地形がいくつあるかを計算する / Determine how much contiguous open space this grid is next to
cy | Y座標 |
cx | X座標 |
pass_bold | 地形条件を返す関数ポインタ |
|
static |
周辺に関数ポインタの条件に該当する地形がいくつあるかを計算する / Determine how much contiguous open space this grid is next to
cy | Y座標 |
cx | X座標 |
pass_bold | 地形条件を返す関数ポインタ |
bool poly_monster | ( | int | dir, |
int | power | ||
) |
チェンジモンスター処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool probing | ( | void | ) |
周辺モンスターを調査する / Probe nearby monsters
bool project_hack | ( | int | typ, |
int | dam | ||
) |
視界内モンスターに魔法効果を与える / Apply a "project()" directly to all viewable monsters
typ | 属性効果 |
dam | 効果量 |
Note that affected monsters are NOT auto-tracked by this usage.
To avoid misbehavior when monster deaths have side-effects, this is done in two passes. – JDL
bool project_hook | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | flg | ||
) |
指定方向に飛び道具を飛ばす(フラグ任意指定) / Hack – apply a "projection()" in a direction (or at the target)
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
flg | フラグ |
void remove_all_mirrors | ( | bool | explode | ) |
全鏡の消去 / Remove all mirrors in this floor
explode | 爆発処理を伴うならばTRUE |
void report_magics | ( | void | ) |
現在の一時的効果一覧を返す / Report all currently active magical effects.
|
static |
魔法効果時間のターン数に基づいて表現IDを返す。
dur | 効果ターン数 |
入身処理 / "Rush Attack" routine for Samurai or Ninja
mdeath | 目標モンスターが死亡したかを返す |
void self_knowledge | ( | void | ) |
自己分析処理(Nethackからのアイデア) / self-knowledge...
idea from nethack.
Useful for determining powers and resistences of items. It saves the screen, clears it, then starts listing attributes, a screenful at a time. (There are a LOT of attributes to list. It will probably take 2 or 3 screens for a powerful character whose using several artifacts...) -CFT
It is now a lot more efficient. -BEN-
See also "identify_fully()".
XXX XXX XXX Use the "show_file()" method, perhaps.
bool sleep_monster | ( | int | dir, |
int | power | ||
) |
モンスター催眠処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool sleep_monsters | ( | int | power | ) |
視界内モンスターを眠らせる処理 / Sleep monsters
bool sleep_monsters_touch | ( | void | ) |
スリープモンスター処理(プレイヤー中心に周囲1マス)
bool slow_monster | ( | int | dir, |
int | power | ||
) |
モンスター減速処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool slow_monsters | ( | int | power | ) |
視界内モンスターを加速する処理 / Slow monsters
bool speed_monster | ( | int | dir, |
int | power | ||
) |
モンスター加速処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool speed_monsters | ( | void | ) |
視界内モンスターを加速する処理 / Speed monsters
bool stasis_evil | ( | int | dir | ) |
邪悪なモンスター拘束(STASIS)処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
威力はプレイヤーレベル*2に固定
bool stasis_monster | ( | int | dir | ) |
モンスター拘束(STASIS)処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
威力はプレイヤーレベル*2に固定
bool stasis_monsters | ( | int | dam | ) |
モンスター停止効果(プレイヤー視界範囲内) / Stasis monsters
dam | 効力 |
bool stun_monster | ( | int | dir, |
int | plev | ||
) |
モンスター朦朧処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(=効力) |
bool stun_monsters | ( | int | dam | ) |
モンスター朦朧効果(プレイヤー視界範囲内) / Stun monsters
dam | 効力 |
int summon_cyber | ( | int | who, |
int | y, | ||
int | x | ||
) |
サイバーデーモンの召喚
who | 召喚主のモンスターID(0ならばプレイヤー) |
y | 召喚位置Y座標 |
x | 召喚位置X座標 |
モンスターへのシンボル抹殺処理ルーチン / Delete all non-unique/non-quest monsters of a given "type" from the level
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
bool teleport_monster | ( | int | dir, |
int | distance | ||
) |
モンスター用テレポート処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
distance | 移動距離 |
bool teleport_swap | ( | int | dir | ) |
モンスターとの位置交換処理 / Switch position with a monster.
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool trap_creation | ( | int | y, |
int | x | ||
) |
トラップ生成処理(起点から周囲1マス)
y | 起点Y座標 |
x | 起点X座標 |
bool tree_creation | ( | void | ) |
森林生成処理(プレイヤー中心に周囲1マス)
bool turn_evil | ( | int | dam | ) |
邪悪退散効果(プレイヤー視界範囲内) / Turn evil
dam | 効力 |
bool turn_monsters | ( | int | dam | ) |
全モンスター退散効果(プレイヤー視界範囲内) / Turn everyone
dam | 効力 |
bool turn_undead | ( | void | ) |
視界内のアンデッド・モンスターを恐怖させる処理 / Turn undead
bool unlite_area | ( | int | dam, |
int | rad | ||
) |
プレイヤー位置を中心にLITE_DARK属性を通じた消灯処理を行う / Hack – call light around the player Affect all monsters in the projection radius
dam | 威力 |
rad | 効果半径 |
void unlite_room | ( | int | y1, |
int | x1 | ||
) |
指定された部屋内を暗くする / Darken all rooms containing the given location
y1 | 指定Y座標 |
x1 | 指定X座標 |
void wall_breaker | ( | void | ) |
周辺破壊効果(プレイヤー中心)
bool wall_stone | ( | void | ) |
壁生成処理(プレイヤー中心に周囲1マス)
bool wall_to_mud | ( | int | dir, |
int | dam | ||
) |
岩石溶解処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
bool wizard_lock | ( | int | dir | ) |
魔法の施錠処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
|
static |