Go to the documentation of this file.
20 #ifndef MON_PREDICATE_H
21 #define MON_PREDICATE_H
27 typedef bool (*monster_predicate)(const struct monster *mon);
29 bool monster_is_undead(const struct monster *mon);
30 bool monster_is_nonliving(const struct monster *mon);
31 bool monster_is_living(const struct monster *mon);
32 bool monster_is_destroyed(const struct monster *mon);
33 bool monster_passes_walls(const struct monster *mon);
34 bool monster_is_invisible(const struct monster *mon);
35 bool monster_is_not_invisible(const struct monster *mon);
36 bool monster_is_unique(const struct monster *mon);
37 bool monster_is_stupid(const struct monster *mon);
38 bool monster_is_smart(const struct monster *mon);
39 bool monster_is_esp_detectable(const struct monster *mon);
40 bool monster_has_spirit(const struct monster *mon);
41 bool monster_is_evil(const struct monster *mon);
42 bool monster_is_fearful(const struct monster *mon);
43 bool monster_is_powerful(const struct monster *mon);
44 bool monster_has_spells(const struct monster *mon);
45 bool monster_breathes(const struct monster *mon);
46 bool monster_has_innate_spells(const struct monster *mon);
47 bool monster_has_non_innate_spells(const struct monster *mon);
48 bool monster_loves_archery(const struct monster *mon);
50 bool monster_is_in_view(const struct monster *mon);
51 bool monster_is_visible(const struct monster *mon);
52 bool monster_is_camouflaged(const struct monster *mon);
53 bool monster_is_obvious(const struct monster *mon);
54 bool monster_is_mimicking(const struct monster *mon);
55 bool monster_can_be_scared(const struct monster *mon);
57 #endif /* !MON_PREDICATE_H */
bool monster_breathes(const struct monster *mon)
Monster has damaging breath.
Definition: mon-predicate.c:184
bool monster_has_spells(const struct monster *mon)
Monster has spells.
Definition: mon-predicate.c:176
Monster information, for a specific monster.
Definition: monster.h:369
bool monster_is_in_view(const struct monster *mon)
Temporary monster properties
Definition: mon-predicate.c:235
bool monster_is_nonliving(const struct monster *mon)
Nonliving monsters are immune to life drain.
Definition: mon-predicate.c:41
bool(* monster_predicate)(const struct monster *mon)
monster_predicate is a function pointer which tests a given monster to see if the predicate in questi...
Definition: mon-predicate.h:27
bool monster_is_obvious(const struct monster *mon)
Monster is recognisably a monster to the player.
Definition: mon-predicate.c:259
bool monster_has_innate_spells(const struct monster *mon)
Monster has innate spells.
Definition: mon-predicate.c:195
bool monster_is_powerful(const struct monster *mon)
Monster is powerful.
Definition: mon-predicate.c:168
bool monster_is_not_invisible(const struct monster *mon)
Monster is visible, in principle.
Definition: mon-predicate.c:83
bool monster_is_destroyed(const struct monster *mon)
Nonliving and stupid monsters are destroyed rather than dying.
Definition: mon-predicate.c:57
bool monster_is_mimicking(const struct monster *mon)
Monster is currently mimicking an item.
Definition: mon-predicate.c:267
bool monster_is_invisible(const struct monster *mon)
Monster is invisible.
Definition: mon-predicate.c:75
bool monster_is_camouflaged(const struct monster *mon)
Player doesn't recognise the monster as a monster.
Definition: mon-predicate.c:251
bool monster_is_stupid(const struct monster *mon)
Monster is stupid.
Definition: mon-predicate.c:99
bool monster_has_non_innate_spells(const struct monster *mon)
Monster has non-innate spells.
Definition: mon-predicate.c:206
bool monster_is_unique(const struct monster *mon)
Monster is unique.
Definition: mon-predicate.c:91
bool monster_is_esp_detectable(const struct monster *mon)
Monster is (or was) detectable by telepathy.
Definition: mon-predicate.c:120
bool monster_loves_archery(const struct monster *mon)
Monster has frequent and good archery attacks.
Definition: mon-predicate.c:218
bool monster_can_be_scared(const struct monster *mon)
Monster can be frightened.
Definition: mon-predicate.c:280
bool monster_is_evil(const struct monster *mon)
Monster is evil.
Definition: mon-predicate.c:152
bool monster_is_undead(const struct monster *mon)
Permanent monster properties
Definition: mon-predicate.c:33
bool monster_has_spirit(const struct monster *mon)
Monster has a spirit.
Definition: mon-predicate.c:144
bool monster_is_fearful(const struct monster *mon)
Monster can be frightened.
Definition: mon-predicate.c:160
bool monster_is_living(const struct monster *mon)
Living monsters.
Definition: mon-predicate.c:49
bool monster_passes_walls(const struct monster *mon)
Monster can pass through walls.
Definition: mon-predicate.c:66
bool monster_is_smart(const struct monster *mon)
Monster is (or was) smart.
Definition: mon-predicate.c:107
bool monster_is_visible(const struct monster *mon)
Monster is visible to the player.
Definition: mon-predicate.c:243