diff -urN hengband/lib/edit/m_info.txt hengband-s/lib/edit/m_info.txt --- hengband/lib/edit/m_info.txt Wed Oct 25 23:17:58 2006 +++ hengband-s/lib/edit/m_info.txt Thu Apr 05 20:04:33 2007 @@ -3703,3 +3703,356 @@ # Crusade R:9:0 + +### Spelunker ### +N:27 +I:SORCERY:INT:0x01:0:1:40 +# Life +R:0:1 +T:1:1:30:4 #0 +T:3:2:35:4 +T:99:0:0:0 +T:5:5:35:4 +T:7:7:35:4 +T:9:8:40:4 +T:12:12:40:3 +T:15:14:45:3 +T:16:16:45:4 #1 +T:99:0:0:0 +T:18:18:50:4 +T:19:19:50:4 +T:20:20:50:4 +T:23:23:50:4 +T:30:30:55:5 +T:35:70:75:5 +T:26:30:50:75 #2 +T:28:25:70:150 +T:99:0:0:0 +T:35:35:60:75 +T:99:0:0:0 +T:35:55:80:115 +T:39:40:80:125 +T:46:70:80:150 +T:9:15:50:40 #3 +T:25:25:50:50 +T:35:55:80:115 +T:42:100:80:225 +T:45:90:80:115 +T:48:50:80:100 +T:49:100:80:250 +T:50:100:80:250 + +# Sorcery +R:1:1 +T:1:1:23:4 #0 +T:1:2:24:4 +T:3:3:25:1 +T:3:3:30:1 +T:4:4:30:1 +T:5:5:35:5 +T:6:5:30:4 +T:7:7:75:9 +T:9:7:75:8 #1 +T:10:7:75:8 +T:11:7:75:7 +T:13:7:50:6 +T:18:12:60:8 +T:22:12:60:8 +T:28:20:70:15 +T:33:30:75:20 +T:3:3:25:15 #2 +T:10:10:80:40 +T:14:10:60:25 +T:18:30:70:40 +T:20:18:85:50 +T:20:18:60:25 +T:25:25:75:19 +T:40:40:80:100 +T:10:10:40:20 #3 +T:99:0:0:0 +T:25:25:75:70 +T:30:40:80:120 +T:33:35:60:100 +T:42:50:90:175 +T:43:40:55:200 +T:45:70:85:250 + +# Neture +R:2:1 +T:1:1:23:4 #0 +T:99:0:0:0 +T:3:3:25:1 +T:4:4:35:4 +T:4:4:50:5 +T:4:5:50:5 +T:5:5:50:5 +T:5:5:35:4 +T:5:1:25:6 #1 +T:99:0:0:0 +T:7:6:45:6 +T:99:0:0:0 +T:9:6:30:5 +T:19:12:55:8 +T:25:25:90:50 +T:40:60:90:50 +T:9:12:40:44 #2 +T:10:12:75:120 +T:15:20:85:60 +T:20:22:80:40 +T:30:30:90:100 +T:37:40:90:200 +T:38:45:75:200 +T:40:90:90:250 +T:99:0:0:0 #3 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:40:90:95:250 +T:99:0:0:0 + +# Chaos +R:3:1 +T:99:0:0:0 #0 +T:1:2:22:4 +T:2:2:25:4 +T:5:5:30:1 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:15:9:35:5 +T:99:0:0:0 #1 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:25:18:60:8 +T:30:20:80:15 +T:99:0:0:0 +T:11:7:45:9 #2 +T:99:0:0:0 +T:16:14:80:35 +T:99:0:0:0 +T:30:25:85:150 +T:99:0:0:0 +T:45:90:80:250 +T:47:100:90:250 +T:99:0:0:0 #3 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:42:50:85:250 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 + +# Death +R:4:1 +T:1:1:25:4 #0 +T:99:0:0:0 +T:2:2:25:4 +T:99:0:0:0 +T:5:5:30:4 +T:7:10:75:6 +T:9:9:30:4 +T:10:10:30:4 +T:99:0:0:0 #1 +T:99:0:0:0 +T:99:0:0:0 +T:24:21:60:30 +T:30:75:80:30 +T:99:0:0:0 +T:36:35:80:70 +T:39:30:95:25 +T:10:20:80:180 #2 +T:99:0:0:0 +T:99:0:0:0 +T:30:25:75:50 +T:34:90:70:90 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 #3 +T:25:66:95:250 +T:30:40:95:250 +T:35:40:80:100 +T:42:50:75:150 +T:43:75:80:100 +T:99:0:0:0 +T:47:100:90:250 + +# Trump +R:5:1 +T:1:1:25:3 #0 +T:3:3:25:4 +T:99:0:0:0 +T:6:6:40:8 +T:7:7:20:4 +T:11:12:30:6 +T:14:15:30:5 +T:18:20:30:8 +T:20:20:40:8 #1 +T:99:0:0:0 +T:25:24:30:8 +T:30:28:40:12 +T:33:30:35:10 +T:35:33:45:12 +T:40:35:40:15 +T:42:40:35:12 +T:22:35:70:40 #2 +T:24:24:35:25 +T:26:26:35:30 +T:30:25:35:9 +T:30:30:35:35 +T:35:70:40:100 +T:40:100:45:250 +T:45:100:45:200 +T:30:30:30:50 #3 +T:35:50:45:100 +T:36:55:40:150 +T:39:80:40:150 +T:99:0:0:0 +T:47:100:40:150 +T:48:100:40:200 +T:49:100:40:220 + +# Arcane +R:6:1 +T:99:0:0:0 #0 +T:1:1:33:5 +T:1:1:33:4 +T:2:1:33:5 +T:2:2:33:5 +T:4:4:40:6 +T:5:5:33:7 +T:6:5:44:5 +T:7:6:40:7 #1 +T:8:8:60:7 +T:9:8:50:6 +T:9:9:50:6 +T:9:9:50:6 +T:11:10:50:6 +T:12:12:50:5 +T:13:12:50:5 +T:14:12:50:5 #2 +T:15:12:50:5 +T:16:14:33:6 +T:18:15:50:8 +T:20:20:60:25 +T:10:2:30:9 +T:25:18:60:9 +T:28:20:70:12 +T:28:20:60:13 #3 +T:31:25:70:30 +T:35:35:80:25 +T:40:30:70:25 +T:99:0:0:0 +T:42:30:80:40 +T:45:50:70:50 +T:49:100:80:200 + +# Craft +R:7:1 +T:1:1:20:4 #0 +T:2:2:20:4 +T:3:3:30:3 +T:5:5:35:5 +T:6:5:35:5 +T:8:6:45:6 +T:9:5:35:5 +T:10:5:35:5 +T:12:12:45:4 #1 +T:15:14:40:4 +T:17:15:60:6 +T:20:17:75:80 +T:23:18:85:50 +T:26:22:50:4 +T:29:30:60:5 +T:38:65:95:50 +T:12:12:45:12 #2 +T:14:10:75:120 +T:20:20:85:60 +T:24:12:60:10 +T:30:55:80:50 +T:34:70:80:150 +T:41:80:90:200 +T:45:55:70:200 +T:14:14:65:50 #3 +T:30:32:75:150 +T:36:45:90:200 +T:38:80:95:200 +T:38:100:95:200 +T:40:100:90:250 +T:43:100:70:250 +T:47:70:80:250 + +# Deamon +R:8:1 +T:99:0:0:0 #0 +T:2:1:22:1 +T:3:2:25:4 +T:4:5:30:4 +T:7:5:45:4 +T:99:0:0:0 +T:11:9:35:5 +T:99:0:0:0 +T:15:14:45:9 #1 +T:17:15:60:10 +T:20:18:50:11 +T:99:0:0:0 +T:99:0:0:0 +T:30:75:80:30 +T:99:0:0:0 +T:36:70:85:40 +T:12:12:45:9 #2 +T:15:20:60:20 +T:99:0:0:0 +T:99:0:0:0 +T:35:40:80:100 +T:99:0:0:0 +T:99:0:0:0 +T:99:0:0:0 +T:9:9:50:8 #3 +T:26:25:85:35 +T:99:0:0:0 +T:99:0:0:0 +T:43:100:90:250 +T:99:0:0:0 +T:99:0:0:0 +T:49:80:85:250 + +# Crusade +R:9:1 +T:99:0:0:0 #0 +T:2:1:15:4 +T:4:3:25:1 +T:6:4:30:2 +T:7:5:34:4 +T:9:7:30:2 +T:99:0:0:0 +T:15:11:55:4 +T:17:15:55:10 #1 +T:99:0:0:0 +T:99:0:0:0 +T:23:20:70:5 +T:26:24:50:7 +T:29:23:60:10 +T:99:0:0:0 +T:99:0:0:0 +T:6:5:33:40 #2 +T:18:14:50:50 +T:21:16:60:70 +T:99:0:0:0 +T:99:0:0:0 +T:34:75:95:100 +T:99:0:0:0 +T:44:100:90:250 +T:9:9:50:80 #3 +T:30:35:80:250 +T:32:32:75:100 +T:36:22:80:150 +T:40:40:80:150 +T:99:0:0:0 +T:99:0:0:0 +T:48:100:85:250 diff -urN hengband/lib/edit/s_info.txt hengband-s/lib/edit/s_info.txt --- hengband/lib/edit/s_info.txt Wed Oct 25 23:17:58 2006 +++ hengband-s/lib/edit/s_info.txt Mon Apr 02 21:02:14 2007 @@ -8967,3 +8967,335 @@ S:0:0:7000 # SUDE S:1:4000:8000 # NITOURYU S:2:0:0 # RIDING + +### ROGUE ### +N:27 +# Bow +W:0:0:0:4 # 0 +W:0:1:0:4 # +W:0:2:0:3 # SLING +W:0:3:0:4 # +W:0:4:0:4 # +W:0:5:0:4 # +W:0:6:0:4 # +W:0:7:0:4 # +W:0:8:0:4 # +W:0:9:0:4 # +W:0:10:0:4 # 10 +W:0:11:0:4 # +W:0:12:0:3 # SHORT_BOW +W:0:13:0:3 # LONG_BOW +W:0:14:0:4 # +W:0:15:0:4 # +W:0:16:0:4 # +W:0:17:0:4 # +W:0:18:0:4 # +W:0:19:0:4 # +W:0:20:0:4 # 20 +W:0:21:0:4 # +W:0:22:0:4 # +W:0:23:0:3 # LIGHT_XBOW +W:0:24:0:3 # HEAVY_XBOW +W:0:25:0:4 # +W:0:26:0:4 # +W:0:27:0:4 # +W:0:28:0:4 # +W:0:29:0:4 # +W:0:30:0:4 # 30 +W:0:31:0:4 # +W:0:32:0:4 # +W:0:33:0:4 # +W:0:34:0:4 # +W:0:35:0:4 # +W:0:36:0:4 # +W:0:37:0:4 # +W:0:38:0:4 # +W:0:39:0:4 # +W:0:40:0:4 # 40 +W:0:41:0:4 # +W:0:42:0:4 # +W:0:43:0:4 # +W:0:44:0:4 # +W:0:45:0:4 # +W:0:46:0:4 # +W:0:47:0:4 # +W:0:48:0:4 # +W:0:49:0:4 # +W:0:50:0:4 # 50 +W:0:51:0:4 # +W:0:52:0:4 # +W:0:53:0:4 # +W:0:54:0:4 # +W:0:55:0:4 # +W:0:56:0:4 # +W:0:57:0:4 # +W:0:58:0:4 # +W:0:59:0:4 # +W:0:60:0:4 # 60 +W:0:61:0:4 # +W:0:62:0:4 # +W:0:63:1:4 # NAMAKE +# Digging +W:1:0:0:3 # 0 +W:1:1:1:4 # SHOVEL +W:1:2:1:4 # GNOMISH_SHOVEL +W:1:3:1:4 # DWARVEN_SHOVEL +W:1:4:1:4 # PICK +W:1:5:1:4 # ORCISH_PICK +W:1:6:1:4 # DWARVEN_PICK +W:1:7:1:4 # MATTOCK +W:1:8:0:3 # +W:1:9:0:3 # +W:1:10:0:3 # 10 +W:1:11:0:3 # +W:1:12:0:3 # +W:1:13:0:3 # +W:1:14:0:3 # +W:1:15:0:3 # +W:1:16:0:3 # +W:1:17:0:3 # +W:1:18:0:3 # +W:1:19:0:3 # +W:1:20:0:3 # 20 +W:1:21:0:3 # +W:1:22:0:3 # +W:1:23:0:3 # +W:1:24:0:3 # +W:1:25:0:3 # +W:1:26:0:3 # +W:1:27:0:3 # +W:1:28:0:3 # +W:1:29:0:3 # +W:1:30:0:3 # 30 +W:1:31:0:3 # +W:1:32:0:3 # +W:1:33:0:3 # +W:1:34:0:3 # +W:1:35:0:3 # +W:1:36:0:3 # +W:1:37:0:3 # +W:1:38:0:3 # +W:1:39:0:3 # +W:1:40:0:3 # 40 +W:1:41:0:3 # +W:1:42:0:3 # +W:1:43:0:3 # +W:1:44:0:3 # +W:1:45:0:3 # +W:1:46:0:3 # +W:1:47:0:3 # +W:1:48:0:3 # +W:1:49:0:3 # +W:1:50:0:3 # 50 +W:1:51:0:3 # +W:1:52:0:3 # +W:1:53:0:3 # +W:1:54:0:3 # +W:1:55:0:3 # +W:1:56:0:3 # +W:1:57:0:3 # +W:1:58:0:3 # +W:1:59:0:3 # +W:1:60:0:3 # 60 +W:1:61:0:3 # +W:1:62:0:3 # +W:1:63:0:3 # +# Hafted +W:2:0:0:2 # 0 +W:2:1:0:3 # CLUB +W:2:2:1:4 # WHIP +W:2:3:0:2 # QUARTERSTAFF +W:2:4:1:3 # NUNCHAKU +W:2:5:0:2 # MACE +W:2:6:0:2 # BALL_AND_CHAIN +W:2:7:0:2 # JO_STAFF +W:2:8:0:3 # WAR_HAMMER +W:2:9:0:2 # +W:2:10:0:2 # 10 +W:2:11:0:2 # THREE_PIECE_ROD +W:2:12:0:2 # MORNING_STAR +W:2:13:0:2 # FLAIL +W:2:14:0:2 # BO_STAFF +W:2:15:0:2 # LEAD_FILLED_MACE +W:2:16:0:2 # TETSUBO +W:2:17:0:2 # +W:2:18:0:2 # TWO_HANDED_FLAIL +W:2:19:0:2 # GREAT_HAMMER +W:2:20:0:2 # MACE_OF_DISRUPTION +W:2:21:0:1 # WIZSTAFF +W:2:22:0:2 # +W:2:23:0:2 # +W:2:24:0:2 # +W:2:25:0:2 # +W:2:26:0:2 # +W:2:27:0:2 # +W:2:28:0:2 # +W:2:29:0:2 # +W:2:30:0:2 # 30 +W:2:31:0:2 # +W:2:32:0:2 # +W:2:33:0:2 # +W:2:34:0:2 # +W:2:35:0:2 # +W:2:36:0:2 # +W:2:37:0:2 # +W:2:38:0:2 # +W:2:39:0:2 # +W:2:40:0:0 # TSURIZAO +W:2:41:0:2 # +W:2:42:0:2 # +W:2:43:0:2 # +W:2:44:0:2 # +W:2:45:0:2 # +W:2:46:0:2 # +W:2:47:0:2 # +W:2:48:0:2 # +W:2:49:0:2 # +W:2:50:0:1 # GROND +W:2:51:0:2 # +W:2:52:0:2 # +W:2:53:0:2 # +W:2:54:0:2 # +W:2:55:0:2 # +W:2:56:0:2 # +W:2:57:0:2 # +W:2:58:0:2 # +W:2:59:0:2 # +W:2:60:0:2 # 60 +W:2:61:0:2 # +W:2:62:0:2 # +W:2:63:0:4 # NAMAKE +# Polearm +W:3:0:0:2 # 0 +W:3:1:0:3 # HATCHET +W:3:2:0:3 # SPEAR +W:3:3:0:3 # SICKLE +W:3:4:0:2 # AWL_PIKE +W:3:5:0:3 # TRIDENT +W:3:6:0:2 # FAUCHARD +W:3:7:0:2 # BROAD_SPEAR +W:3:8:0:2 # PIKE +W:3:9:0:2 # NAGINATA +W:3:10:0:2 # BEAKED_AXE +W:3:11:0:2 # BROAD_AXE +W:3:12:0:2 # LUCERNE_HAMMER +W:3:13:0:2 # GLAIVE +W:3:14:0:2 # LAJATANG +W:3:15:0:2 # HALBERD +W:3:16:0:2 # GUISARME +W:3:17:0:2 # SCYTHE +W:3:18:0:2 # +W:3:19:0:2 # +W:3:20:0:2 # LANCE +W:3:21:0:2 # +W:3:22:0:2 # BATTLE_AXE +W:3:23:0:2 # +W:3:24:0:2 # +W:3:25:0:2 # GREAT_AXE +W:3:26:0:2 # TRIFURCATE_SPEAR +W:3:27:0:2 # +W:3:28:0:2 # LOCHABER_AXE +W:3:29:0:2 # HEAVY_LANCE +W:3:30:0:2 # SCYTHE_OF_SLICING +W:3:31:0:2 # +W:3:32:0:2 # +W:3:33:0:2 # +W:3:34:0:2 # +W:3:35:0:2 # +W:3:36:0:2 # +W:3:37:0:2 # +W:3:38:0:2 # +W:3:39:0:2 # +W:3:40:0:2 # 40 +W:3:41:0:2 # +W:3:42:0:2 # +W:3:43:0:2 # +W:3:44:0:2 # +W:3:45:0:2 # +W:3:46:0:2 # +W:3:47:0:2 # +W:3:48:0:2 # +W:3:49:0:2 # +W:3:50:0:2 # DEATH_SCYTHE +W:3:51:0:2 # +W:3:52:0:2 # +W:3:53:0:2 # +W:3:54:0:2 # +W:3:55:0:2 # +W:3:56:0:2 # +W:3:57:0:2 # +W:3:58:0:2 # +W:3:59:0:2 # +W:3:60:0:2 # 60 +W:3:61:0:2 # +W:3:62:0:2 # +W:3:63:0:2 # +# Sword +W:4:0:0:2 # 0 +W:4:1:1:4 # BROKEN_DAGGER +W:4:2:1:4 # BROKEN_SWORD +W:4:3:0:2 # +W:4:4:1:4 # DAGGER +W:4:5:1:4 # MAIN_GAUCHE +W:4:6:1:4 # TANTO +W:4:7:0:4 # RAPIER +W:4:8:1:4 # SMALL_SWORD +W:4:9:0:3 # BASILLARD +W:4:10:1:4 # SHORT_SWORD +W:4:11:0:4 # SABRE +W:4:12:0:4 # CUTLASS +W:4:13:0:4 # WAKIZASHI +W:4:14:0:4 # KHOPESH +W:4:15:0:4 # TULWAR +W:4:16:0:3 # BROAD_SWORD +W:4:17:0:3 # LONG_SWORD +W:4:18:0:3 # SCIMITAR +W:4:19:0:3 # NINJATO +W:4:20:0:4 # KATANA +W:4:21:0:3 # BASTARD_SWORD +W:4:22:0:2 # GREAT_SCIMITAR +W:4:23:0:2 # CLAYMORE +W:4:24:0:2 # ESPADON +W:4:25:0:2 # TWO_HANDED_SWORD +W:4:26:0:2 # FLAMBERGE +W:4:27:0:2 # NO_DACHI +W:4:28:0:2 # EXECUTIOERS_SWORD +W:4:29:0:2 # ZWEIHANDER +W:4:30:0:2 # BLADE_OF_CHAOS +W:4:31:0:2 # DIAMOND_EDGE +W:4:32:0:2 # DOKUBARI +W:4:33:0:2 # +W:4:34:0:2 # +W:4:35:0:2 # +W:4:36:0:2 # +W:4:37:0:2 # +W:4:38:0:2 # +W:4:39:0:2 # +W:4:40:0:2 # 40 +W:4:41:0:2 # +W:4:42:0:2 # +W:4:43:0:2 # +W:4:44:0:2 # +W:4:45:0:2 # +W:4:46:0:2 # +W:4:47:0:2 # +W:4:48:0:2 # +W:4:49:0:2 # +W:4:50:0:2 # 50 +W:4:51:0:2 # +W:4:52:0:2 # +W:4:53:0:2 # +W:4:54:0:2 # +W:4:55:0:2 # +W:4:56:0:2 # +W:4:57:0:2 # +W:4:58:0:2 # +W:4:59:0:2 # +W:4:60:0:2 # 60 +W:4:61:0:2 # +W:4:62:0:2 # +W:4:63:0:2 # +# Skill +S:0:0:8000 # SUDE +S:1:4000:8000 # NITOURYU +S:2:0:2000 # RIDING diff -urN hengband/lib/edit/t0000001.txt hengband-s/lib/edit/t0000001.txt --- hengband/lib/edit/t0000001.txt Wed Oct 25 23:17:58 2006 +++ hengband-s/lib/edit/t0000001.txt Wed Apr 04 01:17:13 2007 @@ -88,6 +88,11 @@ F:b:BUILDING_1:3:0:0:0:0:NONE:14 F:!:FLOOR:3:0:43 +# Gnomish Shovel +?:[AND [EQU $QUEST1 3] [EQU $CLASS Spelunker] ] +F:b:BUILDING_1:3:0:0:0:0:NONE:14 +F:!:FLOOR:3:0:85 + # Quest 1 finished, continue with quest 14 ?:[EQU $QUEST1 4] F:b:BUILDING_1:3:0:0:0:0:NONE:14 @@ -402,6 +407,11 @@ ?:[AND [EQU $QUEST27 3] [EQU $CLASS Imitator] ] F:a:BUILDING_0:3 F:@:FLOOR:3:0:0:0:220 + +# Quest 27 rewarding (Spelunker gets the Mattock of Nain) +?:[AND [EQU $QUEST27 3] [EQU $CLASS Spelunker] ] +F:a:BUILDING_0:3 +F:@:FLOOR:3:0:0:0:211 # Quest 27 finished, no new quest is available ?:[EQU $QUEST27 4] diff -urN hengband/lib/edit/t0000002.txt hengband-s/lib/edit/t0000002.txt --- hengband/lib/edit/t0000002.txt Wed Oct 25 23:17:58 2006 +++ hengband-s/lib/edit/t0000002.txt Mon Apr 02 21:23:41 2007 @@ -336,8 +336,8 @@ B:7:A:0:武器を強化する:400:800:w:23:0 B:$7:A:1:Enchant armor:300:600:a:24:0 B:7:A:1:防具を強化する:300:600:a:24:0 -B:$7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0 -B:7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0 +B:$7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 +B:7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 B:$9:N:Temple of Life:Crysania:Human B:9:N:生命魔術の塔:クリサニア:人間 @@ -354,8 +354,8 @@ B:10:A:1:一泊する:0:100:r:17:0 B:$10:A:2:Identify possessions:100:2000:i:26:0 B:10:A:2:持ち物全てを鑑定:100:2000:i:26:0 -B:$10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$11:N:Archers Guild:Trallin:Half-elf B:11:N:アーチャーのギルド:トゥラリン:ハーフエルフ @@ -363,8 +363,8 @@ B:11:A:0:矢や石等を強化する:20:40:a:30:0 B:$11:A:1:Enchant bow:400:800:b:31:0 B:11:A:1:弓を強化する:400:800:b:31:0 -B:$11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 -B:11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 +B:$11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 +B:11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 B:$12:N:Paladins Guild:Langordathur:Human B:12:N:パラディンのギルド:ランゴルダスール:人間 @@ -372,8 +372,8 @@ B:12:A:0:防具を強化する:300:600:a:24:0 B:$12:A:1:See Healers:0:150:h:28:0 B:12:A:1:治療家に会う:0:150:h:28:0 -B:$12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 D:###################################################################################################################################################################################################### D:#---------------------TTTT-------------------------------------------------------------TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT# diff -urN hengband/lib/edit/t0000003.txt hengband-s/lib/edit/t0000003.txt --- hengband/lib/edit/t0000003.txt Wed Oct 25 23:17:58 2006 +++ hengband-s/lib/edit/t0000003.txt Mon Apr 02 21:25:47 2007 @@ -287,8 +287,8 @@ B:7:A:1:防具を強化する:300:600:a:24:0 B:$7:A:2:Request quest:0:0:q:6:0 B:7:A:2:クエスト:0:0:q:6:0 -B:$7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 -B:7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 +B:$7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0:0 +B:7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0:0 B:$8:N:Tower of Sorcery:Tanistil:Elf B:8:N:賢者の塔:タニスティル:エルフ @@ -319,8 +319,8 @@ B:10:A:2:持ち物全てを鑑定:100:600:i:26:0 B:$10:A:3:request Quest:0:0:q:6:0 B:10:A:3:クエスト:0:0:q:6:0 -B:$10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$11:N:Archers Guild:Angros:Elf B:11:N:アーチャーのギルド:アングロス:エルフ @@ -328,8 +328,8 @@ B:11:A:0:矢や石等を強化する:20:40:a:30:0 B:$11:A:1:Enchant bow:400:800:b:31:0 B:11:A:1:弓を強化する:400:800:b:31:0 -B:$11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 -B:11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 +B:$11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 +B:11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 B:$12:N:Paladins Guild:Vilios:Human B:12:N:パラディンのギルド:ヴィリオス:人間 @@ -337,8 +337,8 @@ B:12:A:0:防具を強化する:400:1000:a:24:0 B:$12:A:1:See Healers:0:150:h:28:0 B:12:A:1:治療家に会う:0:150:h:28:0 -B:$12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$13:N:Trump Tower:Pelloi:Amberite B:13:N:トランプ魔術の塔:ペロイ:アンバライト diff -urN hengband/lib/edit/t0000004.txt hengband-s/lib/edit/t0000004.txt --- hengband/lib/edit/t0000004.txt Wed Oct 25 23:17:58 2006 +++ hengband-s/lib/edit/t0000004.txt Mon Apr 02 21:27:27 2007 @@ -194,8 +194,8 @@ B:7:A:1:防具を強化する:200:500:a:24:0 B:$7:A:2:Request quest:0:0:q:6:0 B:7:A:2:クエスト:0:0:q:6:0 -B:$7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0 -B:7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0 +B:$7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 +B:7:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 B:$8:N:Wizards Tower:Valceronwe:Sprite B:8:N:賢者の塔:ヴァルセロン:妖精 @@ -205,8 +205,8 @@ B:8:A:1:全てのアイテムを再充填:0:0:a:45:0 B:$8:A:2:Identify posessions:200:1000:i:26:0 B:8:A:2:持ち物全てを鑑定:200:1000:i:26:0 -B:$8:C:0:2:0:0:1:0:1:0:0:0:2:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 -B:8:C:0:2:0:0:1:0:1:0:0:0:2:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 +B:$8:C:0:2:0:0:1:0:1:0:0:0:2:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:8:C:0:2:0:0:1:0:1:0:0:0:2:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$9:N:Inner Temple:Kabir:Dwarf B:9:N:寺院:カビー:ドワーフ @@ -214,8 +214,8 @@ B:9:A:0:治療の祈祷:0:100:h:28:0 B:$9:A:1:Restoration:300:1000:r:29:0 B:9:A:1:能力回復:300:1000:r:29:0 -B:$9:C:0:0:2:0:0:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:9:C:0:0:2:0:0:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$9:C:0:0:2:0:0:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:9:C:0:0:2:0:0:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$10:N:Thieves Den:Molvrae:Dark Elf B:10:N:盗賊のアジト:モルブラエ:ダーク・エルフ @@ -223,8 +223,8 @@ B:10:A:1:一泊する:0:50:r:17:0 B:$10:A:2:Identify possessions:175:800:i:26:0 B:10:A:2:持ち物全てを鑑定:175:800:i:26:0 -B:$10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:10:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$11:N:Archers Tavern:Celegail:Elf B:11:N:アーチャーの酒場:ケレガイル:エルフ @@ -232,8 +232,8 @@ B:11:A:0:矢や石等を強化する:22:44:a:30:0 B:$11:A:1:Enchant bow:400:500:b:31:0 B:11:A:1:弓を強化する:400:500:b:31:0 -B:$11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 -B:11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 +B:$11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 +B:11:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 B:$12:N:Paladins Sanctum:Calpirosse:Half-Elf B:12:N:パラディンの聖所:カルパイロス:ハーフエルフ @@ -241,8 +241,8 @@ B:12:A:0:防具を強化する:240:440:a:24:0 B:$12:A:1:See Healers:0:100:h:28:0 B:12:A:1:治療家に会う:0:100:h:28:0 -B:$12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:12:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$13:N:Trump Tower:Colleuse:Amberite B:13:N:トランプ魔術の塔:コレウス:アンバライト diff -urN hengband/lib/edit/t_lite.txt hengband-s/lib/edit/t_lite.txt --- hengband/lib/edit/t_lite.txt Wed Oct 25 23:17:58 2006 +++ hengband-s/lib/edit/t_lite.txt Mon Apr 02 21:33:07 2007 @@ -102,6 +102,11 @@ F:b:BUILDING_1:3:0:0:0:0:NONE:2 F:!:FLOOR:3:0:43 +# Dwarven Shovel +?:[AND [EQU $QUEST1 3] [EQU $CLASS Spelunker] ] +F:b:BUILDING_1:3:0:0:0:0:NONE:14 +F:!:FLOOR:3:0:43 + # Quest 1 finished, continue with quest 14 ?:[EQU $QUEST1 4] F:b:BUILDING_1:3:0:0:0:0:NONE:2 @@ -337,6 +342,11 @@ F:b:BUILDING_1:3:0:0:0:0:NONE:15 F:!:FLOOR:3:0:0:0:220 +# Quest 27 rewarding (Spelunker gets the Mattock of Nain) +?:[AND [EQU $QUEST27 3] [EQU $CLASS Spelunker] ] +F:a:BUILDING_0:3 +F:@:FLOOR:3:0:0:0:211 + # Quest 27 finished, continue with quest 15 ?:[EQU $QUEST27 4] F:b:BUILDING_1:3:0:0:0:0:NONE:15 @@ -564,8 +574,8 @@ B:6:A:0:武器を強化する:400:800:w:23:0 B:$6:A:1:Enchant armor:300:600:a:24:0 B:6:A:1:防具を強化する:300:600:a:24:0 -B:$6:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0 -B:6:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0 +B:$6:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 +B:6:C:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:2:0:0:2:2:2:0:0:0 B:$7:N:Temple of Life:Crysania:Human B:7:N:生命魔術の塔:クリサニア:人間 @@ -582,8 +592,8 @@ B:8:A:1:一泊する:0:100:r:17:0 B:$8:A:2:Identify possessions:100:2000:i:26:0 B:8:A:2:持ち物全てを鑑定:100:2000:i:26:0 -B:$8:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:8:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$8:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:8:C:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$9:N:Archers Guild:Trallin:Half-elf B:9:N:アーチャーのギルド:トゥラリン:ハーフエルフ @@ -591,8 +601,8 @@ B:9:A:0:矢や石等を強化する:20:40:a:30:0 B:$9:A:1:Enchant bow:400:800:b:31:0 B:9:A:1:弓を強化する:400:800:b:31:0 -B:$9:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 -B:9:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0 +B:$9:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 +B:9:C:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0 B:$10:N:Paladins Guild:Langordathur:Human B:10:N:パラディンのギルド:ランゴルダスール:人間 @@ -600,8 +610,8 @@ B:10:A:0:防具を強化する:300:600:a:24:0 B:$10:A:1:See Healers:0:200:h:28:0 B:10:A:1:治療家に会う:0:200:h:28:0 -B:$10:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 -B:10:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:$10:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 +B:10:C:0:0:0:0:0:2:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 B:$11:N:Tower of Sorcery:Tanistil:Elf B:11:N:仙術の塔:タニスティル:エルフ diff -urN hengband/lib/help/editor.txt hengband-s/lib/help/editor.txt --- hengband/lib/help/editor.txt Wed Oct 25 23:18:00 2006 +++ hengband-s/lib/help/editor.txt Mon Apr 02 21:36:55 2007 @@ -323,7 +323,7 @@ Tourist, Imitator, BeastMaster, Sorcerer, Archer, Magic-Eater, Bard, Red-Mage, Samurai, ForceTrainer, Blue-Mage, Cavalry, Berserker, Weaponsmith, Mirror-Master, - Ninja + Ninja, Spelunker $PLAYER Returns player name. diff -urN hengband/lib/help/jeditor.txt hengband-s/lib/help/jeditor.txt --- hengband/lib/help/jeditor.txt Wed Oct 25 23:18:00 2006 +++ hengband-s/lib/help/jeditor.txt Mon Apr 02 21:36:10 2007 @@ -553,7 +553,7 @@ Chaos-Warrior, Monk, Mindcrafter, High-Mage, Tourist, Imitator, BeastMaster, Sorcerer, Archer, Magic-Eater, Bard, Red-Mage, Samurai, ForceTrainer, Blue-Mage, Cavalry, Berserker, Weaponsmith, - Mirror-Master, Ninja + Mirror-Master, Ninja, Spelunker のどれか $PLAYER diff -urN hengband/lib/help/jmagic.txt hengband-s/lib/help/jmagic.txt --- hengband/lib/help/jmagic.txt Wed Oct 25 23:18:00 2006 +++ hengband-s/lib/help/jmagic.txt Mon Apr 02 21:41:13 2007 @@ -30,8 +30,8 @@ 職業によっては選べない領域もあります。下の表で「1」とあるのは第一領域 としか選択できないもの、「2」とあるのは第二領域としか選択できないもの、 1/2とあるのはどちらにも選べるものです。「1」しかない職業は第二領域を -選べません。例外はスペルマスターと赤魔道師で、彼らは全ての魔法領域を同 -時に使用する事ができます。 +選べません。例外はスペルマスターと赤魔道師と洞窟探検家で、彼らは全ての +魔法領域を同時に使用する事ができます。 ト | | | |カ | |ラ | | | | @@ -52,7 +52,7 @@ 練気術師 | 1 | | 1 | | 1 | | | 1 | | 1 スペルマスター| 全ての魔法領域 赤魔道師 | 全ての魔法領域(下位魔法書のみ) - +洞窟探検家  | 全ての魔法領域 --- 職業固有の魔法 --- diff -urN hengband/lib/help/jraceclas.txt hengband-s/lib/help/jraceclas.txt --- hengband/lib/help/jraceclas.txt Wed Oct 25 23:18:00 2006 +++ hengband-s/lib/help/jraceclas.txt Thu Apr 05 20:11:11 2007 @@ -417,7 +417,7 @@ ***** === 職業 === -変愚蛮怒には27の職業があり、各々に長所と短所およびキャラクターの能 +変愚蛮怒には28の職業があり、各々に長所と短所およびキャラクターの能 力への補正があります。多くの職業にはまた固有の能力があります。それらは 往々にしてレベルに依存し、ゲーム後半にならないと使えないものもありま す。 @@ -911,6 +911,16 @@ かに速く走る事ができます。 +***** +--- 洞窟探検家 --- + + 洞窟探検家は最低のHPを持ちます。高いダメージを受けることは致命的 +  です。 + + 洞窟探検家は呪文を使うために学習をする必要はなく、魔法書を持ってい +  てレベルが足りていれば9つ全ての魔法領域の呪文を、敵にダメージを与 + える呪文を除き熟練したメイジと同じくらいに上手く使う事ができます。 + ***** === 性格 === @@ -1093,7 +1103,7 @@ 鍛冶師 +3 -1 -1 +1 +0 -1 +6 +30% 鏡使い -2 +3 +1 -1 -2 +1 +2 +30% 忍者 +0 -1 -1 +3 +2 -1 +2 +20% - +洞窟探検家 +2 +1 -2 +3 -4 -1 +4 +25% --- Table 3 - Personality Statistic Bonus Table --- @@ -1191,6 +1201,7 @@ 鍛冶師 30+10 28+10 28+10 1 20 10 60+21 45+15 鏡使い 30+10 33+11 40+12 3 14 16 34+6 30+10 忍者 45+15 24+10 36+10 8 48 32 70+25 66+18 +洞窟探検家 45+15 37+12 36+10 5 32 24 60+21 40+18 各職業の技能値を示す 2つの数値は初期技能と10レベルあたりの上昇速度を示 しています。例えば、戦士の解除技能は 25+12 ですから、30レベルに到達し diff -urN hengband/lib/help/raceclas.txt hengband-s/lib/help/raceclas.txt --- hengband/lib/help/raceclas.txt Wed Oct 25 23:18:00 2006 +++ hengband-s/lib/help/raceclas.txt Thu Apr 05 20:11:55 2007 @@ -462,7 +462,7 @@ ***** === The Classes === -There are twenty seven different classes that you can choose from in +There are twenty eight different classes that you can choose from in Hengband. Each class has various strengths and weaknesses and its own adjustments to a character's stats and abilities. Many classes also have intrinsic abilities and powers. These are often linked to the @@ -988,6 +988,13 @@ extremely fast. +***** +--- Spelunker --- + A Spelunker has the worst HP. + + They can cast any spell from any spellbooks of all nine magic + realms except damaging spells with 'Master' proficiency level + without having to learn it. ***** === The Personality === @@ -1175,7 +1182,7 @@ Weaponsmith +3 -1 -1 +1 +0 -1 +6 +30% Mirror-Master -2 +3 +1 -1 -2 +1 +2 +30% Ninja +0 -1 -1 +3 +2 -1 +2 +20% - +Spelunker +2 +1 -2 +3 -4 -1 +4 +0% --- Table 3 - Personality Statistic Bonus Table --- @@ -1276,6 +1283,7 @@ Weaponsmith 30+10 28+10 28+10 1 20 10 60+21 45+15 Mirror-Master 30+10 33+11 40+12 3 14 16 34+6 30+10 Ninja 45+15 24+10 36+10 8 48 32 70+25 66+18 +Spelunker 45+15 37+12 36+10 5 32 24 60+21 40+18 For character classes, there are two figures: the first figure is the base level of the ability, while the second figure is the bonus that diff -urN hengband/src/autopick.c hengband-s/src/autopick.c --- hengband/src/autopick.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/autopick.c Tue Apr 03 20:26:48 2007 @@ -599,6 +599,7 @@ if (REALM1_BOOK == o_ptr->tval && p_ptr->pclass != CLASS_SORCERER && + p_ptr->pclass != CLASS_SPELUNKER && p_ptr->pclass != CLASS_RED_MAGE) { ADD_FLG(FLG_REALM1); @@ -607,6 +608,7 @@ if (REALM2_BOOK == o_ptr->tval && p_ptr->pclass != CLASS_SORCERER && + p_ptr->pclass != CLASS_SPELUNKER && p_ptr->pclass != CLASS_RED_MAGE) { ADD_FLG(FLG_REALM2); @@ -1262,6 +1264,7 @@ if (IS_FLG(FLG_REALM1) && (REALM1_BOOK != o_ptr->tval || p_ptr->pclass == CLASS_SORCERER || + p_ptr->pclass == CLASS_SPELUNKER || p_ptr->pclass == CLASS_RED_MAGE)) return FALSE; @@ -1269,6 +1272,7 @@ if (IS_FLG(FLG_REALM2) && (REALM2_BOOK != o_ptr->tval || p_ptr->pclass == CLASS_SORCERER || + p_ptr->pclass == CLASS_SPELUNKER || p_ptr->pclass == CLASS_RED_MAGE)) return FALSE; diff -urN hengband/src/avatar.c hengband-s/src/avatar.c --- hengband/src/avatar.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/avatar.c Mon Apr 02 22:23:14 2007 @@ -303,6 +303,9 @@ p_ptr->vir_types[i++] = V_FAITH; p_ptr->vir_types[i++] = V_UNLIFE; break; + case CLASS_SPELUNKER: + p_ptr->vir_types[i++] = V_ENLIGHTEN; + break; }; /* Get one virtue based on race */ diff -urN hengband/src/birth.c hengband-s/src/birth.c --- hengband/src/birth.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/birth.c Tue Apr 03 21:00:38 2007 @@ -1821,7 +1821,9 @@ "鏡使いは、魔力の込められた鏡を作り出して、それを触媒として攻撃を行なうことができる鏡魔法を使います。鏡使いは鏡の上で実力を発揮し、鏡の上では素早いテレポートが可能となります。魔法の鏡は、レベルによって一度に制御できる数が制限されます。鏡魔法に必要な能力は知能です。", -"忍者は暗闇に潜む恐るべき暗殺者であり、光源を持たずに行動し、相手の不意をつき一撃で息の根を止めます。また、相手を惑わすための忍術も身につけます。罠やドアを見つける能力に優れ、罠の解除や鍵開けに熟達しています。軽装を好み、重い鎧や武器を装備すると著しく動きが制限され、また、盾を装備しようとはしません。軽装ならば、レベルが上がるにつれより速くより静かに行動できます。さらに忍者は恐怖せず、成長すれば毒がほとんど効かなくなり、透明なものを見ることができるようになります。忍術に必要な能力は器用さです。" +"忍者は暗闇に潜む恐るべき暗殺者であり、光源を持たずに行動し、相手の不意をつき一撃で息の根を止めます。また、相手を惑わすための忍術も身につけます。罠やドアを見つける能力に優れ、罠の解除や鍵開けに熟達しています。軽装を好み、重い鎧や武器を装備すると著しく動きが制限され、また、盾を装備しようとはしません。軽装ならば、レベルが上がるにつれより速くより静かに行動できます。さらに忍者は恐怖せず、成長すれば毒がほとんど効かなくなり、透明なものを見ることができるようになります。忍術に必要な能力は器用さです。", + +"洞窟探検家は最低のHPを持ちます。高いダメージを受けることは致命的です。洞窟探検家は呪文を使うために学習をする必要はなく、魔法書を持っていてレベルが足りていれば9つ全ての魔法領域の呪文を、敵にダメージを与える呪文を除き熟練したメイジと同じくらいに上手く使う事ができます。魔法に必要な能力は知能です。" #else @@ -1877,7 +1879,9 @@ "Mirror-Masters are spell casters; like other mages, they must live by their wits. They can create magical mirrors, and employ them in the casting of Mirror-Magic spells. A Mirror-Master standing on a mirror has greater ability and, for example, can perform quick teleports. The maximum number of Magical Mirrors which can be controlled simultaneously depends on the level. Intelligence determines a Mirror-Master's spell casting ability.", -"A Ninja is a fearful assassin lurking in darkness. He or she can navigate effectively with no light source, catch enemies unawares, and kill with a single blow. Ninjas can use Ninjutsu, and are good at locating hidden traps and doors, disarming traps and picking locks. Since heavy armors, heavy weapons, or shields will restrict their motion greatly, they prefer light clothes, and become faster and more stealthy as they gain levels. A Ninja knows no fear and, at high level, becomes almost immune to poison and able to see invisible things. Dexterity determines a Ninja's ability to use Ninjutsu." +"A Ninja is a fearful assassin lurking in darkness. He or she can navigate effectively with no light source, catch enemies unawares, and kill with a single blow. Ninjas can use Ninjutsu, and are good at locating hidden traps and doors, disarming traps and picking locks. Since heavy armors, heavy weapons, or shields will restrict their motion greatly, they prefer light clothes, and become faster and more stealthy as they gain levels. A Ninja knows no fear and, at high level, becomes almost immune to poison and able to see invisible things. Dexterity determines a Ninja's ability to use Ninjutsu.", + +"A Spelunker has the worst HP. They can cast any spell from any spellbooks of all nine magic realms except damaging spells with 'Master' proficiency level without having to learn it. #endif }; @@ -2752,6 +2756,7 @@ for (i = 0; i < 64; i++) { if (p_ptr->pclass == CLASS_SORCERER) p_ptr->spell_exp[i] = SPELL_EXP_MASTER; + else if (p_ptr->pclass == CLASS_SPELUNKER) p_ptr->spell_exp[i] = SPELL_EXP_MASTER; else if (p_ptr->pclass == CLASS_RED_MAGE) p_ptr->spell_exp[i] = SPELL_EXP_SKILLED; else p_ptr->spell_exp[i] = SPELL_EXP_UNSKILLED; } @@ -2770,6 +2775,8 @@ /* Hitdice */ if (p_ptr->pclass == CLASS_SORCERER) p_ptr->hitdie = rp_ptr->r_mhp/2 + cp_ptr->c_mhp + ap_ptr->a_mhp; + else if (p_ptr->pclass == CLASS_SPELUNKER) + p_ptr->hitdie = rp_ptr->r_mhp/2 + cp_ptr->c_mhp + ap_ptr->a_mhp; else p_ptr->hitdie = rp_ptr->r_mhp + cp_ptr->c_mhp + ap_ptr->a_mhp; @@ -3288,6 +3295,11 @@ p_ptr->spell_learned1 = p_ptr->spell_learned2 = 0xffffffffL; p_ptr->spell_worked1 = p_ptr->spell_worked2 = 0xffffffffL; } + else if (p_ptr->pclass == CLASS_SPELUNKER) + { + p_ptr->spell_learned1 = p_ptr->spell_learned2 = 0xffffffffL; + p_ptr->spell_worked1 = p_ptr->spell_worked2 = 0xffffffffL; + } else { p_ptr->spell_learned1 = p_ptr->spell_learned2 = 0L; @@ -3721,6 +3733,12 @@ { TV_POTION, SV_POTION_SPEED }, { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR }, { TV_SWORD, SV_DAGGER } + }, + { + /* Spelunker */ + { TV_POTION, SV_POTION_SPEED }, + { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR }, + { TV_DIGGING, SV_SHOVEL } }, }; diff -urN hengband/src/cmd5.c hengband-s/src/cmd5.c --- hengband/src/cmd5.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/cmd5.c Tue Apr 03 20:34:34 2007 @@ -112,8 +112,10 @@ /* No "okay" spells */ if (!okay) return (FALSE); - if (((use_realm) != p_ptr->realm1) && ((use_realm) != p_ptr->realm2) && (p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE)) return FALSE; - if (((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE)) && !is_magic(use_realm)) return FALSE; + if (((use_realm) != p_ptr->realm1) && ((use_realm) != p_ptr->realm2) && (p_ptr->pclass != CLASS_SORCERER) + && (p_ptr->pclass != CLASS_RED_MAGE) && (p_ptr->pclass != CLASS_SPELUNKER)) return FALSE; + if (((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE) || + (p_ptr->pclass == CLASS_SPELUNKER)) && !is_magic(use_realm)) return FALSE; if ((p_ptr->pclass == CLASS_RED_MAGE) && ((use_realm) != REALM_ARCANE) && (sval > 1)) return FALSE; /* Assume cancelled */ @@ -454,7 +456,7 @@ cptr q, s; /* Warriors are illiterate */ - if (!(p_ptr->realm1 || p_ptr->realm2) && (p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE)) + if (!(p_ptr->realm1 || p_ptr->realm2) && (p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE) && (p_ptr->pclass != CLASS_SPELUNKER)) { #ifdef JP msg_print("本を読むことができない!"); @@ -1106,7 +1108,7 @@ cptr q, s; /* Require spell ability */ - if (!p_ptr->realm1 && (p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE)) + if (!p_ptr->realm1 && (p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE) && (p_ptr->pclass != CLASS_SPELUNKER)) { #ifdef JP msg_print("呪文を唱えられない!"); @@ -1201,7 +1203,7 @@ /* Access the item's sval */ sval = o_ptr->sval; - if ((p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE) && (o_ptr->tval == REALM2_BOOK)) increment = 32; + if ((p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE) && (p_ptr->pclass != CLASS_SPELUNKER) && (o_ptr->tval == REALM2_BOOK)) increment = 32; /* Track the object kind */ @@ -1210,7 +1212,7 @@ /* Hack -- Handle stuff */ handle_stuff(); - if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE)) + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE) || (p_ptr->pclass == CLASS_SPELUNKER)) realm = o_ptr->tval - TV_LIFE_BOOK + 1; else if (increment) realm = p_ptr->realm2; else realm = p_ptr->realm1; @@ -1381,7 +1383,8 @@ (p_ptr->spell_worked2 & (1L << spell)) : (p_ptr->spell_worked1 & (1L << spell))) && (p_ptr->pclass != CLASS_SORCERER) - && (p_ptr->pclass != CLASS_RED_MAGE)) + && (p_ptr->pclass != CLASS_RED_MAGE) + && (p_ptr->pclass != CLASS_SPELUNKER)) { int e = s_ptr->sexp; diff -urN hengband/src/cmd6.c hengband-s/src/cmd6.c --- hengband/src/cmd6.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/cmd6.c Tue Apr 03 02:00:49 2007 @@ -1969,7 +1969,11 @@ case SV_SCROLL_SPELL: { - if ((p_ptr->pclass == CLASS_WARRIOR) || (p_ptr->pclass == CLASS_IMITATOR) || (p_ptr->pclass == CLASS_MINDCRAFTER) || (p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_ARCHER) || (p_ptr->pclass == CLASS_MAGIC_EATER) || (p_ptr->pclass == CLASS_RED_MAGE) || (p_ptr->pclass == CLASS_SAMURAI) || (p_ptr->pclass == CLASS_BLUE_MAGE) || (p_ptr->pclass == CLASS_CAVALRY) || (p_ptr->pclass == CLASS_BERSERKER) || (p_ptr->pclass == CLASS_SMITH) || (p_ptr->pclass == CLASS_MIRROR_MASTER) || (p_ptr->pclass == CLASS_NINJA)) break; + if ((p_ptr->pclass == CLASS_WARRIOR) || (p_ptr->pclass == CLASS_IMITATOR) || (p_ptr->pclass == CLASS_MINDCRAFTER) || + (p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_ARCHER) || (p_ptr->pclass == CLASS_MAGIC_EATER) || + (p_ptr->pclass == CLASS_RED_MAGE)|| (p_ptr->pclass == CLASS_SAMURAI) || (p_ptr->pclass == CLASS_BLUE_MAGE) || + (p_ptr->pclass == CLASS_CAVALRY) || (p_ptr->pclass == CLASS_BERSERKER) || (p_ptr->pclass == CLASS_SMITH) || + (p_ptr->pclass == CLASS_MIRROR_MASTER) || (p_ptr->pclass == CLASS_NINJA) || (p_ptr->pclass == CLASS_SPELUNKER)) break; p_ptr->add_spells++; p_ptr->update |= (PU_SPELLS); ident = TRUE; diff -urN hengband/src/defines.h hengband-s/src/defines.h --- hengband/src/defines.h Wed Oct 25 23:17:58 2006 +++ hengband-s/src/defines.h Tue Apr 03 00:24:36 2007 @@ -195,7 +195,7 @@ /* * Maximum number of player "class" types (see "table.c", etc) */ -#define MAX_CLASS 27 +#define MAX_CLASS 28 #define MAX_SEIKAKU 12 @@ -904,6 +904,7 @@ #define CLASS_SMITH 24 #define CLASS_MIRROR_MASTER 25 #define CLASS_NINJA 26 +#define CLASS_SPELUNKER 27 #define SEIKAKU_FUTUU 0 #define SEIKAKU_CHIKARA 1 diff -urN hengband/src/dungeon.c hengband-s/src/dungeon.c --- hengband/src/dungeon.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/dungeon.c Thu Apr 05 21:29:00 2007 @@ -511,6 +511,7 @@ case CLASS_ROGUE: case CLASS_FORCETRAINER: case CLASS_MINDCRAFTER: + case CLASS_SPELUNKER: { /* Good sensing */ if (0 != randint0(20000L / (plev * plev + 40))) return; @@ -1752,7 +1753,9 @@ dam_desc = "solid rock"; #endif } - + if (p_ptr->pclass == CLASS_SPELUNKER) + take_hit(DAMAGE_NOESCAPE, 1 + (p_ptr->lev / 4), dam_desc, -1); + else take_hit(DAMAGE_NOESCAPE, 1 + (p_ptr->lev / 5), dam_desc, -1); } } diff -urN hengband/src/effects.c hengband-s/src/effects.c --- hengband/src/effects.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/effects.c Tue Apr 03 20:13:03 2007 @@ -4850,7 +4850,7 @@ get_height_weight(); /* Hitdice */ - if (p_ptr->pclass == CLASS_SORCERER) + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_SPELUNKER)) p_ptr->hitdie = rp_ptr->r_mhp/2 + cp_ptr->c_mhp + ap_ptr->a_mhp; else p_ptr->hitdie = rp_ptr->r_mhp + cp_ptr->c_mhp + ap_ptr->a_mhp; diff -urN hengband/src/load.c hengband-s/src/load.c --- hengband/src/load.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/load.c Tue Apr 03 20:22:01 2007 @@ -1569,7 +1569,7 @@ rd_s16b(&p_ptr->lev); for (i = 0; i < 64; i++) rd_s16b(&p_ptr->spell_exp[i]); - if ((p_ptr->pclass == CLASS_SORCERER) && z_older_than(10, 4, 2)) + if (((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_SPELUNKER))&& z_older_than(10, 4, 2)) { for (i = 0; i < 64; i++) p_ptr->spell_exp[i] = SPELL_EXP_MASTER; } @@ -3639,7 +3639,7 @@ p_ptr->hitdie = rp_ptr->r_mhp + cp_ptr->c_mhp + ap_ptr->a_mhp; do_cmd_rerate(FALSE); } - if(z_older_than(10, 2, 6) && (p_ptr->pclass == CLASS_SORCERER) && !p_ptr->is_dead) + if(z_older_than(10, 2, 6) && ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_SPELUNKER)) && !p_ptr->is_dead) { p_ptr->hitdie = rp_ptr->r_mhp/2 + cp_ptr->c_mhp + ap_ptr->a_mhp; do_cmd_rerate(FALSE); diff -urN hengband/src/mutation.c hengband-s/src/mutation.c --- hengband/src/mutation.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/mutation.c Thu Apr 05 20:44:51 2007 @@ -1096,6 +1096,20 @@ #endif } + + else if (p_ptr->pclass == CLASS_SPELUNKER && + !(p_ptr->muta1 & MUT3_VULN_ELEM) && + (randint1(10) < 2)) + { + muta_class = &(p_ptr->muta3); + muta_which = MUT3_VULN_ELEM; +#ifdef JP +muta_desc = "妙に無防備になった気がする。"; +#else + muta_desc = "You feel strangely exposed."; +#endif + } + } #ifdef JP msg_print("突然変異した!"); diff -urN hengband/src/object1.c hengband-s/src/object1.c --- hengband/src/object1.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/object1.c Tue Apr 03 20:43:03 2007 @@ -4287,7 +4287,7 @@ bool check_book_realm(const byte book_tval, const byte book_sval) { if (book_tval < TV_LIFE_BOOK) return FALSE; - if (p_ptr->pclass == CLASS_SORCERER) + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_SPELUNKER)) { return is_magic(tval2realm(book_tval)); } diff -urN hengband/src/object2.c hengband-s/src/object2.c --- hengband/src/object2.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/object2.c Thu Apr 05 18:57:56 2007 @@ -2336,6 +2336,7 @@ switch (o_ptr->tval) { case TV_DIGGING: + if (one_in_(2)) { /* Very good */ if (power > 1) @@ -2383,7 +2384,7 @@ o_ptr->name2 = get_random_ego(INVEN_RARM, TRUE); if (o_ptr->name2 == EGO_SHARPNESS && o_ptr->tval != TV_SWORD) continue; - if (o_ptr->name2 == EGO_EARTHQUAKES && o_ptr->tval != TV_HAFTED) + if (o_ptr->name2 == EGO_EARTHQUAKES && ((o_ptr->tval != TV_HAFTED) || (o_ptr->tval != TV_DIGGING))) continue; break; } @@ -6331,7 +6332,7 @@ } else { - if ((p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE)) return; + if ((p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_SPELUNKER) &&(p_ptr->pclass != CLASS_RED_MAGE)) return; if (!is_magic(use_realm)) return; if ((p_ptr->pclass == CLASS_RED_MAGE) && (use_realm != REALM_ARCANE) && (sval > 1)) return; } diff -urN hengband/src/racial.c hengband-s/src/racial.c --- hengband/src/racial.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/racial.c Tue Apr 03 20:48:43 2007 @@ -1752,6 +1752,7 @@ case CLASS_RED_MAGE: case CLASS_BLUE_MAGE: case CLASS_MIRROR_MASTER: + case CLASS_SPELUNKER: if (one_in_(3)) { Type = GF_MANA; diff -urN hengband/src/spells3.c hengband-s/src/spells3.c --- hengband/src/spells3.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/spells3.c Tue Apr 03 01:19:25 2007 @@ -3941,6 +3941,7 @@ /* They have too many spells to list */ if (p_ptr->pclass == CLASS_SORCERER) return; if (p_ptr->pclass == CLASS_RED_MAGE) return; + if (p_ptr->pclass == CLASS_SPELUNKER) return; /* mind.c type classes */ if ((p_ptr->pclass == CLASS_MINDCRAFTER) || @@ -4144,7 +4145,7 @@ */ s16b experience_of_spell(int spell, int use_realm) { - if (p_ptr->pclass == CLASS_SORCERER) return SPELL_EXP_MASTER; + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_SPELUNKER)) return SPELL_EXP_MASTER; else if (p_ptr->pclass == CLASS_RED_MAGE) return SPELL_EXP_SKILLED; else if (use_realm == p_ptr->realm1) return p_ptr->spell_exp[spell]; else if (use_realm == p_ptr->realm2) return p_ptr->spell_exp[spell + 32]; @@ -4303,7 +4304,8 @@ if (chance > 95) chance = 95; if ((use_realm == p_ptr->realm1) || (use_realm == p_ptr->realm2) - || (p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE)) + || (p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE) + || (p_ptr->pclass == CLASS_SPELUNKER)) { s16b exp = experience_of_spell(spell, use_realm); if (exp >= SPELL_EXP_EXPERT) chance--; @@ -4349,6 +4351,7 @@ if (p_ptr->pclass == CLASS_SORCERER) return (TRUE); if (p_ptr->pclass == CLASS_RED_MAGE) return (TRUE); + if (p_ptr->pclass == CLASS_SPELUNKER) return (TRUE); /* Spell is learned */ if ((use_realm == p_ptr->realm2) ? @@ -4412,7 +4415,8 @@ put_str(buf, y, x + 29); #endif - if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE)) increment = 0; + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE) + || (p_ptr->pclass == CLASS_SPELUNKER)) increment = 0; else if (use_realm == p_ptr->realm1) increment = 0; else if (use_realm == p_ptr->realm2) increment = 32; @@ -4492,7 +4496,8 @@ line_attr = TERM_WHITE; /* Analyze the spell */ - if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE)) + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE) + || (p_ptr->pclass == CLASS_SPELUNKER)) { if (s_ptr->slevel > p_ptr->max_plv) { diff -urN hengband/src/tables.c hengband-s/src/tables.c --- hengband/src/tables.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/tables.c Thu Apr 05 20:16:50 2007 @@ -3714,6 +3714,17 @@ 15, 10, 10, 0, 0, 0, 25,18, 2, 20, 40 }, + { +#ifdef JP + "洞窟探検家", +#endif + "Spelunker", + + { 2, 1, -2, 3, -4, -1}, + 45, 37, 36, 5, 32, 24, 60, 40, + 15, 12, 10, 0, 0, 0, 21, 18, + 4, 0, 40 + }, }; player_seikaku seikaku_info[MAX_SEIKAKU] = @@ -4041,6 +4052,7 @@ (CH_NONE), /* Weaponsmith */ (CH_NONE), /* Mirror-master */ (CH_NONE), /* Ninja */ + (CH_NONE), /* Spelunker */ }; @@ -4083,6 +4095,7 @@ (CH_NONE), /* Weaponsmith */ (CH_NONE), /* Mirror-master */ (CH_NONE), /* Ninja */ + (CH_NONE), /* Spelunker */ }; @@ -4607,6 +4620,20 @@ "暗殺者", "死の長き腕", }, + /* Spelunker;same as Tourist */ + { + "プー太郎", + "観光客", + "周遊旅行者", + "遍歴者", + "旅行者", + "放浪者", /* "旅人", */ + "航海者", + "探検家", + "冒険家", + "スペランカー", + }, + }; #else @@ -4989,6 +5016,20 @@ "Assassinator", "Death Lord", }, + /* Spelunker */ + { + "Rambler", + "Sightseer", + "Excursionist", + "Peregrinator", + "Traveler", + "Journeyer", + "Voyager", + "Explorer", + "Adventurer", + "Spelunker", + }, + }; #endif diff -urN hengband/src/xtra1.c hengband-s/src/xtra1.c --- hengband/src/xtra1.c Wed Oct 25 23:17:58 2006 +++ hengband-s/src/xtra1.c Thu Apr 05 21:50:04 2007 @@ -2035,7 +2035,9 @@ /* Hack -- handle "xtra" mode */ if (character_xtra) return; - if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE)) + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_RED_MAGE) + || (p_ptr->pclass == CLASS_SPELUNKER)) + { p_ptr->new_spells = 0; return; @@ -2503,6 +2505,7 @@ case CLASS_RANGER: case CLASS_RED_MAGE: case CLASS_WARRIOR_MAGE: + case CLASS_SPELUNKER: { if (inventory[INVEN_RARM].tval <= TV_SWORD) cur_wgt += inventory[INVEN_RARM].weight/3; if (inventory[INVEN_LARM].tval <= TV_SWORD) cur_wgt += inventory[INVEN_LARM].weight/3; @@ -2571,6 +2574,7 @@ case CLASS_RANGER: case CLASS_MONK: case CLASS_RED_MAGE: + case CLASS_SPELUNKER: { msp -= msp * (cur_wgt - max_wgt) / 1000; break; @@ -2712,14 +2716,13 @@ if (p_ptr->mimic_form) { - if (p_ptr->pclass == CLASS_SORCERER) + if ((p_ptr->pclass == CLASS_SORCERER) || (p_ptr->pclass == CLASS_SPELUNKER)) tmp_hitdie = mimic_info[p_ptr->mimic_form].r_mhp/2 + cp_ptr->c_mhp + ap_ptr->a_mhp; else tmp_hitdie = mimic_info[p_ptr->mimic_form].r_mhp + cp_ptr->c_mhp + ap_ptr->a_mhp; mhp = mhp * tmp_hitdie / p_ptr->hitdie; } - - if (p_ptr->pclass == CLASS_SORCERER) + if ((p_ptr->pclass == CLASS_SPELUNKER) || (p_ptr->pclass == CLASS_SORCERER)) { if (p_ptr->lev < 30) mhp = (mhp * (45+p_ptr->lev) / 100); @@ -3290,6 +3293,8 @@ } p_ptr->see_nocto = TRUE; break; + case CLASS_SPELUNKER: + break; } /***** Races ****/ @@ -4874,10 +4879,15 @@ /* Ninja */ case CLASS_NINJA: num = 4; wgt = 20; mul = 1; break; + + /* Spelunker */ + case CLASS_SPELUNKER: + num = 6; wgt = 40; mul = 4; break; } /* Enforce a minimum "weight" (tenth pounds) */ div = ((o_ptr->weight < wgt) ? wgt : o_ptr->weight); + if ((p_ptr->pclass == CLASS_SPELUNKER) && (o_ptr->tval == TV_DIGGING)) div = ((o_ptr->weight/2 < wgt) ? wgt : o_ptr->weight/2); /* Access the strength vs weight */ str_index = (adj_str_blow[p_ptr->stat_ind[A_STR]] * mul / div); @@ -4921,6 +4931,7 @@ /* Boost digging skill by weapon weight */ p_ptr->skill_dig += (o_ptr->weight / 10); + if (p_ptr->pclass == CLASS_SPELUNKER) p_ptr->skill_dig *= 2; } /* Assume okay */ @@ -4978,6 +4989,23 @@ p_ptr->dis_to_h[i] -= 30; p_ptr->dis_to_d[i] -= 10; } + } + if ((p_ptr->pclass == CLASS_SPELUNKER) && have_flag(flgs, TR_TUNNEL) && (o_ptr->pval >0)) + { + p_ptr->to_h[i] += o_ptr->pval; + p_ptr->dis_to_h[i] += o_ptr->pval; + if (o_ptr->tval == TV_DIGGING) + { + if (o_ptr->sval == SV_MATTOCK) + p_ptr->to_dd[i] += (o_ptr->pval+2)/3; + else + p_ptr->to_dd[i] += o_ptr->pval; + } + else + { + p_ptr->to_d[i] += o_ptr->pval; + p_ptr->dis_to_d[i] += o_ptr->pval; + } } if (p_ptr->riding) {