diff options
-rw-r--r-- | Changelog-Trunk.txt | 3 | ||||
-rw-r--r-- | src/map/battle.c | 4 | ||||
-rw-r--r-- | src/map/skill.c | 2 | ||||
-rw-r--r-- | src/map/status.c | 1 |
4 files changed, 8 insertions, 2 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index e12d0b12a..b09df77a5 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,9 @@ 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/07/18
+ * Fixed a crash when trying to extend TK's infinite combo feature. [Skotlex]
+ * Corrected Poison React to counter regardless of distance, and to use the
+ skill's 50+5*lv% counter chance (instead of 100%). [Skotlex]
* Corrected Venom splasher's splash damage [Skotlex]
* You now can't move/attack/use-skills when using Cloaking of a level less
than 3 [Skotlex]
diff --git a/src/map/battle.c b/src/map/battle.c index dee87da15..21e23ee0a 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -2944,7 +2944,9 @@ int battle_weapon_attack( struct block_list *src,struct block_list *target, if (tsc) { if (tsc->data[SC_POISONREACT].timer != -1 && - check_distance_bl(src, target, tstatus->rhw.range+1) && + (rand()%100 < tsc->data[SC_POISONREACT].val3 + || sstatus->def_ele == ELE_POISON) && +// check_distance_bl(src, target, tstatus->rhw.range+1) && Doesn't checks range! o.O; status_check_skilluse(target, src, TF_POISON, 0) ) { //Poison React if (sstatus->def_ele == ELE_POISON) { diff --git a/src/map/skill.c b/src/map/skill.c index d1f2a77fb..18715653e 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1910,7 +1910,7 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds sd->skilllv_old = skilllv; if (pc_famerank(sd->char_id,MAPID_TAEKWON)) { //Extend combo time. - delete_timer(sc->data[SC_COMBO].timer, status_change_timer); + delete_timer(sd->sc.data[SC_COMBO].timer, status_change_timer); sd->sc.data[SC_COMBO].timer = add_timer( tick+sd->sc.data[SC_COMBO].val4, status_change_timer, src->id, SC_COMBO); diff --git a/src/map/status.c b/src/map/status.c index c37b0c084..fe3f1c05e 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -4669,6 +4669,7 @@ int status_change_start(struct block_list *bl,int type,int rate,int val1,int val break; case SC_POISONREACT: val2=val1/2 + val1%2; // Number of counters [Celest] + val3=50 + 5*val1; //Chance to counter. [Skotlex] break; case SC_MAGICROD: val2 = val1*20; //SP gained |