diff options
author | Kevin <Kevin@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-04-06 04:19:22 +0000 |
---|---|---|
committer | Kevin <Kevin@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-04-06 04:19:22 +0000 |
commit | a9e29df778514bd1dca21b6a65595410733a0da1 (patch) | |
tree | 8a0620b9c754445ae26db7e7d136c42b5ab36ba8 /src | |
parent | ae10f5471926661984cd90392023af97c3d69fee (diff) | |
download | hercules-a9e29df778514bd1dca21b6a65595410733a0da1.tar.gz hercules-a9e29df778514bd1dca21b6a65595410733a0da1.tar.bz2 hercules-a9e29df778514bd1dca21b6a65595410733a0da1.tar.xz hercules-a9e29df778514bd1dca21b6a65595410733a0da1.zip |
Unequip should no longer remove any buff from seven wind. (bugreport:1155)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12503 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r-- | src/map/pc.c | 2 | ||||
-rw-r--r-- | src/map/skill.c | 3 | ||||
-rw-r--r-- | src/map/status.c | 3 | ||||
-rw-r--r-- | src/map/status.h | 1 |
4 files changed, 6 insertions, 3 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index 7a2d47f2b..3d7572326 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -6591,7 +6591,7 @@ int pc_unequipitem(struct map_session_data *sd,int n,int flag) clif_unequipitemack(sd,n,sd->status.inventory[n].equip,1); if((sd->status.inventory[n].equip & EQP_ARMS) && - sd->weapontype1 == 0 && sd->weapontype2 == 0) + sd->weapontype1 == 0 && sd->weapontype2 == 0 && (!sd->sc.data[SC_SEVENWIND] || sd->sc.data[SC_ASPERSIO])) //Check for seven wind (but not level seven!) skill_enchant_elemental_end(&sd->bl,-1); if(sd->status.inventory[n].equip & EQP_ARMOR) { diff --git a/src/map/skill.c b/src/map/skill.c index 2b2ebc8a4..d4b25573c 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -3249,6 +3249,9 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in } clif_skill_nodamage(src,bl,skillid,skilllv, sc_start(bl,type,100,skilllv,skill_get_time(skillid,skilllv))); + + sc_start(bl,SC_SEVENWIND,100,skilllv,skill_get_time(skillid,skilllv)); + break; case PR_KYRIE: diff --git a/src/map/status.c b/src/map/status.c index d9c72c123..c8c154946 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -319,8 +319,7 @@ void initChangeTables(void) set_sc( TK_READYCOUNTER , SC_READYCOUNTER , SI_READYCOUNTER , SCB_NONE ); set_sc( TK_DODGE , SC_DODGE , SI_DODGE , SCB_NONE ); set_sc( TK_SPTIME , SC_TKREST , SI_TKREST , SCB_NONE ); - set_sc( TK_SEVENWIND , SC_GHOSTWEAPON , SI_GHOSTWEAPON , SCB_ATK_ELE ); - set_sc( TK_SEVENWIND , SC_SHADOWWEAPON , SI_SHADOWWEAPON , SCB_ATK_ELE ); + add_sc( TK_SEVENWIND , SC_SEVENWIND ); set_sc( SG_SUN_WARM , SC_WARM , SI_WARM , SCB_NONE ); add_sc( SG_MOON_WARM , SC_WARM ); add_sc( SG_STAR_WARM , SC_WARM ); diff --git a/src/map/status.h b/src/map/status.h index 5011eada5..0f2e47778 100644 --- a/src/map/status.h +++ b/src/map/status.h @@ -291,6 +291,7 @@ typedef enum sc_type { SC_ARMOR_RESIST, SC_SPCOST_RATE, SC_COMMONSC_RESIST, + SC_SEVENWIND, SC_MAX, //Automatically updated max, used in for's to check we are within bounds. } sc_type; |