From 996f20c134b0aa6de62b06b286b626b950527479 Mon Sep 17 00:00:00 2001 From: skotlex Date: Mon, 13 Feb 2006 16:06:32 +0000 Subject: - Fixed SG_FUSION costing SP to deactivate. - Some cleaning up at pc_setpos to prevent calling pc_clean_skilltree - Added pc_clean_skilltree on pc_recv_reg - Enabled use of TF_HIDING while Cloaked. - pc_resetstate won't remove wedding skills now git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5268 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog-Trunk.txt | 5 +++++ src/map/pc.c | 20 ++++++++++++-------- src/map/skill.c | 1 + src/map/status.c | 4 ++-- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index daafdcd00..7f877680c 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -5,6 +5,11 @@ IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. EV GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS 2006/02/13 + * Fixed SG_FUSION costing SP to deactivate. [Skotlex] + * Some cleaning up at pc_setpos to prevent calling pc_clean_skilltree + [Skotlex] + * Enabled use of TF_HIDING while Cloaked. [Skotlex] + * pc_resetstate won't remove wedding skills now [Skotlex] * NPC_POWERUP now gives +40% atk per level. [Skotlex] * Water elementals can be frozen again. [Skotlex] * Fixed the sc_def equation in status_change_start. [Skotlex] diff --git a/src/map/pc.c b/src/map/pc.c index 3842aa16a..9e8467c33 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -925,6 +925,7 @@ int pc_reg_received(struct map_session_data *sd) char feel_var[3][NAME_LENGTH] = {"PC_FEEL_SUN","PC_FEEL_MOON","PC_FEEL_STAR"}; char hate_var[3][NAME_LENGTH] = {"PC_HATE_MOB_SUN","PC_HATE_MOB_MOON","PC_HATE_MOB_STAR"}; + pc_clean_skilltree(sd); //Clean skill tree before loading reg-based skills sd->change_level = pc_readglobalreg(sd,"jobchange_level"); sd->die_counter = pc_readglobalreg(sd,"PC_DIE_COUNTER"); if (!sd->die_counter && (sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE) @@ -3334,12 +3335,6 @@ int pc_setpos(struct map_session_data *sd,unsigned short mapindex,int x,int y,in sd->petDB = NULL; if(battle_config.pet_status_support) status_calc_pc(sd,2); - pc_clean_skilltree(sd); - - if (sd->state.storage_flag == 1) - storage_storageclose(sd); - else if (sd->state.storage_flag == 2) - storage_guild_storageclose(sd); } else if(sd->pet.intimate > 0) { pet_stopattack(sd->pd); @@ -3348,6 +3343,11 @@ int pc_setpos(struct map_session_data *sd,unsigned short mapindex,int x,int y,in map_delblock(&sd->pd->bl); } } + if (sd->state.storage_flag == 1) + storage_storageclose(sd); + else if (sd->state.storage_flag == 2) + storage_guild_storageclose(sd); + clif_changemap(sd,map[m].index,x,y); // [MouseJstr] } @@ -5065,8 +5065,12 @@ int pc_resetlvl(struct map_session_data* sd,int type) nullpo_retr(0, sd); - for(i=1;istatus.skill[i].lv = 0; + if (type != 3) { + for(i=1;istatus.skill[i].lv && + !skill_get_inf2(i)&INF2_WEDDING_SKILL) //Do not reset Wedding Skills. [Skotlex] + sd->status.skill[i].lv = 0; + } } if(type == 1){ diff --git a/src/map/skill.c b/src/map/skill.c index cad5a3ce7..001be8625 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7861,6 +7861,7 @@ int skill_check_condition(struct map_session_data *sd,int type) case PA_GOSPEL: case CR_SHRINK: case TK_RUN: + case SG_FUSION: if(sd->sc.data[SkillStatusChangeTable[skill]].timer!=-1) return 1; /* ‰š?œ‚·‚é?ź?‡‚ĶSP?Į”ļ‚µ‚Č‚¢ */ break; diff --git a/src/map/status.c b/src/map/status.c index 56205c02b..5841c38d9 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -708,8 +708,8 @@ int status_check_skilluse(struct block_list *src, struct block_list *target, int if (sc->option&OPTION_HIDE && skill_num != TF_HIDING && skill_num != AS_GRIMTOOTH && skill_num != RG_BACKSTAP && skill_num != RG_RAID) return 0; - if (sc->option&OPTION_CLOAK && skill_num == TF_HIDING) - return 0; +// if (sc->option&OPTION_CLOAK && skill_num == TF_HIDING) +// return 0; //Latest reports indicate Hiding is usable while Cloaking. [Skotlex] if (sc->option&OPTION_CHASEWALK && skill_num != ST_CHASEWALK) return 0; } -- cgit v1.2.3-70-g09d2