summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortoms <toms@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-19 15:35:11 +0000
committertoms <toms@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-19 15:35:11 +0000
commit63ac1e270cb7c1502bab5f0f66f6f3648c5ec00b (patch)
tree9a905e31ed4c30fb633283858befabe70a6a2a9b /src
parent6c04c316bd7a3f52e3971eb8e522e3a1c700bb06 (diff)
downloadhercules-63ac1e270cb7c1502bab5f0f66f6f3648c5ec00b.tar.gz
hercules-63ac1e270cb7c1502bab5f0f66f6f3648c5ec00b.tar.bz2
hercules-63ac1e270cb7c1502bab5f0f66f6f3648c5ec00b.tar.xz
hercules-63ac1e270cb7c1502bab5f0f66f6f3648c5ec00b.zip
- Updated NJ_BAKUENRYU skill tree
- Fixed HLIF_CHANGE skill git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8365 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/map/mercenary.c1
-rw-r--r--src/map/skill.c2
-rw-r--r--src/map/status.c9
3 files changed, 8 insertions, 4 deletions
diff --git a/src/map/mercenary.c b/src/map/mercenary.c
index 2f5ed4d11..7cc58dc7d 100644
--- a/src/map/mercenary.c
+++ b/src/map/mercenary.c
@@ -330,6 +330,7 @@ int merc_hom_change_class(struct homun_data *hd, short class_)
hd->homunculusDB = &homunculus_db[i];
hd->master->homunculus.class_ = class_;
status_set_viewdata(&hd->bl, class_);
+ merc_hom_calc_skilltree(hd->master);
return 1;
}
diff --git a/src/map/skill.c b/src/map/skill.c
index ec464c961..e3fa451f0 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -5586,8 +5586,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
case HLIF_CHANGE: //[orn]
clif_skill_nodamage(src,bl,skillid,skilllv,
sc_start(bl,type,100,skilllv,skill_get_time(skillid,skilllv)));
- if (sd)
- skill_blockpc_start(sd, skillid, skill_get_time2(skillid,skilllv));
if (hd)
skill_blockmerc_start(hd, skillid, skill_get_time2(skillid,skilllv));
break;
diff --git a/src/map/status.c b/src/map/status.c
index ff770f624..7cd27b37a 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -5741,8 +5741,8 @@ int status_change_start(struct block_list *bl,int type,int rate,int val1,int val
sc->data[type].val2 = 5*status->max_hp/100;
status_heal(bl, status->max_hp, 0, 1); //Do not use percent_heal as this healing must override BERSERK's block.
status_set_sp(bl, 0, 0); //Damage all SP
- } else if (type==SC_CHANGE) //Heal all HP
- status_percent_heal(bl, 100, 0);
+ } else if (type==SC_CHANGE) //Heal all HP/SP
+ status_percent_heal(bl, 100, 100);
if (type==SC_RUN) {
@@ -6092,6 +6092,11 @@ int status_change_end( struct block_list* bl , int type,int tid )
pc_setsavepoint(sd, sd->mapindex, bl->x, bl->y);
}
break; //guess hes not in jail :P
+ case SC_CHANGE:
+ // "lose almost all her HP and SP"
+ status_set_hp(bl, 10, 0);
+ status_set_sp(bl, 10, 0);
+ break;
}
opt_flag = 1;