Exemplo n.º 1
0
 public override void ApplyEffect(SkillImpact impact, Entity target, float multiple)
 {
     if (target is LifeBody)
     {
         (target as LifeBody).HP -= Damage * multiple;
     }
 }
Exemplo n.º 2
0
 public override void ApplyEffect(SkillImpact impact, float multiple)
 {
     GameObject.FindWithTag("VirtualCamera").GetComponent <CinemachineVirtualCamera>().GetCinemachineComponent <CinemachineBasicMultiChannelPerlin>().m_AmplitudeGain = multiple * ShakeStrength;
     impact.WaitForSecond(() =>
     {
         GameObject.FindWithTag("VirtualCamera").GetComponent <CinemachineVirtualCamera>().GetCinemachineComponent <CinemachineBasicMultiChannelPerlin>().m_AmplitudeGain = 0;
     }, ShakeTime);
 }
 public override void ApplyEffect(SkillImpact impact, Entity target, float multiple)
 {
     if (target is LifeBody)
     {
         (target as LifeBody).HP -= Damage * multiple;
         UnityEngine.Debug.Log(target.name + " Damaged");
     }
 }
Exemplo n.º 4
0
    public static SkillEffect AllocSkillEffect(SkillEffectInitParam param)
    {
        System.Type paramType = param.GetType();

        SkillEffect result = null;

        if (paramType == typeof(SkillBuffInitParam))
        {
            result = new SkillBuff();
        }
        else if (paramType == typeof(SkillImpactInitParam))
        {
            result = new SkillImpact();
        }
        // else if branch.
        else
        {
            ErrorHandler.Parse(ErrorCode.LogicError, "allocate skill effect failed: invalid skilleffect type");
        }

        return(result);
    }
Exemplo n.º 5
0
 public override void ApplyEffect(SkillImpact impact, float multiple)
 {
     impact.ImpactRadius *= multiple;
 }
Exemplo n.º 6
0
 public abstract void ApplyEffect(SkillImpact impact, Entity target, float multiple);
Exemplo n.º 7
0
 public SkillImpactMessage(SkillImpact impact, params SkillEffectData[] skillEffects) : base(impact.Creator)
 {
     Impact       = impact;
     SkillEffects = skillEffects;
 }
Exemplo n.º 8
0
 public override void ApplyEffect(SkillImpact impact, Entity target, float multiple)
 {
     //target.GetComponent<CustomRigidBody>().AddForce((target.transform.position - impact.transform.position).ClipY().normalized * Impulse, ForceMode.Impulse);
     target.GetComponent <SkillController>().MovementSkill.KnockBack((target.transform.position - impact.transform.position).ClipY().normalized *Impulse *multiple);
 }
Exemplo n.º 9
0
 public override void ApplyEffect(SkillImpact impact, Entity target, float multiple)
 {
     return;
 }
Exemplo n.º 10
0
 public SkillImpactMessage(SkillImpact impact, params EffectInstance[] effects) : base(impact.Creator)
 {
     Impact  = impact;
     Effects = effects;
 }