X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fexterns.h;h=c953b949e331462302aebc96d34ab0a6f88157d0;hb=5c3012a92aa28045cab28d0c08c832b3ed15c0aa;hp=5d1672cfc08dfcc1284766c4b97b67ff8ef6a038;hpb=b97850172b2c52eef42ca997b56d9198ed0165b9;p=hengband%2Fhengband.git diff --git a/src/externs.h b/src/externs.h index 5d1672cfc..c953b949e 100644 --- a/src/externs.h +++ b/src/externs.h @@ -1,16 +1,14 @@ -/* File: externs.h */ - -/* +/*! + * @file externs.h + * @brief Angband(変愚蛮怒)基本関数、グローバル変数ヘッダファイル / + * extern declarations (variables and functions) + * @date 2014/08/08 + * @author * Copyright (c) 1997 Ben Harrison - * + * @details * 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. - */ - -/* Purpose: extern declarations (variables and functions) */ - -/* * Note that some files have their own header files * (z-virt.h, z-util.h, z-form.h, term.h, random.h) */ @@ -19,7 +17,6 @@ /* * Automatically generated "variable" declarations */ - extern int max_macrotrigger; extern cptr macro_template; extern cptr macro_modifier_chr; @@ -154,22 +151,21 @@ extern u32b seed_town; extern s16b command_cmd; extern s16b command_arg; extern s16b command_rep; -extern s16b command_dir; +extern DIRECTION command_dir; extern s16b command_see; extern s16b command_gap; extern s16b command_wrk; extern s16b command_new; -extern s16b energy_use; extern bool msg_flag; extern s16b running; extern s16b resting; -extern s16b cur_hgt; -extern s16b cur_wid; -extern s16b dun_level; +extern POSITION cur_hgt; +extern POSITION cur_wid; +extern DEPTH dun_level; extern s16b num_repro; -extern s16b object_level; -extern s16b monster_level; -extern s16b base_level; +extern DEPTH object_level; +extern DEPTH monster_level; +extern DEPTH base_level; extern s32b turn; extern s32b turn_limit; extern s32b dungeon_turn; @@ -385,6 +381,8 @@ extern bool cheat_xtra; extern bool cheat_know; extern bool cheat_live; extern bool cheat_save; +extern bool cheat_diary_output; +extern bool cheat_turn; extern char record_o_name[MAX_NLEN]; extern s32b record_turn; @@ -395,36 +393,33 @@ extern s16b autosave_freq; extern bool autosave_t; extern bool autosave_l; extern bool closing_flag; -extern s16b panel_row_min, panel_row_max; -extern s16b panel_col_min, panel_col_max; -extern s16b panel_col_prt, panel_row_prt; -extern int py; -extern int px; -extern s16b target_who; -extern s16b target_col; -extern s16b target_row; +extern POSITION panel_row_min, panel_row_max; +extern POSITION panel_col_min, panel_col_max; +extern POSITION panel_col_prt, panel_row_prt; +extern IDX target_who; +extern POSITION target_col; +extern POSITION target_row; extern int player_uid; extern int player_euid; extern int player_egid; -extern char player_name[32]; extern char player_base[32]; extern char savefile[1024]; extern char savefile_base[40]; extern s16b lite_n; -extern s16b lite_y[LITE_MAX]; -extern s16b lite_x[LITE_MAX]; +extern POSITION lite_y[LITE_MAX]; +extern POSITION lite_x[LITE_MAX]; extern s16b mon_lite_n; -extern s16b mon_lite_y[MON_LITE_MAX]; -extern s16b mon_lite_x[MON_LITE_MAX]; +extern POSITION mon_lite_y[MON_LITE_MAX]; +extern POSITION mon_lite_x[MON_LITE_MAX]; extern s16b view_n; -extern byte view_y[VIEW_MAX]; -extern byte view_x[VIEW_MAX]; +extern POSITION view_y[VIEW_MAX]; +extern POSITION view_x[VIEW_MAX]; extern s16b temp_n; -extern byte temp_y[TEMP_MAX]; -extern byte temp_x[TEMP_MAX]; +extern POSITION temp_y[TEMP_MAX]; +extern POSITION temp_x[TEMP_MAX]; extern s16b redraw_n; -extern byte redraw_y[REDRAW_MAX]; -extern byte redraw_x[REDRAW_MAX]; +extern POSITION redraw_y[REDRAW_MAX]; +extern POSITION redraw_x[REDRAW_MAX]; extern s16b macro__num; extern cptr *macro__pat; extern cptr *macro__act; @@ -432,11 +427,11 @@ extern bool *macro__cmd; extern char *macro__buf; extern s16b quark__num; extern cptr *quark__str; -extern u16b message__next; -extern u16b message__last; -extern u16b message__head; -extern u16b message__tail; -extern u16b *message__ptr; +extern u32b message__next; +extern u32b message__last; +extern u32b message__head; +extern u32b message__tail; +extern u32b *message__ptr; extern char *message__buf; extern u32b option_flag[8]; extern u32b option_mask[8]; @@ -526,18 +521,18 @@ extern bool monk_armour_aux; extern bool monk_notify_aux; extern wilderness_type **wilderness; extern building_type building[MAX_BLDG]; -extern u16b max_quests; -extern u16b max_r_idx; -extern u16b max_k_idx; -extern u16b max_v_idx; -extern u16b max_f_idx; -extern u16b max_a_idx; -extern u16b max_e_idx; -extern u16b max_d_idx; -extern u16b max_o_idx; -extern u16b max_m_idx; -extern s32b max_wild_x; -extern s32b max_wild_y; +extern IDX max_quests; +extern IDX max_r_idx; +extern IDX max_k_idx; +extern IDX max_v_idx; +extern IDX max_f_idx; +extern IDX max_a_idx; +extern IDX max_e_idx; +extern IDX max_d_idx; +extern IDX max_o_idx; +extern IDX max_m_idx; +extern POSITION max_wild_x; +extern POSITION max_wild_y; extern quest_type *quest; extern char quest_text[10][80]; extern int quest_text_line; @@ -553,7 +548,7 @@ extern int cap_mspeed; extern int cap_hp; extern int cap_maxhp; extern u16b cap_nickname; -extern s16b battle_mon[4]; +extern IDX battle_mon[4]; extern int sel_monster; extern int battle_odds; extern int kakekin; @@ -619,7 +614,7 @@ extern s16b feat_swamp; extern s16b feat_undetected; extern byte dungeon_type; -extern s16b *max_dlv; +extern DEPTH *max_dlv; extern s16b feat_wall_outer; extern s16b feat_wall_inner; extern s16b feat_wall_solid; @@ -683,9 +678,9 @@ extern void update_smell(void); extern void map_area(int range); extern void wiz_lite(bool ninja); extern void wiz_dark(void); -extern void cave_set_feat(int y, int x, int feat); -extern int conv_dungeon_feat(int newfeat); -extern int feat_state(int feat, int action); +extern void cave_set_feat(POSITION y, POSITION x, IDX feat); +extern IDX conv_dungeon_feat(IDX newfeat); +extern IDX feat_state(IDX feat, int action); extern void cave_alter_feat(int y, int x, int action); extern void remove_mirror(int y, int x); extern bool is_mirror_grid(cave_type *c_ptr); @@ -693,18 +688,18 @@ extern bool is_glyph_grid(cave_type *c_ptr); extern bool is_explosive_rune_grid(cave_type *c_ptr); extern void mmove2(int *y, int *x, int y1, int x1, int y2, int x2); extern bool projectable(int y1, int x1, int y2, int x2); -extern void scatter(int *yp, int *xp, int y, int x, int d, int mode); -extern void health_track(int m_idx); -extern void monster_race_track(int r_idx); -extern void object_kind_track(int k_idx); +extern void scatter(POSITION *yp, POSITION *xp, POSITION y, POSITION x, POSITION d, int mode); +extern void health_track(IDX m_idx); +extern void monster_race_track(IDX r_idx); +extern void object_kind_track(IDX k_idx); extern void disturb(int stop_search, int flush_output); extern void glow_deep_lava_and_bldg(void); /* cmd1.c */ extern bool test_hit_fire(int chance, monster_type *m_ptr, int vis, char* o_name); extern bool test_hit_norm(int chance, int ac, int vis); -extern s16b critical_shot(int weight, int plus_ammo, int plus_bow, int dam); -extern s16b critical_norm(int weight, int plus, int dam, s16b meichuu, int mode); +extern HIT_POINT critical_shot(int weight, int plus_ammo, int plus_bow, HIT_POINT dam); +extern HIT_POINT critical_norm(int weight, int plus, HIT_POINT dam, s16b meichuu, int mode); extern s16b tot_dam_aux(object_type *o_ptr, int tdam, monster_type *m_ptr, int mode, bool thrown); extern void search(void); extern void py_pickup_aux(int o_idx); @@ -712,9 +707,9 @@ extern void carry(bool pickup); extern bool py_attack(int y, int x, int mode); extern bool pattern_seq(int c_y, int c_x, int n_y, int n_x); extern bool player_can_enter(s16b feature, u16b mode); -extern bool move_player_effect(int ny, int nx, u32b mpe_mode); +extern bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode); extern bool trap_can_be_ignored(int feat); -extern void move_player(int dir, bool do_pickup, bool break_trap); +extern void move_player(DIRECTION dir, bool do_pickup, bool break_trap); extern void run_step(int dir); #ifdef TRAVEL extern void travel_step(void); @@ -925,7 +920,7 @@ extern bool load_floor(saved_floor_type *sf_ptr, u32b mode); /* melee1.c */ /* melee2.c */ -extern bool make_attack_normal(int m_idx); +extern bool make_attack_normal(IDX m_idx); extern void process_monsters(void); extern int get_mproc_idx(int m_idx, int mproc_type); extern void mproc_init(void); @@ -964,6 +959,7 @@ extern bool are_enemies(monster_type *m_ptr1, monster_type *m_ptr2); extern bool monster_has_hostile_align(monster_type *m_ptr, int pa_good, int pa_evil, monster_race *r_ptr); extern bool monster_living(monster_race *r_ptr); extern bool no_questor_or_bounty_uniques(int r_idx); +extern void dice_to_string(int base_damage, int dice_num, int dice_side, int dice_mult, int dice_div, char* msg); /* monster2.c */ @@ -995,9 +991,9 @@ extern bool summon_specific(int who, int y1, int x1, int lev, int type, u32b mod extern bool summon_named_creature (int who, int oy, int ox, int r_idx, u32b mode); extern bool multiply_monster(int m_idx, bool clone, u32b mode); extern void update_smart_learn(int m_idx, int what); -extern void choose_new_monster(int m_idx, bool born, int r_idx); +extern void choose_new_monster(IDX m_idx, bool born, IDX r_idx); extern byte get_mspeed(monster_race *r_ptr); -extern bool player_place(int y, int x); +extern bool player_place(POSITION y, POSITION x); extern void monster_drop_carried_objects(monster_type *m_ptr); /* object1.c */ @@ -1030,7 +1026,7 @@ extern void delete_object_idx(int o_idx); extern void delete_object(int y, int x); extern void compact_objects(int size); extern void wipe_o_list(void); -extern s16b o_pop(void); +extern IDX o_pop(void); extern s16b get_obj_num(int level); extern void object_known(object_type *o_ptr); extern void object_aware(object_type *o_ptr); @@ -1045,13 +1041,13 @@ extern bool object_similar(object_type *o_ptr, object_type *j_ptr); extern void object_absorb(object_type *o_ptr, object_type *j_ptr); extern s16b lookup_kind(int tval, int sval); extern void object_wipe(object_type *o_ptr); -extern void object_prep(object_type *o_ptr, int k_idx); +extern void object_prep(object_type *o_ptr, IDX k_idx); extern void object_copy(object_type *o_ptr, object_type *j_ptr); extern void apply_magic(object_type *o_ptr, int lev, u32b mode); extern bool make_object(object_type *j_ptr, u32b mode); extern void place_object(int y, int x, u32b mode); extern bool make_gold(object_type *j_ptr); -extern void place_gold(int y, int x); +extern void place_gold(POSITION y, POSITION x); extern s16b drop_near(object_type *o_ptr, int chance, int y, int x); extern void acquirement(int y1, int x1, int num, bool great, bool special, bool known); extern void amusement(int y1, int x1, int num, bool known); @@ -1094,13 +1090,13 @@ extern void remove_loc(void); extern bool save_floor(saved_floor_type *sf_ptr, u32b mode); /* spells1.c */ -extern bool in_disintegration_range(int y1, int x1, int y2, int x2); -extern void breath_shape(u16b *path_g, int dist, int *pgrids, byte *gx, byte *gy, byte *gm, int *pgm_rad, int rad, int y1, int x1, int y2, int x2, int typ); -extern int take_hit(int damage_type, int damage, cptr kb_str, int monspell); -extern u16b bolt_pict(int y, int x, int ny, int nx, int typ); -extern sint project_path(u16b *gp, int range, int y1, int x1, int y2, int x2, int flg); +extern bool in_disintegration_range(POSITION y1, POSITION x1, POSITION y2, POSITION x2); +extern void breath_shape(u16b *path_g, int dist, int *pgrids, POSITION *gx, POSITION *gy, byte *gm, int *pgm_rad, int rad, int y1, int x1, int y2, int x2, int typ); +extern int take_hit(int damage_type, HIT_POINT damage, cptr kb_str, int monspell); +extern u16b bolt_pict(POSITION y, POSITION x, POSITION ny, POSITION nx, int typ); +extern sint project_path(u16b *gp, POSITION range, POSITION y1, POSITION x1, POSITION y2, POSITION x2, int flg); extern int dist_to_line(int y, int x, int y1, int x1, int y2, int x2); -extern bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int monspell); +extern bool project(int who, POSITION rad, POSITION y, POSITION x, HIT_POINT dam, int typ, int flg, int monspell); extern int project_length; extern bool binding_field(int dam); extern void seal_of_mirror(int dam); @@ -1217,13 +1213,13 @@ extern bool rush_attack(bool *mdeath); extern void remove_all_mirrors(bool explode); /* spells3.c */ -extern bool teleport_away(int m_idx, int dis, u32b mode); +extern bool teleport_away(IDX m_idx, int dis, u32b mode); extern void teleport_monster_to(int m_idx, int ty, int tx, int power, u32b mode); extern bool cave_player_teleportable_bold(int y, int x, u32b mode); extern bool teleport_player_aux(int dis, u32b mode); extern void teleport_player(int dis, u32b mode); extern void teleport_player_away(int m_idx, int dis); -extern void teleport_player_to(int ny, int nx, u32b mode); +extern void teleport_player_to(POSITION ny, POSITION nx, u32b mode); extern void teleport_away_followable(int m_idx); extern void teleport_level(int m_idx); extern int choose_dungeon(cptr note, int y, int x); @@ -1242,8 +1238,8 @@ extern bool warding_glyph(void); extern bool place_mirror(void); extern bool explosive_rune(void); extern void identify_pack(void); -extern bool remove_curse(void); -extern bool remove_all_curse(void); +extern int remove_curse(void); +extern int remove_all_curse(void); extern bool alchemy(void); extern bool enchant(object_type *o_ptr, int n, int eflag); extern bool enchant_spell(int num_hit, int num_dam, int num_ac); @@ -1255,7 +1251,7 @@ extern bool identify_fully(bool only_equip); extern bool recharge(int num); extern bool bless_weapon(void); extern bool pulish_shield(void); -extern bool potion_smash_effect(int who, int y, int x, int k_idx); +extern bool potion_smash_effect(int who, POSITION y, POSITION x, int k_idx); extern void display_spell_list(void); extern s16b experience_of_spell(int spell, int realm); extern int mod_need_mana(int need_mana, int spell, int realm); @@ -1286,7 +1282,7 @@ extern bool polymorph_monster(int y, int x); extern bool dimension_door(void); extern bool mirror_tunnel(void); extern bool summon_kin_player(int level, int y, int x, u32b mode); -extern void massacre(int py, int px); +extern void massacre(void); /* store.c */ extern bool combine_and_reorder_home(int store_num); @@ -1298,15 +1294,14 @@ extern void move_to_black_market(object_type * o_ptr); /* bldg.c */ extern bool get_nightmare(int r_idx); -extern void have_nightmare(int r_idx); extern void battle_monsters(void); extern void do_cmd_bldg(void); extern void do_cmd_quest(void); extern void quest_discovery(int q_idx); -extern int quest_number(int level); -extern int random_quest_number(int level); +extern IDX quest_number(DEPTH level); +extern IDX random_quest_number(DEPTH level); extern bool tele_town(void); -extern s16b calc_crit_ratio_shot(int weight, int plus_ammo,int plus_bow, int dam); +extern s16b calc_crit_ratio_shot(int plus_ammo,int plus_bow); extern s16b calc_expect_crit_shot(int weight, int plus_ammo,int plus_bow, int dam); extern s16b calc_expect_crit(int weight, int plus, int dam, s16b meichuu, bool dokubari); @@ -1343,12 +1338,14 @@ extern char inkey(void); extern cptr quark_str(s16b num); extern void quark_init(void); extern s16b quark_add(cptr str); -extern s16b message_num(void); +extern s32b message_num(void); extern cptr message_str(int age); extern void message_add(cptr msg); extern void msg_print(cptr msg); +extern void msg_print_wizard(int cheat_type, cptr msg); #ifndef SWIG extern void msg_format(cptr fmt, ...); +extern void msg_format_wizard(int cheat_type, cptr fmt, ...); #endif /* SWIG */ extern void screen_save(void); extern void screen_load(void); @@ -1418,49 +1415,49 @@ extern void update_playtime(void); extern void set_action(int typ); extern void reset_tim_flags(void); extern void dispel_player(void); -extern bool set_mimic(int v, int p, bool do_dec); -extern bool set_blind(int v); -extern bool set_confused(int v); -extern bool set_poisoned(int v); -extern bool set_afraid(int v); -extern bool set_paralyzed(int v); -extern bool set_image(int v); -extern bool set_fast(int v, bool do_dec); -extern bool set_slow(int v, bool do_dec); -extern bool set_shield(int v, bool do_dec); -extern bool set_tsubureru(int v, bool do_dec); -extern bool set_magicdef(int v, bool do_dec); -extern bool set_blessed(int v, bool do_dec); -extern bool set_hero(int v, bool do_dec); -extern bool set_shero(int v, bool do_dec); -extern bool set_protevil(int v, bool do_dec); -extern bool set_invuln(int v, bool do_dec); -extern bool set_tim_invis(int v, bool do_dec); -extern bool set_tim_infra(int v, bool do_dec); -extern bool set_tim_regen(int v, bool do_dec); -extern bool set_tim_stealth(int v, bool do_dec); -extern bool set_lightspeed(int v, bool do_dec); -extern bool set_tim_levitation(int v, bool do_dec); -extern bool set_tim_sh_touki(int v, bool do_dec); -extern bool set_tim_sh_fire(int v, bool do_dec); -extern bool set_tim_sh_holy(int v, bool do_dec); -extern bool set_tim_eyeeye(int v, bool do_dec); -extern bool set_resist_magic(int v, bool do_dec); -extern bool set_tim_reflect(int v, bool do_dec); -extern bool set_multishadow(int v, bool do_dec); -extern bool set_dustrobe(int v, bool do_dec); -extern bool set_kabenuke(int v, bool do_dec); -extern bool set_tsuyoshi(int v, bool do_dec); -extern bool set_ele_attack(u32b attack_type, int v); -extern bool set_ele_immune(u32b immune_type, int v); -extern bool set_oppose_acid(int v, bool do_dec); -extern bool set_oppose_elec(int v, bool do_dec); -extern bool set_oppose_fire(int v, bool do_dec); -extern bool set_oppose_cold(int v, bool do_dec); -extern bool set_oppose_pois(int v, bool do_dec); -extern bool set_stun(int v); -extern bool set_cut(int v); -extern bool set_food(int v); +extern bool set_mimic(TIME_EFFECT v, int p, bool do_dec); +extern bool set_blind(TIME_EFFECT v); +extern bool set_confused(TIME_EFFECT v); +extern bool set_poisoned(TIME_EFFECT v); +extern bool set_afraid(TIME_EFFECT v); +extern bool set_paralyzed(TIME_EFFECT v); +extern bool set_image(TIME_EFFECT v); +extern bool set_fast(TIME_EFFECT v, bool do_dec); +extern bool set_slow(TIME_EFFECT v, bool do_dec); +extern bool set_shield(TIME_EFFECT v, bool do_dec); +extern bool set_tsubureru(TIME_EFFECT v, bool do_dec); +extern bool set_magicdef(TIME_EFFECT v, bool do_dec); +extern bool set_blessed(TIME_EFFECT v, bool do_dec); +extern bool set_hero(TIME_EFFECT v, bool do_dec); +extern bool set_shero(TIME_EFFECT v, bool do_dec); +extern bool set_protevil(TIME_EFFECT v, bool do_dec); +extern bool set_invuln(TIME_EFFECT v, bool do_dec); +extern bool set_tim_invis(TIME_EFFECT v, bool do_dec); +extern bool set_tim_infra(TIME_EFFECT v, bool do_dec); +extern bool set_tim_regen(TIME_EFFECT v, bool do_dec); +extern bool set_tim_stealth(TIME_EFFECT v, bool do_dec); +extern bool set_lightspeed(TIME_EFFECT v, bool do_dec); +extern bool set_tim_levitation(TIME_EFFECT v, bool do_dec); +extern bool set_tim_sh_touki(TIME_EFFECT v, bool do_dec); +extern bool set_tim_sh_fire(TIME_EFFECT v, bool do_dec); +extern bool set_tim_sh_holy(TIME_EFFECT v, bool do_dec); +extern bool set_tim_eyeeye(TIME_EFFECT v, bool do_dec); +extern bool set_resist_magic(TIME_EFFECT v, bool do_dec); +extern bool set_tim_reflect(TIME_EFFECT v, bool do_dec); +extern bool set_multishadow(TIME_EFFECT v, bool do_dec); +extern bool set_dustrobe(TIME_EFFECT v, bool do_dec); +extern bool set_kabenuke(TIME_EFFECT v, bool do_dec); +extern bool set_tsuyoshi(TIME_EFFECT v, bool do_dec); +extern bool set_ele_attack(u32b attack_type, TIME_EFFECT v); +extern bool set_ele_immune(u32b immune_type, TIME_EFFECT v); +extern bool set_oppose_acid(TIME_EFFECT v, bool do_dec); +extern bool set_oppose_elec(TIME_EFFECT v, bool do_dec); +extern bool set_oppose_fire(TIME_EFFECT v, bool do_dec); +extern bool set_oppose_cold(TIME_EFFECT v, bool do_dec); +extern bool set_oppose_pois(TIME_EFFECT v, bool do_dec); +extern bool set_stun(TIME_EFFECT v); +extern bool set_cut(TIME_EFFECT v); +extern bool set_food(TIME_EFFECT v); extern bool inc_stat(int stat); extern bool dec_stat(int stat, int amount, int permanent); extern bool res_stat(int stat); @@ -1476,13 +1473,13 @@ extern void calc_android_exp(void); extern void lose_exp(s32b amount); extern bool drain_exp(s32b drain, s32b slip, int hold_exp_prob); extern void do_poly_self(void); -extern bool set_ultimate_res(int v, bool do_dec); -extern bool set_tim_res_nether(int v, bool do_dec); -extern bool set_tim_res_time(int v, bool do_dec); +extern bool set_ultimate_res(TIME_EFFECT v, bool do_dec); +extern bool set_tim_res_nether(TIME_EFFECT v, bool do_dec); +extern bool set_tim_res_time(TIME_EFFECT v, bool do_dec); extern bool choose_ele_attack(void); -extern bool choose_ele_immune(int turn); -extern bool set_wraith_form(int v, bool do_dec); -extern bool set_tim_esp(int v, bool do_dec); +extern bool choose_ele_immune(TIME_EFFECT turn); +extern bool set_wraith_form(TIME_EFFECT v, bool do_dec); +extern bool set_tim_esp(TIME_EFFECT v, bool do_dec); extern bool set_superstealth(bool set); /* xtra2.c */ @@ -1505,16 +1502,16 @@ extern void ang_sort(vptr u, vptr v, int n); extern bool target_able(int m_idx); extern bool target_okay(void); extern bool target_set(int mode); -extern void target_set_prepare_look(); +extern void target_set_prepare_look(void); extern bool get_aim_dir(int *dp); extern bool get_hack_dir(int *dp); extern bool get_rep_dir(int *dp, bool under); extern bool get_rep_dir2(int *dp); extern void gain_level_reward(int chosen_reward); -extern bool tgt_pt (int *x, int *y); +extern bool tgt_pt(POSITION *x, POSITION *y); extern void do_poly_wounds(void); extern void change_race(int new_race, cptr effect_msg); -extern int mon_damage_mod(monster_type *m_ptr, int dam, bool is_psy_spear); +extern HIT_POINT mon_damage_mod(monster_type *m_ptr, HIT_POINT dam, bool is_psy_spear); extern s16b gain_energy(void); extern s16b bow_energy(int sval); extern int bow_tmul(int sval); @@ -1524,18 +1521,6 @@ extern int riding_exp_level(int riding_exp); extern int spell_exp_level(int spell_exp); extern void display_rumor(bool ex); -/* mspells1.c */ -extern bool clean_shot(int y1, int x1, int y2, int x2, bool is_friend); -extern bool summon_possible(int y1, int x1); -extern bool raise_possible(monster_type *m_ptr); -extern bool dispel_check(int m_idx); -extern bool spell_is_inate(u16b spell); -extern bool make_attack_spell(int m_idx); - -/* mspells2.c */ -extern void get_project_point(int sy, int sx, int *ty, int *tx, int flg); -extern bool monst_spell_monst(int m_idx); - /* artifact.c */ extern void one_sustain(object_type *o_ptr); extern void one_high_resistance(object_type *o_ptr); @@ -1566,15 +1551,39 @@ extern void race_score(int race_num); extern void show_highclass(void); /* mind.c */ -extern mind_power mind_powers[5]; +extern mind_power const mind_powers[5]; extern void mindcraft_info(char *p, int use_mind, int power); extern void do_cmd_mind(void); extern void do_cmd_mind_browse(void); /* mane.c */ extern bool do_cmd_mane(bool baigaesi); -extern void bolt(int m_idx, int typ, int dam_hp, int monspell, bool learnable); -extern void breath(int y, int x, int m_idx, int typ, int dam_hp, int rad, bool breath, int monspell, bool learnable); + +/* mspells1.c */ +extern bool clean_shot(int y1, int x1, int y2, int x2, bool is_friend); +extern bool summon_possible(int y1, int x1); +extern bool raise_possible(monster_type *m_ptr); +extern bool dispel_check(int m_idx); +extern bool spell_is_inate(u16b spell); +extern bool make_attack_spell(int m_idx); +extern void beam(int m_idx, int y, int x, int typ, int dam_hp, int monspell, int target_type); +extern void bolt(int m_idx, int y, int x, int typ, int dam_hp, int monspell, int target_type); +extern void breath(int y, int x, int m_idx, int typ, int dam_hp, int rad, bool breath, int monspell, int target_type); + +/* mspells1.c */ +extern bool clean_shot(int y1, int x1, int y2, int x2, bool is_friend); +extern bool summon_possible(int y1, int x1); +extern bool raise_possible(monster_type *m_ptr); +extern bool dispel_check(int m_idx); +extern bool spell_is_inate(u16b spell); +extern bool make_attack_spell(int m_idx); +extern void beam(int m_idx, int y, int x, int typ, int dam_hp, int monspell, int target_type); +extern void bolt(int m_idx, int y, int x, int typ, int dam_hp, int monspell, int target_type); +extern void breath(int y, int x, int m_idx, int typ, int dam_hp, int rad, bool breath, int monspell, int target_type); + +/* mspells2.c */ +extern void get_project_point(int sy, int sx, int *ty, int *tx, int flg); +extern bool monst_spell_monst(IDX m_idx); /* mspells3.c */ extern bool do_cmd_cast_learned(void); @@ -1582,11 +1591,12 @@ extern void learn_spell(int monspell); extern void set_rf_masks(s32b *f4, s32b *f5, s32b *f6, int mode); /* mspells4.c */ -extern void spell_RF4_SHRIEK(int m_idx, cptr m_name); -extern void spell_RF4_DISPEL(bool blind, cptr m_name); -extern void spell_RF4_ROCKET(bool blind, cptr m_name, monster_type* m_ptr, int y, int x, int m_idx, bool learnable); -extern void spell_RF4_SHOOT(bool blind, cptr m_name, monster_race* r_ptr, int m_idx, bool learnable); -extern void spell_RF4_BREATH(int GF_TYPE, bool blind, cptr m_name, monster_type* m_ptr, int y, int x, int m_idx, bool learnable); +extern bool spell_learnable(int m_idx); +extern int monspell_to_player(int SPELL_NUM, int y, int x, int m_idx); +extern int monspell_to_monster(int SPELL_NUM, int y, int x, int m_idx, int t_idx); +extern int monspell_damage(int SPELL_NUM, int m_idx, int TYPE); +extern int monspell_race_damage(int SPELL_NUM, int r_idx, int TYPE); +extern int monspell_bluemage_damage(int SPELL_NUM, int plev, int TYPE); /* hissatsu.c */ extern void hissatsu_info(char *p, int power); @@ -1744,14 +1754,12 @@ extern void dump_virtues(FILE * OutFile); #ifdef JP /* japanese.c */ extern void sindarin_to_kana(char *kana, const char *sindarin); -extern void jverb1( const char *in , char *out); -extern void jverb2( const char *in , char *out); -extern void jverb3( const char *in , char *out); extern void jverb( const char *in , char *out , int flag); extern void sjis2euc(char *str); extern void euc2sjis(char *str); extern byte codeconv(char *str); extern bool iskanji2(cptr s, int x); +extern void guess_convert_to_system_encoding(char* strbuf, int buflen); #endif #ifdef WORLD_SCORE @@ -1807,9 +1815,8 @@ extern bool stop_hex_spell_all(void); extern bool stop_hex_spell(void); extern void check_hex(void); extern bool hex_spell_fully(void); -extern void revenge_spell(); +extern void revenge_spell(void); extern void revenge_store(int dam); extern bool teleport_barrier(int m_idx); extern bool magic_barrier(int m_idx); extern bool multiply_barrier(int m_idx); -