summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt5
-rw-r--r--src/map/status.c5
2 files changed, 7 insertions, 3 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 5c50bdfbb..63cc62e85 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,6 +4,11 @@ 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/08/02
+ * Updated the way SC_SILENCE works. From what I remember (from previous
+ forum discussions) it: 1- Always blocks skills from being used. 2- Will
+ only block a skill when the cast-bar ends IF the skill is targetted. If
+ anyone wants to debate to get this changed, make an appropiate forum topic
+ in the svn development area to discuss. [Skotlex]
* Added a check in the walking code when triggering skills.
NPC_SELFDESTRUCTION will no longer cancel walking, it will instead resend
the walk packet, this effectively causes the mob to start walking
diff --git a/src/map/status.c b/src/map/status.c
index feb497d7a..b334275e8 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -964,9 +964,8 @@ int status_check_skilluse(struct block_list *src, struct block_list *target, int
))
return 0;
- if (flag != 2 && ( //Those that block begin/end casting.
- sc->data[SC_SILENCE].timer != -1
- ))
+ //Silence is a special, but weird, case. It prevents skill begin, and skill end only when there's a target. [Skotlex]
+ if(sc->data[SC_SILENCE].timer != -1 && flag <= (target?1:0))
return 0;
//Skill blocking.