Fixed homunc skill up bug
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8215 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
bd3d6500ce
commit
4940b38ba3
@ -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.
|
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
||||||
|
|
||||||
2006/08/09
|
2006/08/09
|
||||||
|
* Fixed homunc skill up bug [Toms]
|
||||||
* Adjusted some the dance/song/encore code so that the source of an
|
* Adjusted some the dance/song/encore code so that the source of an
|
||||||
ensemble will always get checked, so that walking out of an ensemble skill
|
ensemble will always get checked, so that walking out of an ensemble skill
|
||||||
should make it end now. However, it's likely this is not completely solved
|
should make it end now. However, it's likely this is not completely solved
|
||||||
|
@ -1531,7 +1531,7 @@ int clif_homskillinfoblock(struct map_session_data *sd) { //[orn]
|
|||||||
WFIFOW(fd,len+8) = skill_get_sp(id,sd->homunculus.hskill[j].lv) ;
|
WFIFOW(fd,len+8) = skill_get_sp(id,sd->homunculus.hskill[j].lv) ;
|
||||||
WFIFOW(fd,len+10)= skill_get_range2(&sd->hd->bl, id,sd->homunculus.hskill[j].lv) ;
|
WFIFOW(fd,len+10)= skill_get_range2(&sd->hd->bl, id,sd->homunculus.hskill[j].lv) ;
|
||||||
strncpy(WFIFOP(fd,len+12), skill_get_name(id), NAME_LENGTH) ;
|
strncpy(WFIFOP(fd,len+12), skill_get_name(id), NAME_LENGTH) ;
|
||||||
WFIFOB(fd,len+36) = 1;//0;
|
WFIFOB(fd,len+36) = (sd->homunculus.hskill[j].lv < merc_skill_tree_get_max(id, sd->homunculus.class_))?1:0;
|
||||||
len+=37;
|
len+=37;
|
||||||
c++;
|
c++;
|
||||||
}
|
}
|
||||||
@ -1546,10 +1546,10 @@ void clif_homskillup(struct map_session_data *sd, int skill_num) { //[orn]
|
|||||||
int range,fd,skillid;
|
int range,fd,skillid;
|
||||||
|
|
||||||
nullpo_retv(sd);
|
nullpo_retv(sd);
|
||||||
skillid = skill_num - HM_SKILLBASE ;
|
skillid = skill_num - HM_SKILLBASE - 1;
|
||||||
|
|
||||||
fd=sd->fd;
|
fd=sd->fd;
|
||||||
WFIFOW(fd,0) = 0x10e;
|
WFIFOW(fd,0) = 0x239;
|
||||||
WFIFOW(fd,2) = skill_num;
|
WFIFOW(fd,2) = skill_num;
|
||||||
WFIFOW(fd,4) = sd->homunculus.hskill[skillid].lv;
|
WFIFOW(fd,4) = sd->homunculus.hskill[skillid].lv;
|
||||||
WFIFOW(fd,6) = skill_get_sp(skill_num,sd->homunculus.hskill[skillid].lv);
|
WFIFOW(fd,6) = skill_get_sp(skill_num,sd->homunculus.hskill[skillid].lv);
|
||||||
|
@ -186,7 +186,7 @@ int merc_hom_checkskill(struct map_session_data *sd,int skill_id)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int merc_skill_tree_get_max(int id, int b_class){
|
int merc_skill_tree_get_max(int id, int b_class){
|
||||||
int i, skillid;
|
int i, skillid;
|
||||||
for(i=0;(skillid=hskill_tree[b_class-6001][i].id)>0;i++)
|
for(i=0;(skillid=hskill_tree[b_class-6001][i].id)>0;i++)
|
||||||
if (id == skillid) return hskill_tree[b_class-6001][i].max;
|
if (id == skillid) return hskill_tree[b_class-6001][i].max;
|
||||||
|
@ -78,3 +78,4 @@ int merc_natural_heal_timer_delete(struct homun_data *hd);
|
|||||||
int read_homunculusdb(void);
|
int read_homunculusdb(void);
|
||||||
int merc_hom_increase_intimacy(struct homun_data * hd, unsigned int value);
|
int merc_hom_increase_intimacy(struct homun_data * hd, unsigned int value);
|
||||||
int merc_hom_decrease_intimacy(struct homun_data * hd, unsigned int value);
|
int merc_hom_decrease_intimacy(struct homun_data * hd, unsigned int value);
|
||||||
|
int merc_skill_tree_get_max(int id, int b_class);
|
Loading…
x
Reference in New Issue
Block a user