* 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
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);
/* 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);