ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/libproto.h
(Generate patch)

Comparing deliantra/server/include/libproto.h (file contents):
Revision 1.89 by root, Thu Apr 15 02:51:39 2010 UTC vs.
Revision 1.102 by root, Mon Oct 29 23:55:53 2012 UTC

1/* 1/*
2 * This file is part of Deliantra, the Roguelike Realtime MMORPG. 2 * This file is part of Deliantra, the Roguelike Realtime MMORPG.
3 * 3 *
4 * Copyright (©) 2005,2006,2007,2008,2009,2010 Marc Alexander Lehmann / Robin Redeker / the Deliantra team 4 * Copyright (©) 2005,2006,2007,2008,2009,2010,2011,2012 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
5 * Copyright (©) 2002 Mark Wedel & Crossfire Development Team 5 * Copyright (©) 2002 Mark Wedel & Crossfire Development Team
6 * Copyright (©) 1992 Frank Tore Johansen 6 * Copyright (©) 1992 Frank Tore Johansen
7 * 7 *
8 * Deliantra is free software: you can redistribute it and/or modify it under 8 * Deliantra is free software: you can redistribute it and/or modify it under
9 * the terms of the Affero GNU General Public License as published by the 9 * the terms of the Affero GNU General Public License as published by the
10 * Free Software Foundation, either version 3 of the License, or (at your 10 * Free Software Foundation, either version 3 of the License, or (at your
11 * option) any later version. 11 * option) any later version.
12 * 12 *
13 * This program is distributed in the hope that it will be useful, 13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details. 16 * GNU General Public License for more details.
17 * 17 *
18 * You should have received a copy of the Affero GNU General Public License 18 * You should have received a copy of the Affero GNU General Public License
19 * and the GNU General Public License along with this program. If not, see 19 * and the GNU General Public License along with this program. If not, see
20 * <http://www.gnu.org/licenses/>. 20 * <http://www.gnu.org/licenses/>.
21 * 21 *
22 * The authors can be reached via e-mail to <support@deliantra.net> 22 * The authors can be reached via e-mail to <support@deliantra.net>
23 */ 23 */
24 24
25#ifndef LIBPROTO_H_ 25#ifndef LIBPROTO_H_
26#define LIBPROTO_H_ 26#define LIBPROTO_H_
43void dump_arch (archetype *at); 43void dump_arch (archetype *at);
44void dump_all_archetypes (); 44void dump_all_archetypes ();
45void free_all_archs (); 45void free_all_archs ();
46void check_generators (); 46void check_generators ();
47bool load_archetype_file (const char *filename); 47bool load_archetype_file (const char *filename);
48object *get_archetype (const char *name);
49unsigned long hasharch (const char *str, int tablesize); 48unsigned long hasharch (const char *str, int tablesize);
50object *clone_arch (int type); 49object *clone_arch (int type);
51object *object_create_arch (archetype *at); 50object *object_create_arch (archetype *at);
52/* button.c */ 51/* button.c */
53void push_button (object *op, object *originator); 52void push_button (object *op, object *originator);
61void do_mood_floor (object *op, object *source = 0); 60void do_mood_floor (object *op, object *source = 0);
62object *check_inv_recursive (object *op, const object *trig); 61object *check_inv_recursive (object *op, const object *trig);
63void check_inv (object *op, object *trig); 62void check_inv (object *op, object *trig);
64void verify_button_links (const maptile *map); 63void verify_button_links (const maptile *map);
65/* exp.c */ 64/* exp.c */
65int exp_to_level (sint64 exp);
66sint64 level_to_min_exp (int level);
66int new_exp (const object *ob); 67int new_exp (const object *ob);
67void init_experience (); 68void reload_exp_table ();
68void dump_experience ();
69/* friend.c */ 69/* friend.c */
70void add_friendly_object (object *op); 70void add_friendly_object (object *op);
71void remove_friendly_object (object *op); 71void remove_friendly_object (object *op);
72void dump_friendly_objects (); 72void dump_friendly_objects ();
73void clean_friendly_list (); 73void clean_friendly_list ();
74/* glue.c */
75void fatal (const char *msg);
76/* holy.c */ 74/* holy.c */
77void init_gods (); 75void init_gods ();
78godlink *get_rand_god (); 76godlink *get_rand_god ();
79object *pntr_to_god_obj (godlink *godlnk); 77object *pntr_to_god_obj (godlink *godlnk);
80void dump_gods (); 78void dump_gods ();
122object *give_skill_by_name (object *op, const char *skill_name); 120object *give_skill_by_name (object *op, const char *skill_name);
123void player_lvl_adj (object *who, object *op); 121void player_lvl_adj (object *who, object *op);
124sint64 level_exp (int level, double expmul); 122sint64 level_exp (int level, double expmul);
125void calc_perm_exp (object *op); 123void calc_perm_exp (object *op);
126sint64 check_exp_adjust (const object *op, sint64 exp); 124sint64 check_exp_adjust (const object *op, sint64 exp);
127void change_exp (object *op, sint64 exp, const char *skill_name, int flag); 125void change_exp (object *op, sint64 exp, shstr_tmp skill_name, int flag);
128void apply_death_exp_penalty (object *op); 126void apply_death_exp_penalty (object *op);
129int did_make_save (const object *op, int level, int bonus); 127int did_make_save (const object *op, int level, int bonus);
130/* los.c */ 128/* los.c */
131void init_block (); 129void init_block ();
132void update_all_map_los (maptile *map); 130void update_all_map_los (maptile *map);
148object *merge_ob (object *op, object *top); 146object *merge_ob (object *op, object *top);
149object *insert_ob_in_map_at (object *op, maptile *m, object *originator, int flag, int x, int y); 147object *insert_ob_in_map_at (object *op, maptile *m, object *originator, int flag, int x, int y);
150object *insert_ob_in_map (object *op, maptile *m, object *originator, int flag); 148object *insert_ob_in_map (object *op, maptile *m, object *originator, int flag);
151void replace_insert_ob_in_map (shstr_tmp archname, object *op); 149void replace_insert_ob_in_map (shstr_tmp archname, object *op);
152object *insert_ob_in_ob (object *op, object *where); 150object *insert_ob_in_ob (object *op, object *where);
153int check_move_on (object *op, object *originator); 151int check_move_on (object *op, object *originator, int flags = 0);
154object *present_arch (const archetype *at, maptile *m, int x, int y); 152object *present_arch (const archetype *at, maptile *m, int x, int y);
155object *present (unsigned char type, maptile *m, int x, int y); 153object *present (unsigned char type, maptile *m, int x, int y);
156object *present_in_ob (unsigned char type, const object *op); 154object *present_in_ob (unsigned char type, const object *op);
157object *present_in_ob_by_name (int type, const char *str, const object *op); 155object *present_in_ob_by_name (int type, const char *str, const object *op);
158object *present_arch_in_ob (const archetype *at, const object *op); 156object *present_arch_in_ob (const archetype *at, const object *op);
169int can_pick (const object *who, const object *item); 167int can_pick (const object *who, const object *item);
170object *find_obj_by_type_subtype (const object *who, int type, int subtype); 168object *find_obj_by_type_subtype (const object *who, int type, int subtype);
171/* path.c */ 169/* path.c */
172char *path_combine (const char *src, const char *dst); 170char *path_combine (const char *src, const char *dst);
173char *path_combine_and_normalize (const char *src, const char *dst); 171char *path_combine_and_normalize (const char *src, const char *dst);
174/* porting.c */
175void remove_directory (const char *path);
176char *ltostr10 (signed long n);
177char *doubletostr10 (double v);
178FILE *open_and_uncompress (const char *name, int flag, int *compressed);
179void close_and_delete (FILE *fp, int compressed);
180void make_path_to_file (char *filename);
181/* player.c */ 172/* player.c */
182void free_player (player *pl); 173void free_player (player *pl);
183int atnr_is_dragon_enabled (int attacknr); 174int atnr_is_dragon_enabled (int attacknr);
184/* quest.c */ 175/* quest.c */
185int quest_is_quest_marker (const object *marker, int task); 176int quest_is_quest_marker (const object *marker, int task);
232void add_abilities (object *op, object *change); 223void add_abilities (object *op, object *change);
233void give_artifact_abilities (object *op, object *artifct); 224void give_artifact_abilities (object *op, object *artifct);
234void generate_artifact (object *op, int difficulty); 225void generate_artifact (object *op, int difficulty);
235void fix_flesh_item (object *item, object *donor); 226void fix_flesh_item (object *item, object *donor);
236/* utils.c */ 227/* utils.c */
237int random_roll (int min, int max, const object *op, int goodbad); 228int random_roll (int min, int max, const object *op, bool prefer_high);
238sint64 random_roll64 (sint64 min, sint64 max, const object *op, int goodbad); 229sint64 random_roll64 (sint64 min, sint64 max, const object *op, bool prefer_high);
239int die_roll (int num, int size, const object *op, int goodbad); 230int die_roll (int num, int size, const object *op, bool prefer_high);
240materialtype_t *name_to_material (const shstr_tmp name);
241void transmute_materialname (object *op, const object *change); 231void transmute_materialname (object *op, const object *change);
242void strip_media_tag (char *message);
243void strip_endline (char *buf); 232void strip_endline (char *buf);
244void replace (const char *src, const char *key, const char *replacement, char *result, size_t resultsize); 233void replace (const char *src, const char *key, const char *replacement, char *result, size_t resultsize);
245/* loader.c */ 234/* loader.c */
246int set_variable (object *op, char *buf); 235int set_variable (object *op, char *buf);
247void init_vars (); 236void init_vars ();

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines