summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authorultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-12-02 16:29:37 +0000
committerultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-12-02 16:29:37 +0000
commit65e0e75aedb7026b4f6a8c3293b3659968f7856f (patch)
tree50b8a667174ba09dd676ca7c23a37e4e32eb0bb6 /src/map/status.c
parentc81a19aebbf31ac357112b8bd056b259930250e2 (diff)
downloadhercules-65e0e75aedb7026b4f6a8c3293b3659968f7856f.tar.gz
hercules-65e0e75aedb7026b4f6a8c3293b3659968f7856f.tar.bz2
hercules-65e0e75aedb7026b4f6a8c3293b3659968f7856f.tar.xz
hercules-65e0e75aedb7026b4f6a8c3293b3659968f7856f.zip
Fixed some minor inconsistencies in homunculus packets, in an attempt to make the lvl99 aura show to owner onSpawn.
Still doesn't work as there appears to be a complex packet order dependency... git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11851 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 68579b059..1b8ce5dbc 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -2404,6 +2404,7 @@ int status_calc_homunculus(struct homun_data *hd, int first)
struct status_data b_status, *status;
struct s_homunculus *hom;
int skill;
+ int amotion;
memcpy(&b_status, &hd->base_status, sizeof(struct status_data));
hom = &hd->homunculus;
@@ -2468,17 +2469,15 @@ int status_calc_homunculus(struct homun_data *hd, int first)
status->aspd_rate = 1000;
- skill = (1000 -4*status->agi -status->dex)
- *hd->homunculusDB->baseASPD/1000;
-
- status->amotion = cap_value(skill,battle_config.max_aspd,2000);
+ amotion = (1000 -4*status->agi -status->dex) * hd->homunculusDB->baseASPD/1000;
+ status->amotion = cap_value(amotion,battle_config.max_aspd,2000);
status->adelay = status->amotion; //It seems adelay = amotion for Homunculus.
status_calc_misc(&hd->bl, status, hom->level);
status_cpy(&hd->battle_status, status);
status_calc_bl(&hd->bl, SCB_ALL); //Status related changes.
- if (memcmp(&b_status, status, sizeof(struct status_data)))
+ if( memcmp(&b_status, status, sizeof(struct status_data)) && !first )
clif_hominfo(hd->master,hd,0) ;
return 1;