コード例 #1
0
    public ActorModule()
    {
        this.m_ActorLogicDataDic = new Dictionary <string, ActorLogicData>();
        List <ActorData> actorList      = ConfigCtrller.Instance.Actor.GetActors();
        string           actorUIDPrefix = "actor{0}";
        string           skillUIDPrefix = "skill{0}";
        int actorUIDCounter             = 1;
        int skillUIDCounter             = 1;

        foreach (var actorData in actorList)
        {
            List <SkillLogicDataBase> skillList = new List <SkillLogicDataBase>();
            foreach (var acotrSkillID in actorData.Skills)
            {
                ActorSkillData       actorSkillData    = ConfigCtrller.Instance.Skill.GetActorSkillDataByID(acotrSkillID);
                List <SkillDataBase> skillDataBaseList = new List <SkillDataBase>();
                foreach (var skillID in actorSkillData.SkillIDs)
                {
                    SkillDataBase skillDataBase = ConfigCtrller.Instance.Skill.GetSkillDataBaseByID(skillID);
                    skillDataBaseList.Add(skillDataBase);
                }
                SkillLogicDataBase skillLogicData = null;
                string             skillUID       = string.Format(skillUIDPrefix, skillUIDCounter);
                switch (actorSkillData.SkillType)
                {
                case SkillType.Normal:
                    break;

                case SkillType.First:
                case SkillType.Active:
                    skillLogicData = new ActiveSkillLogicData(skillUID, actorSkillData, skillDataBaseList);
                    break;

                case SkillType.Passive:
                    skillLogicData = new PassiveSkillLogicData(skillUID, actorSkillData, skillDataBaseList);
                    break;

                case SkillType.Trigger:
                    skillLogicData = new TriggerSkillLogicData(skillUID, actorSkillData, skillDataBaseList);
                    break;

                case SkillType.Weather:
                    skillLogicData = new WeatherSkillLogicData(skillUID, actorSkillData, skillDataBaseList);
                    break;

                default:
                    break;
                }
                skillUIDCounter++;
                if (skillLogicData != null)
                {
                    skillList.Add(skillLogicData);
                }
            }
            string         actorUID       = string.Format(actorUIDPrefix, actorUIDCounter++);
            ActorLogicData actorLogicData = new ActorLogicData(actorUID, actorData, skillList);
            this.m_ActorLogicDataDic.Add(actorUID, actorLogicData);
        }
        this.InitBattleArray();
    }
コード例 #2
0
    /// <summary>
    /// 初始化
    /// </summary>
    /// <param name="data"></param>
    public void InitEnemy(int id, GridData gridData)
    {
        ActorData actorData = ConfigCtrller.Instance.Actor.GetActorDataByID(id);
        List <SkillLogicDataBase> skillList = new List <SkillLogicDataBase>();

        foreach (var acotrSkillID in actorData.Skills)
        {
            ActorSkillData       actorSkillData    = ConfigCtrller.Instance.Skill.GetActorSkillDataByID(acotrSkillID);
            List <SkillDataBase> skillDataBaseList = new List <SkillDataBase>();
            foreach (var skillID in actorSkillData.SkillIDs)
            {
                SkillDataBase skillDataBase = ConfigCtrller.Instance.Skill.GetSkillDataBaseByID(skillID);
                skillDataBaseList.Add(skillDataBase);
            }
            SkillLogicDataBase skillLogicData = null;
            switch (actorSkillData.SkillType)
            {
            case SkillType.Normal:
                break;

            case SkillType.First:
            case SkillType.Active:
                skillLogicData = new ActiveSkillLogicData(actorSkillData, skillDataBaseList);
                break;

            case SkillType.Passive:
                skillLogicData = new PassiveSkillLogicData(actorSkillData, skillDataBaseList);
                break;

            case SkillType.Trigger:
                skillLogicData = new TriggerSkillLogicData(actorSkillData, skillDataBaseList);
                break;

            case SkillType.Weather:
                skillLogicData = new WeatherSkillLogicData(actorSkillData, skillDataBaseList);
                break;

            default:
                break;
            }
            if (skillLogicData != null)
            {
                skillList.Add(skillLogicData);
            }
        }
        ActorLogicData actorLogicData = new ActorLogicData(actorData, skillList);

        this.Init(actorLogicData);
    }
コード例 #3
0
ファイル: SkillConfig.cs プロジェクト: moto2002/NewPhoenix
 private void ParseActorSkillTable(DataTable actorSkillTable)
 {
     this.m_ActorSkillDic = new Dictionary <int, ActorSkillData>();
     foreach (DataRow row in actorSkillTable.Rows)
     {
         ActorSkillData data = new ActorSkillData()
         {
             ID          = int.Parse(row["ID"].ToString()),
             Name        = row["Name"].ToString(),
             Description = row["Description"].ToString(),
             Order       = byte.Parse(row["Order"].ToString())
         };
         string[] strArr = row["SkillIDs"].ToString().Split(ConfigConst.SplitChar);
         data.SkillIDs = new int[strArr.Length];
         for (int i = 0; i < strArr.Length; i++)
         {
             data.SkillIDs[i] = int.Parse(strArr[i]);
         }
         this.m_ActorSkillDic.Add(data.ID, data);
     }
 }
コード例 #4
0
 public PassiveSkillLogicData( ActorSkillData actorSkillData, List<SkillDataBase> skillList)
     : base(actorSkillData, skillList)
 {
 }
コード例 #5
0
 public PassiveSkillLogicData(string uid, ActorSkillData actorSkillData, List<SkillDataBase> skillList)
     : base(uid, actorSkillData, skillList)
 {
 }
コード例 #6
0
 public SkillTriggerBuffLogicData(string uid, ActorSkillData actorSkillData, List <SkillDataBase> skillList) :
     base(uid, actorSkillData, skillList)
 {
 }
コード例 #7
0
 public SkillTriggerBuffLogicData(ActorSkillData actorSkillData, List <SkillDataBase> skillList) :
     base(actorSkillData, skillList)
 {
 }
コード例 #8
0
 public SkillLogicDataBase(string uid, ActorSkillData actorSkillData, List<SkillDataBase> skillList)
 {
     this.UID = uid;
     this.m_ActorSkillData = actorSkillData;
     this.SkillList = skillList;
 }
コード例 #9
0
ファイル: SkillConfig.cs プロジェクト: moto2002/NewPhoenix
 private void ParseActorSkillTable(DataTable actorSkillTable)
 {
     this.m_ActorSkillDic = new Dictionary<int, ActorSkillData>();
     foreach (DataRow row in actorSkillTable.Rows)
     {
         ActorSkillData data = new ActorSkillData()
         {
             ID = int.Parse(row["ID"].ToString()),
             Name = row["Name"].ToString(),
             Description = row["Description"].ToString(),
             Order = byte.Parse(row["Order"].ToString())
         };
         string[] strArr = row["SkillIDs"].ToString().Split(ConfigConst.SplitChar);
         data.SkillIDs = new int[strArr.Length];
         for (int i = 0; i < strArr.Length; i++)
         {
             data.SkillIDs[i] = int.Parse(strArr[i]);
         }
         this.m_ActorSkillDic.Add(data.ID, data);
     }
 }
コード例 #10
0
 public PassiveSkillLogicData(string uid, ActorSkillData actorSkillData, List <SkillDataBase> skillList) :
     base(uid, actorSkillData, skillList)
 {
 }
コード例 #11
0
 public PassiveSkillLogicData(ActorSkillData actorSkillData, List <SkillDataBase> skillList) :
     base(actorSkillData, skillList)
 {
 }
コード例 #12
0
 public SkillLogicDataBase(ActorSkillData actorSkillData, List <SkillDataBase> skillList)
 {
     this.UID = DefaultValueConst.UID;
     this.m_ActorSkillData = actorSkillData;
     this.SkillList        = skillList;
 }
コード例 #13
0
 public SkillLogicDataBase(string uid, ActorSkillData actorSkillData, List <SkillDataBase> skillList)
 {
     this.UID = uid;
     this.m_ActorSkillData = actorSkillData;
     this.SkillList        = skillList;
 }
コード例 #14
0
 public WeatherSkillLogicData(string uid, ActorSkillData actorSkillData,List<SkillDataBase> skillList)
     : base(uid, actorSkillData,skillList)
 {
     this.m_Data = (WeatherSkillData)skillList[0];
 }
コード例 #15
0
 public WeatherSkillLogicData(ActorSkillData actorSkillData, List <SkillDataBase> skillList)
     : base(actorSkillData, skillList)
 {
     this.m_Data = (WeatherSkillData)skillList[0];
 }
コード例 #16
0
 public SkillTriggerBuffLogicData(string uid, ActorSkillData actorSkillData, List<SkillDataBase> skillList)
     : base(uid, actorSkillData, skillList)
 {
 }
コード例 #17
0
 public SkillTriggerBuffLogicData(ActorSkillData actorSkillData, List<SkillDataBase> skillList)
     : base(actorSkillData, skillList)
 {
 }
コード例 #18
0
 public SkillLogicDataBase(ActorSkillData actorSkillData, List<SkillDataBase> skillList)
 {
     this.UID = DefaultValueConst.UID;
     this.m_ActorSkillData = actorSkillData;
     this.SkillList = skillList;
 }