* Create the artifact of the specified number -- DAN
*
*/
-static void wiz_create_named_art(int a_idx)
+static void wiz_create_named_art(void)
{
+ char tmp_val[10] = "";
+ int a_idx;
+
+ /* Query */
+ if (!get_string("Artifact ID:", tmp_val, 3)) return;
+
+ /* Extract */
+ a_idx = atoi(tmp_val);
+ if(a_idx < 0) a_idx = 0;
+ if(a_idx >= max_a_idx) a_idx = 0;
+
/* Create the artifact */
(void)create_named_art(a_idx, py, px);
prt(r, row, col);
}
+static void do_cmd_wiz_reset_class(void)
+{
+ int tmp_int;
+ char tmp_val[160];
+ char ppp[80];
+
+ /* Prompt */
+ sprintf(ppp, "Class (0-%d): ", MAX_CLASS - 1);
+
+ /* Default */
+ sprintf(tmp_val, "%d", p_ptr->pclass);
+
+ /* Query */
+ if (!get_string(ppp, tmp_val, 2)) return;
+
+ /* Extract */
+ tmp_int = atoi(tmp_val);
+
+ /* Verify */
+ if (tmp_int < 0 || tmp_int >= MAX_CLASS) return;
+
+ /* Save it */
+ p_ptr->pclass = tmp_int;
+
+ /* Redraw inscription */
+ p_ptr->window |= (PW_PLAYER);
+
+ /* {.} and {$} effect p_ptr->warning and TRC_TELEPORT_SELF */
+ p_ptr->update |= (PU_BONUS | PU_HP | PU_MANA | PU_SPELLS);
+
+ update_stuff();
+}
+
/*
* Hack -- Teleport to the target
{ TV_CRUSADE_BOOK, "Crusade Spellbook"},
{ TV_MUSIC_BOOK, "Music Spellbook" },
{ TV_HISSATSU_BOOK, "Book of Kendo" },
+ { TV_HEX_BOOK, "Hex Spellbook" },
{ TV_PARCHMENT, "Parchment" },
{ TV_WHISTLE, "Whistle" },
{ TV_SPIKE, "Spikes" },
break;
}
- sprintf(tmp_val, "%ld", test_roll);
+ sprintf(tmp_val, "%ld", (long int)test_roll);
if (get_string(p, tmp_val, 10)) test_roll = atol(tmp_val);
test_roll = MAX(1, test_roll);
/* Delete nearby monsters */
if (m_ptr->cdis <= MAX_SIGHT)
{
+ if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
+ {
+ char m_name[80];
+
+ monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+ do_cmd_write_nikki(NIKKI_NAMED_PET, RECORD_NAMED_PET_WIZ_ZAP, m_name);
+ }
+
delete_monster_idx(i);
}
}
/* Skip the mount */
if (i == p_ptr->riding) continue;
+ if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
+ {
+ char m_name[80];
+
+ monster_desc(m_name, m_ptr, MD_INDEF_VISIBLE);
+ do_cmd_write_nikki(NIKKI_NAMED_PET, RECORD_NAMED_PET_WIZ_ZAP, m_name);
+ }
+
/* Delete this monster */
delete_monster_idx(i);
}
*/
static void do_cmd_wiz_create_feature(void)
{
- static int prev_feat = FEAT_NONE;
- static int prev_mimic = FEAT_NONE;
+ static int prev_feat = 0;
+ static int prev_mimic = 0;
cave_type *c_ptr;
feature_type *f_ptr;
char tmp_val[160];
/* Check for exist option bits */
for (i = 0; option_info[i].o_desc; i++)
{
- option_type *ot_ptr = &option_info[i];
+ const option_type *ot_ptr = &option_info[i];
if (ot_ptr->o_var) exist[ot_ptr->o_set][ot_ptr->o_bit] = i + 1;
}
{
if (exist[i][j])
{
- option_type *ot_ptr = &option_info[exist[i][j] - 1];
+ const option_type *ot_ptr = &option_info[exist[i][j] - 1];
fprintf(fff, " %d - %02d (%4d) %s\n",
i, j, ot_ptr->o_page, ot_ptr->o_text);
}
/* Create a named artifact */
case 'C':
- wiz_create_named_art(command_arg);
+ wiz_create_named_art();
break;
/* Detect everything */
(void)gain_random_mutation(command_arg);
break;
+ /* Reset Class */
+ case 'R':
+ (void)do_cmd_wiz_reset_class();
+ break;
+
/* Specific reward */
case 'r':
(void)gain_level_reward(command_arg);