Go to the documentation of this file.
56 object *applier,
int aflags) {
66 "You are unable to read while blind.");
72 "The scroll just doesn't make sense!");
87 "You are unable to decipher the strange symbols.");
104 failure = -
rndm(35, 100);
120 "Your scroll of %s glows for a second!",
124 "The scroll of %s turns to dust.",
object * find_skill_by_number(object *who, int skillno)
#define QUERY_FLAG(xyz, p)
int cast_spell(object *op, object *caster, int dir, object *spell_ob, char *stringarg)
void scroll_failure(object *op, int failure, int power)
object * identify(object *op)
#define object_decrease_nrof_by_one(xyz)
#define MSG_TYPE_APPLY_SUCCESS
int64_t calc_skill_exp(const object *who, const object *op, const object *skill)
const typedef char * sstring
int rndm(int min, int max)
uint8_t spell_failure_effects
void register_apply(int ob_type, apply_func method)
int die_roll(int num, int size, const object *op, int goodbad)
void change_exp(object *op, int64_t exp, const char *skill_name, int flag)
#define MSG_TYPE_APPLY_FAILURE
void draw_ext_info(int flags, int pri, const object *pl, uint8_t type, uint8_t subtype, const char *message)
#define MSG_TYPE_APPLY_ERROR
void draw_ext_info_format(int flags, int pri, const object *pl, uint8_t type, uint8_t subtype, const char *format,...)