X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Ftables.c;h=e46071825b4f5ac0d6bb9e62f38874cf555d5f6e;hb=refs%2Fheads%2Fmaster;hp=8054fa604d5386ef1b573c48fd31f4b6df49994d;hpb=628198121ab9c54dcffb6a1d83dae10cf3dcdd7f;p=hengband%2Fhengband.git diff --git a/src/tables.c b/src/tables.c deleted file mode 100644 index 8054fa604..000000000 --- a/src/tables.c +++ /dev/null @@ -1,4111 +0,0 @@ -/*! - * @file tables.c - * @brief ゲーム情報テーブル / Angband Tables - * @date 2014/07/23 - * @author - *
- * Copyright (c) 1997 Ben Harrison, James E. Wilson, Robert A. Koeneke
- * This software may be copied and distributed for educational, research,
- * and not for profit purposes provided that this copyright and statement
- * are included in all such copies.  Other copyrights may also apply.
- * 
- */ - - -#include "angband.h" -#include "spells.h" - -/*! - * キーパッドの方向を南から反時計回り順に列挙 / Global array for looping through the "keypad directions" - */ -const POSITION ddd[9] = -{ 2, 8, 6, 4, 3, 1, 9, 7, 5 }; - -/*! - * dddで定義した順にベクトルのX軸成分を定義 / Global arrays for converting "keypad direction" into offsets - */ -const POSITION ddx[10] = -{ 0, -1, 0, 1, -1, 0, 1, -1, 0, 1 }; - -/*! - * dddで定義した順にベクトルのY軸成分を定義 / Global arrays for converting "keypad direction" into offsets - */ -const POSITION ddy[10] = -{ 0, 1, 1, 1, 0, 0, 0, -1, -1, -1 }; - -/*! - * ddd越しにベクトルのX軸成分を定義 / Global arrays for optimizing "ddx[ddd[i]]" and "ddy[ddd[i]]" - */ -const POSITION ddx_ddd[9] = -{ 0, 0, 1, -1, 1, -1, 1, -1, 0 }; - -/*! - * ddd越しにベクトルのY軸成分を定義 / Global arrays for optimizing "ddx[ddd[i]]" and "ddy[ddd[i]]" - */ -const POSITION ddy_ddd[9] = -{ 1, -1, 0, 0, 1, 1, -1, -1, 0 }; - - -/*! - * キーパッドの円環状方向配列 / Circular keypad direction array - */ -const POSITION cdd[8] = -{ 2, 3, 6, 9, 8, 7, 4, 1 }; - -/*! - * cdd越しにベクトルのX軸成分を定義 / Global arrays for optimizing "ddx[cdd[i]]" and "ddy[cdd[i]]" - */ -const POSITION ddx_cdd[8] = -{ 0, 1, 1, 1, 0, -1, -1, -1 }; - -/*! - * cdd越しにベクトルのY軸成分を定義 / Global arrays for optimizing "ddx[cdd[i]]" and "ddy[cdd[i]]" - */ -const POSITION ddy_cdd[8] = -{ 1, 1, 0, -1, -1, -1, 0, 1 }; - - - -/*! - * 10進数から16進数への変換テーブル / - * Global array for converting numbers to uppercase hecidecimal digit - * This array can also be used to convert a number to an octal digit - */ -const char hexsym[16] = -{ - '0', '1', '2', '3', '4', '5', '6', '7', - '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' -}; - - -/*! - * 選択処理用キーコード / - * Global array for converting numbers to a logical list symbol - */ -const char listsym[] = -{ - '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', - 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', - 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', - 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', - 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', - '\0' -}; - - -/*! - * スクリーン表示色キャラクタ / - * Encode the screen colors - */ -const concptr color_char = "dwsorgbuDWvyRGBU"; - - -/*! - * 知力/賢さによるレベル毎の習得可能魔法数テーブル - * Stat Table (INT/WIS) -- Number of half-spells per level - */ -const byte adj_mag_study[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 1 /* 8 */, - 1 /* 9 */, - 1 /* 10 */, - 1 /* 11 */, - 2 /* 12 */, - 2 /* 13 */, - 2 /* 14 */, - 2 /* 15 */, - 2 /* 16 */, - 2 /* 17 */, - 2 /* 18/00-18/09 */, - 2 /* 18/10-18/19 */, - 2 /* 18/20-18/29 */, - 2 /* 18/30-18/39 */, - 2 /* 18/40-18/49 */, - 3 /* 18/50-18/59 */, - 3 /* 18/60-18/69 */, - 3 /* 18/70-18/79 */, - 3 /* 18/80-18/89 */, - 4 /* 18/90-18/99 */, - 4 /* 18/100-18/109 */, - 4 /* 18/110-18/119 */, - 5 /* 18/120-18/129 */, - 5 /* 18/130-18/139 */, - 5 /* 18/140-18/149 */, - 5 /* 18/150-18/159 */, - 5 /* 18/160-18/169 */, - 5 /* 18/170-18/179 */, - 5 /* 18/180-18/189 */, - 5 /* 18/190-18/199 */, - 5 /* 18/200-18/209 */, - 6 /* 18/210-18/219 */, - 6 /* 18/220+ */ -}; - - -/*! - * 知力/賢さによるMP修正テーブル - * Stat Table (INT/WIS) -- extra 1/4-mana-points per level - */ -const byte adj_mag_mana[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 1 /* 8 */, - 2 /* 9 */, - 3 /* 10 */, - 4 /* 11 */, - 5 /* 12 */, - 5 /* 13 */, - 6 /* 14 */, - 7 /* 15 */, - 8 /* 16 */, - 9 /* 17 */, - 10 /* 18/00-18/09 */, - 11 /* 18/10-18/19 */, - 11 /* 18/20-18/29 */, - 12 /* 18/30-18/39 */, - 12 /* 18/40-18/49 */, - 13 /* 18/50-18/59 */, - 14 /* 18/60-18/69 */, - 15 /* 18/70-18/79 */, - 16 /* 18/80-18/89 */, - 17 /* 18/90-18/99 */, - 18 /* 18/100-18/109 */, - 19 /* 18/110-18/119 */, - 20 /* 18/120-18/129 */, - 21 /* 18/130-18/139 */, - 22 /* 18/140-18/149 */, - 23 /* 18/150-18/159 */, - 24 /* 18/160-18/169 */, - 25 /* 18/170-18/179 */, - 26 /* 18/180-18/189 */, - 27 /* 18/190-18/199 */, - 28 /* 18/200-18/209 */, - 29 /* 18/210-18/219 */, - 30 /* 18/220+ */ -}; - - -/*! - * 知力/賢さによる最低魔法失敗率テーブル - * Stat Table (INT/WIS) -- Minimum failure rate (percentage) - */ -const byte adj_mag_fail[] = -{ - 99 /* 3 */, - 99 /* 4 */, - 99 /* 5 */, - 99 /* 6 */, - 99 /* 7 */, - 50 /* 8 */, - 30 /* 9 */, - 20 /* 10 */, - 15 /* 11 */, - 12 /* 12 */, - 11 /* 13 */, - 10 /* 14 */, - 9 /* 15 */, - 8 /* 16 */, - 7 /* 17 */, - 6 /* 18/00-18/09 */, - 6 /* 18/10-18/19 */, - 5 /* 18/20-18/29 */, - 5 /* 18/30-18/39 */, - 5 /* 18/40-18/49 */, - 4 /* 18/50-18/59 */, - 4 /* 18/60-18/69 */, - 4 /* 18/70-18/79 */, - 4 /* 18/80-18/89 */, - 3 /* 18/90-18/99 */, - 3 /* 18/100-18/109 */, - 2 /* 18/110-18/119 */, - 2 /* 18/120-18/129 */, - 2 /* 18/130-18/139 */, - 2 /* 18/140-18/149 */, - 1 /* 18/150-18/159 */, - 1 /* 18/160-18/169 */, - 1 /* 18/170-18/179 */, - 1 /* 18/180-18/189 */, - 1 /* 18/190-18/199 */, - 0 /* 18/200-18/209 */, - 0 /* 18/210-18/219 */, - 0 /* 18/220+ */ -}; - - -/*! - * 知力/賢さによる魔法失敗率修正テーブル - * Stat Table (INT/WIS) -- Various things - */ -const byte adj_mag_stat[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 1 /* 8 */, - 1 /* 9 */, - 1 /* 10 */, - 1 /* 11 */, - 1 /* 12 */, - 1 /* 13 */, - 1 /* 14 */, - 2 /* 15 */, - 2 /* 16 */, - 2 /* 17 */, - 3 /* 18/00-18/09 */, - 3 /* 18/10-18/19 */, - 3 /* 18/20-18/29 */, - 3 /* 18/30-18/39 */, - 3 /* 18/40-18/49 */, - 4 /* 18/50-18/59 */, - 4 /* 18/60-18/69 */, - 5 /* 18/70-18/79 */, - 6 /* 18/80-18/89 */, - 7 /* 18/90-18/99 */, - 8 /* 18/100-18/109 */, - 9 /* 18/110-18/119 */, - 10 /* 18/120-18/129 */, - 11 /* 18/130-18/139 */, - 12 /* 18/140-18/149 */, - 13 /* 18/150-18/159 */, - 14 /* 18/160-18/169 */, - 15 /* 18/170-18/179 */, - 16 /* 18/180-18/189 */, - 17 /* 18/190-18/199 */, - 18 /* 18/200-18/209 */, - 19 /* 18/210-18/219 */, - 20 /* 18/220+ */ -}; - - -/*! - * 魅力による店での取引修正テーブル - * Stat Table (CHR) -- payment percentages - */ -const byte adj_chr_gold[] = -{ - 130 /* 3 */, - 125 /* 4 */, - 122 /* 5 */, - 120 /* 6 */, - 118 /* 7 */, - 116 /* 8 */, - 114 /* 9 */, - 112 /* 10 */, - 110 /* 11 */, - 108 /* 12 */, - 106 /* 13 */, - 104 /* 14 */, - 103 /* 15 */, - 102 /* 16 */, - 101 /* 17 */, - 100 /* 18/00-18/09 */, - 99 /* 18/10-18/19 */, - 98 /* 18/20-18/29 */, - 97 /* 18/30-18/39 */, - 96 /* 18/40-18/49 */, - 95 /* 18/50-18/59 */, - 94 /* 18/60-18/69 */, - 93 /* 18/70-18/79 */, - 92 /* 18/80-18/89 */, - 91 /* 18/90-18/99 */, - 90 /* 18/100-18/109 */, - 89 /* 18/110-18/119 */, - 88 /* 18/120-18/129 */, - 87 /* 18/130-18/139 */, - 86 /* 18/140-18/149 */, - 85 /* 18/150-18/159 */, - 84 /* 18/160-18/169 */, - 83 /* 18/170-18/179 */, - 82 /* 18/180-18/189 */, - 81 /* 18/190-18/199 */, - 80 /* 18/200-18/209 */, - 79 /* 18/210-18/219 */, - 78 /* 18/220+ */ -}; - - -/*! - * 知力による魔道具使用修正テーブル - * Stat Table (INT) -- Magic devices - */ -const byte adj_int_dev[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 1 /* 8 */, - 1 /* 9 */, - 1 /* 10 */, - 1 /* 11 */, - 1 /* 12 */, - 1 /* 13 */, - 1 /* 14 */, - 2 /* 15 */, - 2 /* 16 */, - 2 /* 17 */, - 3 /* 18/00-18/09 */, - 3 /* 18/10-18/19 */, - 4 /* 18/20-18/29 */, - 4 /* 18/30-18/39 */, - 5 /* 18/40-18/49 */, - 5 /* 18/50-18/59 */, - 6 /* 18/60-18/69 */, - 6 /* 18/70-18/79 */, - 7 /* 18/80-18/89 */, - 7 /* 18/90-18/99 */, - 8 /* 18/100-18/109 */, - 9 /* 18/110-18/119 */, - 10 /* 18/120-18/129 */, - 11 /* 18/130-18/139 */, - 12 /* 18/140-18/149 */, - 13 /* 18/150-18/159 */, - 14 /* 18/160-18/169 */, - 15 /* 18/170-18/179 */, - 16 /* 18/180-18/189 */, - 17 /* 18/190-18/199 */, - 18 /* 18/200-18/209 */, - 19 /* 18/210-18/219 */, - 20 /* 18/220+ */ -}; - - -/*! - * 賢さによる魔法防御修正テーブル - * Stat Table (WIS) -- Saving throw - */ -const byte adj_wis_sav[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 1 /* 8 */, - 1 /* 9 */, - 1 /* 10 */, - 1 /* 11 */, - 1 /* 12 */, - 1 /* 13 */, - 1 /* 14 */, - 2 /* 15 */, - 2 /* 16 */, - 2 /* 17 */, - 3 /* 18/00-18/09 */, - 3 /* 18/10-18/19 */, - 3 /* 18/20-18/29 */, - 3 /* 18/30-18/39 */, - 3 /* 18/40-18/49 */, - 4 /* 18/50-18/59 */, - 4 /* 18/60-18/69 */, - 5 /* 18/70-18/79 */, - 5 /* 18/80-18/89 */, - 6 /* 18/90-18/99 */, - 7 /* 18/100-18/109 */, - 8 /* 18/110-18/119 */, - 9 /* 18/120-18/129 */, - 10 /* 18/130-18/139 */, - 11 /* 18/140-18/149 */, - 12 /* 18/150-18/159 */, - 13 /* 18/160-18/169 */, - 14 /* 18/170-18/179 */, - 15 /* 18/180-18/189 */, - 16 /* 18/190-18/199 */, - 17 /* 18/200-18/209 */, - 18 /* 18/210-18/219 */, - 19 /* 18/220+ */ -}; - - -/*! - * 器用さによるトラップ解除修正テーブル - * Stat Table (DEX) -- disarming - */ -const byte adj_dex_dis[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 0 /* 8 */, - 0 /* 9 */, - 0 /* 10 */, - 0 /* 11 */, - 0 /* 12 */, - 1 /* 13 */, - 1 /* 14 */, - 1 /* 15 */, - 2 /* 16 */, - 2 /* 17 */, - 4 /* 18/00-18/09 */, - 4 /* 18/10-18/19 */, - 4 /* 18/20-18/29 */, - 4 /* 18/30-18/39 */, - 5 /* 18/40-18/49 */, - 5 /* 18/50-18/59 */, - 5 /* 18/60-18/69 */, - 6 /* 18/70-18/79 */, - 6 /* 18/80-18/89 */, - 7 /* 18/90-18/99 */, - 8 /* 18/100-18/109 */, - 8 /* 18/110-18/119 */, - 8 /* 18/120-18/129 */, - 8 /* 18/130-18/139 */, - 8 /* 18/140-18/149 */, - 9 /* 18/150-18/159 */, - 9 /* 18/160-18/169 */, - 9 /* 18/170-18/179 */, - 9 /* 18/180-18/189 */, - 9 /* 18/190-18/199 */, - 10 /* 18/200-18/209 */, - 10 /* 18/210-18/219 */, - 10 /* 18/220+ */ -}; - - -/*! - * 知力によるトラップ解除修正テーブル - * Stat Table (INT) -- disarming - */ -const byte adj_int_dis[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 1 /* 8 */, - 1 /* 9 */, - 1 /* 10 */, - 1 /* 11 */, - 1 /* 12 */, - 1 /* 13 */, - 1 /* 14 */, - 2 /* 15 */, - 2 /* 16 */, - 2 /* 17 */, - 3 /* 18/00-18/09 */, - 3 /* 18/10-18/19 */, - 3 /* 18/20-18/29 */, - 4 /* 18/30-18/39 */, - 4 /* 18/40-18/49 */, - 5 /* 18/50-18/59 */, - 6 /* 18/60-18/69 */, - 7 /* 18/70-18/79 */, - 8 /* 18/80-18/89 */, - 9 /* 18/90-18/99 */, - 10 /* 18/100-18/109 */, - 10 /* 18/110-18/119 */, - 11 /* 18/120-18/129 */, - 12 /* 18/130-18/139 */, - 13 /* 18/140-18/149 */, - 14 /* 18/150-18/159 */, - 15 /* 18/160-18/169 */, - 16 /* 18/170-18/179 */, - 17 /* 18/180-18/189 */, - 18 /* 18/190-18/199 */, - 19 /* 18/200-18/209 */, - 19 /* 18/210-18/219 */, - 20 /* 18/220+ */ -}; - - -/*! - * 器用さによるAC修正テーブル - * Stat Table (DEX) -- bonus to ac (plus 128) - */ -const byte adj_dex_ta[] = -{ - 128 + -4 /* 3 */, - 128 + -3 /* 4 */, - 128 + -2 /* 5 */, - 128 + -1 /* 6 */, - 128 + 0 /* 7 */, - 128 + 0 /* 8 */, - 128 + 0 /* 9 */, - 128 + 0 /* 10 */, - 128 + 0 /* 11 */, - 128 + 0 /* 12 */, - 128 + 0 /* 13 */, - 128 + 0 /* 14 */, - 128 + 1 /* 15 */, - 128 + 1 /* 16 */, - 128 + 1 /* 17 */, - 128 + 2 /* 18/00-18/09 */, - 128 + 2 /* 18/10-18/19 */, - 128 + 2 /* 18/20-18/29 */, - 128 + 2 /* 18/30-18/39 */, - 128 + 2 /* 18/40-18/49 */, - 128 + 3 /* 18/50-18/59 */, - 128 + 3 /* 18/60-18/69 */, - 128 + 3 /* 18/70-18/79 */, - 128 + 4 /* 18/80-18/89 */, - 128 + 5 /* 18/90-18/99 */, - 128 + 6 /* 18/100-18/109 */, - 128 + 7 /* 18/110-18/119 */, - 128 + 8 /* 18/120-18/129 */, - 128 + 9 /* 18/130-18/139 */, - 128 + 9 /* 18/140-18/149 */, - 128 + 10 /* 18/150-18/159 */, - 128 + 11 /* 18/160-18/169 */, - 128 + 12 /* 18/170-18/179 */, - 128 + 13 /* 18/180-18/189 */, - 128 + 14 /* 18/190-18/199 */, - 128 + 15 /* 18/200-18/209 */, - 128 + 15 /* 18/210-18/219 */, - 128 + 16 /* 18/220+ */ -}; - - -/*! - * 腕力によるダメージ修正テーブル - * Stat Table (STR) -- bonus to dam (plus 128) - */ -const byte adj_str_td[] = -{ - 128 + -2 /* 3 */, - 128 + -2 /* 4 */, - 128 + -1 /* 5 */, - 128 + -1 /* 6 */, - 128 + 0 /* 7 */, - 128 + 0 /* 8 */, - 128 + 0 /* 9 */, - 128 + 0 /* 10 */, - 128 + 0 /* 11 */, - 128 + 0 /* 12 */, - 128 + 0 /* 13 */, - 128 + 0 /* 14 */, - 128 + 0 /* 15 */, - 128 + 1 /* 16 */, - 128 + 2 /* 17 */, - 128 + 2 /* 18/00-18/09 */, - 128 + 2 /* 18/10-18/19 */, - 128 + 3 /* 18/20-18/29 */, - 128 + 3 /* 18/30-18/39 */, - 128 + 3 /* 18/40-18/49 */, - 128 + 3 /* 18/50-18/59 */, - 128 + 3 /* 18/60-18/69 */, - 128 + 4 /* 18/70-18/79 */, - 128 + 5 /* 18/80-18/89 */, - 128 + 5 /* 18/90-18/99 */, - 128 + 6 /* 18/100-18/109 */, - 128 + 7 /* 18/110-18/119 */, - 128 + 8 /* 18/120-18/129 */, - 128 + 9 /* 18/130-18/139 */, - 128 + 10 /* 18/140-18/149 */, - 128 + 11 /* 18/150-18/159 */, - 128 + 12 /* 18/160-18/169 */, - 128 + 13 /* 18/170-18/179 */, - 128 + 14 /* 18/180-18/189 */, - 128 + 15 /* 18/190-18/199 */, - 128 + 16 /* 18/200-18/209 */, - 128 + 18 /* 18/210-18/219 */, - 128 + 20 /* 18/220+ */ -}; - - -/*! - * 器用度による命中修正テーブル - * Stat Table (DEX) -- bonus to hit (plus 128) - */ -const byte adj_dex_th[] = -{ - 128 + -3 /* 3 */, - 128 + -2 /* 4 */, - 128 + -2 /* 5 */, - 128 + -1 /* 6 */, - 128 + -1 /* 7 */, - 128 + 0 /* 8 */, - 128 + 0 /* 9 */, - 128 + 0 /* 10 */, - 128 + 0 /* 11 */, - 128 + 0 /* 12 */, - 128 + 0 /* 13 */, - 128 + 0 /* 14 */, - 128 + 0 /* 15 */, - 128 + 1 /* 16 */, - 128 + 2 /* 17 */, - 128 + 3 /* 18/00-18/09 */, - 128 + 3 /* 18/10-18/19 */, - 128 + 3 /* 18/20-18/29 */, - 128 + 3 /* 18/30-18/39 */, - 128 + 3 /* 18/40-18/49 */, - 128 + 4 /* 18/50-18/59 */, - 128 + 4 /* 18/60-18/69 */, - 128 + 4 /* 18/70-18/79 */, - 128 + 4 /* 18/80-18/89 */, - 128 + 5 /* 18/90-18/99 */, - 128 + 6 /* 18/100-18/109 */, - 128 + 7 /* 18/110-18/119 */, - 128 + 8 /* 18/120-18/129 */, - 128 + 9 /* 18/130-18/139 */, - 128 + 9 /* 18/140-18/149 */, - 128 + 10 /* 18/150-18/159 */, - 128 + 11 /* 18/160-18/169 */, - 128 + 12 /* 18/170-18/179 */, - 128 + 13 /* 18/180-18/189 */, - 128 + 14 /* 18/190-18/199 */, - 128 + 15 /* 18/200-18/209 */, - 128 + 15 /* 18/210-18/219 */, - 128 + 16 /* 18/220+ */ -}; - - -/*! - * 腕力による命中修正テーブル - * Stat Table (STR) -- bonus to hit (plus 128) - */ -const byte adj_str_th[] = -{ - 128 + -3 /* 3 */, - 128 + -2 /* 4 */, - 128 + -1 /* 5 */, - 128 + -1 /* 6 */, - 128 + 0 /* 7 */, - 128 + 0 /* 8 */, - 128 + 0 /* 9 */, - 128 + 0 /* 10 */, - 128 + 0 /* 11 */, - 128 + 0 /* 12 */, - 128 + 0 /* 13 */, - 128 + 0 /* 14 */, - 128 + 0 /* 15 */, - 128 + 0 /* 16 */, - 128 + 0 /* 17 */, - 128 + 1 /* 18/00-18/09 */, - 128 + 1 /* 18/10-18/19 */, - 128 + 1 /* 18/20-18/29 */, - 128 + 1 /* 18/30-18/39 */, - 128 + 1 /* 18/40-18/49 */, - 128 + 1 /* 18/50-18/59 */, - 128 + 1 /* 18/60-18/69 */, - 128 + 2 /* 18/70-18/79 */, - 128 + 3 /* 18/80-18/89 */, - 128 + 4 /* 18/90-18/99 */, - 128 + 5 /* 18/100-18/109 */, - 128 + 6 /* 18/110-18/119 */, - 128 + 7 /* 18/120-18/129 */, - 128 + 8 /* 18/130-18/139 */, - 128 + 9 /* 18/140-18/149 */, - 128 + 10 /* 18/150-18/159 */, - 128 + 11 /* 18/160-18/169 */, - 128 + 12 /* 18/170-18/179 */, - 128 + 13 /* 18/180-18/189 */, - 128 + 14 /* 18/190-18/199 */, - 128 + 15 /* 18/200-18/209 */, - 128 + 15 /* 18/210-18/219 */, - 128 + 16 /* 18/220+ */ -}; - - -/*! - * 腕力による基本所持重量値テーブル - * Stat Table (STR) -- weight limit in deca-pounds - */ -const byte adj_str_wgt[] = -{ - 10 /* 3 */, - 11 /* 4 */, - 12 /* 5 */, - 13 /* 6 */, - 14 /* 7 */, - 15 /* 8 */, - 16 /* 9 */, - 17 /* 10 */, - 18 /* 11 */, - 19 /* 12 */, - 20 /* 13 */, - 21 /* 14 */, - 22 /* 15 */, - 23 /* 16 */, - 24 /* 17 */, - 25 /* 18/00-18/09 */, - 26 /* 18/10-18/19 */, - 27 /* 18/20-18/29 */, - 28 /* 18/30-18/39 */, - 29 /* 18/40-18/49 */, - 30 /* 18/50-18/59 */, - 31 /* 18/60-18/69 */, - 31 /* 18/70-18/79 */, - 32 /* 18/80-18/89 */, - 32 /* 18/90-18/99 */, - 33 /* 18/100-18/109 */, - 33 /* 18/110-18/119 */, - 34 /* 18/120-18/129 */, - 34 /* 18/130-18/139 */, - 35 /* 18/140-18/149 */, - 35 /* 18/150-18/159 */, - 36 /* 18/160-18/169 */, - 36 /* 18/170-18/179 */, - 37 /* 18/180-18/189 */, - 37 /* 18/190-18/199 */, - 38 /* 18/200-18/209 */, - 38 /* 18/210-18/219 */, - 39 /* 18/220+ */ -}; - - -/*! - * 腕力による武器重量限界値テーブル - * Stat Table (STR) -- weapon weight limit in pounds - */ -const byte adj_str_hold[] = -{ - 4 /* 3 */, - 5 /* 4 */, - 6 /* 5 */, - 7 /* 6 */, - 8 /* 7 */, - 9 /* 8 */, - 10 /* 9 */, - 11 /* 10 */, - 12 /* 11 */, - 13 /* 12 */, - 14 /* 13 */, - 15 /* 14 */, - 16 /* 15 */, - 17 /* 16 */, - 18 /* 17 */, - 19 /* 18/00-18/09 */, - 20 /* 18/10-18/19 */, - 21 /* 18/20-18/29 */, - 22 /* 18/30-18/39 */, - 23 /* 18/40-18/49 */, - 24 /* 18/50-18/59 */, - 25 /* 18/60-18/69 */, - 26 /* 18/70-18/79 */, - 27 /* 18/80-18/89 */, - 28 /* 18/90-18/99 */, - 30 /* 18/100-18/109 */, - 31 /* 18/110-18/119 */, - 32 /* 18/120-18/129 */, - 33 /* 18/130-18/139 */, - 34 /* 18/140-18/149 */, - 35 /* 18/150-18/159 */, - 37 /* 18/160-18/169 */, - 40 /* 18/170-18/179 */, - 44 /* 18/180-18/189 */, - 48 /* 18/190-18/199 */, - 50 /* 18/200-18/209 */, - 50 /* 18/210-18/219 */, - 50 /* 18/220+ */ -}; - - -/*! - * 腕力による採掘能力修正値テーブル - * Stat Table (STR) -- digging value - */ -const byte adj_str_dig[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 1 /* 5 */, - 2 /* 6 */, - 3 /* 7 */, - 4 /* 8 */, - 4 /* 9 */, - 5 /* 10 */, - 5 /* 11 */, - 6 /* 12 */, - 6 /* 13 */, - 7 /* 14 */, - 7 /* 15 */, - 8 /* 16 */, - 8 /* 17 */, - 9 /* 18/00-18/09 */, - 10 /* 18/10-18/19 */, - 12 /* 18/20-18/29 */, - 15 /* 18/30-18/39 */, - 20 /* 18/40-18/49 */, - 25 /* 18/50-18/59 */, - 30 /* 18/60-18/69 */, - 35 /* 18/70-18/79 */, - 40 /* 18/80-18/89 */, - 45 /* 18/90-18/99 */, - 50 /* 18/100-18/109 */, - 55 /* 18/110-18/119 */, - 60 /* 18/120-18/129 */, - 65 /* 18/130-18/139 */, - 70 /* 18/140-18/149 */, - 75 /* 18/150-18/159 */, - 80 /* 18/160-18/169 */, - 85 /* 18/170-18/179 */, - 90 /* 18/180-18/189 */, - 95 /* 18/190-18/199 */, - 100 /* 18/200-18/209 */, - 100 /* 18/210-18/219 */, - 100 /* 18/220+ */ -}; - - -/*! - * 腕力による攻撃回数算定値テーブル - * Stat Table (STR) -- help index into the "blow" table - */ -const byte adj_str_blow[] = -{ - 3 /* 3 */, - 4 /* 4 */, - 5 /* 5 */, - 6 /* 6 */, - 7 /* 7 */, - 8 /* 8 */, - 9 /* 9 */, - 10 /* 10 */, - 11 /* 11 */, - 12 /* 12 */, - 13 /* 13 */, - 14 /* 14 */, - 15 /* 15 */, - 16 /* 16 */, - 17 /* 17 */, - 20 /* 18/00-18/09 */, - 30 /* 18/10-18/19 */, - 40 /* 18/20-18/29 */, - 50 /* 18/30-18/39 */, - 60 /* 18/40-18/49 */, - 70 /* 18/50-18/59 */, - 80 /* 18/60-18/69 */, - 90 /* 18/70-18/79 */, - 100 /* 18/80-18/89 */, - 110 /* 18/90-18/99 */, - 120 /* 18/100-18/109 */, - 130 /* 18/110-18/119 */, - 140 /* 18/120-18/129 */, - 150 /* 18/130-18/139 */, - 160 /* 18/140-18/149 */, - 170 /* 18/150-18/159 */, - 180 /* 18/160-18/169 */, - 190 /* 18/170-18/179 */, - 200 /* 18/180-18/189 */, - 210 /* 18/190-18/199 */, - 220 /* 18/200-18/209 */, - 230 /* 18/210-18/219 */, - 240 /* 18/220+ */ -}; - - -/*! - * 器用さによる攻撃回数インデックステーブル - * Stat Table (DEX) -- index into the "blow" table - */ -const byte adj_dex_blow[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 0 /* 8 */, - 0 /* 9 */, - 1 /* 10 */, - 1 /* 11 */, - 1 /* 12 */, - 1 /* 13 */, - 1 /* 14 */, - 2 /* 15 */, - 2 /* 16 */, - 2 /* 17 */, - 2 /* 18/00-18/09 */, - 3 /* 18/10-18/19 */, - 3 /* 18/20-18/29 */, - 3 /* 18/30-18/39 */, - 4 /* 18/40-18/49 */, - 4 /* 18/50-18/59 */, - 5 /* 18/60-18/69 */, - 5 /* 18/70-18/79 */, - 6 /* 18/80-18/89 */, - 6 /* 18/90-18/99 */, - 7 /* 18/100-18/109 */, - 7 /* 18/110-18/119 */, - 8 /* 18/120-18/129 */, - 8 /* 18/130-18/139 */, - 9 /* 18/140-18/149 */, - 9 /* 18/150-18/159 */, - 10 /* 18/160-18/169 */, - 10 /* 18/170-18/179 */, - 11 /* 18/180-18/189 */, - 11 /* 18/190-18/199 */, - 12 /* 18/200-18/209 */, - 12 /* 18/210-18/219 */, - 13 /* 18/220+ */ -}; - - -/*! - * 器用さによる盗難防止&体当たり成功判定修正テーブル - * Stat Table (DEX) -- chance of avoiding "theft" and "falling" - */ -const byte adj_dex_safe[] = -{ - 0 /* 3 */, - 1 /* 4 */, - 2 /* 5 */, - 3 /* 6 */, - 4 /* 7 */, - 5 /* 8 */, - 5 /* 9 */, - 6 /* 10 */, - 6 /* 11 */, - 7 /* 12 */, - 7 /* 13 */, - 8 /* 14 */, - 8 /* 15 */, - 9 /* 16 */, - 9 /* 17 */, - 10 /* 18/00-18/09 */, - 10 /* 18/10-18/19 */, - 15 /* 18/20-18/29 */, - 15 /* 18/30-18/39 */, - 20 /* 18/40-18/49 */, - 25 /* 18/50-18/59 */, - 30 /* 18/60-18/69 */, - 35 /* 18/70-18/79 */, - 40 /* 18/80-18/89 */, - 45 /* 18/90-18/99 */, - 50 /* 18/100-18/109 */, - 60 /* 18/110-18/119 */, - 70 /* 18/120-18/129 */, - 80 /* 18/130-18/139 */, - 90 /* 18/140-18/149 */, - 100 /* 18/150-18/159 */, - 100 /* 18/160-18/169 */, - 100 /* 18/170-18/179 */, - 100 /* 18/180-18/189 */, - 100 /* 18/190-18/199 */, - 100 /* 18/200-18/209 */, - 100 /* 18/210-18/219 */, - 100 /* 18/220+ */ -}; - - -/*! - * 耐久による基本HP自然治癒値テーブル / - * Stat Table (CON) -- base regeneration rate - */ -const byte adj_con_fix[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 0 /* 5 */, - 0 /* 6 */, - 0 /* 7 */, - 0 /* 8 */, - 0 /* 9 */, - 0 /* 10 */, - 0 /* 11 */, - 0 /* 12 */, - 0 /* 13 */, - 1 /* 14 */, - 1 /* 15 */, - 1 /* 16 */, - 1 /* 17 */, - 2 /* 18/00-18/09 */, - 2 /* 18/10-18/19 */, - 2 /* 18/20-18/29 */, - 2 /* 18/30-18/39 */, - 2 /* 18/40-18/49 */, - 3 /* 18/50-18/59 */, - 3 /* 18/60-18/69 */, - 3 /* 18/70-18/79 */, - 3 /* 18/80-18/89 */, - 3 /* 18/90-18/99 */, - 4 /* 18/100-18/109 */, - 4 /* 18/110-18/119 */, - 5 /* 18/120-18/129 */, - 6 /* 18/130-18/139 */, - 6 /* 18/140-18/149 */, - 7 /* 18/150-18/159 */, - 7 /* 18/160-18/169 */, - 8 /* 18/170-18/179 */, - 8 /* 18/180-18/189 */, - 8 /* 18/190-18/199 */, - 9 /* 18/200-18/209 */, - 9 /* 18/210-18/219 */, - 9 /* 18/220+ */ -}; - - -/*! - * 耐久による基本HP自然治癒値テーブル / - * Stat Table (CON) -- extra 1/4-hitpoints per level (plus 128) - */ -const byte adj_con_mhp[] = -{ - 128 + -8 /* 3 */, - 128 + -6 /* 4 */, - 128 + -4 /* 5 */, - 128 + -2 /* 6 */, - 128 + -1 /* 7 */, - 128 + 0 /* 8 */, - 128 + 0 /* 9 */, - 128 + 0 /* 10 */, - 128 + 0 /* 11 */, - 128 + 0 /* 12 */, - 128 + 0 /* 13 */, - 128 + 1 /* 14 */, - 128 + 1 /* 15 */, - 128 + 2 /* 16 */, - 128 + 3 /* 17 */, - 128 + 4 /* 18/00-18/09 */, - 128 + 5 /* 18/10-18/19 */, - 128 + 6 /* 18/20-18/29 */, - 128 + 7 /* 18/30-18/39 */, - 128 + 8 /* 18/40-18/49 */, - 128 + 9 /* 18/50-18/59 */, - 128 + 10 /* 18/60-18/69 */, - 128 + 11 /* 18/70-18/79 */, - 128 + 12 /* 18/80-18/89 */, - 128 + 14 /* 18/90-18/99 */, - 128 + 17 /* 18/100-18/109 */, - 128 + 20 /* 18/110-18/119 */, - 128 + 23 /* 18/120-18/129 */, - 128 + 26 /* 18/130-18/139 */, - 128 + 29 /* 18/140-18/149 */, - 128 + 32 /* 18/150-18/159 */, - 128 + 35 /* 18/160-18/169 */, - 128 + 38 /* 18/170-18/179 */, - 128 + 40 /* 18/180-18/189 */, - 128 + 42 /* 18/190-18/199 */, - 128 + 44 /* 18/200-18/209 */, - 128 + 46 /* 18/210-18/219 */, - 128 + 48 /* 18/220+ */ -}; - - -/*! - * 魅力による魅了能力修正テーブル / - * Stat Table (CHR) -- charm - */ -const byte adj_chr_chm[] = -{ - 0 /* 3 */, - 0 /* 4 */, - 1 /* 5 */, - 2 /* 6 */, - 3 /* 7 */, - 4 /* 8 */, - 4 /* 9 */, - 5 /* 10 */, - 5 /* 11 */, - 6 /* 12 */, - 6 /* 13 */, - 7 /* 14 */, - 7 /* 15 */, - 8 /* 16 */, - 8 /* 17 */, - 9 /* 18/00-18/09 */, - 10 /* 18/10-18/19 */, - 12 /* 18/20-18/29 */, - 15 /* 18/30-18/39 */, - 18 /* 18/40-18/49 */, - 21 /* 18/50-18/59 */, - 24 /* 18/60-18/69 */, - 28 /* 18/70-18/79 */, - 32 /* 18/80-18/89 */, - 36 /* 18/90-18/99 */, - 39 /* 18/100-18/109 */, - 42 /* 18/110-18/119 */, - 45 /* 18/120-18/129 */, - 49 /* 18/130-18/139 */, - 53 /* 18/140-18/149 */, - 57 /* 18/150-18/159 */, - 61 /* 18/160-18/169 */, - 65 /* 18/170-18/179 */, - 69 /* 18/180-18/189 */, - 73 /* 18/190-18/199 */, - 77 /* 18/200-18/209 */, - 81 /* 18/210-18/219 */, - 85 /* 18/220+ */ -}; - - -/*! - * @brief - * 魅力による魅了能力修正テーブル / - * This table is used to help calculate the number of blows the player can - * make in a single round of attacks (one player current_world_ptr->game_turn) with a normal weapon. - * @details - *
- * This number ranges from a single blow/round for weak players to up to six
- * blows/round for powerful warriors.
- *
- * Note that certain artifacts and ego-items give "bonus" blows/round.
- *
- * First, from the player class, we extract some values:
- *
- * Warrior       num = 6; mul = 5; div = MAX(70, weapon_weight);
- * Berserker     num = 6; mul = 7; div = MAX(70, weapon_weight);
- * Mage          num = 3; mul = 2; div = MAX(100, weapon_weight);
- * Priest        num = 5; mul = 3; div = MAX(100, weapon_weight);
- * Mindcrafter   num = 5; mul = 3; div = MAX(100, weapon_weight);
- * Rogue         num = 5; mul = 3; div = MAX(40, weapon_weight);
- * Ranger        num = 5; mul = 4; div = MAX(70, weapon_weight);
- * Paladin       num = 5; mul = 4; div = MAX(70, weapon_weight);
- * Weaponsmith   num = 5; mul = 5; div = MAX(150, weapon_weight);
- * Warrior-Mage  num = 5; mul = 3; div = MAX(70, weapon_weight);
- * Chaos Warrior num = 5; mul = 4; div = MAX(70, weapon_weight);
- * Monk          num = 5; mul = 3; div = MAX(60, weapon_weight);
- * Tourist       num = 4; mul = 3; div = MAX(100, weapon_weight);
- * Imitator      num = 5; mul = 4; div = MAX(70, weapon_weight);
- * Beastmaster   num = 5; mul = 3; div = MAX(70, weapon_weight);
- * Cavalry(Ride) num = 5; mul = 4; div = MAX(70, weapon_weight);
- * Cavalry(Walk) num = 5; mul = 3; div = MAX(100, weapon_weight);
- * Sorcerer      num = 1; mul = 1; div = MAX(1, weapon_weight);
- * Archer        num = 4; mul = 2; div = MAX(70, weapon_weight);
- * Magic eater   num = 4; mul = 2; div = MAX(70, weapon_weight);
- * ForceTrainer  num = 4; mul = 2; div = MAX(60, weapon_weight);
- * Mirror Master num = 3; mul = 3; div = MAX(100, weapon_weight);
- * Ninja         num = 4; mul = 1; div = MAX(20, weapon_weight);
- *
- * To get "P", we look up the relevant "adj_str_blow[]" (see above),
- * multiply it by "mul", and then divide it by "div".
- * Increase P by 1 if you wield a weapon two-handed.
- * Decrease P by 1 if you are a Ninja.
- *
- * To get "D", we look up the relevant "adj_dex_blow[]" (see above),
- *
- * The player gets "blows_table[P][D]" blows/round, as shown below,
- * up to a maximum of "num" blows/round, plus any "bonus" blows/round.
- * 
- */ -const byte blows_table[12][12] = -{ - /* P/D */ - /* 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11+ */ - /* 3 10 15 /10 /40 /60 /80 /100 /120 /140 /160 /180 */ -/* 0 */{ 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 4 }, -/* 1 */{ 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4 }, -/* 2 */{ 1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5 }, -/* 3 */{ 1, 1, 2, 3, 3, 4, 4, 4, 5, 5, 5, 5 }, -/* 4 */{ 1, 1, 2, 3, 3, 4, 4, 5, 5, 5, 5, 5 }, -/* 5 */{ 1, 1, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6 }, -/* 6 */{ 1, 1, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6 }, -/* 7 */{ 1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6 }, -/* 8 */{ 1, 2, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6 }, -/* 9 */{ 1, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6 }, -/* 10*/{ 2, 2, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6 }, -/*11+*/{ 2, 2, 3, 4, 4, 4, 5, 5, 6, 6, 6, 6 }, - -}; - - -/*! - * @brief 加速値による実質速度修正倍率テーブル / - * This table allows quick conversion from "speed" to "energy" - * @details - *
- * The basic function WAS ((S>=110) ? (S-110) : (100 / (120-S)))
- * Note that table access is *much* quicker than computation.
- *
- * Note that the table has been changed at high speeds.  From
- * "Slow (-40)" to "Fast (+30)" is pretty much unchanged, but
- * at speeds above "Fast (+30)", one approaches an asymptotic
- * effective limit of 50 energy per current_world_ptr->game_turn.  This means that it
- * is relatively easy to reach "Fast (+30)" and get about 40
- * energy per current_world_ptr->game_turn, but then speed becomes very "expensive",
- * and you must get all the way to "Fast (+50)" to reach the
- * point of getting 45 energy per current_world_ptr->game_turn.  After that point,
- * furthur increases in speed are more or less pointless,
- * except to balance out heavy p_ptr->inventory_list.
- *
- * Note that currently the fastest monster is "Fast (+30)".
- *
- * It should be possible to lower the energy threshhold from
- * 100 units to 50 units, though this may interact badly with
- * the (compiled out) small random energy boost code.  It may
- * also tend to cause more "clumping" at high speeds.
- * 
- */ -const byte extract_energy[200] = -{ - /* Slow */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - /* Slow */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - /* Slow */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - /* Slow */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - /* Slow */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - /* Slow */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - /* S-50 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - /* S-40 */ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - /* S-30 */ 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, - /* S-20 */ 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, - /* S-10 */ 5, 5, 5, 5, 6, 6, 7, 7, 8, 9, - /* Norm */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* F+10 */ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - /* F+20 */ 30, 31, 32, 33, 34, 35, 36, 36, 37, 37, - /* F+30 */ 38, 38, 39, 39, 40, 40, 40, 41, 41, 41, - /* F+40 */ 42, 42, 42, 43, 43, 43, 44, 44, 44, 44, - /* F+50 */ 45, 45, 45, 45, 45, 46, 46, 46, 46, 46, - /* F+60 */ 47, 47, 47, 47, 47, 48, 48, 48, 48, 48, - /* F+70 */ 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, - /* Fast */ 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, -}; - - -/*! - * @brief 性別表記 / - * Player Sexes - * @details - *
- *      Title,
- *      Winner
- * 
- */ -const player_sex sex_info[MAX_SEXES] = -{ - { -#ifdef JP - "女性", - "クイーン", -#endif - "Female", - "Queen" - }, - { -#ifdef JP - "男性", - "キング", -#endif - "Male", - "King" - } -}; - - -/*! - * @brief 種族情報 / - * Player Races - * @details - *
- *      Title,
- *      {STR,INT,WIS,DEX,CON,CHR},
- *      r_dis, r_dev, r_sav, r_stl, r_srh, r_fos, r_thn, r_thb,
- *      hitdie, exp base,
- *      Age (Base, Mod),
- *      Male (Hgt, Wgt),
- *      Female (Hgt, Wgt)
- *      infra,
- *      class-choices
- * 
- */ -const player_race race_info[MAX_RACES] = -{ - { -#ifdef JP - "人間", -#endif - "Human", - - { 0, 0, 0, 0, 0, 0 }, - 0, 0, 0, 0, 0, 10, 0, 0, - 10, 100, - 14, 6, - 72, 6, 180, 25, - 66, 4, 150, 20, - 0, - 0xFFFFFFF, - }, - { -#ifdef JP - "ハーフエルフ", -#endif - "Half-Elf", - - { -1, 1, 1, 1, -1, 1 }, - 2, 3, 2, 1, 6, 11, -1, 5, - 9, 110, - 24, 16, - 66, 6, 130, 15, - 62, 6, 100, 10, - 2, - 0xE77E7FF, - }, - { -#ifdef JP - "エルフ", -#endif - "Elf", - - { -1, 2, 0, 1, -2, 2 }, - 5, 6, 4, 2, 8, 12, -5, 15, - 8, 120, - 75, 75, - 60, 4, 100, 6, - 54, 4, 80, 6, - 3, - 0xE77E75B, - - }, - { -#ifdef JP - "ホビット", -#endif - "Hobbit", - - { -2, 1, 1, 3, 2, 1 }, - 15, 12, 10, 5, 12, 15, -10, 20, - 7, 110, - 21, 12, - 36, 3, 60, 3, - 33, 3, 50, 3, - 4, - 0xF6FFC0B, - }, - { -#ifdef JP - "ノーム", -#endif - "Gnome", - - { -1, 2, 0, 2, 1, -1 }, - 10, 8, 7, 3, 6, 13, -8, 12, - 8, 120, - 50, 40, - 42, 3, 90, 6, - 39, 3, 75, 3, - 4, - 0xF67D60F, - }, - { -#ifdef JP - "ドワーフ", -#endif - "Dwarf", - - { 2, -2, 2, -2, 2, -1 }, - 2, 7, 6, -1, 7, 10, 15, 0, - 11, 125, - 35, 15, - 48, 3, 150, 10, - 46, 3, 120, 10, - 5, - 0x1890005, - }, - { -#ifdef JP - "ハーフオーク", -#endif - "Half-Orc", - - { 2, -1, 0, 0, 1, -2 }, - -3, -3, -2, -1, 0, 7, 12, -5, - 10, 110, - 11, 4, - 66, 1, 150, 5, - 62, 1, 120, 5, - 3, - 0xDD8818D, - }, - { -#ifdef JP - "ハーフトロル", -#endif - "Half-Troll", - - { 4, -4, -1, -3, 3, -3 }, - -5, -8, -5, -2, -1, 5, 20, -10, - 12, 125, - 20, 10, - 96, 10, 250, 50, - 84, 8, 225, 40, - 3, - 0x0880005, - }, - { -#ifdef JP - "アンバライト", -#endif - "Amberite", - - { 1, 2, 2, 2, 3, 2 }, - 4, 5, 3, 2, 3, 13, 15, 10, - 10, 225, - 50, 50, - 82, 5, 190, 20, - 78, 6, 180, 15, - 0, - 0xFFFF7FF, - }, - { -#ifdef JP - "ハイエルフ", -#endif - "High-Elf", - - { 1, 3, -1, 3, 1, 3 }, - 4, 13, 12, 4, 3, 14, 10, 25, - 10, 200, - 100, 30, - 90, 10, 190, 20, - 82, 10, 180, 15, - 4, - 0xF77E75B, - }, - { -#ifdef JP - "野蛮人", -#endif - "Barbarian", - - { 3, -2, -1, 1, 2, 0 }, - -2, -10, 2, -1, 1, 7, 12, 10, - 11, 120, - 14, 8, - 82, 5, 200, 20, - 78, 6, 190, 15, - 0, - 0x5C0A09D, - }, - { -#ifdef JP - "ハーフオーガ", -#endif - "Half-Ogre", - - { 3, -2, 0, -1, 3, -2 }, - -3, -5, -3, -2, -1, 5, 20, 0, - 12, 145, - 40, 10, - 92, 10, 255, 60, - 80, 8, 235, 60, - 3, - 0x0A80407, - }, - { -#ifdef JP - "半巨人", -#endif - "Half-Giant", - - { 4, -2, -2, -2, 3, -2 }, - -6, -8, -3, -2, -1, 5, 25, 5, - 13, 160, - 40, 10, - 100,10, 255, 65, - 80, 10, 240, 64, - 3, - 0x8880011, - }, - { -#ifdef JP - "半タイタン", -#endif - "Half-Titan", - - { 5, 1, 2, -2, 3, 1 }, - -5, 5, 1, -2, 1, 8, 25, 0, - 14, 255, - 100,30, - 111, 11, 255, 86, - 99, 11, 250, 86, - 0, - 0x23D4727, - }, - { -#ifdef JP - "サイクロプス", -#endif - "Cyclops", - - { 4, -3, -2, -3, 4, -3 }, - -4, -5, -3, -2, -2, 5, 20, 12, - 13, 150, - 50, 24, - 92, 10, 255, 60, - 80, 8, 235, 60, - 1, - 0x0888005, - }, - { -#ifdef JP - "イーク", -#endif - "Yeek", - - { -2, 1, 1, 1, -2, -4 }, - 2, 4, 6, 3, 5, 15, -5, -5, - 7, 100, - 14, 3, - 50, 3, 90, 6, - 50, 3, 75, 3, - 2, - 0x667360F, - }, - { -#ifdef JP - "クラッコン", -#endif - "Klackon", - - { 2, -1, -1, 1, 2, -1 }, - 10, 5, 3, 0, -1, 10, 5, 5, - 12, 190, - 20, 3, - 60, 3, 80, 4, - 54, 3, 70, 4, - 2, - 0x04D8011, - }, - { -#ifdef JP - "コボルド", -#endif - "Kobold", - - { 1, -1, 0, 1, 0, -2 }, - -2, -3, -1, -1, 1, 8, 10, -8, - 9, 125, - 11, 3, - 60, 1, 130, 5, - 55, 1, 100, 5, - 3, - 0x444A009, - }, - { -#ifdef JP - "ニーベルング", -#endif - "Nibelung", - - { 1, -1, 2, 0, 2, -2 }, - 3, 5, 6, 1, 5, 10, 9, 0, - 11, 170, - 40, 12, - 43, 3, 92, 6, - 40, 3, 78, 3, - 5, - 0x569040F, - }, - { -#ifdef JP - "ダークエルフ", -#endif - "Dark-Elf", - - { -1, 3, 2, 2, -2, 1 }, - 5, 10, 12, 3, 8, 12, -5, 10, - 9, 150, - 75, 75, - 60, 4, 100, 6, - 54, 4, 80, 6, - 5, - 0xE77C7DF, - }, - { -#ifdef JP - "ドラコニアン", -#endif - "Draconian", - - { 2, 1, 1, 1, 2, -1 }, - -2, 5, 2, 0, 1, 10, 5, 5, - 11, 220, - 75, 33, - 76, 1, 160, 5, - 72, 1, 130, 5, - 2, - 0x7FFE757, - }, - { -#ifdef JP - "マインドフレア", -#endif - "Mindflayer", - - { -3, 4, 4, 0, -2, -3 }, - 10, 15, 9, 2, 5, 12, -10, -5, - 9, 140, - 100, 25, - 68, 6, 142, 15, - 63, 6, 112, 10, - 4, - 0x2334746, - }, - { -#ifdef JP - "インプ", -#endif - "Imp", - - { 0, -1, -1, 1, 2, -1 }, - -3, 2, -1, 1, -1, 10, 5, -5, - 10, 115, - 13, 4, - 68, 1, 150, 5, - 64, 1, 120, 5, - 3, - 0xDB537CB, - }, - { -#ifdef JP - "ゴーレム", -#endif - "Golem", - - { 4, -5, -5, -2, 4, -2 }, - -5, -5, 6, -1, -1, 8, 20, 0, - 12, 200, - 1, 100, - 66, 1, 200, 6, - 62, 1, 180, 6, - 4, - 0x0800001, - }, - { -#ifdef JP - "骸骨", -#endif - "Skeleton", - - { 0, 1, -2, 0, 1, -2 }, - -5, 0, 3, -1, -1, 8, 10, 0, - 10, 145, - 100, 35, - 72, 6, 50, 5, - 66, 4, 50, 5, - 2, - 0x234070F, - }, - { -#ifdef JP - "ゾンビ", -#endif - "Zombie", - - { 2, -6, -6, 1, 4, -3 }, - -5, -5, 5, -1, -1, 5, 15, 0, - 13, 150, - 100, 30, - 72, 6, 100, 25, - 66, 4, 100, 20, - 2, - 0x0800001, - }, - { -#ifdef JP - "吸血鬼", -#endif - "Vampire", - - { 3, 3, -1, -1, 1, 2 }, - 4, 8, 6, 4, 1, 8, 5, 0, - 11, 200, - 100, 30, - 72, 6, 180, 25, - 66, 4, 150, 20, - 5, - 0x67DC7FF, - }, - { -#ifdef JP - "幽霊", -#endif - "Spectre", - - { -5, 4, -1, 2, 0, -3 }, - 10, 15, 12, 5, 5, 14, -15, -5, - 7, 210, - 100, 30, - 72, 6, 100, 25, - 66, 4, 100, 20, - 5, - 0x631474A, - }, - { -#ifdef JP - "妖精", -#endif - "Sprite", - - { -4, 3, 3, 3, -2, 2 }, - 10, 8, 6, 4, 10, 10, -12, 0, - 7, 145, - 50, 25, - 32, 2, 75, 2, - 29, 2, 65, 2, - 4, - 0x623F65E, - }, - { -#ifdef JP - "獣人", -#endif - "Beastman", - - { 2, -2, -1, -1, 2, -2 }, - -5, -2, -1, -1, -1, 5, 12, 5, - 11, 140, - 14, 6, - 65, 6, 150, 20, - 61, 6, 120, 15, - 0, - 0x57887CF, - }, - { -#ifdef JP - "エント", -#endif - "Ent", - { 2, 0, 2, -3, 2, 0 }, - -5, 2, 5, -1, 0, 9, 15, -5, - 12, 140, - 120, 60, - 111, 11, 255, 50, - 99, 11, 250, 45, - 0, - 0x0010005, - }, - { -#ifdef JP - "アルコン", -#endif - "Archon", - - { 2, 0, 4, 1, 2, 3 }, - 0, 12, 8, 2, 2, 11, 10, 10, - 11, 235, - 150, 150, - 82, 5, 190, 20, - 78, 6, 180, 15, - 3, - 0x779F777, - }, - { -#ifdef JP - "バルログ", - "Balrog", -#else - "Balrog", -#endif - - { 4, 2, -10, 2, 3, -5 }, - -3, 12, 15, -2, 1, 8, 20, 0, - 12, 250, - 255, 255, - 100,10, 255, 65, - 80, 10, 240, 64, - 5, - 0x7EDC4DB, - }, - { -#ifdef JP - "ドゥナダン", -#endif - "Dunadan", - - { 1, 2, 2, 2, 3, 2 }, - 4, 5, 3, 2, 3, 13, 15, 10, - 10, 180, - 50, 20, - 82, 5, 190, 20, - 78, 6, 180, 15, - 0, - 0xFFFF7FF, - }, - { -#ifdef JP - "影フェアリー", -#endif - "Shadow-Fairy", - {-2, 2, 2, 1, -1, 0 }, - 7, 8, 0, 6, 12, 15, -10, -5, - 7, 120, - 200, 100, - 80, 8, 90, 20, - 73, 8, 80, 15, - 4, - 0xE33C7DF, - }, - { -#ifdef JP - "クター", -#endif - "Kutar", - - { 0, -1, -1, 1, 2, 3 }, - -2, 5, 5, 5, -2, 6, 0, -5, - 11, 140, - 14, 6, - 48, 6, 150, 25, - 44, 4, 130, 20, - 0, - 0xC18B7AD, - }, - { -#ifdef JP - "アンドロイド", -#endif - "Android", - - { 4, -5, -5, 0, 4, -2 }, - 0, -5, 0, -2, 3, 14, 20, 10, - 13, 200, - 1, 100, - 72, 12, 240, 64, - 66, 12, 220, 64, - 0, - 0x0800001, - }, - { -#ifdef JP - "マーフォーク", -#endif - "Merfolk", - - { -1, 0, 2, 1, -1, 1}, - 2, 3, 2, 1, 6, 11, -1, 5, - 10, 130, - 24, 16, - 66, 6, 130, 15, - 62, 6, 100, 10, - 2, - 0xE77E7FF, - }, - -}; - - -/*! - * @brief 職業情報 / - * Player Classes - * @details - *
- *      Title,
- *      {STR,INT,WIS,DEX,CON,CHR},
- *      c_dis, c_dev, c_sav, c_stl, c_srh, c_fos, c_thn, c_thb,
- *      x_dis, x_dev, x_sav, x_stl, x_srh, x_fos, x_thn, x_thb,
- *      HD, Exp, pet_upkeep_div
- * 
- */ -const player_class class_info[MAX_CLASS] = -{ - { -#ifdef JP - "戦士", -#endif - "Warrior", - - { 4, -2, -2, 2, 2, -1}, - 25, 18, 31, 1, 14, 2, 70, 55, - 12, 7, 10, 0, 0, 0, 30, 30, - 9, 0, 40 - }, - - { -#ifdef JP - "メイジ", -#endif - "Mage", - - {-4, 3, 0, 1, -2, 1}, - 30, 40, 38, 3, 16, 20, 34, 20, - 7, 15, 11, 0, 0, 0, 6, 7, - 0, 30, 30 - }, - - { -#ifdef JP - "プリースト", -#endif - "Priest", - - {-1, -3, 3, -1, 0, 2}, - 25, 35, 40, 2, 16, 8, 48, 35, - 7, 11, 12, 0, 0, 0, 13, 11, - 2, 20, 35 - }, - - { -#ifdef JP - "盗賊", -#endif - "Rogue", - - { 2, 1, -2, 3, 1, -1}, - 45, 37, 36, 5, 32, 24, 60, 66, - 15, 12, 10, 0, 0, 0, 21, 18, - 6, 25, 40 - }, - - { -#ifdef JP - "レンジャー", -#endif - "Ranger", - - { 2, 2, 0, 1, 1, 1}, - 30, 37, 36, 3, 24, 16, 56, 72, - 8, 11, 10, 0, 0, 0, 18, 28, - 4, 40, 35 - }, - - { -#ifdef JP - "パラディン", -#endif - "Paladin", - - { 3, -3, 1, 0, 2, 2}, - 20, 24, 34, 1, 12, 2, 68, 40, - 7, 10, 11, 0, 0, 0, 21, 18, - 6, 35, 40 - }, - - { -#ifdef JP - "魔法戦士", -#endif - "Warrior-Mage", - - { 2, 2, 0, 1, 0, 1}, - 30, 35, 36, 2, 18, 16, 50, 25, - 7, 10, 10, 0, 0, 0, 15, 11, - 4, 40, 35 - }, - - { -#ifdef JP - "混沌の戦士", -#endif - "Chaos-Warrior", - - { 2, 1, -1, 0, 2, -2}, - 20, 25, 34, 1, 14, 12, 65, 40, - 7, 11, 10, 0, 0, 0, 20, 17, - 6, 25, 40 - }, - - { -#ifdef JP - "修行僧", -#endif - "Monk", - - { 2, -1, 1, 3, 2, 1}, - 45, 34, 36, 5, 32, 24, 64, 60, - 15, 11, 10, 0, 0, 0, 18, 18, - 6, 30, 35 - }, - - { -#ifdef JP - "超能力者", -#endif - "Mindcrafter", - - {-1, 0, 3, -1, -1, 2}, /* note: spell stat is Wis */ - 30, 33, 38, 3, 22, 16, 50, 40, - 10, 11, 10, 0, 0, 0, 14, 18, - 2, 25, 35 - }, - - { -#ifdef JP - "ハイ=メイジ", -#endif - "High-Mage", - - {-4, 4, 0, 0, -2, 1}, - 30, 40, 38, 3, 16, 20, 34, 20, - 7, 15, 11, 0, 0, 0, 6, 7, - 0, 30, 25 - }, - - { -#ifdef JP - "観光客", -#endif - "Tourist", - { -1, -1, -1, -1, -1, -1}, - 15, 18, 28, 1, 12, 2, 40, 20, - 5, 7, 9, 0, 0, 0, 11, 11, - 0, -30, 40 - }, - - { -#ifdef JP - "ものまね師", -#endif - "Imitator", - { 0, 1, -1, 2, 0, 1}, - 25, 30, 36, 2, 18, 16, 60, 50, - 7, 10, 10, 0, 0, 0, 18, 20, - 5, 10, 20 - }, - - { -#ifdef JP - "魔獣使い", -#endif - "BeastMaster", - { 1, -1, -1, 1, 0, 2}, - 20, 25, 32, 2, 18, 16, 52, 63, - 7, 10, 10, 0, 0, 0, 14, 25, - 3, 20, 10 - }, - - { -#ifdef JP - "スペルマスター", -#endif - "Sorcerer", - - {-5, 6, -2, 2, 0, -2}, - 30, 48, 75, 2, 12, 22, 0, 0, - 7, 18, 13, 0, 0, 0, 0, 0, - 4, 60, 25 - }, - - { -#ifdef JP - "アーチャー", -#endif - "Archer", - - { 2, -1, -1, 2, 1, 0}, - 38, 24, 35, 4, 24, 16, 56, 82, - 12, 10, 10, 0, 0, 0, 18, 36, - 6, 10, 40 - }, - - { -#ifdef JP - "魔道具術師", -#endif - "Magic-Eater", - - {-1, 2, 1, 2, -2, 1}, - 25, 42, 36, 2, 20, 16, 48, 35, - 7, 16, 10, 0, 0, 0, 13, 11, - 3, 30, 30 - }, - - { -#ifdef JP - "吟遊詩人", -#endif - "Bard", /* Note : spell stat is Charisma */ - {-2, 1, 2, -1, -2, 4}, - 20, 33, 34, -5, 16, 20, 34, 20, - 8, 13, 11, 0, 0, 0, 10, 8, - 2, 40, 25 - }, - - { -#ifdef JP - "赤魔道師", -#endif - "Red-Mage", - - { 2, 2, -1, 1, 0, -1}, - 20, 34, 34, 1, 16, 10, 56, 25, - 7, 11, 11, 0, 0, 0, 18, 11, - 4, 40, 40 - }, - - { -#ifdef JP - "剣術家", -#endif - "Samurai", - - { 3, -2, 1, 2, 1, 0}, - 25, 18, 32, 2, 16, 6, 70, 40, - 12, 7, 10, 0, 0, 0, 23, 18, - 6, 30, 40 - }, - - { -#ifdef JP - "練気術師", -#endif - "ForceTrainer", - - { 0, -1, 3, 2, 1, 1}, - 30, 34, 38, 4, 32, 24, 50, 40, - 10, 11, 11, 0, 0, 0, 14, 15, - 2, 35, 40 - }, - - { -#ifdef JP - "青魔道師", -#endif - "Blue-Mage", - - {-4, 4, -1, 1, -2, -1}, - 30, 40, 36, 3, 20, 16, 40, 25, - 7, 16, 11, 0, 0, 0, 6, 7, - 2, 30, 35 - }, - - { -#ifdef JP - "騎兵", -#endif - "Cavalry", - { 2, -2, -2, 2, 2, 0}, - 20, 18, 32, 1, 16, 10, 60, 66, - 10, 7, 10, 0, 0, 0, 22, 26, - 5, 20, 35 - }, - - { -#ifdef JP - "狂戦士", -#endif - "Berserker", - - { 8, -20, -20, 4, 4, -5}, - -100, -1000, -200, -100, -100, -100, 120, -2000, - 0, 0, 0, 0, 0, 0, 50, 0, - 11, 60, 255 - }, - - { -#ifdef JP - "鍛冶師", -#endif - "Weaponsmith", - - { 3, -1, -1, 1, 0, -1}, - 30, 28, 28, 1, 20, 10, 60, 45, - 10, 10, 10, 0, 0, 0, 21, 15, - 6, 30, 40 - }, - { -#ifdef JP - "鏡使い", -#endif - "Mirror-Master", - - { -2, 3, 1, -1, -2, 1}, - 30, 33, 40, 3, 14, 16, 34,30, - 10, 11, 12, 0, 0, 0, 6,10, - 2, 30, 30 - }, - { -#ifdef JP - "忍者", -#endif - "Ninja", - - { 0, -1, -1, 3, 2, -1}, - 45, 24, 36, 8, 48, 32, 70,66, - 15, 10, 10, 0, 0, 0, 25,18, - 2, 20, 40 - }, - - { -#ifdef JP - "スナイパー", -#endif - "Sniper", - - { 2, -1, -1, 2, 1, 0}, - 25, 24, 28, 5, 32, 18, 56, 72, - 12, 10, 10, 0, 0, 0, 18, 28, - 2, 20, 40, - }, -}; - -/*! - * @brief 性格情報 / - * Player Character - */ -const player_seikaku seikaku_info[MAX_SEIKAKU] = -{ - { -#ifdef JP - "ふつう", -#endif - "Ordinary", - { 0, 0, 0, 0, 0, 0 }, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 0 - }, - - { -#ifdef JP - "ちからじまん", -#endif - "Mighty", - { 2, -2, -1, 0, 1, 0 }, - -5, -5, -3, -1, -2, -2, 10, 0, - 1, 1, 0 - }, - - { -#ifdef JP - "きれもの", -#endif - "Shrewd", - { -2, 2, 0, 1, -1, -1 }, - 3, 8, 2, 0, -2, 5, -8, -5, - -1, 1, 0 - }, - - { -#ifdef JP - "しあわせもの", -#endif - "Pious", - { 0, -1, 2, -1, 0, 1 }, - -5, 2, 4, -1, 3, -2, -3, -6, - 0, 1, 0 - }, - - { -#ifdef JP - "すばしっこい", -#endif - "Nimble", - { -1, 1, -1, 2, -1, -1 }, - 7, 2, -1, 1, 5, 5, 0, 10, - 0, 0, 0 - }, - - { -#ifdef JP - "いのちしらず", -#endif - "Fearless", - { 2, 1, 1, -1, -1, 0 }, - -5, 5, -2, 0, 2, -2, 10, 10, - -1, 1, 0 - }, - - { -#ifdef JP - "コンバット", -#endif - "Combat", - { 1, -1, -2, 2, 0, 1 }, - -2, -3, -3, 0, -1, 2, 5, 5, - 0, 0, 0 - }, - - { -#ifdef JP - "なまけもの", -#endif - "Lazy", - { -2, -2, -2, -2, -2, -2 }, - -5, -5, -3, -1, -4, -2, -8, -8, - -1, 1, 0 - }, - - { -#ifdef JP - "セクシーギャル", -#endif - "Sexy", - { 1, 1, 1, 1, 1, 3 }, - 10, 5, 3, 0, 4, 2, 10, 10, - 0, 1, 1 - }, - - { -#ifdef JP - "ラッキーマン", -#endif - "Lucky", - { -2, -2, -2, -2, -2, 2 }, - 10, 7, 3, 2, 10, 8, 15, 15, - 0, 1, 2 - }, - - { -#ifdef JP - "がまんづよい", -#endif - "Patient", - { -1, -1, 1, -2, 2, 0 }, - -5, -3, 3, 1, 0, -3, -6, -6, - 1, 0, 0 - }, - - { -#ifdef JP - "いかさま", -#endif - "Munchkin", - { 10, 10, 10, 10, 10, 10 }, - 20, 40, 30, 10, 40, 40, 80, 80, - 15, 1, 0 - }, - - { -#ifdef JP - "チャージマン", -#endif - "Chargeman", - { 2, -2, -2, 0, 1, -2 }, - -7, 7, -5, -1, -2, -4, 15, 20, - -1, 0, 0 - }, - -}; - - -/*! - * @brief 変身種族情報 - */ -const player_race mimic_info[] = -{ - { -#ifdef JP - "[標準形態]", -#endif - "Default", - - { 0, 0, 0, 0, 0, 0 }, - 0, 0, 0, 0, 0, 10, 0, 0, - 10, 100, - 0, 0, - 0, 0, 0, 0, - 0, 0, 0, 0, - 0, - 0x000000, - }, - { -#ifdef JP - "[悪魔]", -#endif - "[Demon]", - - { 5, 3, 2, 3, 4, -6 }, - -5, 18, 20, -2, 3, 10, 40, 20, - 12, 0, - 0, 0, - 0, 0, 0, 0, - 0, 0, 0, 0, - 5, - 0x000003, - }, - { -#ifdef JP - "[魔王]", -#endif - "[Demon lord]", - - { 20, 20, 20, 20, 20, 20 }, - 20, 20, 25, -2, 3, 10, 70, 40, - 14, 0, - 0, 0, - 0, 0, 0, 0, - 0, 0, 0, 0, - 20, - 0x000003, - }, - { -#ifdef JP - "[吸血鬼]", -#endif - "[Vampire]", - - { 4, 4, 1, 1, 2, 3 }, - 6, 12, 8, 6, 2, 12, 30, 20, - 11, 0, - 0, 0, - 0, 0, 0, 0, - 0, 0, 0, 0, - 5, - 0x000005, - }, -}; - - -/*! - * @brief 歌、剣術、呪術領域情報テーブル - */ -const magic_type technic_info[NUM_TECHNIC][32] = -{ - { - /* Music */ - { 1, 1, 10, 2}, - { 2, 1, 10, 2}, - { 3, 2, 20, 3}, - { 4, 2, 20, 4}, - { 5, 2, 20, 6}, - { 7, 4, 30, 8}, - { 9, 3, 30, 10}, - { 10, 2, 30, 12}, - - { 12, 3, 40, 20}, - { 15, 16, 42, 35}, - { 17, 18, 40, 25}, - { 18, 2, 45, 30}, - { 23, 8, 50, 38}, - { 28, 30, 50, 41}, - { 33, 35, 60, 42}, - { 38, 35, 70, 46}, - - { 10, 4, 20, 13}, - { 22, 5, 30, 26}, - { 23, 3, 35, 27}, - { 26, 28, 37, 29}, - { 32, 37, 41, 36}, - { 33, 22, 43, 40}, - { 37, 35, 46, 42}, - { 45, 60, 50, 56}, - - { 23, 18, 20, 23}, - { 30, 30, 30, 26}, - { 33, 65, 41, 30}, - { 37, 35, 43, 35}, - { 40, 30, 46, 50}, - { 42, 75, 50, 68}, - { 45, 58, 62, 73}, - { 49, 48, 70, 200} - }, - - { - /* Hissatsu */ - { 1, 15, 0, 0}, - { 3, 10, 0, 0}, - { 6, 15, 0, 0}, - { 9, 8, 0, 0}, - { 10, 12, 0, 0}, - { 12, 25, 0, 0}, - { 14, 7, 0, 0}, - { 17, 20, 0, 0}, - - { 19, 10, 0, 0}, - { 22, 20, 0, 0}, - { 24, 30, 0, 0}, - { 25, 10, 0, 0}, - { 27, 15, 0, 0}, - { 29, 45, 0, 0}, - { 32, 70, 0, 0}, - { 35, 50, 0, 0}, - - { 18, 40, 0, 0}, - { 22, 22, 0, 0}, - { 24, 30, 0, 0}, - { 26, 35, 0, 0}, - { 30, 30, 0, 0}, - { 32, 60, 0, 0}, - { 36, 40, 0, 0}, - { 39, 80, 0, 0}, - - { 26, 20, 0, 0}, - { 29, 40, 0, 0}, - { 31, 35, 0, 0}, - { 36, 80, 0, 0}, - { 39, 100, 0, 0}, - { 42, 110, 0, 0}, - { 45, 130, 0, 0}, - { 50, 255, 0, 0} - }, - - { - /* Hex */ - { 1, 2, 20, 2}, - { 1, 2, 20, 2}, - { 3, 2, 30, 3}, - { 5, 3, 30, 4}, - { 7, 3, 40, 6}, - { 8, 10, 60, 8}, - { 9, 3, 30, 10}, - { 10, 5, 40, 12}, - - { 12, 8, 40, 15}, - { 12, 9, 35, 15}, - { 15, 10, 50, 20}, - { 20, 12, 45, 35}, - { 25, 15, 50, 50}, - { 30, 12, 60, 70}, - { 35, 10, 60, 80}, - { 40, 16, 70, 100}, - - { 15, 8, 20, 20}, - { 18, 15, 50, 20}, - { 22, 10, 65, 35}, - { 25, 28, 70, 50}, - { 28, 10, 70, 60}, - { 30, 20, 60, 60}, - { 36, 22, 70, 80}, - { 40, 28, 70, 100}, - - { 5, 6, 35, 5}, - { 22, 24, 70, 40}, - { 25, 2, 65, 50}, - { 32, 20, 50, 70}, - { 35, 35, 70, 80}, - { 38, 32, 70, 90}, - { 42, 24, 70, 120}, - { 46, 45, 80, 200} - }, -}; - - -/*! - * 魔法領域フラグ管理テーブル / - * Zangband uses this array instead of the spell flags table, as there - * are 5 realms of magic, each with 4 spellbooks and 8 spells per book -- TY - */ -const u32b fake_spell_flags[4]= -{ - 0x000000ff, - 0x0000ff00, - 0x00ff0000, - 0xff000000 -}; - -/*! - * 職業毎に選択可能な第一領域魔法テーブル - */ -const s32b realm_choices1[MAX_CLASS] = -{ - (CH_NONE), /* Warrior */ - (CH_LIFE | CH_SORCERY | CH_NATURE | - CH_CHAOS | CH_DEATH | CH_TRUMP | - CH_ARCANE | CH_ENCHANT | CH_DAEMON | - CH_CRUSADE), /* Mage */ - (CH_LIFE | CH_DEATH | CH_DAEMON | - CH_CRUSADE), /* Priest */ - (CH_SORCERY | CH_DEATH | CH_TRUMP | - CH_ARCANE | CH_ENCHANT), /* Rogue */ - (CH_NATURE), /* Ranger */ - (CH_CRUSADE | CH_DEATH), /* Paladin */ - (CH_ARCANE), /* Warrior-Mage */ - (CH_CHAOS | CH_DAEMON), /* Chaos-Warrior */ - (CH_LIFE | CH_NATURE | CH_DEATH | - CH_ENCHANT), /* Monk */ - (CH_NONE), /* Mindcrafter */ - (CH_LIFE | CH_SORCERY | CH_NATURE | - CH_CHAOS | CH_DEATH | CH_TRUMP | - CH_ARCANE | CH_ENCHANT | CH_DAEMON | - CH_CRUSADE | CH_HEX), /* High-Mage */ - (CH_ARCANE), /* Tourist */ - (CH_NONE), /* Imitator */ - (CH_TRUMP), /* Beastmaster */ - (CH_NONE), /* Sorcerer */ - (CH_NONE), /* Archer */ - (CH_NONE), /* Magic eater */ - (CH_MUSIC), /* Bard */ - (CH_NONE), /* Red Mage */ - (CH_HISSATSU), /* Samurai */ - (CH_LIFE | CH_NATURE | CH_DEATH | - CH_ENCHANT | CH_CRUSADE), /* ForceTrainer */ - (CH_NONE), /* Blue Mage */ - (CH_NONE), /* Cavalry */ - (CH_NONE), /* Berserker */ - (CH_NONE), /* Weaponsmith */ - (CH_NONE), /* Mirror-master */ - (CH_NONE), /* Ninja */ - (CH_NONE), /* Sniper */ -}; - -/*! - * 職業毎に選択可能な第二領域魔法テーブル - */ -const s32b realm_choices2[MAX_CLASS] = -{ - (CH_NONE), /* Warrior */ - (CH_LIFE | CH_SORCERY | CH_NATURE | - CH_CHAOS | CH_DEATH | CH_TRUMP | - CH_ARCANE | CH_ENCHANT | CH_DAEMON | - CH_CRUSADE), /* Mage */ - (CH_LIFE | CH_SORCERY | CH_NATURE | - CH_CHAOS | CH_DEATH | CH_TRUMP | - CH_ARCANE | CH_ENCHANT | CH_DAEMON | - CH_CRUSADE), /* Priest */ - (CH_NONE), /* Rogue */ - (CH_SORCERY | CH_CHAOS | CH_DEATH | - CH_TRUMP | CH_ARCANE | CH_DAEMON), /* Ranger */ - (CH_NONE), /* Paladin */ - (CH_LIFE | CH_NATURE | CH_CHAOS | - CH_DEATH | CH_TRUMP | CH_ARCANE | - CH_SORCERY | CH_ENCHANT | CH_DAEMON | - CH_CRUSADE), /* Warrior-Mage */ - (CH_NONE), /* Chaos-Warrior */ - (CH_NONE), /* Monk */ - (CH_NONE), /* Mindcrafter */ - (CH_NONE), /* High-Mage */ - (CH_NONE), /* Tourist */ - (CH_NONE), /* Imitator */ - (CH_NONE), /* Beastmanster */ - (CH_NONE), /* Sorcerer */ - (CH_NONE), /* Archer */ - (CH_NONE), /* Magic eater */ - (CH_NONE), /* Bard */ - (CH_NONE), /* Red Mage */ - (CH_NONE), /* Samurai */ - (CH_NONE), /* ForceTrainer */ - (CH_NONE), /* Blue Mage */ - (CH_NONE), /* Cavalry */ - (CH_NONE), /* Berserker */ - (CH_NONE), /* Weaponsmith */ - (CH_NONE), /* Mirror-master */ - (CH_NONE), /* Ninja */ - (CH_NONE), /* Sniper */ -}; - - -#ifdef JP -/*! - * 領域魔法名称 - */ -const concptr realm_names[] = -{ - "魔法なし", - "生命", - "仙術", - "自然", - "カオス", - "暗黒", - "トランプ", - "秘術", - "匠", - "悪魔", - "破邪", - "不明", - "不明", - "不明", - "不明", - "不明", - "歌", - "武芸", - "呪術", - "不明" -}; -#endif - -#ifdef JP -const concptr E_realm_names[] -#else -const concptr realm_names[] -#endif -= { - "none", - "Life", - "Sorcery", - "Nature", - "Chaos", - "Death", - "Trump", - "Arcane", - "Craft", - "Daemon", - "Crusade", - "unknown", - "unknown", - "unknown", - "unknown", - "unknown", - "Music", - "Kendo", - "Hex", - "unknown" -}; - - -/*! - * @brief 職業とレベル毎のプレイヤー称号テーブル / Class titles for the player. - *
- * The player gets a new title every five levels, so each class
- * needs only ten titles total.
- * 
- */ -#ifdef JP -const concptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] = -{ - /* Warrior */ - { - "新参兵", - "兵士", - "傭兵", - "古参兵", - "剣士", - "闘士", - "英雄", - "男爵", - "伯爵", - "君主", - }, - - /* Mage */ - { - /*"見習い",*/ - "練習生", /*丁稚、練習生 */ - "奇術師", /*詐欺師、ペテン師 */ - "幻術師", - "呪術師", - "召霊師", - "召魔師", - "魔術師", - "魔道師", - "イプシシマス", - "大魔道師", - }, - - /* Priest */ - { - "信者", /*信徒 */ - "侍僧", /*教会奉仕者、見習い僧、伴僧、従者 */ - "熟練僧", - "聖職者", /*聖職者 */ - "伝道師", /*司祭評議員、修道会会員 */ - "牧師", /*ラマ教の僧 */ - "聖人", /*大司教、総主教、総大司教 */ - "祭司", /*祭司、司祭 */ - "祭司長", /*大祭司、祭司長 */ - "教皇", - }, - - /* Rogues */ - { - /* "ごろつき",*/ /*ごろつき、風来坊、浮浪者 */ - "すり", - "追いはぎ", /*追い剥ぎ、強盗、泥棒 */ - "夜盗", /*強盗、夜盗、泥棒 */ - "こそ泥", /*こそ泥、小泥棒 */ - "ペテン師", /*博徒、ペテン師、詐欺師 */ - "ロウシーフ", - "ハイシーフ", - "マスター", /* "マスターシーフ", */ - "アサシン", /* 暗殺者 */ - "頭領", /*"ギルドマスター",*/ - }, - - /* Rangers */ - { - "使い走り", - "馳夫", - "斥候", /*斥候、見張り、偵察兵 */ - "狩人", - "追跡者", - "先導者", - "探険者", /*開拓者、探険者 */ - "野伏", - "野伏頭", - "野伏の総領", - }, - - /* Paladins */ - { - "勇士", /*色男、愛人、しゃれ者、勇敢な人 */ - "衛士", - "保護者", - "防衛者", - "護衛者", - "騎士", - "重騎士", - "聖騎士", - "上級聖騎士", - "聖騎士団長", - }, - - /* Warrior-Mage */ - { - "見習い", - "徒弟", /*丁稚、練習生 */ - "一人前", - "古参兵", - "魔術兵士", - "魔術闘士", - "魔術の英雄", /* Mage-Hero */ - "魔男爵", - /* "魔公爵", */ - "戦闘魔術士", - "知識の守護者", /* "ウィザードロード", */ - }, - - /* Chaos Warrior */ - { - "新参兵", - "兵士", - "傭兵", - "古参兵", - "剣士", - "闘士", - "混沌の英雄", - "混沌の男爵", - "混沌の公爵", - "混沌の王者", - }, - - /* Monk */ - { - "入門者", - "弟子", - "直弟子", - "師範代", - "師範", - "道場主", - "名人", - "大名人", - "拳聖", - "拳神", - }, - - /* Mindcrafter */ - { - "練習生", - "見習い", - "熟練士", - "熟達士", - "黙想士", - "心術士", - "サイキック", - "サイオニック", - "超能力者", - "精神の支配者", /* "マインドマスター", */ - }, - - /* High Mage; same as Mage */ - { - /*"見習い",*/ - "練習生", /*丁稚、練習生 */ - "奇術師", /*詐欺師、ペテン師 */ - "幻術師", - "呪術師", - "召霊師", - "召魔師", - "魔術師", - "魔道師", - "イプシシマス", - "大魔道師", - }, - - /* Tourist */ - { - "プー太郎", - "観光客", - "周遊旅行者", - "遍歴者", - "旅行者", - "放浪者", /* "旅人", */ - "航海者", - "探検家", - "冒険家", - "スペランカー", - }, - - /* Imitator */ - { - "これから", - "いまいち", - "まだまだ", - "ぼちぼち", - "そこそこ", - "まあまあ", - "なかなか", - "いけいけ", - "そうとう", - "えらい", - }, - - /* Beastmaster */ - { - "イモリ使い", - "ヘビ使い", - "クモ使い", - "狼使い", - "トラ使い", - "甲虫使い", - "ヒドラ使い", - "ハウンド使い", - "ムーマク使い", - "ドラゴン使い", - }, - - /* Sorcerer; same as Mage */ - { - /*"見習い",*/ - "練習生", /*丁稚、練習生 */ - "奇術師", /*詐欺師、ペテン師 */ - "幻術師", - "呪術師", - "召霊師", - "召魔師", - "魔術師", - "魔道師", - "イプシシマス", - "大魔道師", - }, - - /* Archer */ - { - "新参兵", - "兵士", - "傭兵", - "古参兵", - "剣士", - "闘士", - "英雄", - "男爵", - "伯爵", - "領主", - }, - - /* Magic eater */ - { - "無知なる者", - "入門者", - "奇術師", - "秘術師", - "秘術師", - "熟練者", - "達人", - "達人", - "魔道師", - "全てを知る者", - }, - - /* Bard */ - { - "見習い", /*"Apprentice"*/ - "作曲家", /*"Songsmith"*/ - "吟遊詩人", /*"Bard"*/ - "コンパニオン", /*"Companion"*/ - "心の癒し手", /*"Minstrel"*/ - "竪琴師", /*"Harper"*/ - "伝承の紡ぎ手", /*"Loreweaver"*/ - "詩神の申し子", /*"Muse"*/ - "夢紡ぎ", /*"Dreamweaver"*/ - "マスター", /*"Master Harper"*/ - }, - - /* Red Mage; same as Warrior-Mage */ - { - "見習い", - "徒弟", /*丁稚、練習生 */ - "一人前", - "古参兵", - "魔術兵士", - "魔術闘士", - "魔術の英雄", /* Mage-Hero */ - "魔男爵", - /* "魔公爵", */ - "戦闘魔術士", - "知識の守護者", /* "ウィザードロード", */ - }, - - /* Samurai */ - { - "入門者", - "弟子", - "直弟子", - "師範代", - "師範", - "道場主", - "名人", - "大名人", - "剣聖", - "剣神", - }, - - /* ForceTrainer; same as Monk(?) */ - { - "入門者", - "弟子", - "直弟子", - "師範代", - "師範", - "道場主", - "名人", - "大名人", - "拳聖", - "拳神", - }, - - /* Blue Mage; same as Mage */ - { - /*"見習い",*/ - "練習生", /*丁稚、練習生 */ - "奇術師", /*詐欺師、ペテン師 */ - "幻術師", - "呪術師", - "召霊師", - "召魔師", - "魔術師", - "魔道師", - "イプシシマス", - "大魔道師", - }, - - /* Cavalry */ - { - "新参兵", - "兵士", - "傭兵", - "古参兵", - "剣士", - "闘士", - "英雄", - "男爵", - "伯爵", - "領主", - }, - - /* Berserker */ - { - "バーサーカー", - "バーサーカー", - "バーサーカー", - "怒りの公爵", - "怒りの公爵", - "怒りの公爵", - "怒りの王", - "怒りの王", - "怒りの王", - "怒りの化身", - }, - - /* Weaponsmith */ - { - "銅を鍛えし者", - "鉄を鍛えし者", - "鋼を鍛えし者", - "銀を鍛えし者", - "竜を鍛えし者", - "霊を鍛えし者", - "魔を鍛えし者", - "魂を鍛えし者", - "神を鍛えし者", - "全を鍛えし者", - }, - - /* Mirror Master */ - { - "鏡を見る人", - "鏡磨き", - "鏡職人", - "鏡術師", - "鏡導師", - "鏡の賢者", - "鏡の王", - "鏡の皇帝", - "鏡の化身", - "ラフノール王", - }, - /* Ninja */ - { - "訓練生", - "仕手", - "熟達者", - "短刀使い", - "切り裂き", - "凄腕", - "漆黒の刃", - "闇の一撃", - "暗殺者", - "死の長き腕", - }, - - /* Sniper */ - { - "新参兵", - "兵士", - "傭兵", - "古参兵", - "剣士", - "闘士", - "英雄", - "男爵", - "伯爵", - "領主", - }, -}; - -#else -const concptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] = -{ - /* Warrior */ - { - "Rookie", - "Soldier", - "Mercenary", - "Veteran", - "Swordsman", - "Champion", - "Hero", - "Baron", - "Duke", - "Lord", - }, - - /* Mage */ - { - "Apprentice", - "Trickster", - "Illusionist", - "Spellbinder", - "Evoker", - "Conjurer", - "Warlock", - "Sorcerer", - "Ipsissimus", - "Archimage", - }, - - /* Priest */ - { - "Believer", - "Acolyte", - "Adept", - "Curate", - "Canon", - "Priest", - "High Priest", - "Cardinal", - "Inquisitor", - "Pope", - }, - - /* Rogues */ - { - "Cutpurse", - "Robber", - "Burglar", - "Filcher", - "Sharper", - "Low Thief", - "High Thief", - "Master Thief", - "Assassin", - "Guildmaster", - }, - - /* Rangers */ - { - "Runner", - "Strider", - "Scout", - "Courser", - "Tracker", - "Guide", - "Pathfinder", - "Low Ranger", - "High Ranger", - "Ranger Lord", - }, - - /* Paladins */ - { - "Gallant", - "Keeper", - "Protector", - "Defender", - "Warder", - "Knight", - "Guardian", - "Low Paladin", - "High Paladin", - "Paladin Lord", - }, - - /* Warrior-Mage */ - { - "Novice", - "Apprentice", - "Journeyman", - "Veteran", - "Enchanter", - "Champion", - "Mage-Hero", - "Baron Mage", - "Battlemage", - "Wizard Lord", - }, - - /* Chaos Warrior */ - { - "Rookie", - "Soldier", - "Mercenary", - "Veteran", - "Swordsman", - "Champion", - "Chaos Hero", - "Chaos Baron", - "Chaos Duke", - "Chaos Lord", - }, - - /* Monk */ - { - "Initiate", - "Brother", - "Disciple", - "Immaculate", - "Master", - "Soft Master", - "Hard Master", - "Flower Master", - "Dragon Master", - "Grand Master", - }, - - /* Mindcrafter */ - { - "Trainee", - "Acolyte", - "Adept", - "Immaculate", - "Contemplator", - "Mentalist", - "Psychic", - "Psionicist", - "Esper", - "Mindmaster", - }, - - /* High Mage; same as Mage */ - { - "Apprentice", - "Trickster", - "Illusionist", - "Spellbinder", - "Evoker", - "Conjurer", - "Warlock", - "Sorcerer", - "Ipsissimus", - "Archimage", - }, - - /* Tourist */ - { - "Rambler", - "Sightseer", - "Excursionist", - "Peregrinator", - "Traveler", - "Journeyer", - "Voyager", - "Explorer", - "Adventurer", - "Spelunker", - }, - - /* Imitator */ - { - "Yet", - "Lacks", - "Still more", - "So so", - "All right", - "Not bad", - "Considerable", - "Go go", - "Sizable", - "Great man", - }, - - /* BeastMaster */ - { - "Newt Master", - "Snake Master", - "Spider Master", - "Wolf Master", - "Tiger Master", - "Beetle Master", - "Hydra Master", - "Hound Master", - "Mumak Master", - "Dragon Master", - }, - - /* Sorcerer */ - { - "Apprentice", - "Trickster", - "Illusionist", - "Spellbinder", - "Evoker", - "Conjurer", - "Warlock", - "Sorcerer", - "Ipsissimus", - "Archimage", - }, - - /* Archer */ - { - "Rookie", - "Soldier", - "Mercenary", - "Veteran", - "Bowman", - "Champion", - "Hero", - "Baron", - "Duke", - "Lord", - }, - - /* Magic eater */ - { - "Apprentice", - "Beginner", - "Jagguler", - "Skilled", - "Conjurer", - "Magician", - "Master", - "Master", - "Wizard", - "Almighty", - }, - - /* Bard */ - { - "Apprentice", /*"Apprentice"*/ - "Songsmith", /*"Songsmith"*/ - "Bard", /*"Bard"*/ - "Companion", /*"Companion"*/ - "Minstrel", /*"Minstrel"*/ - "Harper", /*"Harper"*/ - "Loreweaver", /*"Loreweaver"*/ - "Muse", /*"Muse"*/ - "Dreamweaver", /*"Dreamweaver"*/ - "Master Harper", /*"Master Harper"*/ - }, - - /* Red Mage */ - { - "Novice", - "Apprentice", - "Journeyman", - "Veteran", - "Enchanter", - "Champion", - "Mage-Hero", - "Baron Mage", - "Battlemage", - "Wizard Lord", - }, - - /* Samurai */ - { - "Initiate", - "Brother", - "Disciple", - "Immaculate", - "Master", - "Soft Master", - "Hard Master", - "Flower Master", - "Dragon Master", - "Grand Master", - }, - - /* ForceTrainer */ - { - "Initiate", - "Brother", - "Disciple", - "Immaculate", - "Master", - "Soft Master", - "Hard Master", - "Flower Master", - "Dragon Master", - "Grand Master", - }, - - /* Blue Mage */ - { - "Apprentice", - "Trickster", - "Illusionist", - "Spellbinder", - "Evoker", - "Conjurer", - "Warlock", - "Sorcerer", - "Ipsissimus", - "Archimage", - }, - - /* Warrior */ - { - "Rookie", - "Soldier", - "Mercenary", - "Veteran", - "Swordsman", - "Champion", - "Hero", - "Baron", - "Duke", - "Lord", - }, - - /* Berserker */ - { - "Berserker", - "Berserker", - "Berserker", - "Rage Prince", - "Rage Prince", - "Rage Prince", - "Rage King", - "Rage King", - "Rage King", - "God of Rage", - }, - - /* Weaponsmith */ - { - "Copper smith", - "Iron smith", - "Steel smith", - "Silver smith", - "Dragon smith", - "Spirit smith", - "Magic smith", - "Soul smith", - "God smith", - "AlmightySmith", - }, - - /* Mirror Master */ - { - "Mirrorstarer", - "Mirrorcleaner", - "Mirrormaker", - "Mirrormagician", - "Mirror Guru", - "Mirror Mage", - "Mirror King", - "Mirror Emperor", - "Mirror Avatar", - "Ruffnor King", - }, - - /* Ninja */ - { - "Trainee", - "Myrmidon", - "Initiate", - "Knifer", - "Bladesman", - "Hashishin", - "Black Dagger", - "Shadowstrike", - "Assassinator", - "Death Lord", - }, - - /* Sniper */ - { - "Rookie", - "Soldier", - "Mercenary", - "Veteran", - "Swordsman", - "Champion", - "Hero", - "Baron", - "Duke", - "Lord", - }, -}; -#endif - -/*! - * @brief 色名称テーブル / Hack -- the "basic" color names (see "TERM_xxx") - */ -const concptr color_names[16] = -{ -#ifdef JP - "黒", - "白", - "青灰色", - "オレンジ", - "赤", - "緑", - "青", - "琥珀色", - "灰色", - "明青灰色", - "紫", - "黄", - "明るい赤", - "明るい緑", - "明るい青", - "明琥珀色", -#else - "Dark", - "White", - "Slate", - "Orange", - "Red", - "Green", - "Blue", - "Umber", - "Light Dark", - "Light Slate", - "Violet", - "Yellow", - "Light Red", - "Light Green", - "Light Blue", - "Light Umber", -#endif - -}; - - -/*! - * @brief 能力値テーブル / Abbreviations of healthy stats - */ -const concptr stat_names[6] = -{ -#ifdef JP - "腕力 :", "知能 :", "賢さ :", "器用 :", "耐久 :", "魅力 :" -#else - "STR : ", "INT : ", "WIS : ", "DEX : ", "CON : ", "CHR : " -#endif - -}; - -/*! - * @brief 能力値テーブル(能力低下時) / Abbreviations of damaged stats - */ -const concptr stat_names_reduced[6] = -{ -#ifdef JP - "腕力x:", "知能x:", "賢さx:", "器用x:", "耐久x:", "魅力x:" -#else - "Str : ", "Int : ", "Wis : ", "Dex : ", "Con : ", "Chr : " -#endif - -}; - - -/*! - * @brief サブウィンドウ名称テーブル - * @details - *
- * Certain "screens" always use the main screen, including News, Birth,
- * Dungeon, Tomb-stone, High-scores, Macros, Colors, Visuals, Options.
- *
- * Later, special flags may allow sub-windows to "steal" stuff from the
- * main window, including File dump (help), File dump (artifacts, uniques),
- * Character screen, Small scale map, Previous Messages, Store screen, etc.
- *
- * The "ctrl-i" (tab) command flips the "Display inven/equip" and "Display
- * equip/inven" flags for all windows.
- *
- * The "ctrl-g" command (or pseudo-command) should perhaps grab a snapshot
- * of the main screen into any interested windows.
- * 
- */ -const concptr window_flag_desc[32] = -{ - _("持ち物/装備一覧", "Display inven/equip"), - _("装備/持ち物一覧", "Display equip/inven"), - _("呪文一覧", "Display spell list"), - _("キャラクタ情報", "Display character"), - _("視界内のモンスター表示", "Display monsters in sight"), - NULL, - _("メッセージ", "Display messages"), - _("ダンジョン全体図", "Display overhead view"), - _("モンスターの思い出", "Display monster recall"), - _("アイテムの詳細", "Display object recall"), - _("自分の周囲を表示", "Display dungeon view"), - _("記念撮影", "Display snap-shot"), - NULL, - NULL, - _("ボーグ・メッセージ", "Display borg messages"), - _("ボーグ・ステータス", "Display borg status"), - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL -}; - - -/*! - * @brief アイテムの価値記述テーブル / - * Table of game-generated inscriptions (indexed by the defines in defines.h). -- RG - */ -const concptr game_inscriptions[] = -{ - NULL, /* FEEL_NONE */ -#ifdef JP - "壊れている", /* FEEL_BROKEN */ - "恐ろしい", /* FEEL_TERRIBLE */ - "無価値", /* FEEL_WORTHLESS */ - "呪われている", /* FEEL_CURSED */ - "上質以上", /* FEEL_UNCURSED */ - "並", /* FEEL_AVERAGE */ - "上質", /* FEEL_GOOD */ - "高級品", /* FEEL_EXCELLENT */ - "特別製", /* FEEL_SPECIAL */ -#else - "broken", /* FEEL_BROKEN */ - "terrible", /* FEEL_TERRIBLE */ - "worthless", /* FEEL_WORTHLESS */ - "cursed", /* FEEL_CURSED */ - "uncursed", /* FEEL_UNCURSED */ - "average", /* FEEL_AVERAGE */ - "good", /* FEEL_GOOD */ - "excellent", /* FEEL_EXCELLENT */ - "special", /* FEEL_SPECIAL */ -#endif - -}; - -/*! - * @brief 修行僧の構え能力テーブル - */ -const kamae kamae_shurui[MAX_KAMAE] = -{ -#ifdef JP - {"玄武", 25, ""}, - {"白虎", 30, ""}, - {"青竜", 35, ""}, - {"朱雀", 40, ""}, -#else - {"Genbu", 25, "(Black Tortoise) "}, - {"Byakko", 30, "(White Tiger) "}, - {"Seiryuu", 35, "(Blue Dragon) "}, - {"Suzaku", 40, "(Red Phoenix) "}, -#endif -}; - -/*! - * @brief 剣術家の構え能力テーブル - */ -const kamae kata_shurui[MAX_KATA] = -{ -#ifdef JP - {"居合", 25, ""}, - {"風塵", 30, ""}, - {"降鬼", 35, ""}, - {"無想", 40, ""}, -#else - {"Iai", 25, ""}, - {"Huujin", 30, ""}, - {"Kouki", 35, ""}, - {"Musou", 40, ""}, -#endif -}; - - -/*! - * @brief シンボル解説テーブル / - * The table of "symbol info" -- each entry is a string of the form "X:desc" where "X" is the trigger, and "desc" is the "info". - */ -const concptr ident_info[] = -{ -#ifdef JP - " :暗闇", - "!:薬, オイル", - "\":アミュレット, 頸飾り", - "#:壁(隠しドア)/植物/気体", - "$:財宝(金か宝石)", - "%:鉱脈(溶岩か石英)", - "&:箱", - "':開いたドア", - "(:軟らかい防具", - "):盾", - "*:財宝を含んだ鉱脈または球形の怪物", - "+:閉じたドア", - ",:食べ物, おばけキノコ", - "-:魔法棒, ロッド", - ".:床", - "/:竿状武器(アックス/パイク/等)", - "0:博物館の入口", - "1:雑貨屋の入口", - "2:防具屋の入口", - "3:武器専門店の入口", - "4:寺院の入口", - "5:錬金術の店の入口", - "6:魔法の店の入口", - "7:ブラックマーケットの入口", - "8:我が家の入口", - "9:書店の入口", - "::岩石", - ";:回避の彫像/爆発のルーン", - "<:上り階段", - "=:指輪", - ">:下り階段", - "?:巻物", - "@:プレイヤー", - "A:天使", - "B:鳥", - "C:犬", - "D:古代ドラゴン/ワイアーム", - "E:エレメンタル", - "F:トンボ", - "G:ゴースト", - "H:雑種", - "I:昆虫", - "J:ヘビ", - "K:キラー・ビートル", - "L:リッチ", - "M:多首の爬虫類", - "N:謎の生物", - "O:オーガ", - "P:巨大人間型生物", - "Q:クイルスルグ(脈打つ肉塊)", - "R:爬虫類/両生類", - "S:蜘蛛/サソリ/ダニ", - "T:トロル", - "U:上級デーモン", - "V:バンパイア", - "W:ワイト/レイス/等", - "X:ゾーン/ザレン/等", - "Y:イエティ", - "Z:ハウンド", - "[:堅いアーマー", - "\\:鈍器(メイス/ムチ/等)", - "]:種々の防具", - "^:トラップ", - "_:杖", - "`:人形,彫像", - "a:アリ", - "b:コウモリ", - "c:ムカデ", - "d:ドラゴン", - "e:目玉", - "f:ネコ", - "g:ゴーレム", - "h:ホビット/エルフ/ドワーフ", - "i:ベトベト", - "j:ゼリー", - "k:コボルド", - "l:水棲生物", - "m:モルド", - "n:ナーガ", - "o:オーク", - "p:人間", - "q:四足獣", - "r:ネズミ", - "s:スケルトン", - "t:町の人", - "u:下級デーモン", - "v:ボルテックス", - "w:イモムシ/大群", - /* "x:unused", */ - "y:イーク", - "z:ゾンビ/ミイラ", - "{:飛び道具の弾(矢/弾)", - "|:刀剣類(ソード/ダガー/等)", - "}:飛び道具(弓/クロスボウ/スリング)", - "~:水/溶岩流(種々のアイテム)", -#else - " :A dark grid", - "!:A potion (or oil)", - "\":An amulet (or necklace)", - "#:A wall (or secret door) / a plant / a gas", - "$:Treasure (gold or gems)", - "%:A vein (magma or quartz)", - "&:A chest", - "':An open door", - "(:Soft armor", - "):A shield", - "*:A vein with treasure or a ball monster", - "+:A closed door", - ",:Food (or mushroom patch)", - "-:A wand (or rod)", - ".:Floor", - "/:A polearm (Axe/Pike/etc)", - "0:Entrance to Museum", - "1:Entrance to General Store", - "2:Entrance to Armory", - "3:Entrance to Weaponsmith", - "4:Entrance to Temple", - "5:Entrance to Alchemy shop", - "6:Entrance to Magic store", - "7:Entrance to Black Market", - "8:Entrance to your home", - "9:Entrance to the bookstore", - "::Rubble", - ";:A glyph of warding / an explosive rune", - "<:An up staircase", - "=:A ring", - ">:A down staircase", - "?:A scroll", - "@:You", - "A:Angel", - "B:Bird", - "C:Canine", - "D:Ancient Dragon/Wyrm", - "E:Elemental", - "F:Dragon Fly", - "G:Ghost", - "H:Hybrid", - "I:Insect", - "J:Snake", - "K:Killer Beetle", - "L:Lich", - "M:Multi-Headed Reptile", - "N:Mystery Living", - "O:Ogre", - "P:Giant Humanoid", - "Q:Quylthulg (Pulsing Flesh Mound)", - "R:Reptile/Amphibian", - "S:Spider/Scorpion/Tick", - "T:Troll", - "U:Major Demon", - "V:Vampire", - "W:Wight/Wraith/etc", - "X:Xorn/Xaren/etc", - "Y:Yeti", - "Z:Zephyr Hound", - "[:Hard armor", - "\\:A hafted weapon (mace/whip/etc)", - "]:Misc. armor", - "^:A trap", - "_:A staff", - "`:A figurine or statue", - "a:Ant", - "b:Bat", - "c:Centipede", - "d:Dragon", - "e:Floating Eye", - "f:Feline", - "g:Golem", - "h:Hobbit/Elf/Dwarf", - "i:Icky Thing", - "j:Jelly", - "k:Kobold", - "l:Aquatic monster", - "m:Mold", - "n:Naga", - "o:Orc", - "p:Person/Human", - "q:Quadruped", - "r:Rodent", - "s:Skeleton", - "t:Townsperson", - "u:Minor Demon", - "v:Vortex", - "w:Worm/Worm-Mass", - /* "x:unused", */ - "y:Yeek", - "z:Zombie/Mummy", - "{:A missile (arrow/bolt/shot)", - "|:An edged weapon (sword/dagger/etc)", - "}:A launcher (bow/crossbow/sling)", - "~:Fluid terrain (or miscellaneous item)", -#endif - - NULL -}; - -/*! - * @brief モンスターの打撃効力テーブル / - * The table of monsters' blow effects - */ -const mbe_info_type mbe_info[] = -{ - { 0, 0, }, /* None */ - { 60, GF_MISSILE, }, /* HURT */ - { 5, GF_POIS, }, /* POISON */ - { 20, GF_DISENCHANT, }, /* UN_BONUS */ - { 15, GF_MISSILE, }, /* UN_POWER */ /* ToDo: Apply the correct effects */ - { 5, GF_MISSILE, }, /* EAT_GOLD */ - { 5, GF_MISSILE, }, /* EAT_ITEM */ - { 5, GF_MISSILE, }, /* EAT_FOOD */ - { 5, GF_MISSILE, }, /* EAT_LITE */ - { 0, GF_ACID, }, /* ACID */ - { 10, GF_ELEC, }, /* ELEC */ - { 10, GF_FIRE, }, /* FIRE */ - { 10, GF_COLD, }, /* COLD */ - { 2, GF_MISSILE, }, /* BLIND */ - { 10, GF_CONFUSION, }, /* CONFUSE */ - { 10, GF_MISSILE, }, /* TERRIFY */ - { 2, GF_MISSILE, }, /* PARALYZE */ - { 0, GF_MISSILE, }, /* LOSE_STR */ - { 0, GF_MISSILE, }, /* LOSE_INT */ - { 0, GF_MISSILE, }, /* LOSE_WIS */ - { 0, GF_MISSILE, }, /* LOSE_DEX */ - { 0, GF_MISSILE, }, /* LOSE_CON */ - { 0, GF_MISSILE, }, /* LOSE_CHR */ - { 2, GF_MISSILE, }, /* LOSE_ALL */ - { 60, GF_ROCKET, }, /* SHATTER */ - { 5, GF_MISSILE, }, /* EXP_10 */ - { 5, GF_MISSILE, }, /* EXP_20 */ - { 5, GF_MISSILE, }, /* EXP_40 */ - { 5, GF_MISSILE, }, /* EXP_80 */ - { 5, GF_POIS, }, /* DISEASE */ - { 5, GF_TIME, }, /* TIME */ - { 5, GF_MISSILE, }, /* EXP_VAMP */ - { 5, GF_MANA, }, /* DR_MANA */ - { 60, GF_MISSILE, }, /* SUPERHURT */ -}; - - -/*! - * @brief 地形状態フラグテーブル / - * The table of features' actions - */ -const byte feature_action_flags[FF_FLAG_MAX] = -{ - 0, /* LOS */ - 0, /* PROJECT */ - 0, /* MOVE */ - 0, /* PLACE */ - 0, /* DROP */ - 0, /* SECRET */ - 0, /* NOTICE */ - 0, /* REMEMBER */ - 0, /* OPEN */ - 0, /* CLOSE */ - FAF_CRASH_GLASS, /* BASH */ - 0, /* SPIKE */ - FAF_DESTROY, /* DISARM */ - 0, /* STORE */ - FAF_DESTROY | FAF_CRASH_GLASS, /* TUNNEL */ - 0, /* MAY_HAVE_GOLD */ - 0, /* HAS_GOLD */ - 0, /* HAS_ITEM */ - 0, /* DOOR */ - 0, /* TRAP */ - 0, /* STAIRS */ - 0, /* GLYPH */ - 0, /* LESS */ - 0, /* MORE */ - 0, /* RUN */ - 0, /* FLOOR */ - 0, /* WALL */ - 0, /* PERMANENT */ - 0, /* INNER */ - 0, /* OUTER */ - 0, /* SOLID */ - 0, /* HIT_TRAP */ - - 0, /* BRIDGE */ - 0, /* RIVER */ - 0, /* LAKE */ - 0, /* BRIDGED */ - 0, /* COVERED */ - 0, /* GLOW */ - 0, /* ENSECRET */ - 0, /* WATER */ - 0, /* LAVA */ - 0, /* SHALLOW */ - 0, /* DEEP */ - 0, /* FILLED */ - FAF_DESTROY | FAF_CRASH_GLASS, /* HURT_ROCK */ - 0, /* HURT_FIRE */ - 0, /* HURT_COLD */ - 0, /* HURT_ACID */ - 0, /* ICE */ - 0, /* ACID */ - 0, /* OIL */ - 0, /* XXX04 */ - 0, /* CAN_CLIMB */ - 0, /* CAN_FLY */ - 0, /* CAN_SWIM */ - 0, /* CAN_PASS */ - 0, /* CAN_OOZE */ - 0, /* CAN_DIG */ - 0, /* HIDE_ITEM */ - 0, /* HIDE_SNEAK */ - 0, /* HIDE_SWIM */ - 0, /* HIDE_DIG */ - 0, /* KILL_HUGE */ - 0, /* KILL_MOVE */ - - 0, /* PICK_TRAP */ - 0, /* PICK_DOOR */ - 0, /* ALLOC */ - 0, /* CHEST */ - 0, /* DROP_1D2 */ - 0, /* DROP_2D2 */ - 0, /* DROP_GOOD */ - 0, /* DROP_GREAT */ - 0, /* HURT_POIS */ - 0, /* HURT_ELEC */ - 0, /* HURT_WATER */ - 0, /* HURT_BWATER */ - 0, /* USE_FEAT */ - 0, /* GET_FEAT */ - 0, /* GROUND */ - 0, /* OUTSIDE */ - 0, /* EASY_HIDE */ - 0, /* EASY_CLIMB */ - 0, /* MUST_CLIMB */ - 0, /* TREE */ - 0, /* NEED_TREE */ - 0, /* BLOOD */ - 0, /* DUST */ - 0, /* SLIME */ - 0, /* PLANT */ - 0, /* XXX2 */ - 0, /* INSTANT */ - 0, /* EXPLODE */ - 0, /* TIMED */ - 0, /* ERUPT */ - 0, /* STRIKE */ - 0, /* SPREAD */ - - 0, /* SPECIAL */ - FAF_DESTROY | FAF_NO_DROP | FAF_CRASH_GLASS, /* HURT_DISI */ - 0, /* QUEST_ENTER */ - 0, /* QUEST_EXIT */ - 0, /* QUEST */ - 0, /* SHAFT */ - 0, /* MOUNTAIN */ - 0, /* BLDG */ - 0, /* MINOR_GLYPH */ - 0, /* PATTERN */ - 0, /* TOWN */ - 0, /* ENTRANCE */ - 0, /* MIRROR */ - 0, /* UNPERM */ - 0, /* TELEPORTABLE */ - 0, /* CONVERT */ - 0, /* GLASS */ -}; - - -/*! - * @brief 装備耐性に準じたブレス効果の選択テーブル / - * Define flags, effect type, name for dragon breath activation - */ -const dragonbreath_type dragonbreath_info[] = { - { TR_RES_ACID, GF_ACID, _("酸", "acid") }, - { TR_RES_ELEC, GF_ELEC, _("電撃", "lightning") }, - { TR_RES_FIRE, GF_FIRE, _("火炎", "fire") }, - { TR_RES_COLD, GF_COLD, _("冷気", "cold") }, - { TR_RES_POIS, GF_POIS, _("毒", "poison") }, - { TR_RES_LITE, GF_LITE, _("閃光", "light") }, - { TR_RES_DARK, GF_DARK, _("暗黒", "dark") }, - { TR_RES_SHARDS, GF_SHARDS, _("破片", "shard") }, - { TR_RES_CONF, GF_CONFUSION, _("混乱", "confusion") }, - { TR_RES_SOUND, GF_SOUND, _("轟音", "sound") }, - { TR_RES_NEXUS, GF_NEXUS, _("因果混乱", "nexus") }, - { TR_RES_NETHER, GF_NETHER, _("地獄", "nether") }, - { TR_RES_CHAOS, GF_CHAOS, _("カオス", "chaos") }, - { TR_RES_DISEN, GF_DISENCHANT, _("劣化", "disenchant") }, - { 0, 0, NULL } -}; -