//隐藏图标 -- 给新的动画添加 wxl public IEnumerator HideIcon(int pos, float delay, string name) { Debug.Log(" hide icon = " + pos + " name = " + name); foreach (DragonAoYiItem tI in items) { if (tI.Icon != null && tI.Icon.spriteName != null) { { int tAY = int.Parse(tI.Icon.spriteName); AoYiData tAYData = Core.Data.dragonManager.getAoYiData(tAY); if (tAYData.name == name) { tI.gameObject.SetActive(false); yield return(new WaitForSeconds(delay)); AoYiList.GetComponent <UIGrid> ().Reposition(); } } } } // if(pos >= 0 && pos < items.Length) { // items[pos].gameObject.SetActive(false); // yield return new WaitForSeconds(delay); // //wxl // SlideUsedOne(pos); // } }
// 提升己方奥义触发几率 public void improveAoYiPossibility() { if (_AoYiItem._type == BT_AoYi.ImproveAoYi) { AoYiData tD = Core.Data.dragonManager.getAoYiData(_AoYiItem._ID); List <float[]> tLi = _AoYiItem._effect; _AoYiItem._effect = new List <float[]> (); foreach (float[] arrItem in tLi) { float[] tF = new float[2] { Formularf(arrItem [0]), arrItem[1] }; tF[0] = Formularf(arrItem [0]); tF[1] = arrItem[1]; _AoYiItem._effect.Add(tF); } //不知道为什么 还会引用到 config data // foreach(float[] arrItem in _AoYiItem._effect) { // ConsoleEx.Write (" arrItem === " + arrItem[0] + " , " + arrItem[1] + " iddd == " + _AoYiItem._ID,"yellow" ); // arrItem[0] = Formularf(arrItem[0]); // arrItem[0] = arrItem[0] > 100 ? 100 : arrItem[0];//保证概率不超过100 // // } } }
public List <AoYi> getAllAoYi() { List <AoYi> aoYiList = new List <AoYi>(); List <AoYiData> aoYiDataList = new List <AoYiData>(AoyiConfig.Values); for (int i = 0; i < aoYiDataList.Count; i++) { AoYiData aoYiData = aoYiDataList[i]; AoYi aoYi = null; foreach (AoYi aoyiTemp in this.AoYiDic.Values) { if (aoYiData.ID == aoyiTemp.AoYiDataConfig.ID) { aoYi = aoyiTemp; break; } } if (aoYi == null) { aoYi = new AoYi(new RTAoYi(aoYiData.ID), aoYiData); aoYiList.Insert(aoYiList.Count, aoYi); } else { aoYiList.Insert(0, aoYi); } } return(aoYiList); }
public AoYi(RTAoYi runtime, DragonManager manager) { Utils.Assert(runtime == null || manager == null, "Invalidate argument in HugeBeast Class Constructor"); RTData = runtime; config = manager.getAoYiData(RTData.num); Utils.Assert(config == null, "Aoyi Config data can't be initialized. AoYi Id = " + RTData.num.ToString()); }
public AoYiData getAoYiData(int num) { AoYiData result = null; if (!AoyiConfig.TryGetValue(num, out result)) { result = null; } return(result); }
public BattleAoYi(Battle_AoYi[] data, DragonManager dragonMgr, SkillManager skillMgr) { //初始化 _AoYi = new Dictionary <int, CAoYi>(); AoYiNumList = new List <int>(); if (data != null && dragonMgr != null && skillMgr != null) { foreach (Battle_AoYi item in data) { if (item != null) { AoYiNumList.Add(item.num); // AoYiData config = dragonMgr.getAoYiData(item.num); AoYiData config = Core.Data.dragonManager.getAoYiData(item.num); AoYiData tConfig = new AoYiData(); tConfig.basic = config.basic; tConfig.description = config.description; tConfig.dragonType = config.dragonType; tConfig.effect = new List <float[]> (); for (int i = 0; i < config.effect.Count; i++) { float[] tI = new float[2]; tI = config.effect [i]; tConfig.effect.Add(tI); // tConfig.effect.Add (config.effect[i]); } tConfig.efinfo = config.efinfo; tConfig.ef_first = config.ef_first; tConfig.enhanced = config.enhanced; tConfig.exp = config.exp; tConfig.growth = config.growth; tConfig.ID = config.ID; tConfig.info = config.info; tConfig.maxLevel = config.maxLevel; tConfig.name = config.name; tConfig.skillID = config.skillID; tConfig.type = config.type; tConfig.unlockLevel = config.unlockLevel; _AoYi[item.num] = new CAoYi(tConfig, item.lv, item.num, skillMgr); } } } }
//装备奥义 changed by wxl void equipAoYiCompleted(AoYiData aoYiData) { Core.Data.dragonManager.equipAoYiCompletedDelegate = equipAoYiCompleted; foreach (AoYi aoYi in Core.Data.dragonManager.AoYiDic.Values) { if (aoYi.AoYiDataConfig.ID == aoYiData.ID) { ComLoading.Open(); if (aoYi.Pos != -1) { orgAYPos = aoYi.Pos; } Core.Data.dragonManager.equipAoYiRequest(aoYi.ID, currentEquipPos + 1); break; } } equipAoYiData = aoYiData; }
public BT_AoYi(AoYiData aoyiConfig, int ID, SkillManager skillMgr) { if (aoyiConfig == null) { throw new DragonException("AoYi configure is empty."); } if (skillMgr == null) { throw new DragonException("Skill Manager is empty."); } this._ID = ID; this._Name = aoyiConfig.name; this._effect = aoyiConfig.effect; this._efinfo = aoyiConfig.efinfo; this._skillOp = aoyiConfig.skillID; this._type = aoyiConfig.type; this._basic = aoyiConfig.basic; this._growth = aoyiConfig.growth; this._SkillOpConfig = skillMgr.getSkillOpDataConfig(this._skillOp); }
public CAoYi(AoYiData config, int lv, int Id, SkillManager skillMgr) { this._AoYiItem = new BT_AoYi(config, Id, skillMgr); this._Lv = lv; this._used = 0; }
//重置红点的位置 private void resetRedPoint(string aYName = null, bool resetAoYiList = false) { //位置 int count = Att_AoYiList.items.Length; int posNum = -1; for (int i = 0; i < count; i++) { if (Att_AoYiList.items [i] != null) { if (Att_AoYiList.items [i].Icon.spriteName != null) { if (Att_AoYiList.items [i].gameObject.activeInHierarchy == true) { int tAoYiNum = int.Parse(Att_AoYiList.items [i].Icon.spriteName); AoYiData tData = Core.Data.dragonManager.getAoYiData(tAoYiNum); if (tData != null && tData.name == aYName) { posNum += (i + 1); break; } } else { posNum--; } } } } if (posNum == -1) { posNum = 0; } if (WhoAttack) { Att_Explore.transform.localPosition = initAttRedPosition + (40 * posNum) * Vector3.right; } else { Def_Explore.transform.localPosition = initDefRedPosition + (40 * posNum) * Vector3.right; } // Debug.Log (" attt pos === " +Att_Explore.transform.localPosition ); if (resetAoYiList) { ResetAYList(); // Att_AoYiList.AoYiList.transform.localPosition = initAttAoYiPosition; // Att_AoYiList.AoYiList.transform.localPosition = initAttAoYiPosition; // Def_AoYiList.AoYiList.transform.localPosition = initDefAoYiPosition; } //颜色 UISprite sprite = Att_Explore.GetComponent <UISprite>(); sprite.color = Color.white; sprite = Def_Explore.GetComponent <UISprite>(); sprite.color = Color.white; //大小 Att_Explore.transform.localScale = Vector3.one; Def_Explore.transform.localScale = Vector3.one; // Att_Explore.gameObject.SetActive(false); Def_Explore.gameObject.SetActive(false); //龙要隐藏 BigDragon.SetActive(false); }
BanBattleProcess.Item AddSkillItem(int skillType, int attackIndex, int defenseIndex, int attackBP, int defenseBP, int attackAP, int defenseAP, int extra_1, int extra_2, int extra_3, int skillId, int leftAp, CMsgHeader item = null) { BanBattleProcess.Item proItem = null; //判定是SkillID 还是AoYiID //非常恶心的判定 if (isAoYiSkill(skillId)) { AoYiData aoyiCfg = Core.Data.dragonManager.getAoYiData(skillId); int pos = getAoYiSkillPos(skillId, attackIndex == extra_1); proItem = new BanBattleProcess.Item(0, 0, attackIndex, defenseIndex, attackBP, defenseBP, attackAP, defenseAP, BanBattleProcess.Period.DragonAoYi, extra_1, extra_2, extra_3, pos, leftAp, aoyiCfg.name, item); proItem.aoyiConfig = aoyiCfg; BanBattleProcess.Instance.list_Item.Add(proItem); return(proItem); } else { int sAction = GetSkillAction(extra_1, skillId); SkillData data = Core.Data.skillManager.getSkillDataConfig(skillId); string skillname = ""; if (data != null) { skillname = data.name; } CSkill_Type cskType = CSkill_Type.Normal; if (System.Enum.IsDefined(typeof(CSkill_Type), skillType)) { cskType = (CSkill_Type)skillType; } if (cskType == CSkill_Type.Anger) { proItem = new BanBattleProcess.Item(data.param.num, 0, attackIndex, defenseIndex, attackBP, defenseBP, attackAP, defenseAP, BanBattleProcess.Period.AngrySkill, extra_1, extra_2, extra_3, sAction, leftAp, skillname, item); } else if (cskType == CSkill_Type.Normal) { proItem = new BanBattleProcess.Item(0, 0, attackIndex, defenseIndex, attackBP, defenseBP, attackAP, defenseAP, BanBattleProcess.Period.NormalSkill, extra_1, extra_2, extra_3, sAction, leftAp, skillname, item); } else if (cskType == CSkill_Type.Die) { proItem = new BanBattleProcess.Item(0, 0, attackIndex, defenseIndex, attackBP, defenseBP, attackAP, defenseAP, BanBattleProcess.Period.DieSkill, extra_1, extra_2, extra_3, sAction, leftAp, skillname, item); } else if (cskType == CSkill_Type.AfterWar) { proItem = new BanBattleProcess.Item(0, 0, attackIndex, defenseIndex, attackBP, defenseBP, attackAP, defenseAP, BanBattleProcess.Period.AfterBattle, extra_1, extra_2, extra_3, sAction, leftAp, skillname, item); } if (proItem != null) { proItem.skillType = cskType; proItem.skillId = skillId; BanBattleProcess.Instance.list_Item.Add(proItem); } } return(proItem); }
public AoYi(RTAoYi runtime, AoYiData config) { this.RTData = runtime; this.config = config; }