1 | int same_party (partylist *a, partylist *b); |
1 | /* |
|
|
2 | * This file is part of Deliantra, the Roguelike Realtime MMORPG. |
|
|
3 | * |
|
|
4 | * Copyright (©) 2005,2006,2007,2008,2009,2010 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
|
|
5 | * |
|
|
6 | * Deliantra is free software: you can redistribute it and/or modify it under |
|
|
7 | * the terms of the Affero GNU General Public License as published by the |
|
|
8 | * Free Software Foundation, either version 3 of the License, or (at your |
|
|
9 | * option) any later version. |
|
|
10 | * |
|
|
11 | * This program is distributed in the hope that it will be useful, |
|
|
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
|
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
|
14 | * GNU General Public License for more details. |
|
|
15 | * |
|
|
16 | * You should have received a copy of the Affero GNU General Public License |
|
|
17 | * and the GNU General Public License along with this program. If not, see |
|
|
18 | * <http://www.gnu.org/licenses/>. |
|
|
19 | * |
|
|
20 | * The authors can be reached via e-mail to <support@deliantra.net> |
|
|
21 | */ |
|
|
22 | |
2 | /* alchemy.c */ |
23 | /* alchemy.c */ |
3 | int need_identify (const object *obj); |
24 | int need_identify (const object *obj); |
4 | int apply_shop_mat (object *shop_mat, object *op); |
25 | int apply_shop_mat (object *shop_mat, object *op); |
5 | const char *cost_string_from_value(sint64 cost, int approx); |
26 | const char *cost_string_from_value (sint64 cost, int approx); |
6 | void pay_player (object *pl, sint64 amount); |
27 | void pay_player (object *pl, sint64 amount); |
7 | sint64 pay_player_arch (object *pl, const char *arch, sint64 amount); |
28 | sint64 pay_player_arch (object *pl, const char *arch, sint64 amount); |
8 | void attempt_do_alchemy(object *caster, object *cauldron); |
29 | void attempt_do_alchemy (object *caster, object *cauldron, object *skill); |
9 | int content_recipe_value(object *op); |
30 | |
10 | int numb_ob_inside(object *op); |
|
|
11 | object *attempt_recipe(object *caster, object *cauldron, int ability, recipe *rp, int nbatches); |
|
|
12 | void adjust_product(object *item, int lvl, int yield); |
|
|
13 | object *make_item_from_recipe(object *cauldron, recipe *rp); |
|
|
14 | object *find_transmution_ob(object *first_ingred, recipe *rp, size_t *rp_arch_index, int create_item); |
|
|
15 | void alchemy_failure_effect(object *op, object *cauldron, recipe *rp, int danger); |
|
|
16 | void remove_contents(object *first_ob, object *save_item); |
|
|
17 | int calc_alch_danger(object *caster, object *cauldron, recipe *rp); |
|
|
18 | /* apply.c */ |
31 | /* apply.c */ |
19 | int transport_can_hold(const object *transport, const object *op, int nrof); |
32 | int transport_can_hold (const object *transport, const object *op, int nrof); |
20 | int apply_transport(object *pl, object *transport, int aflag); |
33 | int apply_transport (object *pl, object *transport, int aflag); |
21 | int should_director_abort(object *op, object *victim); |
34 | int should_director_abort (object *op, object *victim); |
22 | int apply_potion(object *op, object *tmp); |
35 | int apply_potion (object *op, object *tmp); |
23 | int improve_weapon_stat(object *op, object *improver, object *weapon, signed char *stat, int sacrifice_count, const char *statname); |
|
|
24 | int prepare_weapon(object *op, object *improver, object *weapon); |
|
|
25 | int improve_weapon(object *op, object *improver, object *weapon); |
|
|
26 | int check_improve_weapon(object *op, object *tmp); |
|
|
27 | int improve_armour(object *op, object *improver, object *armour); |
|
|
28 | int convert_item(object *item, object *converter); |
|
|
29 | int apply_container(object *op, object *sack); |
|
|
30 | int esrv_apply_container(object *op, object *sack); |
36 | int esrv_apply_container (object *op, object *sack); |
31 | void move_apply(object *trap, object *victim, object *originator); |
37 | void move_apply (object *trap, object *victim, object *originator); |
32 | void do_learn_spell(object *op, object *spell, int special_prayer); |
38 | void do_learn_spell (object *op, object *spell, int special_prayer); |
33 | void do_forget_spell(object *op, const char *spell); |
39 | void do_forget_spell (object *op, const char *spell); |
34 | void apply_scroll(object *op, object *tmp, int dir); |
40 | void apply_scroll (object *op, object *tmp, int dir); |
35 | int dragon_eat_flesh(object *op, object *meal); |
|
|
36 | void apply_poison(object *op, object *tmp); |
41 | void apply_poison (object *op, object *tmp); |
37 | int is_legal_2ways_exit(object *op, object *exit); |
|
|
38 | int manual_apply(object *op, object *tmp, int aflag); |
|
|
39 | int player_apply(object *pl, object *op, int aflag, int quiet); |
|
|
40 | void player_apply_below(object *pl); |
42 | void player_apply_below (object *pl); |
41 | object *get_item_from_body_location(object *start, int loc); |
|
|
42 | int unapply_for_ob(object *who, object *op, int aflags); |
|
|
43 | int can_apply_object(object *who, object *op); |
43 | int can_apply_object (object *who, object *op); |
44 | int apply_special(object *who, object *op, int aflags); |
|
|
45 | int monster_apply_special(object *who, object *op, int aflags); |
|
|
46 | int auto_apply(object *op); |
44 | int auto_apply (object *op); |
47 | void fix_auto_apply(maptile *m); |
45 | void fix_auto_apply (maptile *m); |
48 | void eat_special_food(object *who, object *food); |
46 | void eat_special_food (object *who, object *food); |
49 | void apply_lighter(object *who, object *lighter); |
|
|
50 | void scroll_failure(object *op, int failure, int power); |
|
|
51 | void apply_changes_to_player(object *pl, object *change); |
47 | void apply_changes_to_player (object *pl, object *change); |
52 | void apply_item_transformer(object *pl, object *transformer); |
48 | void handle_apply_yield (object *op); |
|
|
49 | void apply_lamp (object *op, bool switch_on); |
|
|
50 | void get_animation_from_arch (object *op, arch_ptr a); |
|
|
51 | int convert_item (object *item, object *converter); |
|
|
52 | |
53 | /* attack.c */ |
53 | /* attack.c */ |
54 | void cancellation(object *op); |
54 | void cancellation (object *op); |
55 | int did_make_save_item(object *op, int type, object *originator); |
|
|
56 | void save_throw_object(object *op, int type, object *originator); |
55 | void save_throw_object (object *op, int type, object *originator); |
57 | int hit_map(object *op, int dir, int type, int full_hit); |
56 | int hit_map (object *op, int dir, uint32_t type, int full_hit); |
58 | void attack_message(int dam, int type, object *op, object *hitter); |
|
|
59 | int attack_ob(object *op, object *hitter); |
57 | int attack_ob (object *op, object *hitter); |
60 | object *hit_with_arrow(object *op, object *victim); |
58 | object *hit_with_arrow (object *op, object *victim); |
61 | void tear_down_wall(object *op); |
|
|
62 | void scare_creature(object *target, object *hitter); |
|
|
63 | int hit_player_attacktype(object *op, object *hitter, int dam, uint32 attacknum, int magic); |
59 | int hit_player_attacktype (object *op, object *hitter, int dam, uint32_t attacknum, int magic); |
64 | int kill_object(object *op, int dam, object *hitter, int type); |
60 | int kill_object (object *op, int dam, object *hitter, int type); |
65 | int friendly_fire(object *op, object *hitter); |
61 | int friendly_fire (object *op, object *hitter); |
66 | int hit_player(object *op, int dam, object *hitter, int type, int full_hit); |
62 | int hit_player (object *op, int dam, object *hitter, uint32_t type, int full_hit); |
67 | void poison_player(object *op, object *hitter, int dam); |
|
|
68 | void slow_player(object *op, object *hitter, int dam); |
|
|
69 | void confuse_player(object *op, object *hitter, int dam); |
63 | void confuse_player (object *op, object *hitter, int dam); |
70 | void blind_player(object *op, object *hitter, int dam); |
64 | void blind_player (object *op, object *hitter, int dam); |
71 | void paralyze_player(object *op, object *hitter, int dam); |
65 | void paralyze_player (object *op, object *hitter, int dam); |
72 | void deathstrike_player(object *op, object *hitter, int *dam); |
66 | |
73 | int adj_attackroll(object *hitter, object *target); |
|
|
74 | int is_aimed_missile(object *op); |
|
|
75 | /* ban.c */ |
|
|
76 | int checkbanned(const char *login, const char *host); |
|
|
77 | /* build_map.c */ |
67 | /* build_map.c */ |
78 | int can_build_over(struct mapdef *map, object *tmp, short x, short y); |
|
|
79 | void remove_marking_runes(struct mapdef *map, short x, short y); |
|
|
80 | int find_unused_connected_value(struct mapdef *map); |
|
|
81 | int find_or_create_connection_for_map(object *pl, short x, short y, object *rune); |
|
|
82 | object *get_connection_rune(object *pl, short x, short y); |
|
|
83 | object *get_msg_book(object *pl, short x, short y); |
|
|
84 | object *get_wall(struct mapdef *map, int x, int y); |
|
|
85 | void fix_walls(maptile *map, int x, int y); |
|
|
86 | void fix_walls_around(maptile *map, int x, int y); |
|
|
87 | void apply_builder_floor(object *pl, object *material, short x, short y); |
|
|
88 | void apply_builder_wall(object *pl, object *material, short x, short y); |
|
|
89 | void apply_builder_item(object *pl, object *item, short x, short y); |
|
|
90 | void apply_builder_remove(object *pl, int dir); |
|
|
91 | void apply_map_builder(object *pl, int dir); |
68 | void apply_map_builder (object *pl, int dir); |
92 | int adjust_sign_msg(object *pl, short x, short y, object *tmp); |
69 | |
93 | /* c_misc.c */ |
70 | /* c_misc.c */ |
94 | int command_motd(object *op, char *params); |
71 | int command_motd (object *op, char *params); |
95 | int command_bug(object *op, char *params); |
72 | int command_bug (object *op, char *params); |
96 | void malloc_info(object *op); |
73 | void malloc_info (object *op); |
97 | int command_whereabouts(object *op, char *params); |
74 | int command_whereabouts (object *op, char *params); |
98 | int command_malloc(object *op, char *params); |
75 | int command_malloc (object *op, char *params); |
99 | int command_maps(object *op, char *params); |
76 | int command_maps (object *op, char *params); |
100 | int command_strings(object *op, char *params); |
77 | int command_strings (object *op, char *params); |
101 | int command_sstable(object *op, char *params); |
78 | int command_sstable (object *op, char *params); |
102 | int command_time(object *op, char *params); |
79 | int command_time (object *op, char *params); |
103 | int command_weather(object *op, char *params); |
80 | int command_weather (object *op, char *params); |
104 | int command_archs(object *op, char *params); |
81 | int command_archs (object *op, char *params); |
105 | int command_hiscore(object *op, char *params); |
82 | int command_hiscore (object *op, char *params); |
106 | int command_debug(object *op, char *params); |
83 | int command_debug (object *op, char *params); |
107 | int command_dumpbelow(object *op, char *params); |
84 | int command_dumpbelow (object *op, char *params); |
108 | int command_wizpass(object *op, char *params); |
|
|
109 | int command_wizcast(object *op, char *params); |
|
|
110 | int command_dumpallobjects(object *op, char *params); |
|
|
111 | int command_dumpfriendlyobjects(object *op, char *params); |
85 | int command_dumpfriendlyobjects (object *op, char *params); |
112 | int command_dumpallarchetypes(object *op, char *params); |
|
|
113 | int command_ssdumptable(object *op, char *params); |
|
|
114 | int command_dumpmap(object *op, char *params); |
86 | int command_wizpass (object *op, char *params); |
115 | int command_dumpallmaps(object *op, char *params); |
87 | int command_wizcast (object *op, char *params); |
116 | int command_printlos(object *op, char *params); |
88 | int command_printlos (object *op, char *params); |
117 | int command_version(object *op, char *params); |
89 | int command_version (object *op, char *params); |
118 | void bug_report(const char *reportstring); |
90 | void bug_report (const char *reportstring); |
119 | int command_statistics(object *pl, char *params); |
91 | int command_statistics (object *pl, char *params); |
120 | int command_fix_me(object *op, char *params); |
92 | int command_fix_me (object *op, char *params); |
121 | int command_players(object *op, char *paramss); |
93 | int command_players (object *op, char *paramss); |
122 | int command_logs(object *op, char *params); |
|
|
123 | int command_bowmode(object *op, char *params); |
94 | int command_bowmode (object *op, char *params); |
124 | int command_showpets(object *op, char *params); |
95 | int command_showpets (object *op, char *params); |
125 | int command_resistances(object *op, char *params); |
96 | int command_resistances (object *op, char *params); |
126 | int command_help(object *op, char *params); |
97 | int command_help (object *op, char *params); |
127 | int onoff_value(const char *line); |
|
|
128 | int command_quit(object *op, char *params); |
98 | int command_quit (object *op, char *params); |
129 | int command_real_quit(object *op, char *params); |
99 | int command_real_quit (object *op, char *params); |
130 | void receive_player_name(object *op, char k); |
100 | void receive_player_name (object *op, char k); |
131 | void receive_player_password(object *op, char k); |
101 | void receive_player_password (object *op, char k); |
132 | int command_title(object *op, char *params); |
102 | int command_title (object *op, char *params); |
133 | int command_kill_pets(object *op, char *params); |
103 | int command_kill_pets (object *op, char *params); |
134 | int command_quests(object *pl, char *params); |
104 | int command_quests (object *pl, char *params); |
|
|
105 | |
135 | /* c_move.c */ |
106 | /* c_move.c */ |
136 | int command_east(object *op, char *params); |
107 | int command_east (object *op, char *params); |
137 | int command_north(object *op, char *params); |
108 | int command_north (object *op, char *params); |
138 | int command_northeast(object *op, char *params); |
109 | int command_northeast (object *op, char *params); |
139 | int command_northwest(object *op, char *params); |
110 | int command_northwest (object *op, char *params); |
140 | int command_south(object *op, char *params); |
111 | int command_south (object *op, char *params); |
141 | int command_southeast(object *op, char *params); |
112 | int command_southeast (object *op, char *params); |
142 | int command_southwest(object *op, char *params); |
113 | int command_southwest (object *op, char *params); |
143 | int command_west(object *op, char *params); |
114 | int command_west (object *op, char *params); |
144 | int command_stay(object *op, char *params); |
115 | int command_stay (object *op, char *params); |
|
|
116 | int command_run (object *op, char *params); |
|
|
117 | int command_run_stop (object *op, char *params); |
|
|
118 | int command_fire (object *op, char *params); |
|
|
119 | int command_fire_stop (object *op, char *params); |
|
|
120 | |
145 | /* c_new.c */ |
121 | /* c_new.c */ |
146 | void execute_newserver_command(object *pl, char *command); |
122 | void execute_newserver_command (object *pl, char *command); |
147 | int bad_command(object *op, char *params); |
123 | |
148 | /* c_object.c */ |
124 | /* c_object.c */ |
149 | object *find_best_object_match(object *pl, const char *params); |
125 | object *find_best_object_match (object *pl, const char *params); |
150 | int command_build(object *pl, char *params); |
126 | int command_build (object *pl, char *params); |
151 | int command_uskill(object *pl, char *params); |
127 | int command_uskill (object *pl, char *params); |
152 | int command_rskill(object *pl, char *params); |
128 | int command_rskill (object *pl, char *params); |
153 | int command_search(object *op, char *params); |
129 | int command_search (object *op, char *params); |
154 | int command_disarm(object *op, char *params); |
130 | int command_disarm (object *op, char *params); |
155 | int command_throw(object *op, char *params); |
131 | int command_throw (object *op, char *params); |
156 | int command_apply(object *op, char *params); |
132 | int command_apply (object *op, char *params); |
157 | int sack_can_hold(object *pl, object *sack, object *op, uint32 nrof); |
133 | int sack_can_hold (object *pl, object *sack, object *op, uint32 nrof); |
158 | void pick_up(object *op, object *alt); |
134 | void pick_up (object *op, object *alt); |
159 | int command_take(object *op, char *params); |
135 | int command_take (object *op, char *params); |
160 | void put_object_in_sack(object *op, object *sack, object *tmp, uint32 nrof); |
136 | void put_object_in_sack (object *op, object *sack, object *tmp, uint32 nrof); |
161 | void drop_object(object *op, object *tmp, uint32 nrof); |
137 | void drop_object (object *op, object *tmp, uint32 nrof); |
|
|
138 | void drop_object (object *dropper, object *obj); |
162 | void drop(object *op, object *tmp); |
139 | void drop (object *op, object *tmp); |
163 | int command_dropall(object *op, char *params); |
140 | int command_dropall (object *op, char *params); |
164 | int command_drop(object *op, char *params); |
141 | int command_drop (object *op, char *params); |
165 | int command_examine(object *op, char *params); |
142 | int command_examine (object *op, char *params); |
166 | object *find_marked_object(object *op); |
|
|
167 | void examine_monster(object *op, object *tmp); |
143 | void examine_monster (object *op, object *tmp); |
168 | char *long_desc(object *tmp, object *pl); |
144 | const char *long_desc (object *tmp, object *pl); |
169 | void examine(object *op, object *tmp); |
145 | void examine (object *op, object *tmp); |
170 | void inventory(object *op, object *inv); |
|
|
171 | int command_pickup(object *op, char *params); |
146 | int command_pickup (object *op, char *params); |
172 | void set_pickup_mode(object *op, int i); |
147 | void set_pickup_mode (object *op, int i); |
173 | int command_search_items(object *op, char *params); |
148 | int command_search_items (object *op, char *params); |
174 | int command_rename_item(object *op, char *params); |
149 | int command_rename_item (object *op, char *params); |
|
|
150 | int command_unlock (object *op, char *params); |
|
|
151 | int command_lock (object *op, char *params); |
|
|
152 | int command_mark (object *op, char *params); |
|
|
153 | |
175 | /* c_party.c */ |
154 | /* c_party.c */ |
176 | int same_party(partylist *a, partylist *b); |
|
|
177 | partylist *get_firstparty(void); |
155 | partylist *get_firstparty (); |
178 | void remove_party(partylist *target_party); |
|
|
179 | void obsolete_parties(void); |
156 | void obsolete_parties (); |
180 | void add_kill_to_party(partylist *party, char *killer, char *dead, long exp); |
157 | void add_kill_to_party (partylist *party, const char *killer, const char *dead, long exp); |
181 | int confirm_party_password(object *op); |
|
|
182 | void receive_party_password(object *op, char k); |
158 | void receive_party_password (object *op, char k); |
183 | void send_party_message(object *op, char *msg); |
|
|
184 | int command_gsay(object *op, char *params); |
159 | int command_gsay (object *op, char *params); |
185 | int command_party(object *op, char *params); |
160 | int command_party (object *op, char *params); |
|
|
161 | |
186 | /* c_range.c */ |
162 | /* c_range.c */ |
187 | int command_invoke(object *op, char *params); |
163 | int command_invoke (object *op, char *params); |
188 | int command_cast(object *op, char *params); |
164 | int command_cast (object *op, char *params); |
189 | int command_prepare(object *op, char *params); |
165 | int command_prepare (object *op, char *params); |
190 | int command_cast_spell(object *op, char *params, char command); |
|
|
191 | int legal_range(object *op, int r); |
166 | int legal_range (object *op, int r); |
192 | void change_spell(object *op, char k); |
|
|
193 | int command_rotateshoottype(object *op, char *params); |
167 | int command_rotateshoottype (object *op, char *params); |
|
|
168 | |
194 | /* c_wiz.c */ |
169 | /* c_wiz.c */ |
195 | int command_loadtest(object *op, char *params); |
170 | int command_loadtest (object *op, char *params); |
196 | void do_wizard_hide(object *op, int silent_dm); |
|
|
197 | int command_hide(object *op, char *params); |
171 | int command_hide (object *op, char *params); |
198 | int command_setgod(object *op, char *params); |
172 | int command_setgod (object *op, char *params); |
199 | int command_banish(object *op, char *params); |
173 | int command_banish (object *op, char *params); |
200 | int command_save_overlay(object *op, char *params); |
174 | int command_save_overlay (object *op, char *params); |
201 | int command_toggle_shout(object *op, char *params); |
|
|
202 | int command_freeze(object *op, char *params); |
175 | int command_freeze (object *op, char *params); |
203 | int command_arrest(object *op, char *params); |
176 | int command_arrest (object *op, char *params); |
204 | int command_summon(object *op, char *params); |
177 | int command_summon (object *op, char *params); |
205 | int command_teleport(object *op, char *params); |
178 | int command_teleport (object *op, char *params); |
206 | int command_create(object *op, char *params); |
179 | int command_create (object *op, char *params); |
207 | int command_inventory(object *op, char *params); |
180 | int command_inventory (object *op, char *params); |
208 | int command_skills(object *op, char *params); |
181 | int command_skills (object *op, char *params); |
209 | int command_dump(object *op, char *params); |
182 | int command_dump (object *op, char *params); |
210 | int command_patch(object *op, char *params); |
183 | int command_patch (object *op, char *params); |
211 | int command_remove(object *op, char *params); |
184 | int command_remove (object *op, char *params); |
212 | int command_free(object *op, char *params); |
185 | int command_free (object *op, char *params); |
213 | int command_addexp(object *op, char *params); |
186 | int command_addexp (object *op, char *params); |
214 | int command_speed(object *op, char *params); |
187 | int command_speed (object *op, char *params); |
215 | int command_stats(object *op, char *params); |
188 | int command_stats (object *op, char *params); |
216 | int command_abil(object *op, char *params); |
189 | int command_abil (object *op, char *params); |
217 | int command_reset(object *op, char *params); |
190 | int command_reset (object *op, char *params); |
218 | int command_nowiz(object *op, char *params); |
191 | int command_nowiz (object *op, char *params); |
219 | int do_wizard_dm(object *op, char *params, int silent); |
|
|
220 | int command_dm(object *op, char *params); |
192 | int command_dm (object *op, char *params); |
221 | int command_invisible(object *op, char *params); |
193 | int command_invisible (object *op, char *params); |
222 | int command_learn_spell(object *op, char *params); |
194 | int command_learn_spell (object *op, char *params); |
223 | int command_learn_special_prayer(object *op, char *params); |
195 | int command_learn_special_prayer (object *op, char *params); |
224 | int command_forget_spell(object *op, char *params); |
196 | int command_forget_spell (object *op, char *params); |
225 | int command_listplugins(object *op, char *params); |
|
|
226 | int command_loadplugin(object *op, char *params); |
|
|
227 | int command_unloadplugin(object *op, char *params); |
|
|
228 | int command_dmhide(object *op, char *params); |
197 | int command_dmhide (object *op, char *params); |
229 | void dm_stack_pop(player *pl); |
|
|
230 | object *dm_stack_peek(player *pl); |
|
|
231 | void dm_stack_push(player *pl, tag_t item); |
198 | void dm_stack_push (player *pl, tag_t item); |
232 | object *get_dm_object(player *pl, char **params, int *from); |
|
|
233 | int command_stack_pop(object *op, char *params); |
199 | int command_stack_pop (object *op, char *params); |
234 | int command_stack_push(object *op, char *params); |
200 | int command_stack_push (object *op, char *params); |
235 | int command_stack_list(object *op, char *params); |
201 | int command_stack_list (object *op, char *params); |
236 | int command_stack_clear(object *op, char *params); |
202 | int command_stack_clear (object *op, char *params); |
237 | int command_diff(object *op, char *params); |
203 | int command_diff (object *op, char *params); |
238 | int command_insert_into(object *op, char *params); |
204 | int command_insert_into (object *op, char *params); |
239 | /* commands.c */ |
205 | |
240 | void init_commands(void); |
|
|
241 | CommFunc find_oldsocket_command(char *cmd); |
|
|
242 | CommFunc find_oldsocket_command2(char *cmd); |
|
|
243 | /* daemon.c */ |
206 | /* daemon.c */ |
244 | FILE *BecomeDaemon(const char *filename); |
207 | FILE *BecomeDaemon (const char *filename); |
|
|
208 | |
245 | /* disease.c */ |
209 | /* disease.c */ |
246 | int move_disease(object *disease); |
210 | int move_disease (object *disease); |
247 | int remove_symptoms(object *disease); |
|
|
248 | object *find_symptom(object *disease); |
|
|
249 | int check_infection(object *disease); |
|
|
250 | int infect_object(object *victim, object *disease, int force); |
211 | int infect_object (object *victim, object *disease, int force); |
251 | int do_symptoms(object *disease); |
|
|
252 | int grant_immunity(object *disease); |
|
|
253 | int move_symptom(object *symptom); |
212 | int move_symptom (object *symptom); |
254 | int check_physically_infect(object *victim, object *hitter); |
213 | int check_physically_infect (object *victim, object *hitter); |
255 | object *find_disease(object *victim); |
|
|
256 | int cure_disease(object *sufferer, object *caster); |
214 | int cure_disease (object *sufferer, object *caster, object *spell); |
257 | int reduce_symptoms(object *sufferer, int reduction); |
215 | |
258 | /* egoitem.c */ |
216 | /* egoitem.c */ |
259 | int create_artifact(object *op, const char *artifactname); |
|
|
260 | int apply_power_crystal(object *op, object *crystal); |
217 | int apply_power_crystal (object *op, object *crystal); |
|
|
218 | |
261 | /* hiscore.c */ |
219 | /* hiscore.c */ |
262 | char *spool(char *bp, char *error); |
|
|
263 | void check_score(object *op); |
220 | void check_score (object *op); |
264 | void display_high_score(object *op, int max, const char *match); |
221 | |
265 | /* gods.c */ |
222 | /* gods.c */ |
266 | int lookup_god_by_name(const char *name); |
|
|
267 | object *find_god(const char *name); |
223 | object *find_god (shstr_cmp name); |
268 | const char *determine_god(object *op); |
224 | shstr_tmp determine_god (object *op); |
269 | void pray_at_altar(object *pl, object *altar, object *skill); |
225 | void pray_at_altar (object *pl, object *altar, object *skill); |
270 | void become_follower(object *op, object *new_god); |
226 | void become_follower (object *op, object *new_god); |
271 | int worship_forbids_use(object *op, object *exp_obj, uint32 flag, const char *string); |
|
|
272 | void stop_using_item(object *op, int type, int number); |
|
|
273 | void update_priest_flag(object *god, object *exp_ob, uint32 flag); |
|
|
274 | archetype *determine_holy_arch(object *god, const char *type); |
227 | archetype *determine_holy_arch (object *god, shstr_cmp type); |
275 | void god_intervention(object *op, object *god, object *skill); |
|
|
276 | int god_examines_priest(object *op, object *god); |
|
|
277 | int god_examines_item(object *god, object *item); |
|
|
278 | int get_god(object *priest); |
|
|
279 | const char *get_god_for_race(const char *race); |
|
|
280 | int tailor_god_spell(object *spellop, object *caster); |
228 | int tailor_god_spell (object *spellop, object *caster); |
|
|
229 | |
281 | /* init.c */ |
230 | /* init.c */ |
282 | void set_logfile(char *val); |
231 | void load_settings (); |
283 | void call_version(void); |
|
|
284 | void showscores(void); |
|
|
285 | void set_debug(void); |
|
|
286 | void unset_debug(void); |
|
|
287 | void set_mondebug(void); |
|
|
288 | void set_dumpmon1(void); |
|
|
289 | void set_dumpmon2(void); |
|
|
290 | void set_dumpmon3(void); |
|
|
291 | void set_dumpmon4(void); |
|
|
292 | void set_dumpmon5(void); |
|
|
293 | void set_dumpmon6(void); |
|
|
294 | void set_dumpmon7(void); |
|
|
295 | void set_dumpmon8(void); |
|
|
296 | void set_dumpmon9(void); |
|
|
297 | void set_dumpmont(char *name); |
|
|
298 | void set_daemon(void); |
|
|
299 | void set_datadir(char *path); |
|
|
300 | void set_confdir(char *path); |
|
|
301 | void set_localdir(char *path); |
|
|
302 | void set_mapdir(char *path); |
|
|
303 | void set_archetypes(char *path); |
|
|
304 | void set_regions(char *path); |
|
|
305 | void set_treasures(char *path); |
|
|
306 | void set_uniquedir(char *path); |
|
|
307 | void set_templatedir(char *path); |
|
|
308 | void set_playerdir(char *path); |
|
|
309 | void set_tmpdir(char *path); |
|
|
310 | void showscoresparm(char *data); |
|
|
311 | void set_csport(char *val); |
|
|
312 | void init(int argc, char **argv); |
232 | void init (int argc, char **argv); |
313 | void usage(void); |
233 | void usage (); |
314 | void help(void); |
234 | void help (); |
315 | void init_beforeplay(void); |
235 | void init_beforeplay (); |
316 | void init_startup(void); |
|
|
317 | void compile_info(void); |
|
|
318 | void rec_sigsegv(int i); |
|
|
319 | void rec_sigint(int i); |
|
|
320 | void rec_sighup(int i); |
|
|
321 | void rec_sigquit(int i); |
|
|
322 | void rec_sigpipe(int i); |
|
|
323 | void rec_sigbus(int i); |
|
|
324 | void rec_sigterm(int i); |
|
|
325 | void init_signals(void); |
236 | void init_signals (); |
326 | void init_races(void); |
|
|
327 | void dump_races(void); |
|
|
328 | void add_to_racelist(const char *race_name, object *op); |
|
|
329 | racelink *get_racelist(void); |
|
|
330 | racelink *find_racelink(const char *name); |
237 | racelink *find_racelink (const char *name); |
|
|
238 | |
331 | /* login.c */ |
239 | /* login.c */ |
332 | void delete_character(const char *name); |
240 | void delete_character (const char *name); |
333 | int verify_player(const char *name, char *password); |
241 | int verify_player (const char *name, char *password); |
334 | int check_name(player *me, const char *name); |
242 | int check_name (player *me, const char *name); |
335 | int create_savedir_if_needed(char *savedir); |
243 | int create_savedir_if_needed (char *savedir); |
336 | void destroy_object(object *op); |
|
|
337 | void copy_file(const char *filename, FILE *fpout); |
244 | void copy_file (const char *filename, FILE *fpout); |
|
|
245 | |
338 | /* main.c */ |
246 | /* main.c */ |
339 | void server_tick (); |
247 | void server_tick (); |
340 | void version(object *op); |
248 | void version (object *op); |
341 | void info_keys(object *op); |
249 | void info_keys (object *op); |
342 | char *crypt_string(char *str, char *salt); |
250 | char *crypt_string (char *str, char *salt); |
343 | int check_password(char *typed, char *crypted); |
|
|
344 | void enter_player_savebed(object *op); |
251 | void enter_player_savebed (object *op); |
345 | void leave_map(object *op); |
252 | void leave_map (object *op); |
346 | void set_map_timeout(maptile *oldmap); |
|
|
347 | char *clean_path(const char *file); |
253 | char *clean_path (const char *file); |
348 | char *unclean_path(const char *src); |
254 | char *unclean_path (const char *src); |
349 | void enter_exit(object *op, object *exit_ob); |
255 | void enter_exit (object *op, object *exit_ob); |
350 | void process_events(); |
|
|
351 | void clean_tmp_files(void); |
256 | void clean_tmp_files (); |
352 | void leave(player *pl,int draw_exit); |
257 | void leave (player *pl,int draw_exit); |
353 | int forbid_play(void); |
|
|
354 | void do_specials(void); |
|
|
355 | int main(int argc, char **argv); |
258 | int main (int argc, char **argv); |
|
|
259 | |
356 | /* monster.c */ |
260 | /* monster.c */ |
357 | object *check_enemy(object *npc, rv_vector *rv); |
261 | object *check_enemy (object *npc, rv_vector *rv); |
358 | object *find_nearest_living_creature(object *npc); |
262 | object *find_nearest_living_creature (object *npc); |
359 | object *find_enemy(object *npc, rv_vector *rv); |
|
|
360 | int check_wakeup(object *op, object *enemy, rv_vector *rv); |
|
|
361 | int move_randomly(object *op); |
|
|
362 | int move_monster(object *op); |
263 | int move_monster (object *op); |
363 | int can_hit(object *ob1, object *ob2, rv_vector *rv); |
|
|
364 | object *monster_choose_random_spell(object *monster); |
|
|
365 | int monster_cast_spell(object *head, object *part, object *pl, int dir, rv_vector *rv); |
|
|
366 | int monster_use_scroll(object *head, object *part, object *pl, int dir, rv_vector *rv); |
|
|
367 | int monster_use_skill(object *head, object *part, object *pl, int dir); |
|
|
368 | int monster_use_range(object *head, object *part, object *pl, int dir); |
|
|
369 | int monster_use_bow(object *head, object *part, object *pl, int dir); |
|
|
370 | int check_good_weapon(object *who, object *item); |
|
|
371 | int check_good_armour(object *who, object *item); |
|
|
372 | void monster_check_pickup(object *monster); |
|
|
373 | int monster_can_pick(object *monster, object *item); |
|
|
374 | void monster_apply_below(object *monster); |
|
|
375 | void monster_check_apply(object *mon, object *item); |
264 | void monster_check_apply (object *mon, object *item); |
376 | void npc_call_help(object *op); |
265 | void npc_call_help (object *op); |
377 | int dist_att(int dir, object *ob, object *enemy, object *part, rv_vector *rv); |
|
|
378 | int run_att(int dir, object *ob, object *enemy, object *part, rv_vector *rv); |
|
|
379 | int hitrun_att(int dir, object *ob, object *enemy); |
|
|
380 | int wait_att(int dir, object *ob, object *enemy, object *part, rv_vector *rv); |
|
|
381 | int disthit_att(int dir, object *ob, object *enemy, object *part, rv_vector *rv); |
|
|
382 | int wait_att2(int dir, object *ob, object *enemy, object *part, rv_vector *rv); |
|
|
383 | void circ1_move(object *ob); |
|
|
384 | void circ2_move(object *ob); |
|
|
385 | void pace_movev(object *ob); |
|
|
386 | void pace_moveh(object *ob); |
|
|
387 | void pace2_movev(object *ob); |
|
|
388 | void pace2_moveh(object *ob); |
|
|
389 | void rand_move(object *ob); |
|
|
390 | void check_earthwalls(object *op, maptile *m, int x, int y); |
266 | void check_earthwalls (object *op, maptile *m, int x, int y); |
391 | void check_doors(object *op, maptile *m, int x, int y); |
267 | void check_doors (object *op, maptile *m, int x, int y); |
392 | void communicate(object *op, const char *txt); |
268 | void communicate (object *op, const char *txt); |
393 | int talk_to_npc(object *op, object *npc, const char *txt); |
269 | int talk_to_npc (object *op, object *npc, const char *txt); |
394 | int talk_to_wall(object *pl, object *npc, const char *txt); |
270 | int talk_to_wall (object *pl, object *npc, const char *txt); |
395 | object *find_mon_throw_ob(object *op); |
271 | object *find_mon_throw_ob (object *op); |
396 | int can_detect_enemy(object *op, object *enemy, rv_vector *rv); |
272 | int can_detect_enemy (object *op, object *enemy, rv_vector *rv); |
397 | int stand_in_light(object *op); |
273 | int stand_in_light (object *op); |
398 | int can_see_enemy(object *op, object *enemy); |
274 | int can_see_enemy (object *op, object *enemy); |
|
|
275 | |
399 | /* move.c */ |
276 | /* move.c */ |
400 | int move_object(object *op, int dir); |
|
|
401 | int move_ob(object *op, int dir, object *originator); |
|
|
402 | int transfer_ob(object *op, int x, int y, int randomly, object *originator); |
277 | int transfer_ob (object *op, int x, int y, int randomly, object *originator); |
403 | int teleport(object *teleporter, uint8 tele_type, object *user); |
278 | int teleport (object *teleporter, uint8 tele_type, object *user); |
404 | void recursive_roll(object *op, int dir, object *pusher); |
279 | void recursive_roll (object *op, int dir, object *pusher); |
405 | int try_fit(object *op, maptile *m, int x, int y); |
|
|
406 | int roll_ob(object *op, int dir, object *pusher); |
|
|
407 | int push_ob(object *who, int dir, object *pusher); |
280 | int push_ob (object *who, int dir, object *pusher); |
|
|
281 | |
408 | /* pets.c */ |
282 | /* pets.c */ |
409 | object *get_pet_enemy(object *pet, rv_vector *rv); |
283 | object *get_pet_enemy (object *pet, rv_vector *rv); |
410 | void terminate_all_pets(object *owner); |
284 | void terminate_all_pets (object *owner); |
411 | void remove_all_pets(maptile *map); |
285 | void remove_all_pets (maptile *map); |
412 | int follow_owner(object *ob, object *owner); |
286 | int follow_owner (object *ob, object *owner); |
413 | void pet_move(object *ob); |
287 | void pet_move (object *ob); |
414 | object *fix_summon_pet(archetype *at, object *op, int dir, int is_golem); |
|
|
415 | void move_golem(object *op); |
288 | void move_golem (object *op); |
416 | void control_golem(object *op, int dir); |
289 | void control_golem (object *op, int dir); |
417 | int summon_golem(object *op, object *caster, int dir, object *spob); |
290 | int summon_golem (object *op, object *caster, int dir, object *spob); |
418 | object *choose_cult_monster(object *pl, object *god, int summon_level); |
|
|
419 | int summon_object(object *op, object *caster, object *spell_ob, int dir, const char *stringarg); |
291 | int summon_object (object *op, object *caster, object *spell_ob, int dir, const char *spellparam); |
420 | object *get_real_owner(object *ob); |
|
|
421 | int should_arena_attack(object *pet, object *owner, object *target); |
292 | int should_arena_attack (object *pet, object *owner, object *target); |
|
|
293 | |
422 | /* player.c */ |
294 | /* player.c */ |
423 | player *find_player(const char *plname); |
295 | player *find_player (const char *plname); |
424 | player *find_player_partial_name(const char *plname); |
296 | player *find_player_partial_name (const char *plname); |
425 | void display_motd(const object *op); |
|
|
426 | void send_rules(const object *op); |
|
|
427 | void send_news(const object *op); |
|
|
428 | int playername_ok(const char *cp); |
297 | int playername_ok (const char *cp); |
429 | archetype *get_player_archetype(archetype *at); |
|
|
430 | object *get_nearest_player(object *mon); |
298 | object *get_nearest_player (object *mon); |
431 | int path_to_player(object *mon, object *pl, unsigned mindiff); |
299 | int path_to_player (object *mon, object *pl, unsigned mindiff); |
432 | void give_initial_items(object *pl, treasurelist *items); |
300 | void give_initial_items (object *pl, treasurelist *items); |
433 | void get_name(object *op); |
301 | void get_name (object *op); |
434 | void get_password(object *op); |
302 | void get_password (object *op); |
435 | void play_again(object *op); |
303 | void play_again (object *op); |
436 | int receive_play_again(object *op, char key); |
304 | int receive_play_again (object *op, char key); |
437 | void confirm_password(object *op); |
305 | void confirm_password (object *op); |
438 | void get_party_password(object *op, partylist *party); |
306 | void get_party_password (object *op, partylist *party); |
439 | void Roll_Again(object *op); |
307 | void Roll_Again (object *op); |
440 | void Swap_Stat(object *op, int Swap_Second); |
308 | void Swap_Stat (object *op, int Swap_Second); |
441 | int key_roll_stat(object *op, char key); |
309 | int key_roll_stat (object *op, char key); |
442 | int key_change_class(object *op, char key); |
310 | int key_change_class (object *op, char key); |
443 | int key_confirm_quit(object *op, char key); |
311 | int key_confirm_quit (object *op, char key); |
444 | void flee_player(object *op); |
|
|
445 | int check_pick(object *op); |
312 | int check_pick (object *op); |
446 | object *find_arrow(object *op, const char *type); |
|
|
447 | object *find_better_arrow(object *op, object *target, const char *type, int *better); |
|
|
448 | object *pick_arrow_target(object *op, const char *type, int dir); |
|
|
449 | int fire_bow(object *op, object *part, object *arrow, int dir, int wc_mod, sint16 sx, sint16 sy); |
313 | int fire_bow (object *op, object *part, object *arrow, int dir, int wc_mod, sint16 sx, sint16 sy); |
450 | int player_fire_bow(object *op, int dir); |
|
|
451 | void fire_misc_object(object *op, int dir); |
|
|
452 | void fire(object *op, int dir); |
314 | bool fire (object *who, int dir); |
453 | object *find_key(object *pl, object *container, object *door); |
315 | object *find_key (object *pl, object *container, object *door); |
454 | void move_player_attack(object *op, int dir); |
316 | bool move_player_attack (object *op, int dir); |
455 | int move_player(object *op, int dir); |
317 | bool move_player (object *op, int dir); |
456 | int handle_newcs_player(object *op); |
318 | bool handle_newcs_player (object *op); |
457 | int save_life(object *op); |
|
|
458 | void remove_unpaid_objects(object *op, object *env); |
|
|
459 | char *gravestone_text(object *op); |
|
|
460 | void do_some_living(object *op); |
319 | void do_some_living (object *op); |
461 | void kill_player(object *op); |
320 | void kill_player (object *op); |
462 | void loot_object(object *op); |
|
|
463 | void fix_weight(void); |
321 | void fix_weight (); |
464 | void fix_luck(void); |
322 | void fix_luck (); |
465 | void cast_dust(object *op, object *throw_ob, int dir); |
323 | void cast_dust (object *op, object *throw_ob, int dir); |
466 | void make_visible(object *op); |
324 | void make_visible (object *op); |
467 | int is_true_undead(object *op); |
325 | int is_true_undead (object *op); |
468 | int hideability(object *ob); |
326 | int hideability (object *ob); |
469 | void do_hidden_move(object *op); |
327 | void do_hidden_move (object *op); |
470 | int stand_near_hostile(object *who); |
328 | int stand_near_hostile (object *who); |
471 | int player_can_view(object *pl, object *op); |
329 | int player_can_view (object *pl, object *op); |
472 | int action_makes_visible(object *op); |
|
|
473 | int op_on_battleground(object *op, int *x, int *y); |
330 | int op_on_battleground (object *op, int *x, int *y); |
474 | void dragon_ability_gain(object *who, int atnr, int level); |
331 | void dragon_ability_gain (object *who, int atnr, int level); |
475 | void player_unready_range_ob(player *pl, object *ob); |
332 | |
476 | /* plugins.c */ |
|
|
477 | int execute_event(object *op, int eventcode, object *activator, object *third, const char *message, int fix); |
|
|
478 | int execute_global_event(int eventcode, ...); |
|
|
479 | int plugins_init_plugin(const char *libfile); |
|
|
480 | void *cfapi_get_hooks(int *type, ...); |
|
|
481 | int plugins_remove_plugin(const char *id); |
|
|
482 | crossfire_plugin *plugins_find_plugin(const char *id); |
|
|
483 | void plugins_display_list(object *op); |
|
|
484 | void *cfapi_system_find_animation(int *type, ...); |
|
|
485 | void *cfapi_system_strdup(int *type, ...); |
|
|
486 | void *cfapi_system_register_global_event(int *type, ...); |
|
|
487 | void *cfapi_system_unregister_global_event(int *type, ...); |
|
|
488 | void *cfapi_system_check_path(int *type, ...); |
|
|
489 | void *cfapi_system_re_cmp(int *type, ...); |
|
|
490 | void *cfapi_system_directory(int *type, ...); |
|
|
491 | void *cfapi_map_get_map(int *type, ...); |
|
|
492 | void *cfapi_map_has_been_loaded(int *type, ...); |
|
|
493 | void *cfapi_map_create_path(int *type, ...); |
|
|
494 | void *cfapi_map_get_map_property(int *type, ...); |
|
|
495 | void *cfapi_map_set_map_property(int *type, ...); |
|
|
496 | void *cfapi_map_out_of_map(int *type, ...); |
|
|
497 | void *cfapi_map_update_position(int *type, ...); |
|
|
498 | void *cfapi_map_delete_map(int *type, ...); |
|
|
499 | void *cfapi_map_message(int *type, ...); |
|
|
500 | void *cfapi_map_get_object_at(int *type, ...); |
|
|
501 | void *cfapi_map_get_flags(int *type, ...); |
|
|
502 | void *cfapi_map_present_arch_by_name(int *type, ...); |
|
|
503 | void *cfapi_object_move(int *type, ...); |
|
|
504 | void *cfapi_object_get_key(int *type, ...); |
|
|
505 | void *cfapi_object_set_key(int *type, ...); |
|
|
506 | void *cfapi_object_get_property(int *type, ...); |
|
|
507 | void *cfapi_object_set_property(int *type, ...); |
|
|
508 | void *cfapi_object_apply_below(int *type, ...); |
|
|
509 | void *cfapi_object_apply(int *type, ...); |
|
|
510 | void *cfapi_object_identify(int *type, ...); |
|
|
511 | void *cfapi_object_describe(int *type, ...); |
|
|
512 | void *cfapi_object_drain(int *type, ...); |
|
|
513 | void *cfapi_object_fix(int *type, ...); |
|
|
514 | void *cfapi_object_give_skill(int *type, ...); |
|
|
515 | void *cfapi_object_transmute(int *type, ...); |
|
|
516 | void *cfapi_object_remove(int *type, ...); |
|
|
517 | void *cfapi_object_delete(int *type, ...); |
|
|
518 | void *cfapi_object_clone(int *type, ...); |
|
|
519 | void *cfapi_object_find(int *type, ...); |
|
|
520 | void *cfapi_object_create(int *type, ...); |
|
|
521 | void *cfapi_object_insert(int *type, ...); |
|
|
522 | void *cfapi_object_split(int *type, ...); |
|
|
523 | void *cfapi_object_merge(int *type, ...); |
|
|
524 | void *cfapi_object_distance(int *type, ...); |
|
|
525 | void *cfapi_object_update(int *type, ...); |
|
|
526 | void *cfapi_object_clear(int *type, ...); |
|
|
527 | void *cfapi_object_reset(int *type, ...); |
|
|
528 | void *cfapi_object_check_inventory(int *type, ...); |
|
|
529 | void *cfapi_object_clean_object(int *type, ...); |
|
|
530 | void *cfapi_object_on_same_map(int *type, ...); |
|
|
531 | void *cfapi_object_spring_trap(int *type, ...); |
|
|
532 | void *cfapi_object_check_trigger(int *type, ...); |
|
|
533 | void *cfapi_object_query_cost(int *type, ...); |
|
|
534 | void *cfapi_object_query_money(int *type, ...); |
|
|
535 | void *cfapi_object_cast(int *type, ...); |
|
|
536 | void *cfapi_object_learn_spell(int *type, ...); |
|
|
537 | void *cfapi_object_forget_spell(int *type, ...); |
|
|
538 | void *cfapi_object_check_spell(int *type, ...); |
|
|
539 | void *cfapi_object_pay_amount(int *type, ...); |
|
|
540 | void *cfapi_object_pay_item(int *type, ...); |
|
|
541 | void *cfapi_object_transfer(int *type, ...); |
|
|
542 | void *cfapi_object_find_archetype_inside(int *type, ...); |
|
|
543 | void *cfapi_object_drop(int *type, ...); |
|
|
544 | void *cfapi_object_take(int *type, ...); |
|
|
545 | void *cfapi_object_say(int *type, ...); |
|
|
546 | void *cfapi_object_speak(int *type, ...); |
|
|
547 | void *cfapi_player_find(int *type, ...); |
|
|
548 | void *cfapi_player_message(int *type, ...); |
|
|
549 | void *cfapi_player_send_inventory(int *type, ...); |
|
|
550 | void *cfapi_object_teleport(int *type, ...); |
|
|
551 | void *cfapi_object_pickup(int *type, ...); |
|
|
552 | void *cfapi_archetype_get_first(int *type, ...); |
|
|
553 | void *cfapi_archetype_get_property(int *type, ...); |
|
|
554 | void *cfapi_party_get_property(int *type, ...); |
|
|
555 | void *cfapi_region_get_property(int *type, ...); |
|
|
556 | CommArray_s *find_plugin_command(char *cmd, object *op); |
|
|
557 | int initPlugins(void); |
|
|
558 | /* resurrection.c */ |
333 | /* resurrection.c */ |
559 | int cast_raise_dead_spell(object *op, object *caster, object *spell, int dir, const char *arg); |
334 | int cast_raise_dead_spell (object *op, object *caster, object *spell, int dir, const char *arg); |
560 | int resurrection_fails(int levelcaster, int leveldead); |
335 | |
561 | void dead_player(object *op); |
|
|
562 | void dead_character(const char *name); |
|
|
563 | int dead_player_exists(const char *name); |
|
|
564 | /* rune.c */ |
336 | /* rune.c */ |
565 | int write_rune(object *op, object *caster, object *spell, int dir, const char *runename); |
337 | int write_rune (object *op, object *caster, object *spell, int dir, const char *runename); |
566 | void move_rune(object *op); |
338 | void move_rune (object *op); |
567 | void rune_attack(object *op, object *victim); |
|
|
568 | void spring_trap(object *trap, object *victim); |
339 | void spring_trap (object *trap, object *victim); |
569 | int dispel_rune(object *op, object *caster, object *spell, object *skill, int dir); |
340 | int dispel_rune (object *op, object *caster, object *spell, object *skill, int dir); |
570 | int trap_see(object *op, object *trap); |
341 | int trap_see (object *op, object *trap); |
571 | int trap_show(object *trap, object *where); |
342 | int trap_show (object *trap, object *where); |
572 | int trap_disarm(object *disarmer, object *trap, int risk, object *skill); |
343 | int trap_disarm (object *disarmer, object *trap, int risk, object *skill); |
573 | void trap_adjust(object *trap, int difficulty); |
344 | void trap_adjust (object *trap, int difficulty); |
|
|
345 | |
574 | /* shop.c */ |
346 | /* shop.c */ |
575 | int get_payment(object *pl); |
347 | int get_payment (object *pl); |
576 | sint64 query_cost(const object *tmp, object *who, int flag); |
|
|
577 | const char *query_cost_string(const object *tmp, object *who, int flag); |
|
|
578 | sint64 query_money(const object *op); |
348 | sint64 query_money (const object *op); |
579 | int pay_for_amount(sint64 to_pay, object *pl); |
349 | int pay_for_amount (sint64 to_pay, object *pl); |
580 | int pay_for_item(object *op, object *pl); |
350 | int pay_for_item (object *op, object *pl); |
581 | int can_pay(object *pl); |
351 | int can_pay (object *pl); |
582 | void sell_item(object *op, object *pl); |
352 | bool sell_item (object *op, object *pl); |
583 | double shopkeeper_approval(const maptile *map, const object *player); |
353 | double shopkeeper_approval (const maptile *map, const object *player); |
584 | int describe_shop(const object *op); |
354 | int describe_shop (const object *op); |
585 | void shop_listing(object *op); |
355 | void shop_listing (object *sign, object *op); |
586 | bool is_in_shop (object *o); |
|
|
587 | bool is_in_shop (maptile *map, int x, int y); |
356 | bool is_in_shop (maptile *map, int x, int y); |
|
|
357 | |
588 | /* skills.c */ |
358 | /* skills.c */ |
589 | int steal(object *op, int dir, object *skill); |
359 | int steal (object *op, int dir, object *skill); |
590 | int pick_lock(object *pl, int dir, object *skill); |
360 | int pick_lock (object *pl, int dir, object *skill); |
591 | int hide(object *op, object *skill); |
361 | int hide (object *op, object *skill); |
592 | int jump(object *pl, int dir, object *skill); |
362 | int jump (object *pl, int dir, object *skill); |
593 | int do_skill_ident2(object *tmp, object *pl, int obj_class, object *skill); |
|
|
594 | int skill_ident(object *pl, object *skill); |
363 | int skill_ident (object *pl, object *skill); |
595 | int use_oratory(object *pl, int dir, object *skill); |
364 | int use_oratory (object *pl, int dir, object *skill); |
596 | int singing(object *pl, int dir, object *skill); |
365 | int singing (object *pl, int dir, object *skill); |
597 | int find_traps(object *pl, object *skill); |
366 | int find_traps (object *pl, object *skill); |
598 | int remove_trap(object *op, int dir, object *skill); |
367 | int remove_trap (object *op, int dir, object *skill); |
599 | int pray(object *pl, object *skill); |
368 | int pray (object *pl, object *skill); |
600 | void meditate(object *pl, object *skill); |
369 | void meditate (object *pl, object *skill); |
601 | int write_on_item(object *pl, const char *params, object *skill); |
370 | int write_on_item (object *pl, const char *params, object *skill); |
602 | int skill_throw(object *op, object *part, int dir, const char *params, object *skill); |
371 | int skill_throw (object *op, object *part, int dir, const char *params, object *skill); |
|
|
372 | bool skill_mining (object *who, object *tool, object *skill, int dir, const char *string); |
|
|
373 | bool skill_fishing (object *who, object *tool, object *skill, int dir, const char *string); |
|
|
374 | |
603 | /* skill_util.c */ |
375 | /* skill_util.c */ |
604 | void init_skills(void); |
376 | void init_skills (); |
605 | void link_player_skills(object *op); |
377 | void link_player_skills (object *op); |
606 | object *find_skill_by_name(object *who, const char *name); |
|
|
607 | object *find_skill_by_number(object *who, int skillno); |
|
|
608 | int change_skill(object *who, object *new_skill, int flag); |
|
|
609 | void clear_skill(object *who); |
|
|
610 | int do_skill(object *op, object *part, object *skill, int dir, const char *string); |
378 | int do_skill (object *op, object *part, object *skill, int dir, const char *string); |
611 | int calc_skill_exp(object *who, object *op, object *skill); |
379 | int calc_skill_exp (object *who, object *op, object *skill); |
612 | int learn_skill(object *pl, object *scroll); |
380 | int learn_skill (object *pl, object *scroll); |
613 | void show_skills(object *op, const char *search); |
381 | void show_skills (object *op, const char *search); |
614 | int use_skill(object *op, const char *string); |
382 | int use_skill (object *op, const char *string); |
615 | int skill_attack(object *tmp, object *pl, int dir, const char *string, object *skill); |
383 | int skill_attack (object *tmp, object *pl, int dir, const char *string, object *skill); |
|
|
384 | |
616 | /* spell_attack.c */ |
385 | /* spell_attack.c */ |
617 | void check_spell_knockback(object *op); |
|
|
618 | void forklightning(object *op, object *tmp); |
|
|
619 | void move_bolt(object *op); |
386 | void move_bolt (object *op); |
620 | int fire_bolt(object *op, object *caster, int dir, object *spob, object *skill); |
387 | int fire_bolt (object *op, object *caster, int dir, object *spob, object *skill); |
621 | void explosion(object *op); |
388 | void explosion (object *op); |
622 | void explode_bullet(object *op); |
|
|
623 | void check_bullet(object *op); |
389 | void check_bullet (object *op); |
624 | void move_bullet(object *op); |
390 | void move_bullet (object *op); |
625 | int fire_bullet(object *op, object *caster, int dir, object *spob); |
391 | int fire_bullet (object *op, object *caster, int dir, object *spob); |
626 | void cone_drop(object *op); |
|
|
627 | void move_cone(object *op); |
392 | void move_cone (object *op); |
628 | int cast_cone(object *op, object *caster, int dir, object *spell); |
393 | int cast_cone (object *op, object *caster, int dir, object *spell); |
629 | void animate_bomb(object *op); |
394 | void animate_bomb (object *op); |
630 | int create_bomb(object *op, object *caster, int dir, object *spell); |
395 | int create_bomb (object *op, object *caster, int dir, object *spell); |
631 | object *get_pointed_target(object *op, int dir, int range, int type); |
|
|
632 | int cast_smite_spell(object *op, object *caster, int dir, object *spell); |
396 | int cast_smite_spell (object *op, object *caster, int dir, object *spell); |
633 | void move_missile(object *op); |
397 | void move_missile (object *op); |
634 | int make_object_glow(object *op, int radius, int time); |
|
|
635 | int cast_destruction(object *op, object *caster, object *spell_ob); |
398 | int cast_destruction (object *op, object *caster, object *spell_ob); |
636 | int cast_curse(object *op, object *caster, object *spell_ob, int dir); |
399 | int cast_curse (object *op, object *caster, object *spell_ob, int dir); |
637 | int mood_change(object *op, object *caster, object *spell); |
400 | int mood_change (object *op, object *caster, object *spell); |
638 | void move_ball_spell(object *op); |
401 | void move_ball_spell (object *op); |
639 | void move_swarm_spell(object *op); |
402 | void move_swarm_spell (object *op); |
640 | int fire_swarm(object *op, object *caster, object *spell, int dir); |
403 | int fire_swarm (object *op, object *caster, object *spell, int dir); |
641 | int cast_light(object *op, object *caster, object *spell, int dir); |
404 | int cast_light (object *op, object *caster, object *spell, int dir); |
642 | int cast_cause_disease(object *op, object *caster, object *spell, int dir); |
405 | int cast_cause_disease (object *op, object *caster, object *spell, int dir); |
|
|
406 | |
643 | /* spell_effect.c */ |
407 | /* spell_effect.c */ |
644 | void cast_magic_storm(object *op, object *tmp, int lvl); |
408 | void cast_magic_storm (object *op, object *tmp, int lvl); |
645 | int recharge(object *op, object *caster, object *spell_ob); |
409 | int recharge (object *op, object *caster, object *spell_ob); |
646 | void polymorph_living(object *op); |
410 | void polymorph_living (object *op); |
647 | void polymorph_melt(object *who, object *op); |
411 | void polymorph_melt (object *who, object *op); |
648 | void polymorph_item(object *who, object *op); |
412 | void polymorph_item (object *who, object *op); |
649 | void polymorph(object *op, object *who); |
413 | void polymorph (object *op, object *who); |
650 | int cast_polymorph(object *op, object *caster, object *spell_ob, int dir); |
414 | int cast_polymorph (object *op, object *caster, object *spell_ob, int dir); |
651 | int cast_create_missile(object *op, object *caster, object *spell, int dir, const char *stringarg); |
415 | int cast_create_missile (object *op, object *caster, object *spell, int dir, const char *spellparam); |
652 | int cast_create_food(object *op, object *caster, object *spell_ob, int dir, const char *stringarg); |
416 | int cast_create_food (object *op, object *caster, object *spell_ob, int dir, const char *spellparam); |
653 | int probe(object *op, object *caster, object *spell_ob, int dir); |
417 | int probe (object *op, object *caster, object *spell_ob, int dir); |
654 | int makes_invisible_to(object *pl, object *mon); |
418 | int makes_invisible_to (object *pl, object *mon); |
655 | int cast_invisible(object *op, object *caster, object *spell_ob); |
419 | int cast_invisible (object *op, object *caster, object *spell_ob); |
656 | int cast_earth_to_dust(object *op, object *caster, object *spell_ob); |
420 | int cast_earth_to_dust (object *op, object *caster, object *spell_ob); |
657 | void execute_word_of_recall(object *op); |
421 | void execute_word_of_recall (object *op); |
658 | int cast_word_of_recall(object *op, object *caster, object *spell_ob); |
422 | int cast_word_of_recall (object *op, object *caster, object *spell_ob); |
659 | int cast_wonder(object *op, object *caster, int dir, object *spell_ob); |
423 | int cast_wonder (object *op, object *caster, int dir, object *spell_ob); |
660 | int perceive_self(object *op); |
424 | int perceive_self (object *op); |
661 | int cast_create_town_portal(object *op, object *caster, object *spell, int dir); |
|
|
662 | int magic_wall(object *op, object *caster, int dir, object *spell_ob); |
425 | int magic_wall (object *op, object *caster, int dir, object *spell_ob); |
663 | int dimension_door(object *op, object *caster, object *spob, int dir); |
426 | int dimension_door (object *op, object *caster, object *spob, int dir, const char *spellparam); |
664 | int cast_heal(object *op, object *caster, object *spell, int dir); |
427 | int cast_heal (object *op, object *caster, object *spell, int dir); |
665 | int cast_change_ability(object *op, object *caster, object *spell_ob, int dir, int silent); |
428 | int cast_change_ability (object *op, object *caster, object *spell_ob, int dir, int silent); |
666 | int cast_bless(object *op, object *caster, object *spell_ob, int dir); |
429 | int cast_bless (object *op, object *caster, object *spell_ob, int dir); |
667 | int alchemy(object *op, object *caster, object *spell_ob); |
430 | int alchemy (object *op, object *caster, object *spell_ob); |
668 | int remove_curse(object *op, object *caster, object *spell); |
431 | int remove_curse (object *op, object *caster, object *spell); |
669 | int cast_identify(object *op, object *caster, object *spell); |
432 | int cast_identify (object *op, object *caster, object *spell); |
670 | int cast_detection(object *op, object *caster, object *spell, object *skill); |
433 | int cast_detection (object *op, object *caster, object *spell, object *skill); |
671 | int cast_transfer(object *op, object *caster, object *spell, int dir); |
434 | int cast_transfer (object *op, object *caster, object *spell, int dir); |
672 | void counterspell(object *op, int dir); |
435 | void counterspell (object *op, int dir); |
673 | int cast_consecrate(object *op, object *caster, object *spell); |
436 | int cast_consecrate (object *op, object *caster, object *spell); |
674 | int animate_weapon(object *op, object *caster, object *spell, int dir); |
437 | int animate_weapon (object *op, object *caster, object *spell, int dir); |
675 | int cast_change_map_lightlevel(object *op, object *caster, object *spell); |
438 | int cast_change_map_lightlevel (object *op, object *caster, object *spell); |
676 | int create_aura(object *op, object *caster, object *spell); |
439 | int create_aura (object *op, object *caster, object *spell); |
677 | void move_aura(object *aura); |
440 | void move_aura (object *aura); |
678 | void move_peacemaker(object *op); |
441 | void move_peacemaker (object *op); |
679 | int write_mark(object *op, object *spell, const char *msg); |
442 | int write_mark (object *op, object *spell, const char *msg); |
|
|
443 | |
680 | /* spell_util.c */ |
444 | /* spell_util.c */ |
681 | object *find_random_spell_in_ob(object *ob, const char *skill); |
445 | object *find_random_spell_in_ob (object *ob, shstr_cmp skill = shstr_cmp ()); |
682 | void set_spell_skill(object *op, object *caster, object *spob, object *dest); |
446 | void set_spell_skill (object *op, object *caster, object *spob, object *dest); |
683 | void init_spells(void); |
|
|
684 | void dump_spells(void); |
|
|
685 | void spell_effect(object *spob, int x, int y, maptile *map, object *originator); |
447 | void spell_effect (object *spob, int x, int y, maptile *map, object *originator); |
686 | int min_casting_level(object *caster, object *spell); |
|
|
687 | int caster_level(object *caster, object *spell); |
|
|
688 | sint16 SP_level_spellpoint_cost(object *caster, object *spell, int flags); |
|
|
689 | int SP_level_dam_adjust(object *caster, object *spob); |
|
|
690 | int SP_level_duration_adjust(object *caster, object *spob); |
|
|
691 | int SP_level_range_adjust(object *caster, object *spob); |
|
|
692 | object *check_spell_known(object *op, const char *name); |
448 | object *check_spell_known (object *op, shstr_cmp name); |
693 | object *lookup_spell_by_name(object *op, const char *spname); |
449 | object *lookup_spell_by_name (object *op, const char *spname); |
694 | int reflwall(maptile *m, int x, int y, object *sp_op); |
450 | int reflwall (maptile *m, int x, int y, object *sp_op); |
695 | int cast_create_obj(object *op, object *caster, object *new_op, int dir); |
451 | int cast_create_obj (object *op, object *caster, object *new_op, int dir); |
696 | int ok_to_put_more(maptile *m, sint16 x, sint16 y, object *op, int immune_stop); |
452 | int ok_to_put_more (maptile *m, sint16 x, sint16 y, object *op, int immune_stop); |
697 | int fire_arch_from_position(object *op, object *caster, sint16 x, sint16 y, int dir, object *spell); |
453 | int fire_arch_from_position (object *op, object *caster, sint16 x, sint16 y, int dir, object *spell); |
698 | void regenerate_rod(object *rod); |
454 | void regenerate_rod (object *rod); |
699 | void drain_rod_charge(object *rod); |
455 | void drain_rod_charge (object *rod); |
700 | object *find_target_for_friendly_spell(object *op, int dir); |
456 | object *find_target_for_friendly_spell (object *op, int dir); |
701 | int spell_find_dir(maptile *m, int x, int y, object *exclude); |
457 | int spell_find_dir (maptile *m, int x, int y, object *exclude); |
702 | void put_a_monster(object *op, const char *monstername); |
|
|
703 | int summon_hostile_monsters(object *op, int n, const char *monstername); |
458 | int summon_hostile_monsters (object *op, int n, const char *monstername); |
704 | void shuffle_attack(object *op, int change_face); |
459 | void shuffle_attack (object *op, int change_face); |
705 | void prayer_failure(object *op, int failure, int power); |
|
|
706 | void spell_failure(object *op, int failure, int power, object *skill); |
460 | void spell_failure (object *op, int failure, int power, object *skill); |
707 | int cast_party_spell(object *op, object *caster, int dir, object *spell_ob, char *stringarg); |
|
|
708 | int cast_spell(object *op, object *caster, int dir, object *spell_ob, char *stringarg); |
461 | int cast_spell (object *op, object *caster, int dir, object *spell_ob, char *spellparam); |
709 | void move_spell_effect(object *op); |
462 | void move_spell_effect (object *op); |
710 | void check_spell_effect(object *op); |
|
|
711 | void apply_spell_effect(object *spell, object *victim); |
463 | void apply_spell_effect (object *spell, object *victim); |
|
|
464 | void create_exploding_ball_at (object *victim, int level); |
|
|
465 | |
712 | /* swamp.c */ |
466 | /* swamp.c */ |
713 | void walk_on_deep_swamp(object *op, object *victim); |
467 | void walk_on_deep_swamp (object *op, object *victim); |
714 | void move_deep_swamp(object *op); |
468 | void move_deep_swamp (object *op); |
|
|
469 | |
715 | /* swap.c */ |
470 | /* swap.c */ |
716 | void read_map_log(void); |
471 | void read_map_log (); |
717 | void swap_map(maptile *map); |
472 | void swap_map (maptile *map); |
718 | void check_active_maps(void); |
473 | void check_active_maps (); |
719 | maptile *map_least_timeout(char *except_level); |
474 | maptile *map_least_timeout (char *except_level); |
720 | void swap_below_max(char *except_level); |
475 | void swap_below_max (char *except_level); |
721 | int players_on_map(maptile *m, int show_all); |
476 | int players_on_map (maptile *m, int show_all); |
722 | void flush_old_maps(void); |
477 | void flush_old_maps (); |
|
|
478 | |
723 | /* time.c */ |
479 | /* time.c */ |
724 | void remove_door(object *op); |
480 | void remove_door (object *op); |
725 | void remove_door2(object *op); |
481 | void remove_door2 (object *op); |
726 | void generate_monster_inv(object *gen); |
|
|
727 | void generate_monster_arch(object *gen); |
|
|
728 | void generate_monster(object *gen); |
|
|
729 | void remove_force(object *op); |
|
|
730 | void remove_blindness(object *op); |
|
|
731 | void poison_more(object *op); |
|
|
732 | void move_gate(object *op); |
|
|
733 | void move_timed_gate(object *op); |
|
|
734 | void move_detector(object *op); |
|
|
735 | void animate_trigger(object *op); |
482 | void animate_trigger (object *op); |
736 | void move_hole(object *op); |
|
|
737 | object *stop_item(object *op); |
483 | object *stop_item (object *op); |
738 | void fix_stopped_item(object *op, maptile *map, object *originator); |
484 | void fix_stopped_item (object *op, maptile *map, object *originator); |
739 | object *fix_stopped_arrow(object *op); |
485 | object *fix_stopped_arrow (object *op); |
740 | void move_arrow(object *op); |
486 | void move_arrow (object *op); |
741 | void change_object(object *op); |
|
|
742 | void move_teleporter(object *op); |
487 | void move_teleporter (object *op); |
743 | void move_player_changer(object *op); |
|
|
744 | void move_firewall(object *op); |
488 | void move_firewall (object *op); |
745 | void move_player_mover(object *op); |
|
|
746 | void move_duplicator(object *op); |
489 | void move_duplicator (object *op); |
747 | void move_creator(object *creator); |
490 | void move_creator (object *creator); |
748 | void move_marker(object *op); |
491 | void move_marker (object *op); |
749 | int process_object(object *op); |
492 | void process_object (object *op); |
750 | /* timers.c */ |
493 | |
751 | void cftimer_process_timers(void); |
|
|
752 | void cftimer_process_event(object *ob); |
|
|
753 | int cftimer_create(int id, long delay, object *ob, int mode); |
|
|
754 | int cftimer_destroy(int id); |
|
|
755 | int cftimer_find_free_id(void); |
|
|
756 | /* weather.c */ |
494 | /* weather.c */ |
757 | void set_darkness_map(maptile *m); |
495 | void adjust_daylight (); |
758 | void tick_the_clock(void); |
|
|
759 | void init_weather(void); |
|
|
760 | void weather_effect(const char *filename); |
|
|
761 | int worldmap_to_weathermap(int x, int y, int *wx, int *wy, maptile *m); |
|
|
762 | int real_world_temperature(int x, int y, maptile *m); |
|
|
763 | int similar_direction(int a, int b); |
|
|