From 871f05609ec03cad93773112c3324ba7b0488388 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 23 Jul 2016 03:12:38 +0300 Subject: Allow skill source and destination particle effects depend on skill level. --- src/being/being.cpp | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'src/being') diff --git a/src/being/being.cpp b/src/being/being.cpp index 73b386467..53db29cff 100644 --- a/src/being/being.cpp +++ b/src/being/being.cpp @@ -1028,14 +1028,20 @@ void Being::handleSkillCasting(Being *restrict const victim, setAction(BeingAction::CAST, skillId); - skillDialog->playCastingSrcEffect(skillId, this); - skillDialog->playCastingDstEffect(skillId, victim); - const SkillData *restrict const data = skillDialog->getSkillDataByLevel( skillId, skillLevel); + if (data) + { + effectManager->triggerDefault(data->castingSrcEffectId, + this, + paths.getIntValue("skillCastingSrcEffectId")); + effectManager->triggerDefault(data->castingDstEffectId, + victim, + paths.getIntValue("skillCastingDstEffectId")); fireMissile(victim, data->castingParticle); + } } void Being::handleSkill(Being *restrict const victim, @@ -1050,10 +1056,15 @@ void Being::handleSkill(Being *restrict const victim, const SkillData *restrict const data = skill ? skill->getData1(skillLevel) : nullptr; if (data) + { + effectManager->triggerDefault(data->srcEffectId, + this, + paths.getIntValue("skillSrcEffectId")); + effectManager->triggerDefault(data->dstEffectId, + victim, + paths.getIntValue("skillDstEffectId")); fireMissile(victim, data->particle); - - skillDialog->playSrcEffect(skillId, this); - skillDialog->playDstEffect(skillId, victim); + } if (this != localPlayer && skill) { -- cgit v1.2.3-70-g09d2