From 01920ca0c1f2c30ebb0abd4793cf6e308454f0cd Mon Sep 17 00:00:00 2001 From: blackhole89 Date: Sun, 21 May 2006 18:59:13 +0000 Subject: * Part A of the Homunculus code. This only features the structures, status_* and clif_* (packets) and is not functional yet in any conventional way, but doesn't interfere with present functionality either. I would only forget half of this stuff if I tried to do all at once. Expect the rest somewhen within the upcoming week. (This is not similar to jA's implementation.) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6681 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/map.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'src/map/map.h') diff --git a/src/map/map.h b/src/map/map.h index 042058885..79474cc63 100644 --- a/src/map/map.h +++ b/src/map/map.h @@ -733,6 +733,8 @@ struct map_session_data { struct pet_data *pd; int pet_hungry_timer; + struct homun_data *hd; // [blackhole89] + struct{ int m; //-1 - none, other: map index corresponding to map name. unsigned short index; //map index @@ -874,6 +876,7 @@ struct mob_data { struct { int id; int dmg; + unsigned char to_homun; //[blackhole89] - determines whether this damage was dealt by homunculus or its master } dmglog[DAMAGELOG_SIZE]; struct spawn_data *spawn; //Spawn data. struct item *lootitem; @@ -903,6 +906,43 @@ struct mob_data { char npc_event[50]; }; +/* [blackhole89] */ +struct homun_data { + struct block_list bl; + struct unit_data ud; + struct view_data *vd; + struct status_change sc; + + char name[NAME_LENGTH]; + int id; + short speed; + short class_; + + struct map_session_data *master; //pointer back to its master + + short hunger_rate; + + struct { + int id; //0 = none + int level; + } hskill[4]; //skills (max. 4 for now) + + int alive; //does it live + + int target_id,attacked_id; + + int amotion,dmotion; + + short level; + short atk,matk,hit,crit,def,mdef,flee,flee2; //flee2 is not transmitted; lucky flee + short regenhp,regensp; + short str,agi,vit,int_,dex,luk; //According to various sources, they do have these though they aren't transfered to client. + short hp,max_hp; + short sp,max_sp; + unsigned long exp,exp_next; + short skillpts; +}; + struct pet_data { struct block_list bl; struct unit_data ud; -- cgit v1.2.3-60-g2f50