summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-util.h
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-02-24 11:13:12 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-02-24 11:13:12 +0000
commit8674d7ae28e958983128c045fb8504b037785da7 (patch)
treef703dc699ab5ad333b7d1f3cc48dd9cf6c043fb0 /crawl-ref/source/mon-util.h
parent822ac3ae2e353dc3ba45be39922d6e24d64791b0 (diff)
downloadcrawl-ref-8674d7ae28e958983128c045fb8504b037785da7.tar.gz
crawl-ref-8674d7ae28e958983128c045fb8504b037785da7.zip
Monster attack refactoring. Likely to be buggy.
Fixed tracer explosion beams generating clouds. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@959 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/mon-util.h')
-rw-r--r--crawl-ref/source/mon-util.h25
1 files changed, 11 insertions, 14 deletions
diff --git a/crawl-ref/source/mon-util.h b/crawl-ref/source/mon-util.h
index 01d1419df6..e0728b79ce 100644
--- a/crawl-ref/source/mon-util.h
+++ b/crawl-ref/source/mon-util.h
@@ -54,15 +54,12 @@
#define I_ANIMAL_LIKE 5
#define I_REPTILE 6
-
-// [dshaligram] PACKED is *not* relevant; the amount of padding space it
-// saves is not enough to merit it.
struct monsterentry
{
short mc; // monster number
unsigned char showchar, colour;
- const char *name /*[32]*/; //longest is 23 till now (31 is max alowed here)
+ const char *name;
unsigned long bitfields;
unsigned long resists;
@@ -82,16 +79,15 @@ struct monsterentry
short resist_magic; // (positive is ??)
// max damage in a turn is total of these four?
- unsigned char damage[4];
+ mon_attack_def attack[4];
-// hpdice[4]: [0]=HD [1]=min_hp [2]=rand_hp [3]=add_hp
-// min hp = [0]*[1]+[3] & max hp = [0]*([1]+[2])+[3])
-// example: the Iron Golem, hpdice={15,7,4,0}
-// 15*7 < hp < 15*(7+4),
-// 105 < hp < 165
-// hp will be around 135 each time. (assuming an good random number generator)
-// !!!!!!! The system is exactly the same as before, only the way of writing changed !!!!
- unsigned char hpdice[4]; // until we have monsters with 32767 hp,this is easily possible
+ // hpdice[4]: [0]=HD [1]=min_hp [2]=rand_hp [3]=add_hp
+ // min hp = [0]*[1]+[3] & max hp = [0]*([1]+[2])+[3])
+ // example: the Iron Golem, hpdice={15,7,4,0}
+ // 15*7 < hp < 15*(7+4),
+ // 105 < hp < 165
+ // hp will be around 135 each time.
+ unsigned hpdice[4];
char AC; // armour class
@@ -202,7 +198,7 @@ int mons_resist_turn_undead( const monsters *mon );
* called from: fight - monstuff
* *********************************************************************** */
int mons_damage(int mc, int rt);
-
+mon_attack_def mons_attack_spec(const monsters *, int rt);
// last updated 12may2000 {dlb}
/* ***********************************************************************
@@ -231,6 +227,7 @@ bool mons_is_demon( int mc );
bool mons_is_humanoid( int mc );
bool mons_wields_two_weapons(const monsters *m);
+bool mons_is_summoned(const monsters *m);
// last updated 12may2000 {dlb}
/* ***********************************************************************