bool IsSkillLevelUp(COM_Skill skill) { if (cSkill != null && cSkill.skillID_ == skill.skillID_) { if (cSkill.skillLevel_ < skill.skillLevel_) { cSkill = skill; return(true); } } cSkill = skill; // for(int i =0;i<GamePlayer.Instance.SkillInsts.Count;i++) // { // if(GamePlayer.Instance.SkillInsts[i].skillID_ == skill.skillID_ ) // { // COM_Skill cSkill = GamePlayer.Instance.SkillInsts[i]; // if(skill.skillLevel_>cSkill.skillLevel_) // { // return true; // } // // } // } return(false); }
public void UpdateZhufuSkill(COM_Skill skill) { if (GuildMember == null) { return; } if (ZhuFuSkills == null || ZhuFuSkills.Count == 0) { ZhuFuSkills.Add(skill); if (FamilyMyDataEvent != null) { FamilyMyDataEvent(1); } return; } for (int i = 0; i < ZhuFuSkills.Count; i++) { if (ZhuFuSkills[i].skillID_ == skill.skillID_) { ZhuFuSkills[i] = skill; if (FamilyMyDataEvent != null) { FamilyMyDataEvent(1); } return; } } ZhuFuSkills.Add(skill); if (FamilyMyDataEvent != null) { FamilyMyDataEvent(1); } }
public void CalcBabyEquipSkill() { suitSkill = null; Dictionary <int, COM_Skill> skillStatus = new Dictionary <int, COM_Skill>(); COM_Skill skill = null; for (int i = 0; i < equips_.Length; ++i) { if (equips_[i] != null) { //skillid if (equips_[i].durability_ != 0) { if (!skillStatus.ContainsKey((int)equips_[i].durability_)) { skill = new COM_Skill(); skill.skillID_ = (uint)equips_[i].durability_; skill.skillLevel_ = (uint)equips_[i].durabilityMax_; skill.skillExp_ = 1; skillStatus.Add(equips_[i].durability_, skill); } else { skillStatus[equips_[i].durability_].skillExp_++; } } } } foreach (int skillId in skillStatus.Keys) { if (skillStatus[skillId].skillExp_ == 4) { suitSkill = skillStatus[skillId]; suitSkill.skillLevel_ = skillStatus[skillId].skillLevel_ + 1; isHighestSuitSkill = true; } else if (skillStatus[skillId].skillExp_ == 3) { suitSkill = skillStatus[skillId]; isHighestSuitSkill = false; } } }
public static void ParseData(string content, string fileName) { metaData = new Dictionary <int, BabyData> (); CSVParser parser = new CSVParser(); if (!parser.Parse(content)) { ClientLog.Instance.LogError("BabyData" + ConfigLoader.Instance.csvext + "解析错误"); return; } int recordCounter = parser.GetRecordCounter(); BabyData data = null; for (int i = 0; i < recordCounter; ++i) { data = new BabyData(); data._Id = parser.GetInt(i, "ID"); data._AssetsID = parser.GetInt(i, "AssetsID"); data._Name = parser.GetString(i, "Name"); data._Desc = parser.GetString(i, "Desc"); data._ResIcon = parser.GetString(i, "Icon"); data._BIG_Strength = parser.GetInt(i, "BIG_Strength"); data._BIG_Magic = parser.GetInt(i, "BIG_Magic"); data._BIG_Power = parser.GetInt(i, "BIG_Power"); data._BIG_Speed = parser.GetInt(i, "BIG_Speed"); data._BIG_Stama = parser.GetInt(i, "BIG_Stama"); data._RaceIcon = parser.GetString(i, "RaceIcon"); data._SkillNum = parser.GetInt(i, "SkillNum"); data._Fire = parser.GetInt(i, "Fire"); data._Water = parser.GetInt(i, "Water"); data._Wind = parser.GetInt(i, "Wind"); data._Ground = parser.GetInt(i, "Ground"); data._Tpye = parser.GetInt(i, "Type"); data._IsBoss = (parser.GetInt(i, "TwiceAction") == 2); data._Pet = parser.GetInt(i, "Pet"); data._PetProbability = parser.GetInt(i, "PetProbability"); data._Location = parser.GetString(i, "Location"); data._ReformMonster = parser.GetInt(i, "ReformMonster"); data._ReformItem = parser.GetString(i, "ReformItem"); data._PT_Agile = parser.GetInt(i, "PT_Agile"); data._PT_Attack = parser.GetInt(i, "PT_Attack"); data._PT_Defense = parser.GetInt(i, "PT_Defense"); data._PT_Mp = parser.GetInt(i, "PT_Mp"); data._PT_Hp = parser.GetInt(i, "PT_Hp"); data._RaceType = (RaceType)Enum.Parse(typeof(RaceType), parser.GetString(i, "Race")); data._PetQuality = (PetQuality)Enum.Parse(typeof(PetQuality), parser.GetString(i, "PetQuality")); string skill = parser.GetString(i, "DefalutSkill"); string[] skill1 = skill.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); COM_Skill skillInst = null; for (int j = 0; j < skill1.Length; ++j) { string[] skill2 = skill1[j].Split(':'); skillInst = new COM_Skill(); skillInst.skillID_ = uint.Parse(skill2[0]); skillInst.skillLevel_ = uint.Parse(skill2[1]); data.skills_.Add(skillInst); } if (metaData.ContainsKey(data._Id)) { ClientLog.Instance.LogError("BabyData" + ConfigLoader.Instance.csvext + "ID重复"); return; } metaData[data._Id] = data; } parser.Dispose(); parser = null; }
public static void ParseData(string content, string fileName) { metaData = new Dictionary <int, EmployeeData> (); CSVParser parser = new CSVParser(); if (!parser.Parse(content)) { ClientLog.Instance.LogError("EmployeeData" + ConfigLoader.Instance.csvext + "解析错误"); return; } int recordCounter = parser.GetRecordCounter(); EmployeeData data = null; for (int i = 0; i < recordCounter; ++i) { data = new EmployeeData(); data.id_ = parser.GetInt(i, "ID"); data.name_ = parser.GetString(i, "Name"); data.asset_id = parser.GetInt(i, "AssetID"); data.desc_ = parser.GetString(i, "Decs"); data.jobLevel_ = parser.GetInt(i, "JobLv"); data.stama_ = parser.GetInt(i, "PT_Stama"); data.strength_ = parser.GetInt(i, "PT_Strength"); data.power_ = parser.GetInt(i, "PT_Power"); data.speed_ = parser.GetInt(i, "PT_Speed"); data.magic_ = parser.GetInt(i, "PT_Magic"); data.hp_ = parser.GetInt(i, "PT_Hp"); data.mp_ = parser.GetInt(i, "PT_Mp"); data.attack_ = parser.GetInt(i, "PT_Attack"); data.defense_ = parser.GetInt(i, "PT_Defense"); data.agile_ = parser.GetInt(i, "PT_Agile"); data.quality_ = (QualityColor)Enum.Parse(typeof(QualityColor), parser.GetString(i, "Quality")); string profession = parser.GetString(i, "JobType"); if (!string.IsNullOrEmpty(profession)) { data.professionType_ = (JobType)Enum.Parse(typeof(JobType), profession); } data.evolutionNum = parser.GetString(i, "EvolutionNum").Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); string skill = parser.GetString(i, "DefalutSkill"); string[] skill1 = skill.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); COM_Skill skillInst = null; for (int j = 0; j < skill1.Length; ++j) { string[] skill2 = skill1[j].Split(':'); skillInst = new COM_Skill(); skillInst.skillID_ = uint.Parse(skill2[0]); skillInst.skillLevel_ = uint.Parse(skill2[1]); data.skills_.Add(skillInst); } data.skillLevelNeedNum = parser.GetString(i, "Skill_levelup").Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); if (metaData.ContainsKey(data.id_)) { ClientLog.Instance.LogError("EmployeeData" + ConfigLoader.Instance.csvext + "ID重复"); return; } metaData[data.id_] = data; } parser.Dispose(); parser = null; }
private void UpdateInfo(int id) { BlessingData bData = BlessingData.GatData(id); if (bData == null) { return; } nameLab.text = bData._Name; HeadIconLoader.Instance.LoadIcon(bData._Icon, icon); if (!_icons.Contains(bData._Icon)) { _icons.Add(bData._Icon); } int goddessLevel = FamilySystem.instance.GuildData.buildings_[(int)GuildBuildingType.GBT_Goddess - 1].level_; maxLevelLab.text = (goddessLevel * 2).ToString(); COM_Skill skillInst = FamilySystem.instance.GetZhuFuSkill(bData._SkillId); if (skillInst == null) { SkillData sData = SkillData.GetData(bData._SkillId, 1); if (sData == null) { return; } levelLab.text = LanguageManager.instance.GetValue("mainbaby_Level") + "1"; barExpLab.text = "0/" + sData._Proficiency; bar.value = 0; barTop.gameObject.SetActive(false); nowpropLab.text = LanguageManager.instance.GetValue("dangqianprop") + sData._Desc; SkillData nextSkillData = SkillData.GetData(bData._SkillId, 2); if (nextSkillData == null) { nextpropLab.text = ""; } else { nextpropLab.text = LanguageManager.instance.GetValue("xiajiprop") + nextSkillData._Desc; } } else { SkillData sData = SkillData.GetData(bData._SkillId, (int)skillInst.skillLevel_); if (sData == null) { levelUpBtn.isEnabled = false; return; } levelLab.text = LanguageManager.instance.GetValue("mainbaby_Level") + skillInst.skillLevel_; barExpLab.text = skillInst.skillExp_ + "/" + sData._Proficiency; barTop.gameObject.SetActive(true); if (skillInst.skillExp_ == 0) { barTop.gameObject.SetActive(false); } bar.value = (float)skillInst.skillExp_ / (float)sData._Proficiency; nowpropLab.text = LanguageManager.instance.GetValue("dangqianprop") + sData._Desc; SkillData nextSkillData = SkillData.GetData(bData._SkillId, (int)(skillInst.skillLevel_ + 1)); if (nextSkillData == null) { nextpropLab.text = ""; } else { nextpropLab.text = LanguageManager.instance.GetValue("xiajiprop") + nextSkillData._Desc; } } moneyLab.text = _familyLearnSkillPay.ToString(); maxMoneyLab.text = GamePlayer.Instance.GetIprop(PropertyType.PT_Money).ToString(); levelUpBtn.isEnabled = true; if (skillInst != null) { int level = FamilySystem.instance.GuildData.buildings_[(int)GuildBuildingType.GBT_Goddess - 1].level_; if (level * 2 <= skillInst.skillLevel_) { levelUpBtn.isEnabled = false; } } if (GamePlayer.Instance.GetIprop(PropertyType.PT_Money) < _familyLearnSkillPay) { levelUpBtn.isEnabled = false; } }
public void SetSelectedSkill(int skillId) { if (Battle.Instance.useItem_ != null) { if ((Battle.Instance.useItem_.id_ == Battle.Instance.itemId_) && Battle.Instance.useItem_.skillId_ != skillId) { Battle.Instance.itemId_ = 0; } Battle.Instance.useItem_ = null; } currentSkillId_ = skillId; //从玩家身上获取 COM_Skill skillInst = GamePlayer.Instance.GetSkillById(skillId); //没有的话 看看宝宝上有没有 if (skillInst == null) { if (GamePlayer.Instance.BattleBaby != null) { skillInst = GamePlayer.Instance.BattleBaby.GetSkillCore(skillId); } } SkillData data = null; if (skillInst != null) { data = SkillData.GetData(skillId, (int)skillInst.skillLevel_); } if (data != null) { if (selectedSkill != null) { selectedSkill.SetActive(true); } if (selectedSkillName != null && selectedSkillName.gameObject != null) { selectedSkillName.gameObject.SetActive(true); } if (playernanmeLabel != null) { playernanmeLabel.text = Battle.Instance.GetCrtBattleActor().battlePlayer.instName_ + tempstr; } if (selectedSkillName != null) { selectedSkillName.text = data._Name; } //selectedSkillIcon.spriteName = data.resIconName; //HeadIconLoader.Instance.LoadIcon (data.resIconName, selectedSkillIcon); } else { if (selectedSkill != null) { selectedSkill.SetActive(false); } if (selectedSkillName != null && selectedSkillName.gameObject != null) { selectedSkillName.gameObject.SetActive(false); } } if (whoTurn != null && whoTurn.gameObject != null) { whoTurn.gameObject.SetActive(false); } }