Beispiel #1
0
    public int ValCaused(BattleRoleData source, BattleRoleData target)
    {
        HSExportDmgModifity S = GetComponent <HSExportDmgModifity>();

        if (S)
        {
            //int level = source.ThisBasicRoleProperty().LEVEL;
            return(S.AllResult(source, target, AttributeData.MT, SkillGrade));
        }
        return(source.ThisBasicRoleProperty().ReadRA(AttributeData.MT));
    }
Beispiel #2
0
    public virtual int dmgCaused(BattleRoleData source, BattleRoleData target)
    {
        SkillKind     kind = SkillKind.Physical;
        AttributeData Atb  = AttributeData.AT;
        HSkilInfo     hsi  = GetComponent <HSkilInfo>();

        if (hsi)
        {
            kind = hsi.kind;
            if (hsi.UseAppointedAtb)
            {
                Atb = hsi.Atb;
            }
            else
            {
                if (kind == SkillKind.Physical)
                {
                    Atb = AttributeData.AT;
                }
                else if (kind == SkillKind.Elemental)
                {
                    Atb = AttributeData.MT;
                }
                else if (kind == SkillKind.Arcane)
                {
                    Atb = AttributeData.MT;
                }
            }
        }
        int atk = source.ThisBasicRoleProperty().ReadRA(Atb);

        if (atk <= 0)
        {
            atk = SDConstants.MinDamageCount;
        }
        HSExportDmgModifity S = HSModifity;

        if (S)
        {
            atk = S.AllResult(source, target, kind, SkillGrade);
        }

        atk = ValChangedByCharacterType(source, target, atk);

        return(atk);
    }
    public void addSkill(OneSkill skill, Transform trans, string heroId)
    {
        Transform s;

        if (!skill.UseAppointedPrefab)
        {
            if (skill.SkillFunctionID < 0)
            {
                return;
            }
            int index = skill.SkillFunctionID;
            s = Instantiate(SDL.AllSkillList[index]) as Transform;
        }
        else
        {
            s = Instantiate(skill.SkillPrefab) as Transform;
            s.GetComponent <Button>().interactable = true;
            HSExportDmgModifity HSE = s.GetComponent <HSExportDmgModifity>();
            if (HSE)
            {
                HSE.BCPerformDataUsingRA    = skill.DataSet.BCPerformDataUsingRA;
                HSE.PDUsingRA_PerLevel      = skill.DataSet.PDUsingRA_PerLevel;
                HSE.PDUsingRA_PerSkillGrade = skill.DataSet.PDUsingRA_PerSkillGrade;
            }
            SkillFunction sf = s.GetComponent <SkillFunction>();
            if (sf)
            {
                sf.UseState       = skill.DataSet.UseState;
                sf._standardState = skill.DataSet._standardState;
            }
        }

        s.GetComponentInChildren <HSkilInfo>().HSDetail = skill;
        s.SetParent(trans);
        s.GetComponent <RectTransform>().anchoredPosition = Vector2.zero;
        s.localScale = Vector3.one;
        HSkilInfo info = s.GetComponent <HSkilInfo>();

        info.breed = skill.Breed;
        if (skill.Kind != SkillKind.End)
        {
            info.kind = skill.Kind;
        }
        if (skill.SkillAoe != SDConstants.AOEType.End)
        {
            info.AOEType = skill.SkillAoe;
        }
        if (skill.MpTpAddType != SDConstants.AddMpTpType.End)
        {
            info.AfterwardsAddType = skill.MpTpAddType;
        }
        SkillFunction basicSkillController = s.GetComponent <SkillFunction>();

        if (skill.Aim != SkillAim.End)
        {
            basicSkillController.ThisSkillAim = skill.Aim;
        }

        basicSkillController.SkillGrade = skill.lv;
        basicSkillController.IsOmega    = skill.isOmegaSkill;


        if (skill.BulletImg != null && skill.BulletImg != "")
        {
            basicSkillController.bullet.GetComponent <Image>().sprite
                = Resources.Load <Sprite>("Sprites/" + skill.BulletImg);
        }
        //判断是否为稀有角色



        //
        basicSkillController.initIcon();
    }