diff options
author | rud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-06-03 14:54:06 +0000 |
---|---|---|
committer | rud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-06-03 14:54:06 +0000 |
commit | 77432c2e8406cef71baf73c1374b52be883f1dcc (patch) | |
tree | f595808572cac871b3abb81cd90bca19fd04ac2f | |
parent | a5014cad6007ecc0b6fc195a829a1dc836fdfc68 (diff) | |
download | hercules-77432c2e8406cef71baf73c1374b52be883f1dcc.tar.gz hercules-77432c2e8406cef71baf73c1374b52be883f1dcc.tar.bz2 hercules-77432c2e8406cef71baf73c1374b52be883f1dcc.tar.xz hercules-77432c2e8406cef71baf73c1374b52be883f1dcc.zip |
Fixed bugreport:5911 Reflect Damage should now cancel when shield/guard is unequipped.
Fixed bugreport:4828 LG_PINPOINTATTACK should now only work with spears.
Fixed bugreport:5905 All heal support skill now can't work with Mado Gear.
Fixed other non Mado related skill that it should not work when Mado is equipped.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16217 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | db/pre-re/skill_require_db.txt | 2 | ||||
-rw-r--r-- | db/re/skill_require_db.txt | 2 | ||||
-rw-r--r-- | src/map/pc.c | 3 | ||||
-rw-r--r-- | src/map/skill.c | 11 |
4 files changed, 10 insertions, 8 deletions
diff --git a/db/pre-re/skill_require_db.txt b/db/pre-re/skill_require_db.txt index 5e8d3ff7c..268421e1c 100644 --- a/db/pre-re/skill_require_db.txt +++ b/db/pre-re/skill_require_db.txt @@ -643,7 +643,7 @@ 2309,0,0,30:45:60,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 //LG_TRAMPLE#Trample# 2310,0,0,10:12:14:16:18,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDPRESS#Shield Press# 2311,0,0,40:50:60:70:80,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_REFLECTDAMAGE#Reflect Damage# -2312,0,0,30,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 //LG_PINPOINTATTACK#Pinpoint Attack# +2312,0,0,30,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PINPOINTATTACK#Pinpoint Attack# 2313,0,0,30,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 //LG_FORCEOFVANGUARD#Force of Vanguard# 2314,0,0,150,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 //LG_RAGEBURST#Rage Burst# 2315,0,0,50,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDSPELL#Shield Spell# diff --git a/db/re/skill_require_db.txt b/db/re/skill_require_db.txt index 8bb705947..6d350e43d 100644 --- a/db/re/skill_require_db.txt +++ b/db/re/skill_require_db.txt @@ -643,7 +643,7 @@ 2309,0,0,30:45:60,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 //LG_TRAMPLE#Trample# 2310,0,0,10:12:14:16:18,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDPRESS#Shield Press# 2311,0,0,40:50:60:70:80,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_REFLECTDAMAGE#Reflect Damage# -2312,0,0,30,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 //LG_PINPOINTATTACK#Pinpoint Attack# +2312,0,0,30,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PINPOINTATTACK#Pinpoint Attack# 2313,0,0,30,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 //LG_FORCEOFVANGUARD#Force of Vanguard# 2314,0,0,150,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 //LG_RAGEBURST#Rage Burst# 2315,0,0,50,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDSPELL#Shield Spell# diff --git a/src/map/pc.c b/src/map/pc.c index bc3ee1acd..71950a032 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -4665,7 +4665,8 @@ int pc_checkallowskill(struct map_session_data *sd) const enum sc_type scs_list[] = { SC_AUTOGUARD, SC_DEFENDER, - SC_REFLECTSHIELD + SC_REFLECTSHIELD, + SC_REFLECTDAMAGE }; int i; nullpo_ret(sd); diff --git a/src/map/skill.c b/src/map/skill.c index 27997c713..467b07fa3 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4635,7 +4635,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in } if( status_isimmune(bl) || (dstmd && (dstmd->class_ == MOBID_EMPERIUM || mob_is_battleground(dstmd))) || - (skillid == AL_HEAL && dstsd && pc_ismadogear(dstsd)) )//Mado is immune to AL_HEAL + (dstsd && pc_ismadogear(dstsd)) )//Mado is immune to heal heal=0; if( sd && dstsd && sd->status.partner_id == dstsd->status.char_id && (sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && sd->status.sex == 0 ) @@ -7429,6 +7429,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in if( sd && tstatus && !battle_check_undead(tstatus->race, tstatus->def_ele) ) { i = skill_calc_heal(src, bl, AL_HEAL, pc_checkskill(sd, AL_HEAL), true); + if(dstsd && pc_ismadogear(dstsd)) i = 0; // Should heal by 0 or won't do anything? [malufett] status_heal(bl, i, 0, 1); clif_skill_nodamage(bl, bl, skillid, i, 1); } @@ -11783,15 +11784,15 @@ int skill_check_condition_castbegin(struct map_session_data* sd, short skill, sh } } if( pc_ismadogear(sd) ) { - switch( skill ) { //Blacksmiths and Mastersmiths skills are unusable when Mado is equipped. [Jobbie] + switch( skill ) { //None Mado skills are unusable when Mado is equipped. [Jobbie] case BS_REPAIRWEAPON: case WS_MELTDOWN: case BS_HAMMERFALL: case WS_CARTBOOST: case BS_ADRENALINE: case WS_WEAPONREFINE: case BS_WEAPONPERFECT: case WS_CARTTERMINATION: case BS_OVERTHRUST: case WS_OVERTHRUSTMAX: - case BS_MAXIMIZE: - case BS_ADRENALINE2: - case BS_UNFAIRLYTRICK: + case BS_MAXIMIZE: case NC_AXEBOOMERANG: + case BS_ADRENALINE2: case NC_POWERSWING: + case BS_UNFAIRLYTRICK: case NC_AXETORNADO: case BS_GREED: clif_skill_fail(sd,skill,USESKILL_FAIL_LEVEL,0); return 0; |