diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-10-06 15:53:40 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-10-06 15:53:40 +0000 |
commit | 10e194b9dad274ca749b2470b24e487968935304 (patch) | |
tree | 2e88a1a109d9ce45056377288f4d18f315e1843e /src | |
parent | cf10605ca4f989fdffaf12c06006a8f8fa14c383 (diff) | |
download | hercules-10e194b9dad274ca749b2470b24e487968935304.tar.gz hercules-10e194b9dad274ca749b2470b24e487968935304.tar.bz2 hercules-10e194b9dad274ca749b2470b24e487968935304.tar.xz hercules-10e194b9dad274ca749b2470b24e487968935304.zip |
- Disabling status abnormalities will now reset a mob's target.
- Mob morphing also resets their target now.
- Monk combos no longer can ignore skill delay (delay skill for all their combo-related skills is ASPD)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8945 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r-- | src/map/clif.c | 10 | ||||
-rw-r--r-- | src/map/mob.c | 6 |
2 files changed, 7 insertions, 9 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 35ade7ce3..10b15c23d 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -9736,15 +9736,7 @@ void clif_parse_UseSkillToId(int fd, struct map_session_data *sd) { if (sd->ud.skilltimer != -1) {
if (skillnum != SA_CASTCANCEL)
return;
- } else if (DIFF_TICK(tick, sd->ud.canact_tick) < 0 &&
- // allow monk combos to ignore this delay [celest]
- !(sd->sc.count && sd->sc.data[SC_COMBO].timer!=-1 &&
- (skillnum == MO_EXTREMITYFIST ||
- skillnum == MO_CHAINCOMBO ||
- skillnum == MO_COMBOFINISH ||
- skillnum == CH_PALMSTRIKE ||
- skillnum == CH_TIGERFIST ||
- skillnum == CH_CHAINCRUSH))) {
+ } else if (DIFF_TICK(tick, sd->ud.canact_tick) < 0) {
clif_skill_fail(sd, skillnum, 4, 0);
return;
}
diff --git a/src/map/mob.c b/src/map/mob.c index da0e28ea5..cc6a59cb1 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -1076,7 +1076,10 @@ static int mob_ai_sub_hard(struct block_list *bl,va_list ap) // Abnormalities if((md->sc.opt1 > 0 && md->sc.opt1 != OPT1_STONEWAIT) || md->sc.data[SC_BLADESTOP].timer != -1) + { //Should reset targets. + md->target_id = md->attacked_id = 0; return 0; + } if (md->sc.count && md->sc.data[SC_BLIND].timer != -1) view_range = 3; @@ -2331,6 +2334,9 @@ int mob_class_change (struct mob_data *md, int class_) if(md->lootitem == NULL && md->db->status.mode&MD_LOOTER) md->lootitem=(struct item *)aCalloc(LOOTITEM_SIZE,sizeof(struct item)); + //Targets should be cleared no morph + md->target_id = md->attacked_id = 0; + //Need to update name display. clif_charnameack(0, &md->bl); |