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.86 by root, Sun Apr 4 04:58:46 2010 UTC vs.
Revision 1.106 by root, Wed Nov 16 23:42:00 2016 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,2013,2014,2015,2016 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_
27 27
28/* anim.c */ 28/* anim.c */
29void free_all_anim (); 29void free_all_anim ();
30void init_anim (); 30void init_anim ();
31int find_animation (const char *name);
32void animate_object (object *op, int dir); 31void animate_object (object *op, int dir);
33/* arch.c */ 32/* arch.c */
34archetype *find_archetype_by_object_name (const char *name); 33archetype *find_archetype_by_object_name (const char *name);
35archetype *find_archetype_by_object_type_name (int type, const char *name); 34archetype *find_archetype_by_object_type_name (int type, const char *name);
36object *get_archetype_by_skill_name (const char *skill, int type); 35object *get_archetype_by_skill_name (const char *skill, int type);
43void dump_arch (archetype *at); 42void dump_arch (archetype *at);
44void dump_all_archetypes (); 43void dump_all_archetypes ();
45void free_all_archs (); 44void free_all_archs ();
46void check_generators (); 45void check_generators ();
47bool load_archetype_file (const char *filename); 46bool load_archetype_file (const char *filename);
48object *get_archetype (const char *name);
49unsigned long hasharch (const char *str, int tablesize); 47unsigned long hasharch (const char *str, int tablesize);
50object *clone_arch (int type); 48object *clone_arch (int type);
51object *object_create_arch (archetype *at); 49object *object_create_arch (archetype *at);
52/* button.c */ 50/* button.c */
53void push_button (object *op, object *originator); 51void push_button (object *op, object *originator);
61void do_mood_floor (object *op, object *source = 0); 59void do_mood_floor (object *op, object *source = 0);
62object *check_inv_recursive (object *op, const object *trig); 60object *check_inv_recursive (object *op, const object *trig);
63void check_inv (object *op, object *trig); 61void check_inv (object *op, object *trig);
64void verify_button_links (const maptile *map); 62void verify_button_links (const maptile *map);
65/* exp.c */ 63/* exp.c */
64int exp_to_level (sint64 exp);
65sint64 level_to_min_exp (int level);
66int new_exp (const object *ob); 66int new_exp (const object *ob);
67void init_experience (); 67void _reload_exp_table ();
68void dump_experience ();
69/* friend.c */ 68/* friend.c */
70void add_friendly_object (object *op); 69void add_friendly_object (object *op);
71void remove_friendly_object (object *op); 70void remove_friendly_object (object *op);
72void dump_friendly_objects (); 71void dump_friendly_objects ();
73void clean_friendly_list (); 72void clean_friendly_list ();
74/* glue.c */
75void fatal (const char *msg);
76/* holy.c */ 73/* holy.c */
77void init_gods (); 74void init_gods ();
78godlink *get_rand_god (); 75godlink *get_rand_god ();
79object *pntr_to_god_obj (godlink *godlnk); 76object *pntr_to_god_obj (godlink *godlnk);
80void dump_gods (); 77void dump_gods ();
101int get_power_from_ench (int ench); 98int get_power_from_ench (int ench);
102int calc_item_power (const object *op, int flag); 99int calc_item_power (const object *op, int flag);
103const typedata *get_typedata (int itemtype); 100const typedata *get_typedata (int itemtype);
104const typedata *get_typedata_by_name (const char *name); 101const typedata *get_typedata_by_name (const char *name);
105const char *describe_resistance (const object *op, int newline); 102const char *describe_resistance (const object *op, int newline);
106const char *get_levelnumber (int i); 103const char *ordinal (int i);
107const char *describe_item (const object *op, object *owner); 104const char *describe_item (const object *op, object *owner);
108int is_magical (const object *op); 105int is_magical (const object *op);
109int need_identify (const object *op);
110void identify (object *op); 106void identify (object *op);
111void examine (object *op, object *tmp); 107void examine (object *op, object *tmp);
112/* links.c */ 108/* links.c */
113objectlink *get_objectlink (); 109objectlink *get_objectlink ();
114oblinkpt *get_objectlinkpt (); 110oblinkpt *get_objectlinkpt ();
116void free_objectlinkpt (oblinkpt *obp); 112void free_objectlinkpt (oblinkpt *obp);
117/* living.c */ 113/* living.c */
118void change_attr_value (living *stats, int attr, sint8 value); 114void change_attr_value (living *stats, int attr, sint8 value);
119void check_stat_bounds (living *stats); 115void check_stat_bounds (living *stats);
120int change_abil (object *op, object *tmp); 116int change_abil (object *op, object *tmp);
121int allowed_class (const object *op);
122void set_dragon_name (object *pl, const object *abil, const object *skin); 117void set_dragon_name (object *pl, const object *abil, const object *skin);
123object *give_skill_by_name (object *op, const char *skill_name); 118object *give_skill_by_name (object *op, const char *skill_name);
124void player_lvl_adj (object *who, object *op); 119void player_lvl_adj (object *who, object *op);
125sint64 level_exp (int level, double expmul); 120sint64 level_exp (int level, double expmul);
126void calc_perm_exp (object *op); 121void calc_perm_exp (object *op);
127sint64 check_exp_adjust (const object *op, sint64 exp); 122sint64 check_exp_adjust (const object *op, sint64 exp);
128void change_exp (object *op, sint64 exp, const char *skill_name, int flag); 123void change_exp (object *op, sint64 exp, shstr_tmp skill_name, int flag);
129void apply_death_exp_penalty (object *op); 124void apply_death_exp_penalty (object *op);
130int did_make_save (const object *op, int level, int bonus); 125int did_make_save (const object *op, int level, int bonus);
131/* los.c */ 126/* los.c */
132void init_block (); 127void init_block ();
133void update_all_map_los (maptile *map); 128void update_all_map_los (maptile *map);
149object *merge_ob (object *op, object *top); 144object *merge_ob (object *op, object *top);
150object *insert_ob_in_map_at (object *op, maptile *m, object *originator, int flag, int x, int y); 145object *insert_ob_in_map_at (object *op, maptile *m, object *originator, int flag, int x, int y);
151object *insert_ob_in_map (object *op, maptile *m, object *originator, int flag); 146object *insert_ob_in_map (object *op, maptile *m, object *originator, int flag);
152void replace_insert_ob_in_map (shstr_tmp archname, object *op); 147void replace_insert_ob_in_map (shstr_tmp archname, object *op);
153object *insert_ob_in_ob (object *op, object *where); 148object *insert_ob_in_ob (object *op, object *where);
154int check_move_on (object *op, object *originator); 149int check_move_on (object *op, object *originator, int flags = 0);
155object *present_arch (const archetype *at, maptile *m, int x, int y); 150object *present_arch (const archetype *at, maptile *m, int x, int y);
156object *present (unsigned char type, maptile *m, int x, int y); 151object *present (unsigned char type, maptile *m, int x, int y);
157object *present_in_ob (unsigned char type, const object *op); 152object *present_in_ob (unsigned char type, const object *op);
158object *present_in_ob_by_name (int type, const char *str, const object *op); 153object *present_in_ob_by_name (int type, const char *str, const object *op);
159object *present_arch_in_ob (const archetype *at, const object *op); 154object *present_arch_in_ob (const archetype *at, const object *op);
170int can_pick (const object *who, const object *item); 165int can_pick (const object *who, const object *item);
171object *find_obj_by_type_subtype (const object *who, int type, int subtype); 166object *find_obj_by_type_subtype (const object *who, int type, int subtype);
172/* path.c */ 167/* path.c */
173char *path_combine (const char *src, const char *dst); 168char *path_combine (const char *src, const char *dst);
174char *path_combine_and_normalize (const char *src, const char *dst); 169char *path_combine_and_normalize (const char *src, const char *dst);
175/* porting.c */
176void remove_directory (const char *path);
177char *ltostr10 (signed long n);
178char *doubletostr10 (double v);
179FILE *open_and_uncompress (const char *name, int flag, int *compressed);
180void close_and_delete (FILE *fp, int compressed);
181void make_path_to_file (char *filename);
182/* player.c */ 170/* player.c */
183void free_player (player *pl); 171void free_player (player *pl);
184int atnr_is_dragon_enabled (int attacknr); 172int atnr_is_dragon_enabled (int attacknr);
185/* quest.c */ 173/* quest.c */
186int quest_is_quest_marker (const object *marker, int task); 174int quest_is_quest_marker (const object *marker, int task);
233void add_abilities (object *op, object *change); 221void add_abilities (object *op, object *change);
234void give_artifact_abilities (object *op, object *artifct); 222void give_artifact_abilities (object *op, object *artifct);
235void generate_artifact (object *op, int difficulty); 223void generate_artifact (object *op, int difficulty);
236void fix_flesh_item (object *item, object *donor); 224void fix_flesh_item (object *item, object *donor);
237/* utils.c */ 225/* utils.c */
238int random_roll (int min, int max, const object *op, int goodbad); 226int random_roll (int min, int max, const object *op, bool prefer_high);
239sint64 random_roll64 (sint64 min, sint64 max, const object *op, int goodbad); 227sint64 random_roll64 (sint64 min, sint64 max, const object *op, bool prefer_high);
240int die_roll (int num, int size, const object *op, int goodbad); 228int die_roll (int num, int size, const object *op, bool prefer_high);
241materialtype_t *name_to_material (const shstr_tmp name);
242void transmute_materialname (object *op, const object *change); 229void transmute_materialname (object *op, const object *change);
243void strip_media_tag (char *message);
244void strip_endline (char *buf); 230void strip_endline (char *buf);
245void replace (const char *src, const char *key, const char *replacement, char *result, size_t resultsize); 231void replace (const char *src, const char *key, const char *replacement, char *result, size_t resultsize);
246/* loader.c */ 232/* loader.c */
247int set_variable (object *op, char *buf); 233int set_variable (object *op, char *buf);
248void init_vars (); 234void init_vars ();
249char *get_ob_diff (object *op, object *op2); 235char *get_ob_diff (object *op, object *op2);
250bool load_resource_file_ (const char *filename); 236bool load_resource_file_ (const char *filename);
251/* map.c */ 237/* map.c */
252maptile *find_style (const char *dirname, const char *stylename, int difficulty); 238maptile *find_style (const char *dirname, const char *stylename, int difficulty, bool recurse = false);
253object *pick_random_object (maptile *style); 239object *pick_random_object (maptile *style);
254 240
255/* former funcpoint.h */ 241/* former funcpoint.h */
256/* 242/*
257 * These function-pointers are defined in common/glue.c 243 * These function-pointers are defined in common/glue.c

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines