diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-11-09 20:02:56 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-11-09 20:02:56 +0000 |
commit | 7d946b866e576b8cafb8a81ba82c8a1d49dab832 (patch) | |
tree | 46eab1ceb60c5d26a69f47c08156f3b87a52a005 | |
parent | c71baed92b4102a2197c955627bec3728d66a4df (diff) | |
download | hercules-7d946b866e576b8cafb8a81ba82c8a1d49dab832.tar.gz hercules-7d946b866e576b8cafb8a81ba82c8a1d49dab832.tar.bz2 hercules-7d946b866e576b8cafb8a81ba82c8a1d49dab832.tar.xz hercules-7d946b866e576b8cafb8a81ba82c8a1d49dab832.zip |
- Reduced the check area of hermod to 3x3, you now have to literally stand next to a warp for it to work.
- Corrected the Fog of Wall check so that it lasts 2x when it is placed on TOP of a suiton/deluge, not when the caster is on top of them.
- Updated status_check_skilluse so that when the caster has a disabling status change (stun/petrify/etc) it will block the skill in all cases EXCEPT on cast-end when the skill is ground-targetted.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9185 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | Changelog-Trunk.txt | 5 | ||||
-rw-r--r-- | db/Changelog.txt | 2 | ||||
-rw-r--r-- | db/skill_db.txt | 2 | ||||
-rw-r--r-- | src/map/skill.c | 7 | ||||
-rw-r--r-- | src/map/status.c | 11 |
5 files changed, 19 insertions, 8 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 6efe21b93..d2ea5c127 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. 2006/11/09
=======
+ * Corrected the Fog of Wall check so that it lasts 2x when it is placed on
+ TOP of a suiton/deluge, not when the caster is on top of them. [Skotlex]
+ * Updated status_check_skilluse so that when the caster has a disabling
+ status change (stun/petrify/etc) it will block the skill in all cases
+ EXCEPT on cast-end when the skill is ground-targetted. [Skotlex]
* Fixed Health Conversion skill formula bug. [Lupus]
2006/11/08
* Fixed Desperado's hit-rate, now it behaves as it should. [Skotlex]
diff --git a/db/Changelog.txt b/db/Changelog.txt index 38bd865de..7a722b910 100644 --- a/db/Changelog.txt +++ b/db/Changelog.txt @@ -20,6 +20,8 @@ ========================
11/09
+ * Reduced the check area of hermod to 3x3, you now have to literally stand
+ next to a warp for it to work. [Skotlex]
* Official Weight and Max SP values for TK/SG/SL/GS/NJ [Playtester]
- why were ours so far off the official ones?
11/08
diff --git a/db/skill_db.txt b/db/skill_db.txt index d6e1bdbef..78b776dcc 100644 --- a/db/skill_db.txt +++ b/db/skill_db.txt @@ -511,7 +511,7 @@ 485,-2,6,1,-1,0,0,10,1,no,0,0,0,weapon,0 //WS_CARTTERMINATION#Cart Termination#
486,0,6,4,0,1,0,5,1,no,0,0,0,weapon,0 //WS_OVERTHRUSTMAX#Maximum Power Thrust#
487,0,6,4,0,1,0,5,1,no,0,0,0,none,0 //CG_LONGINGFREEDOM#Longing for Freedom#
-488,0,6,4,0,1,2,5,1,no,0,64,0,misc,0 //CG_HERMODE#Wand of Hermod#
+488,0,6,4,0,1,1,5,1,no,0,64,0,misc,0 //CG_HERMODE#Wand of Hermod#
489,9,6,1,0,1,0,5,1,no,0,0,0,misc,0 //CG_TAROTCARD#Tarot Card of Fate#
490,9,8,1,0,0,0,10,1:2:3:4:5:6:7:8:9:10,yes,0,0,0,misc,0 //CR_ACIDDEMONSTRATION#Acid Demonstration#
491,1,6,2,0,1,0,2,1,no,0,0,0,none,0 //CR_CULTIVATION#Cultivation#
diff --git a/src/map/skill.c b/src/map/skill.c index c59020002..c27b187e8 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -6661,9 +6661,10 @@ struct skill_unit_group *skill_unitsetting (struct block_list *src, int skillid, val2 = skilllv*10; //Status ailment resistance break; case PF_FOGWALL: - if(sc && ( - sc->data[SC_DELUGE].timer!=-1 || sc->data[SC_SUITON].timer != -1 - )) limit *= 2; + //When casted on top of Deluge/Suiton: Double duration. + if (map_find_skill_unit_oncell(src,x,y,SA_DELUGE,NULL) || + map_find_skill_unit_oncell(src,x,y,NJ_SUITON,NULL)) + limit *= 2; break; case RG_GRAFFITI: /* Graffiti */ count=1; // Leave this at 1 [Valaris] diff --git a/src/map/status.c b/src/map/status.c index 99b8cfec4..e74e7a5a5 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -963,10 +963,13 @@ int status_check_skilluse(struct block_list *src, struct block_list *target, int if(sc && sc->count)
{
- if(sc->opt1 >0 && flag != 1)
- //When sc do not cancel casting, the spell should come out, and when it does, we can never have
- //a flag == 1 && sc->opt1 case, since cancelling should had been stopped before.
- return 0;
+ if(sc->opt1 >0)
+ { //Stuned/Frozen/etc
+ if (flag != 1) //Can't cast, casted stuff can't damage.
+ return 0;
+ if (!skill_get_inf(skill_num)&INF_GROUND_SKILL)
+ return 0; //Targetted spells can't come off.
+ }
if (
(sc->data[SC_TRICKDEAD].timer != -1 && skill_num != NV_TRICKDEAD)
|