summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-03-01 21:35:46 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-03-01 21:35:46 +0000
commitd96c45b5a69548d7943b598323383ecd803f29be (patch)
treeeec66d8e63044e7416c2934836e4d6696a5eb590 /src/map/skill.c
parentde5d6cb3e5c319f09c9014ce2a3bcd9041ad3323 (diff)
downloadhercules-d96c45b5a69548d7943b598323383ecd803f29be.tar.gz
hercules-d96c45b5a69548d7943b598323383ecd803f29be.tar.bz2
hercules-d96c45b5a69548d7943b598323383ecd803f29be.tar.xz
hercules-d96c45b5a69548d7943b598323383ecd803f29be.zip
- Silence will only block skills when they have begun casting, not when the cast bar is done.
- opt1 status will block skills when they are done casting only if the sc_castcancel option is set. - strcharinfo now returns blank instead of crashing the map server when there's no player attached. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5417 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 07e6ea73b..6207a639a 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -6780,11 +6780,18 @@ int skill_unit_onplace_timer(struct skill_unit *src,struct block_list *bl,unsign
tsc = status_get_sc(bl);
type = SkillStatusChangeTable[sg->skill_id];
- if (sg->interval == -1 && (sg->unit_id == UNT_ANKLESNARE || sg->unit_id == UNT_SPIDERWEB || sg->unit_id == UNT_FIREPILLAR_ACTIVE))
- //Ok, this case only happens with Ankle Snare/Spider Web (only skills that sets its interval to -1),
- //and only happens when more than one target is stepping on the trap at the moment it was triggered
- //(yet only the first mob standing on the trap will be captured) [Skotlex]
- return 0;
+ if (sg->interval == -1) {
+ switch (sg->unit_id) {
+ case UNT_ANKLESNARE: //These happen when a trap is splash-triggered by multiple targets on the same cell.
+ case UNT_SPIDERWEB:
+ case UNT_FIREPILLAR_ACTIVE:
+ return 0;
+ default:
+ if (battle_config.error_log)
+ ShowError("skill_unit_onplace_timer: interval error (unit id %x)\n", sg->unit_id);
+ return 0;
+ }
+ }
if ((ts = skill_unitgrouptickset_search(bl,sg,tick)))
{ //Not all have it, eg: Traps don't have it even though they can be hit by Heaven's Drive [Skotlex]