if (!tgt_pt(&x, &y)) return FALSE;
- teleport_player_to(y, x, FALSE, FALSE);
+ teleport_player_to(y, x, TELEPORT_NONMAGICAL);
return (TRUE);
}
* 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 */
- create_named_art(a_idx, py, px);
+ (void)create_named_art(a_idx, py, px);
/* All done */
msg_print("Allocated.");
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
if (!target_who) return;
/* Teleport to the target */
- teleport_player_to(target_row, target_col, FALSE, FALSE);
+ teleport_player_to(target_row, target_col, TELEPORT_NONMAGICAL);
}
{ TV_DEATH_BOOK, "Death Spellbook" },
{ TV_TRUMP_BOOK, "Trump Spellbook" },
{ TV_ARCANE_BOOK, "Arcane Spellbook" },
- { TV_ENCHANT_BOOK, "Craft Spellbook"},
+ { TV_CRAFT_BOOK, "Craft Spellbook"},
{ TV_DAEMON_BOOK, "Daemon Spellbook"},
{ 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);
if (a_info[i].sval != k_info[k_idx].sval) continue;
/* Create this artifact */
- create_named_art(i, py, px);
+ (void)create_named_art(i, py, px);
/* All done */
msg_print("Allocated(INSTA_ART).");
/* 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;
- cave_type *c_ptr;
- char tmp_val[160];
- int tmp_feat, tmp_mimic;
- int y, x;
+ static int prev_feat = 0;
+ static int prev_mimic = 0;
+ cave_type *c_ptr;
+ feature_type *f_ptr;
+ char tmp_val[160];
+ int tmp_feat, tmp_mimic;
+ int y, x;
if (!tgt_pt(&x, &y)) return;
cave_set_feat(y, x, tmp_feat);
c_ptr->mimic = tmp_mimic;
- if (tmp_mimic)
- {
- feature_type *f_ptr = &f_info[tmp_mimic];
- if (have_flag(f_ptr->flags, FF_GLYPH) ||
- have_flag(f_ptr->flags, FF_MINOR_GLYPH) ||
- have_flag(f_ptr->flags, FF_MIRROR))
- c_ptr->info |= (CAVE_OBJECT);
- }
+ f_ptr = &f_info[get_feat_mimic(c_ptr)];
+
+ if (have_flag(f_ptr->flags, FF_GLYPH) ||
+ have_flag(f_ptr->flags, FF_MINOR_GLYPH))
+ c_ptr->info |= (CAVE_OBJECT);
+ else if (have_flag(f_ptr->flags, FF_MIRROR))
+ c_ptr->info |= (CAVE_GLOW | CAVE_OBJECT);
+
+ /* Notice */
+ note_spot(y, x);
+
+ /* Redraw */
+ lite_spot(y, x);
/* Update some things */
- p_ptr->update |= (PU_VIEW | PU_LITE | PU_FLOW | PU_MONSTERS | PU_MON_LITE);
+ p_ptr->update |= (PU_FLOW);
prev_feat = tmp_feat;
prev_mimic = tmp_mimic;
/* 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);
/* Phase Door */
case 'p':
- teleport_player(10, FALSE);
+ teleport_player(10, 0L);
break;
#if 0
/* Teleport */
case 't':
- teleport_player(100, FALSE);
+ teleport_player(100, 0L);
break;
/* Very Good Objects */