X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fexterns.h;h=57af6aa7e68205f75d8cf66d4e5906d2dc9836b8;hb=0307f1807132cfc491dd7b1e185aba76fc0d3441;hp=0ddb9e56f634380e5c92ffc35a20f87420babcbe;hpb=301bfb56c7e051b166b617a328632c0c16cf81f6;p=hengband%2Fhengband.git diff --git a/src/externs.h b/src/externs.h index 0ddb9e56f..57af6aa7e 100644 --- a/src/externs.h +++ b/src/externs.h @@ -69,7 +69,6 @@ extern const byte adj_con_mhp[]; extern const byte adj_chr_chm[]; extern const byte blows_table[12][12]; extern const arena_type arena_info[MAX_ARENA_MONS + 2]; -extern const owner_type owners[MAX_STORES][MAX_OWNERS]; extern const byte extract_energy[200]; extern const s32b player_exp[PY_MAX_LEVEL]; extern const s32b player_exp_a[PY_MAX_LEVEL]; @@ -112,8 +111,6 @@ extern const concptr ident_info[]; extern const mbe_info_type mbe_info[]; extern const byte feature_action_flags[FF_FLAG_MAX]; extern const dragonbreath_type dragonbreath_info[]; -extern const activation_type activation_info[]; -extern const concptr artifact_bias_name[MAX_BIAS]; extern const option_type option_info[]; extern const option_type cheat_info[CHEAT_MAX]; @@ -221,7 +218,7 @@ extern bool closing_flag; 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 MONSTER_IDX target_who; extern POSITION target_col; extern POSITION target_row; extern int player_uid; @@ -269,7 +266,7 @@ extern const concptr angband_sound_name[SOUND_MAX]; extern const concptr angband_music_basic_name[MUSIC_BASIC_MAX]; extern cave_type *cave[MAX_HGT]; extern saved_floor_type saved_floors[MAX_SAVED_FLOORS]; -extern s16b max_floor_id; +extern FLOOR_IDX max_floor_id; extern u32b saved_floor_file_sign; extern object_type *o_list; extern monster_type *m_list; @@ -314,7 +311,7 @@ extern char *e_text; extern monster_race *r_info; extern char *r_name; extern char *r_text; -extern dungeon_info_type *d_info; +extern dungeon_type *d_info; extern char *d_name; extern char *d_text; extern concptr ANGBAND_SYS; @@ -346,11 +343,11 @@ extern wilderness_type **wilderness; extern building_type building[MAX_BLDG]; extern QUEST_IDX max_q_idx; extern MONRACE_IDX max_r_idx; -extern IDX max_k_idx; -extern IDX max_v_idx; -extern IDX max_f_idx; +extern KIND_OBJECT_IDX max_k_idx; +extern VAULT_IDX max_v_idx; +extern FEAT_IDX max_f_idx; extern ARTIFACT_IDX max_a_idx; -extern IDX max_e_idx; +extern EGO_IDX max_e_idx; extern DUNGEON_IDX max_d_idx; extern OBJECT_IDX max_o_idx; extern MONSTER_IDX max_m_idx; @@ -365,7 +362,6 @@ extern int highscore_fd; extern int mutant_regenerate_mod; extern bool can_save; extern s16b world_monster; -extern bool world_player; extern int cap_mon; extern int cap_mspeed; extern HIT_POINT cap_hp; @@ -442,12 +438,11 @@ extern FEAT_IDX feat_mountain; extern FEAT_IDX feat_swamp; extern FEAT_IDX feat_undetected; -extern DUNGEON_IDX dungeon_type; extern DEPTH *max_dlv; extern FEAT_IDX feat_wall_outer; extern FEAT_IDX feat_wall_inner; extern FEAT_IDX feat_wall_solid; -extern FEAT_IDX floor_type[100], fill_type[100]; +extern FEAT_IDX feat_ground_type[100], feat_wall_type[100]; extern bool now_damaged; extern COMMAND_CODE now_message; extern bool use_menu; @@ -468,7 +463,6 @@ extern void add_history_from_pref_line(concptr t); extern void player_birth(void); extern void get_max_stats(void); extern void get_height_weight(void); -extern void determine_random_questor(quest_type *q_ptr); extern void player_outfit(void); extern void dump_yourself(FILE *fff); @@ -486,7 +480,7 @@ extern bool no_lite(void); extern void apply_default_feat_lighting(TERM_COLOR f_attr[F_LIT_MAX], SYMBOL_CODE f_char[F_LIT_MAX]); extern void map_info(POSITION y, POSITION x, TERM_COLOR *ap, char *cp, TERM_COLOR *tap, char *tcp); extern void move_cursor_relative(int row, int col); -extern void print_rel(char c, byte a, TERM_LEN y, TERM_LEN x); +extern void print_rel(SYMBOL_CODE c, TERM_COLOR a, TERM_LEN y, TERM_LEN x); extern void note_spot(POSITION y, POSITION x); extern void display_dungeon(void); extern void lite_spot(POSITION y, POSITION x); @@ -525,6 +519,7 @@ extern void disturb(bool stop_search, bool flush_output); extern void glow_deep_lava_and_bldg(void); extern bool cave_monster_teleportable_bold(MONSTER_IDX m_idx, POSITION y, POSITION x, BIT_FLAGS mode); extern bool cave_player_teleportable_bold(POSITION y, POSITION x, BIT_FLAGS mode); +extern bool is_open(FEAT_IDX feat); /* cmd1.c */ extern HIT_POINT critical_shot(WEIGHT weight, int plus_ammo, int plus_bow, HIT_POINT dam); @@ -543,6 +538,10 @@ extern void travel_step(void); #endif /* cmd2.c */ +extern bool cmd_limit_cast(player_type *creature_ptr); +extern bool cmd_limit_arena(player_type *creature_ptr); +extern bool cmd_limit_time_walk(player_type *creature_ptr); +extern bool cmd_limit_confused(player_type *creature_ptr); extern void forget_travel_flow(void); extern bool confirm_leave_level(bool down_stair); extern void do_cmd_go_up(void); @@ -560,7 +559,7 @@ extern void do_cmd_stay(bool pickup); extern void do_cmd_run(void); extern void do_cmd_rest(void); extern void do_cmd_fire(void); -extern void do_cmd_fire_aux(INVENTORY_IDX item, object_type *j_ptr); +extern void exe_fire(INVENTORY_IDX item, object_type *j_ptr); extern bool do_cmd_throw(int mult, bool boomerang, OBJECT_IDX shuriken); #ifdef TRAVEL extern void do_cmd_travel(void); @@ -598,14 +597,7 @@ extern void plural_aux(char * Name); extern void do_cmd_checkquest(void); extern void do_cmd_time(void); -/* cmd5.c */ -extern concptr spell_category_name(OBJECT_TYPE_VALUE tval); -extern void do_cmd_browse(void); -extern void do_cmd_study(void); -extern void do_cmd_cast(void); - /* cmd-spell.c */ -extern void stop_singing(void); extern concptr do_spell(REALM_IDX realm, SPELL_IDX spell, BIT_FLAGS mode); extern bool trump_summoning(int num, bool pet, POSITION y, POSITION x, DEPTH lev, int type, BIT_FLAGS mode); @@ -761,13 +753,6 @@ extern void lore_treasure(MONSTER_IDX m_idx, ITEM_NUMBER num_item, ITEM_NUMBER n extern void sanity_blast(monster_type *m_ptr, bool necro); extern void update_monster(MONSTER_IDX m_idx, bool full); extern void update_monsters(bool full); -extern bool place_monster_aux(MONSTER_IDX who, POSITION y, POSITION x, MONRACE_IDX r_idx, BIT_FLAGS mode); -extern bool place_monster(POSITION y, POSITION x, BIT_FLAGS mode); -extern bool alloc_horde(POSITION y, POSITION x); -extern bool alloc_guardian(bool def_val); -extern bool alloc_monster(POSITION dis, BIT_FLAGS mode); -extern bool summon_specific(MONSTER_IDX who, POSITION y1, POSITION x1, DEPTH lev, int type, BIT_FLAGS mode, SYMBOL_CODE symbol); -extern bool summon_named_creature (MONSTER_IDX who, POSITION oy, POSITION ox, MONRACE_IDX r_idx, BIT_FLAGS mode); extern bool multiply_monster(MONSTER_IDX m_idx, bool clone, BIT_FLAGS mode); extern void update_smart_learn(MONSTER_IDX m_idx, int what); extern void choose_new_monster(MONSTER_IDX m_idx, bool born, MONRACE_IDX r_idx); @@ -799,6 +784,7 @@ extern void toggle_inven_equip(void); extern bool can_get_item(void); extern bool get_item(OBJECT_IDX *cp, concptr pmt, concptr str, BIT_FLAGS mode); extern object_type *choose_object(OBJECT_IDX *idx, concptr q, concptr s, BIT_FLAGS option); +PERCENTAGE breakage_chance(object_type *o_ptr); /* object2.c */ extern void excise_object_idx(OBJECT_IDX o_idx); @@ -831,8 +817,6 @@ extern void place_object(POSITION y, POSITION x, BIT_FLAGS mode); extern bool make_gold(object_type *j_ptr); extern void place_gold(POSITION y, POSITION x); extern OBJECT_IDX drop_near(object_type *o_ptr, PERCENTAGE chance, POSITION y, POSITION x); -extern void acquirement(POSITION y1, POSITION x1, int num, bool great, bool special, bool known); -extern void amusement(POSITION y1, POSITION x1, int num, bool known); extern void inven_item_charges(INVENTORY_IDX item); extern void inven_item_describe(INVENTORY_IDX item); extern void inven_item_increase(INVENTORY_IDX item, ITEM_NUMBER num); @@ -858,7 +842,6 @@ extern void torch_lost_fuel(object_type *o_ptr); extern concptr essence_name[]; /* racial.c */ -extern bool gain_magic(void); extern void do_cmd_racial_power(void); /* save.c */ @@ -873,12 +856,12 @@ extern bool in_disintegration_range(POSITION y1, POSITION x1, POSITION y2, POSIT extern void breath_shape(u16b *path_g, int dist, int *pgrids, POSITION *gx, POSITION *gy, POSITION *gm, POSITION *pgm_rad, POSITION rad, POSITION y1, POSITION x1, POSITION y2, POSITION x2, EFFECT_ID typ); extern int take_hit(int damage_type, HIT_POINT damage, concptr kb_str, int monspell); extern u16b bolt_pict(POSITION y, POSITION x, POSITION ny, POSITION nx, EFFECT_ID typ); -extern sint project_path(u16b *gp, POSITION range, POSITION y1, POSITION x1, POSITION y2, POSITION x2, BIT_FLAGS flg); extern POSITION dist_to_line(POSITION y, POSITION x, POSITION y1, POSITION x1, POSITION y2, POSITION x2); extern bool project(MONSTER_IDX who, POSITION rad, POSITION y, POSITION x, HIT_POINT dam, EFFECT_ID typ, BIT_FLAGS flg, int monspell); extern int project_length; extern bool binding_field(HIT_POINT dam); extern void seal_of_mirror(HIT_POINT dam); +extern concptr spell_category_name(OBJECT_TYPE_VALUE tval); /* spells2.c */ extern void message_pain(MONSTER_IDX m_idx, HIT_POINT dam); @@ -914,12 +897,15 @@ extern bool dispel_undead(HIT_POINT dam); extern bool dispel_monsters(HIT_POINT dam); extern bool dispel_living(HIT_POINT dam); extern bool dispel_demons(HIT_POINT dam); +extern bool cleansing_nova(player_type *creature_ptr, bool magic, bool powerful); +extern bool unleash_mana_storm(player_type *creature_ptr, bool powerful); extern bool crusade(void); extern bool turn_undead(void); extern bool destroy_area(POSITION y1, POSITION x1, POSITION r, bool in_generate); extern bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx); extern bool earthquake(POSITION cy, POSITION cx, POSITION r); extern void lite_room(POSITION y1, POSITION x1); +extern bool starlight(bool magic); extern void unlite_room(POSITION y1, POSITION x1); extern bool lite_area(HIT_POINT dam, POSITION rad); extern bool unlite_area(HIT_POINT dam, POSITION rad); @@ -940,17 +926,6 @@ extern bool wall_to_mud(DIRECTION dir, HIT_POINT dam); extern bool destroy_door(DIRECTION dir); extern bool disarm_trap(DIRECTION dir); extern bool wizard_lock(DIRECTION dir); -extern bool heal_monster(DIRECTION dir, HIT_POINT dam); -extern bool speed_monster(DIRECTION dir, int power); -extern bool slow_monster(DIRECTION dir, int power); -extern bool sleep_monster(DIRECTION dir, int power); -extern bool stasis_monster(DIRECTION dir); /* Like sleep, affects undead as well */ -extern bool stasis_evil(DIRECTION dir); /* Like sleep, affects undead as well */ -extern bool confuse_monster(DIRECTION dir, PLAYER_LEVEL plev); -extern bool stun_monster(DIRECTION dir, PLAYER_LEVEL plev); -extern bool fear_monster(DIRECTION dir, PLAYER_LEVEL plev); -extern bool poly_monster(DIRECTION dir, int power); -extern bool clone_monster(DIRECTION dir); extern bool teleport_monster(DIRECTION dir, int distance); extern bool door_creation(void); extern bool trap_creation(POSITION y, POSITION x); @@ -962,7 +937,6 @@ extern bool animate_dead(MONSTER_IDX who, POSITION y, POSITION x); extern bool sleep_monsters_touch(void); extern bool activate_ty_curse(bool stop_ty, int *count); extern int activate_hi_summon(POSITION y, POSITION x, bool can_pet); -extern int summon_cyber(MONSTER_IDX who, POSITION y, POSITION x); extern void wall_breaker(void); extern bool confuse_monsters(HIT_POINT dam); extern bool charm_monsters(HIT_POINT dam); @@ -994,19 +968,24 @@ extern bool cast_wrath_of_the_god(HIT_POINT dam, POSITION rad); extern void cast_wonder(DIRECTION dir); extern void cast_invoke_spirits(DIRECTION dir); extern void cast_shuffle(void); -extern bool_hack life_stream(bool_hack message, bool_hack virtue_change); -extern bool_hack heroism(int base); -extern bool_hack berserk(int base); -extern bool_hack cure_light_wounds(DICE_NUMBER dice, DICE_SID sides); -extern bool_hack cure_serious_wounds(DICE_NUMBER dice, DICE_SID sides); -extern bool_hack cure_critical_wounds(HIT_POINT pow); -extern bool_hack true_healing(HIT_POINT pow); -extern bool_hack restore_mana(bool_hack magic_eater); -extern bool restore_all_status(void); extern void stop_mouth(void); extern bool_hack vampirism(void); extern bool panic_hit(void); extern bool psychometry(void); +extern bool draconian_breath(player_type *creature_ptr); +extern bool android_inside_weapon(player_type *creature_ptr); +extern bool create_ration(player_type *crature_ptr); +extern void hayagake(player_type *creature_ptr); +extern bool double_attack(player_type *creature_ptr); +extern bool comvert_hp_to_mp(player_type *creature_ptr); +extern bool comvert_mp_to_hp(player_type *creature_ptr); +extern bool demonic_breath(player_type *creature_ptr); +extern bool mirror_concentration(player_type *creature_ptr); +extern bool sword_dancing(player_type *creature_ptr); +extern bool confusing_light(player_type *creature_ptr); +extern bool rodeo(player_type *creature_ptr); +extern bool clear_mind(player_type *creature_ptr); +extern bool concentration(player_type *creature_ptr); /* spells3.c */ extern bool teleport_away(MONSTER_IDX m_idx, POSITION dis, BIT_FLAGS mode); @@ -1016,6 +995,7 @@ extern void teleport_player(POSITION dis, BIT_FLAGS mode); extern void teleport_player_away(MONSTER_IDX m_idx, POSITION dis); extern void teleport_player_to(POSITION ny, POSITION nx, BIT_FLAGS mode); extern void teleport_away_followable(MONSTER_IDX m_idx); +extern bool teleport_level_other(player_type *creature_ptr); extern void teleport_level(MONSTER_IDX m_idx); extern DUNGEON_IDX choose_dungeon(concptr note, POSITION y, POSITION x); extern bool recall_player(player_type *creature_ptr, TIME_EFFECT turns); @@ -1066,14 +1046,15 @@ extern bool mirror_tunnel(void); extern void massacre(void); extern bool eat_lock(void); extern bool shock_power(void); +extern bool booze(player_type *creature_ptr); +extern bool detonation(player_type *creature_ptr); + /* bldg.c */ extern void battle_monsters(void); extern void do_cmd_bldg(void); extern void do_cmd_quest(void); extern void quest_discovery(QUEST_IDX q_idx); -extern QUEST_IDX quest_number(DEPTH level); -extern QUEST_IDX random_quest_number(DEPTH level); extern bool tele_town(void); extern HIT_POINT calc_crit_ratio_shot(HIT_POINT plus_ammo, HIT_POINT plus_bow); extern HIT_POINT calc_expect_crit_shot(WEIGHT weight, int plus_ammo,int plus_bow, HIT_POINT dam); @@ -1167,17 +1148,9 @@ extern void cnv_stat(int val, char *out_val); extern s16b modify_stat_value(int value, int amount); extern void prt_time(void); extern concptr map_name(void); -extern WEIGHT weight_limit(void); -extern bool buki_motteruka(int i); -extern bool is_heavy_shoot(object_type *o_ptr); extern int bow_tval_ammo(object_type *o_ptr); -extern s16b calc_num_fire(object_type *o_ptr); -extern void calc_bonuses(void); extern void handle_stuff(void); extern void update_output(void); -extern void update_creature(player_type *creature_ptr); -extern BIT_FLAGS16 empty_hands(bool riding_control); -extern bool heavy_armor(void); extern void print_monster_list(TERM_LEN x, TERM_LEN y, TERM_LEN max_lines); extern void update_playtime(void); @@ -1253,19 +1226,18 @@ 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); +/* view-mainwindow.c */ +extern void resize_map(void); +extern void redraw_window(void); +extern bool change_panel(POSITION dy, POSITION dx); + + /* xtra2.c */ extern void check_experience(void); -extern void complete_quest(QUEST_IDX quest_num); -extern void check_quest_completion(monster_type *m_ptr); -extern void check_find_art_quest_completion(object_type *o_ptr); extern concptr extract_note_dies(MONRACE_IDX r_idx); extern void monster_death(MONSTER_IDX m_idx, bool drop_item); -extern bool mon_take_hit(MONSTER_IDX m_idx, HIT_POINT dam, bool *fear, concptr note); extern void get_screen_size(TERM_LEN *wid_p, TERM_LEN *hgt_p); extern void panel_bounds_center(void); -extern void resize_map(void); -extern void redraw_window(void); -extern bool change_panel(POSITION dy, POSITION dx); extern void verify_panel(void); extern concptr look_mon_desc(monster_type *m_ptr, BIT_FLAGS mode); extern bool target_able(MONSTER_IDX m_idx); @@ -1276,29 +1248,9 @@ extern bool get_aim_dir(DIRECTION *dp); extern bool get_hack_dir(DIRECTION *dp); extern bool get_direction(DIRECTION *dp, bool allow_under, bool with_steed); extern bool get_rep_dir(DIRECTION *dp, bool under); -extern void gain_level_reward(int chosen_reward); extern bool tgt_pt(POSITION *x, POSITION *y); extern void do_poly_wounds(void); extern void change_race(CHARACTER_IDX new_race, concptr effect_msg); -extern HIT_POINT mon_damage_mod(monster_type *m_ptr, HIT_POINT dam, bool is_psy_spear); -extern ENERGY bow_energy(OBJECT_SUBTYPE_VALUE sval); -extern int bow_tmul(OBJECT_SUBTYPE_VALUE sval); -extern void display_rumor(bool ex); - -/* artifact.c */ -extern void one_high_resistance(object_type *o_ptr); -extern void one_lordly_high_resistance(object_type *o_ptr); -extern void one_ele_resistance(object_type *o_ptr); -extern void one_dragon_ele_resistance(object_type *o_ptr); -extern void one_low_esp(object_type *o_ptr); -extern void one_resistance(object_type *o_ptr); -extern void one_ability(object_type *o_ptr); -extern void one_activation(object_type *o_ptr); -extern bool create_artifact(object_type *o_ptr, bool a_scroll); -extern int activation_index(object_type *o_ptr); -extern const activation_type* find_activation_info(object_type *o_ptr); -extern void random_artifact_resistance(object_type * o_ptr, artifact_type *a_ptr); -extern bool create_named_art(ARTIFACT_IDX a_idx, POSITION y, POSITION x); /* scores.c */ extern void display_scores_aux(int from, int to, int note, high_score *score); @@ -1353,15 +1305,6 @@ extern void do_cmd_hissatsu(void); extern void do_cmd_gain_hissatsu(void); extern MULTIPLY mult_hissatsu(MULTIPLY mult, BIT_FLAGS *flgs, monster_type *m_ptr, BIT_FLAGS mode); -/* mutation.c */ -extern bool gain_random_mutation(int choose_mut); -extern bool lose_mutation(int choose_mut); -extern void lose_all_mutations(void); -extern void dump_mutations(FILE *OutFile); -extern void do_cmd_knowledge_mutations(void); -extern int calc_mutant_regenerate_mod(void); -extern bool mutation_power_aux(int power); - /* * Hack -- conditional (or "bizarre") externs @@ -1471,18 +1414,8 @@ extern void spoil_random_artifact(concptr fname); /* wizard2.c */ extern void strip_name(char *buf, KIND_OBJECT_IDX k_idx); -extern void do_cmd_rerate_aux(void); -extern void do_cmd_rerate(bool display); extern void cheat_death(player_type *creature_ptr); -/* avatar.c */ -extern bool compare_virtue(int type, int num, int tekitou); -extern int virtue_number(int type); -extern concptr virtue[MAX_VIRTUE]; -extern void get_virtues(void); -extern void chg_virtue(int virtue, int amount); -extern void set_virtue(int virtue, int amount); -extern void dump_virtues(FILE * OutFile); #ifdef JP /* japanese.c */ @@ -1544,18 +1477,8 @@ extern void do_cmd_snipe(void); extern void do_cmd_snipe_browse(void); extern int boost_concentration_damage(int tdam); -/* hex.c */ -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(void); -extern void revenge_store(HIT_POINT dam); -extern bool teleport_barrier(MONSTER_IDX m_idx); -extern bool magic_barrier(MONSTER_IDX m_idx); -extern bool multiply_barrier(MONSTER_IDX m_idx); - extern void kamaenaoshi(INVENTORY_IDX item); extern bool ang_sort_comp_hook(vptr u, vptr v, int a, int b); extern void ang_sort_swap_hook(vptr u, vptr v, int a, int b); +