summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt1
-rw-r--r--db/Changelog.txt2
-rw-r--r--db/skill_require_db.txt2
-rw-r--r--db/skill_tree.txt2
-rw-r--r--src/map/mercenary.c1
-rw-r--r--src/map/skill.c2
-rw-r--r--src/map/status.c9
7 files changed, 13 insertions, 6 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 66a13116b..43289cd7e 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,6 +4,7 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/08/19
+ * Fixed HLIF_CHANGE [Toms]
* Updated HLIF_BRAIN skill [Toms]
* Fixed homunculus intimacy on feeding [Toms]
* Added homunculus_friendly_rate battle config [Toms]
diff --git a/db/Changelog.txt b/db/Changelog.txt
index 18d510f68..db8102d2e 100644
--- a/db/Changelog.txt
+++ b/db/Changelog.txt
@@ -20,6 +20,8 @@
=========================
08/19
+ * Updated NJ_BAKUENRYU skill tree [Toms]
+ * Updated HLIF_CHANGE skill [Toms]
* Updated Kouenka, removed aftercast delay [Toms]
* Fixed some Ninja weapons (1Hand Sword -> Dagger) [Toms]
08/18
diff --git a/db/skill_require_db.txt b/db/skill_require_db.txt
index 903b9062e..a337821c4 100644
--- a/db/skill_require_db.txt
+++ b/db/skill_require_db.txt
@@ -460,7 +460,7 @@
8001,0,0,13:16:19:22:25,0,0,0,99,0,0,none,0,545,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_HEAL
8002,0,0,20:25:30:35:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_AVOID
-8004,0,1,0,0,0,99,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_CHANGE
+8004,0,0,100,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_CHANGE
8005,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //HAMI_CASTLE
8006,0,0,20:25:30:35:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //HAMI_DEFENCE
8008,0,0,120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //HAMI_BLOODLUST
diff --git a/db/skill_tree.txt b/db/skill_tree.txt
index fbc9df369..1f6b900f4 100644
--- a/db/skill_tree.txt
+++ b/db/skill_tree.txt
@@ -687,7 +687,7 @@
25,533,10,0,0,0,0,0,0,0,0,0,0 //NJ_NINPOU#NJ_NINPOU#
25,534,10,533,1,0,0,0,0,0,0,0,0 //NJ_KOUENKA#NJ_KOUENKA#
25,535,10,534,5,0,0,0,0,0,0,0,0 //NJ_KAENSIN#NJ_KAENSIN#
-25,536,5,533,10,534,7,0,0,0,0,0,0 //NJ_BAKUENRYU#NJ_BAKUENRYU#
+25,536,5,533,10,535,7,0,0,0,0,0,0 //NJ_BAKUENRYU#NJ_BAKUENRYU#
25,537,10,533,1,0,0,0,0,0,0,0,0 //NJ_HYOUSENSOU#NJ_HYOUSENSOU#
25,538,10,537,5,0,0,0,0,0,0,0,0 //NJ_SUITON#NJ_SUITON#
25,539,5,533,10,538,7,0,0,0,0,0,0 //NJ_HYOUSYOURAKU#NJ_HYOUSYOURAKU#
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;