Angband
player-util.h
Go to the documentation of this file.
1 
20 #ifndef PLAYER_UTIL_H
21 #define PLAYER_UTIL_H
22 
23 #include "player.h"
24 
25 /* Player regeneration constants */
26 #define PY_REGEN_NORMAL 197 /* Regen factor*2^16 when full */
27 #define PY_REGEN_WEAK 98 /* Regen factor*2^16 when weak */
28 #define PY_REGEN_FAINT 33 /* Regen factor*2^16 when fainting */
29 #define PY_REGEN_HPBASE 1442 /* Min amount hp regen*2^16 */
30 #define PY_REGEN_MNBASE 524 /* Min amount mana regen*2^16 */
31 
32 /* Player over-exertion */
33 enum {
34  PY_EXERT_NONE = 0x00,
35  PY_EXERT_CON = 0x01,
38  PY_EXERT_CUT = 0x08,
39  PY_EXERT_CONF = 0x10,
41  PY_EXERT_SLOW = 0x40,
42  PY_EXERT_HP = 0x80
43 };
44 
50 enum
51 {
55 };
56 
60 #define REST_REQUIRED_FOR_REGEN 5
61 
62 int dungeon_get_next_level(int dlev, int added);
63 void player_set_recall_depth(struct player *p);
64 bool player_get_recall_depth(struct player *p);
65 void dungeon_change_level(struct player *p, int dlev);
66 void take_hit(struct player *p, int dam, const char *kb_str);
67 void death_knowledge(struct player *p);
68 s16b modify_stat_value(int value, int amount);
69 void player_regen_hp(struct player *p);
70 void player_regen_mana(struct player *p);
71 void player_update_light(struct player *p);
72 void player_over_exert(struct player *p, int flag, int chance, int amount);
74 int player_check_terrain_damage(struct player *p, int y, int x);
75 void player_take_terrain_damage(struct player *p, int y, int x);
76 struct player_shape *lookup_player_shape(const char *name);
77 int shape_name_to_idx(const char *name);
79 void player_resume_normal_shape(struct player *p);
80 bool player_is_shapechanged(struct player *p);
81 bool player_is_trapsafe(struct player *p);
82 bool player_can_cast(struct player *p, bool show_msg);
83 bool player_can_study(struct player *p, bool show_msg);
84 bool player_can_read(struct player *p, bool show_msg);
85 bool player_can_fire(struct player *p, bool show_msg);
86 bool player_can_refuel(struct player *p, bool show_msg);
87 bool player_can_cast_prereq(void);
88 bool player_can_study_prereq(void);
89 bool player_can_read_prereq(void);
90 bool player_can_fire_prereq(void);
91 bool player_can_refuel_prereq(void);
93 bool player_confuse_dir(struct player *p, int *dir, bool too);
95 bool player_is_resting(struct player *p);
97 void player_resting_set_count(struct player *p, s16b count);
98 void player_resting_cancel(struct player *p, bool disturb);
100 void player_resting_step_turn(struct player *p);
103 void player_set_resting_repeat_count(struct player *p, s16b count);
104 bool player_of_has(struct player *p, int flag);
105 bool player_resists(struct player *p, int element);
106 bool player_is_immune(struct player *p, int element);
107 int coords_to_dir(struct player *p, int y, int x);
108 void player_place(struct chunk *c, struct player *p, int y, int x);
109 void disturb(struct player *p, int stop_search);
110 void search(struct player *p);
111 
112 #endif /* !PLAYER_UTIL_H */
Definition: player-util.h:53
bool player_can_fire(struct player *p, bool show_msg)
Return true if the player can fire something with a launcher.
Definition: player-util.c:829
bool player_can_refuel(struct player *p, bool show_msg)
Return true if the player can refuel their light source.
Definition: player-util.c:850
void player_regen_mana(struct player *p)
Regenerate mana points.
Definition: player-util.c:367
bool player_resting_is_special(s16b count)
Return true if the provided count is one of the conditional REST_ flags.
Definition: player-util.c:973
void player_take_terrain_damage(struct player *p, int y, int x)
Terrain damages the player.
Definition: player-util.c:607
bool player_can_cast_prereq(void)
Prerequiste function for command.
Definition: player-util.c:868
png_infop png_uint_32 flag
Definition: libpng12/png.h:2191
Definition: player-util.h:42
bool player_of_has(struct player *p, int flag)
Check if the player state has the given OF_ flag.
Definition: player-util.c:1137
bool player_can_study_prereq(void)
Prerequiste function for command.
Definition: player-util.c:876
void player_resting_step_turn(struct player *p)
Perform one turn of resting.
Definition: player-util.c:1062
s16b modify_stat_value(int value, int amount)
Modify a stat value by a "modifier", return new value.
Definition: player-util.c:267
bool player_resists(struct player *p, int element)
Check if the player resists (or better) an element.
Definition: player-util.c:1146
void player_update_light(struct player *p)
Update the player's light fuel.
Definition: player-util.c:421
void player_resting_complete_special(struct player *p)
Handle the conditions for conditional resting (resting with the REST_ constants). ...
Definition: player-util.c:1085
Definition: player-util.h:40
Player implementation.
struct player_shape * player_shape_by_idx(int index)
Find a player shape from the index.
Definition: player-util.c:655
Definition: cave.h:160
Definition: player-util.h:35
Definition: player-util.h:39
bool player_can_read_prereq(void)
Prerequiste function for command.
Definition: player-util.c:884
bool player_is_immune(struct player *p, int element)
Check if the player resists (or better) an element.
Definition: player-util.c:1154
void player_regen_hp(struct player *p)
Regenerate hit points.
Definition: player-util.c:302
Definition: player-util.h:37
void player_resting_cancel(struct player *p, bool disturb)
Cancel current rest.
Definition: player-util.c:1040
int coords_to_dir(struct player *p, int y, int x)
Definition: player-util.c:1163
Definition: player-util.h:36
int player_check_terrain_damage(struct player *p, int y, int x)
See how much damage the player will take from damaging terrain.
Definition: player-util.c:584
bool player_is_shapechanged(struct player *p)
Check if the player is shapechanged.
Definition: player-util.c:688
int dungeon_get_next_level(int dlev, int added)
Increment to the next or decrement to the preceeding level accounting for the stair skip value in con...
Definition: player-util.c:50
Definition: player-util.h:52
bool player_can_refuel_prereq(void)
Prerequiste function for command.
Definition: player-util.c:900
bool player_can_read(struct player *p, bool show_msg)
Return true if the player can read scrolls or books.
Definition: player-util.c:789
void player_resume_normal_shape(struct player *p)
Revert to normal shape.
Definition: player-util.c:671
bool player_can_fire_prereq(void)
Prerequiste function for command.
Definition: player-util.c:892
const char ** p[]
Definition: name.c:40
bool player_book_has_unlearned_spells(struct player *p)
Return true if the player has access to a book that has unlearned spells.
Definition: player-util.c:910
Definition: player-util.h:38
int16_t s16b
Definition: h-basic.h:170
int shape_name_to_idx(const char *name)
Find a player shape index from the shape name.
Definition: player-util.c:642
bool player_can_study(struct player *p, bool show_msg)
Return true if the player can study a spell.
Definition: player-util.c:743
bool player_confuse_dir(struct player *p, int *dir, bool too)
Apply confusion, if needed, to a direction.
Definition: player-util.c:948
void take_hit(struct player *p, int dam, const char *kb_str)
Decreases players hit points and sets death flag if necessary.
Definition: player-util.c:152
bool player_is_resting(struct player *p)
Return true if the player is resting.
Definition: player-util.c:988
struct player_shape * lookup_player_shape(const char *name)
Find a player shape from the name.
Definition: player-util.c:626
void dungeon_change_level(struct player *p, int dlev)
Change dungeon level - e.g.
Definition: player-util.c:127
Player shapechange shape info.
Definition: player.h:213
Definition: player-util.h:54
void player_set_recall_depth(struct player *p)
Set recall depth for a player recalling from town.
Definition: player-util.c:75
void death_knowledge(struct player *p)
Win or not, know inventory, home items and history upon death, enter score.
Definition: player-util.c:219
Definition: player-util.h:34
s16b player_resting_count(struct player *p)
Return the remaining number of resting turns.
Definition: player-util.c:997
void search(struct player *p)
Search for traps or secret doors.
Definition: player-util.c:1231
bool player_attack_random_monster(struct player *p)
Melee a random adjacent monster.
Definition: player-util.c:481
void player_set_resting_repeat_count(struct player *p, s16b count)
Set the number of resting turns to repeat.
Definition: player-util.c:1129
Definition: player-util.h:41
Intialize random names
Definition: init.c:838
void player_over_exert(struct player *p, int flag, int chance, int amount)
Have random bad stuff happen to the player from over-exertion.
Definition: player-util.c:506
Most of the "player" information goes here.
Definition: player.h:489
void player_resting_set_count(struct player *p, s16b count)
Set the number of resting turns.
Definition: player-util.c:1015
int player_get_resting_repeat_count(struct player *p)
Get the number of resting turns to repeat.
Definition: player-util.c:1119
bool player_resting_can_regenerate(struct player *p)
Return true if the player should get a regeneration bonus for the current rest.
Definition: player-util.c:1051
png_voidp int value
Definition: libpng12/png.h:2145
bool player_can_cast(struct player *p, bool show_msg)
Return true if the player can cast a spell.
Definition: player-util.c:710
void disturb(struct player *p, int stop_search)
Definition: player-util.c:1201
int index
Definition: obj-info.c:68
bool player_is_trapsafe(struct player *p)
Check if the player is immune from traps.
Definition: player-util.c:696
void player_place(struct chunk *c, struct player *p, int y, int x)
Places the player at the given coordinates in the cave.
Definition: player-util.c:1171
bool player_get_recall_depth(struct player *p)
Give the player the choice of persistent level to recall to.
Definition: player-util.c:94