/* ....[@@@..[@@@..............[@.................. MUD++ is a written from ....[@..[@..[@..[@..[@..[@@@@@....[@......[@.... scratch multi-user swords and ....[@..[@..[@..[@..[@..[@..[@..[@@@@@..[@@@@@.. sorcery game written in C++. ....[@......[@..[@..[@..[@..[@....[@......[@.... This server is an ongoing ....[@......[@..[@@@@@..[@@@@@.................. development project. All ................................................ contributions are welcome. ....Copyright(C).1995.Melvin.Smith.............. Enjoy. ------------------------------------------------------------------------------ Melvin Smith (aka Fusion) msmith@falcon.mercer.peachnet.edu MUD++ development mailing list mudpp-list@spice.com ------------------------------------------------------------------------------ combat.h */ #ifndef _COMBAT_H #define _COMBAT_H #include "bit.h" const char * damRangeName( int, bool ); const char * damTypeName( int ); extern const bitType dam_types[]; const int DAM_RANGES = 7; const int NONE = 0; const int PUNCH = 1; const int KICK = 2; const int CRUSH = 3; const int PIERCE = 4; const int SLASH = 5; const int WHIP = 6; const int FUMBLE = 0; const int MISSED = 1; const int DODGED = 2; const int HIT = 3; const int CRIT_HIT = 4; class Attack { private: int type; int min_dam; int max_dam; int hit_mod; int dam_mod; public: Attack() : type(PUNCH), min_dam(1), max_dam(6), hit_mod(0), dam_mod(0) { } Attack( int t, int min, int max, int hit, int dam ) : type(t), min_dam(min), max_dam(max), hit_mod(hit), dam_mod(dam) { } int getType() { return type; } int getHit() { return hit_mod; } int getDam() { return dam_mod; } int getMin() { return min_dam; } int getMax() { return max_dam; } }; inline const char * getDamTypeName( int val ) { return getBitName( dam_types, val ); } inline int getDamType( const char * name ) { return getBit( dam_types, name ); } #endif