示例#1
0
 public PassiveSkill(int id, PoolObjHandle <ActorRoot> root)
 {
     this.sourceActor = root;
     base.SkillID     = id;
     this.cfgData     = GameDataMgr.skillPassiveDatabin.GetDataByKey((long)id);
     if (this.cfgData != null)
     {
         this.Init();
     }
 }
示例#2
0
 private void AddActionsFromPassiveSkill(DictionaryView <string, AGE.Action> actions, int passiveSkillID)
 {
     if (passiveSkillID > 0)
     {
         ResSkillPassiveCfgInfo dataByKey = GameDataMgr.skillPassiveDatabin.GetDataByKey((long)passiveSkillID);
         if (dataByKey != null)
         {
             this.AddAction(actions, dataByKey.szActionName);
         }
     }
 }
示例#3
0
 public virtual void Init(PoolObjHandle <ActorRoot> _actor, PassiveSkill _skill)
 {
     this.sourceActor  = _actor;
     this.passiveSkill = _skill;
     this.cfgData      = _skill.cfgData;
     this.deltaTime    = 0;
     for (int i = 0; i < this.conditions.Count; i++)
     {
         this.conditions[i].Init(this.sourceActor, this, ref this.cfgData.astPassiveConditon[i]);
     }
     this.SetEventParam();
 }
示例#4
0
 public virtual void Init(PoolObjHandle <ActorRoot> _actor, PassiveSkill _skill)
 {
     this.sourceActor = _actor;
     this.triggerActor.Release();
     this.passiveSkill = _skill;
     this.cfgData      = _skill.cfgData;
     this.deltaTime    = 0;
     for (int i = 0; i < this.conditions.get_Count(); i++)
     {
         PassiveCondition passiveCondition = this.conditions.get_Item(i);
         passiveCondition.Init(this.sourceActor, this, ref this.cfgData.astPassiveConditon[i]);
     }
     this.SetEventParam();
 }
示例#5
0
    public void AnalysePassiveSkill(ref ActorPreloadTab loadInfo, int passiveSkillID)
    {
        if (passiveSkillID <= 0)
        {
            return;
        }
        ResSkillPassiveCfgInfo dataByKey = GameDataMgr.skillPassiveDatabin.GetDataByKey((long)passiveSkillID);

        if (dataByKey == null)
        {
            return;
        }
        if (!this.passiveSkillList.Contains((long)passiveSkillID))
        {
            this.passiveSkillList.Add((long)passiveSkillID);
        }
        AssetLoadBase assetLoadBase = default(AssetLoadBase);

        assetLoadBase.assetPath = StringHelper.UTF8BytesToString(ref dataByKey.szActionName);
        string checkerKey = this.GetCheckerKey(assetLoadBase.assetPath, loadInfo.MarkID);

        if (!this.ageCheckerSet.ContainsKey(checkerKey))
        {
            loadInfo.ageActions.Add(assetLoadBase);
            this.ageCheckerSet.Add(checkerKey, true);
        }
        if (dataByKey.dwPassiveEventType == 8u)
        {
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam4);
        }
        else if (dataByKey.dwPassiveEventType == 3u || dataByKey.dwPassiveEventType == 7u)
        {
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam1);
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam2);
        }
        else if (dataByKey.dwPassiveEventType == 9u)
        {
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam3);
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam4);
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam5);
        }
        else if (dataByKey.dwPassiveEventType == 10u)
        {
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam3);
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam4);
            this.AnalyseSkillCombine(ref loadInfo, dataByKey.iPassiveEventParam5);
        }
    }
示例#6
0
 public void AnalysePassiveSkill(ref ActorPreloadTab loadInfo, int passiveSkillID)
 {
     if (passiveSkillID > 0)
     {
         ResSkillPassiveCfgInfo dataByKey = GameDataMgr.skillPassiveDatabin.GetDataByKey(passiveSkillID);
         if (dataByKey != null)
         {
             AssetLoadBase item = new AssetLoadBase {
                 assetPath = StringHelper.UTF8BytesToString(ref dataByKey.szActionName)
             };
             string checkerKey = this.GetCheckerKey(item.assetPath, loadInfo.MarkID);
             if (!this.ageCheckerSet.ContainsKey(checkerKey))
             {
                 loadInfo.ageActions.Add(item);
                 this.ageCheckerSet.Add(checkerKey, true);
             }
         }
     }
 }