Angband
Data Structures | Macros | Typedefs | Enumerations | Functions
mon-blow-effects.h File Reference

Functions for managing monster melee effects. More...

#include "player.h"
#include "mon-blow-methods.h"
#include "monster.h"
#include "list-blow-effects.h"

Go to the source code of this file.

Data Structures

struct  melee_effect_handler_context_s
 Storage for context information for effect handlers called in make_attack_normal(). More...

Macros

#define RBE(x, p, e, d)   RBE_##x,

Typedefs

typedef struct
melee_effect_handler_context_s 
melee_effect_handler_context_t
 Storage for context information for effect handlers called in make_attack_normal().
typedef void(* melee_effect_handler_f )(melee_effect_handler_context_t *)
 Melee blow effect handler.
typedef byte monster_blow_effect_t
 Storage class for monster_blow_effect_e.

Enumerations

enum  monster_blow_effect_e
 List of monster blow effects. More...

Functions

int monster_blow_effect_power (monster_blow_effect_t effect)
int monster_blow_effect_eval (monster_blow_effect_t effect)
bool monster_blow_effect_is_valid (monster_blow_effect_t effect)
 Return whether the given effect is valid.
const char * monster_blow_effect_description (monster_blow_effect_t effect)
melee_effect_handler_f melee_handler_for_blow_effect (monster_blow_effect_t effect)
monster_blow_effect_t blow_effect_name_to_idx (const char *string)

Detailed Description

Functions for managing monster melee effects.

Copyright (c) 1997 Ben Harrison, David Reeve Sward, Keldon Jones. 2013 Ben Semmler

This work is free software; you can redistribute it and/or modify it under the terms of either:

a) the GNU General Public License as published by the Free Software Foundation, version 2, or

b) the "Angband licence": This software may be copied and distributed for educational, research, and not for profit purposes provided that this copyright and statement are included in all such copies. Other copyrights may also apply.

Macro Definition Documentation

#define RBE (   x,
  p,
  e,
 
)    RBE_##x,

Typedef Documentation

Storage for context information for effect handlers called in make_attack_normal().

The members of this struct are initialized in an order-dependent way (to be more cross-platform). If the members change, make sure to change any initializers. Ideally, this should eventually used named initializers.

typedef void(* melee_effect_handler_f)(melee_effect_handler_context_t *)

Melee blow effect handler.

Storage class for monster_blow_effect_e.

Enumeration Type Documentation

List of monster blow effects.

Function Documentation

monster_blow_effect_t blow_effect_name_to_idx ( const char *  string)

Referenced by parse_lore_b(), and parse_monster_blow().

melee_effect_handler_f melee_handler_for_blow_effect ( monster_blow_effect_t  effect)

Referenced by make_attack_normal().

const char* monster_blow_effect_description ( monster_blow_effect_t  effect)
int monster_blow_effect_eval ( monster_blow_effect_t  effect)

Referenced by eval_blow_effect().

bool monster_blow_effect_is_valid ( monster_blow_effect_t  effect)

Return whether the given effect is valid.

Parameters
effectis the RBE_ constant for the effect.

Referenced by parse_lore_b(), and parse_monster_blow().

int monster_blow_effect_power ( monster_blow_effect_t  effect)

Referenced by make_attack_normal().