1 /*
2  *  File:       abl-show.h
3  *  Summary:    Functions related to special abilities.
4  *  Written by: Linley Henzell
5  *
6  *  Change History (most recent first):
7  *
8  *               <1>    --/--/--        LRH             Created
9  */
10 
11 
12 #ifndef ABLSHOW_H
13 #define ABLSHOW_H
14 
15 #include <string>
16 
17 // Structure for representing an ability:
18 struct ability_def
19 {
20     int                 ability;
21     const char *        name;
22     unsigned int        mp_cost;        // magic cost of ability
23     unsigned int        hp_cost;        // hit point cost of ability
24     unsigned int        food_cost;      // + rand2avg( food_cost, 2 )
25     unsigned int        piety_cost;     // + random2( (piety_cost + 1) / 2 + 1 )
26     unsigned int        flags;          // used for additonal cost notices
27 };
28 
29 const struct ability_def & get_ability_def( int abil );
30 
31 const char * get_ability_name_by_index( char index );
32 
33 const std::string   make_cost_description( const struct ability_def &abil );
34 
35 // last updated 12may2000 {dlb}
36 /* ***********************************************************************
37  * called from: acr
38  * *********************************************************************** */
39 bool activate_ability( void );     // handles all special abilities now
40 char show_abilities( void );
41 bool generate_abilities( void );
42 
43 void set_god_ability_slots( void );
44 
45 
46 #endif
47