namespace Core.Utility { public class GlobalParam { public static int Item_Coin_ID = 1001; public static int Item_Diamond_ID = 1002; public static int Item_HeroExp_ID = 1003; /// /// 英雄最大上阵数量 /// public static int Max_Deploy_HERO = 4; /// /// 主界面英雄头像,点击后,向上偏移的位移 /// public static int Hero_Pos_Offset = 110; /// /// 最大等级差 /// public static int Max_Main_Level_Difference = 10; /// /// 普攻技能组 /// public static int Normal_Attack_Skill_Group_ID = 1001; /// /// 升级时,背景高度 /// public static int Hero_Upgrade_UI_BG_Height = 283; /// /// 仅升星时,背景高度 /// public static int Hero_Promote_UI_BG_Only_Star_Height = 283; /// /// 升星、解锁技能时,背景高度 /// public static int Hero_Promote_UI_BG_Unlock_Skill_Height = 420; /// /// 仅升星时,星星y的位置 /// public static int Hero_Promote_UI_BG_Star_Pos_1 = 0; /// /// 升星、解锁技能时,星星y的位置 /// public static int Hero_Promote_UI_BG_Star_Pos_2 = 150; // public static int Hero_Upgrade_UI_ = 150; // /// // /// onlyUnLock=true, 获取已解锁的最高等级的技能 // /// onlyUnLock=false,获取已解锁的最高等级的技能,若都没有解锁,则获取未解锁的1级技能 // /// // /// 技能组 // /// 英雄等级 // /// 英雄星级 // /// ture=只返回解锁的 // /// // public static SkillConfig GetHighestLevelOr1(int groupID, int level, int star, bool onlyUnLock = false) // { // SkillConfig skillConfig = new SkillConfig(); // // int lv = 0; // for(int i = 0; i < PlayerManager.Instance.groupSkillDIc[groupID].Count; i++) // { // SkillConfig config = PlayerManager.Instance.groupSkillDIc[groupID][i]; // // if (i == 0 && !onlyUnLock) // { // skillConfig = config; // } // // // if (config.isUnLock && config.skillConfig.level > lv) // if(IsUnLockSkill(level, star, config.ID) && config.level > lv) // { // lv = config.level; // skillConfig = config; // } // } // return skillConfig; // } // // /// // /// 技能是否解锁 // /// // /// 英雄等级 // /// 英雄星级 // /// 技能id // /// // public static bool IsUnLockSkill(int level, int star, int skillID) // { // bool isUnLock = false; // if (skillID == GlobalParam.Normal_Attack_Skill_Group_ID) // { // isUnLock = true; // } // else // { // //整体可能有点绕,后面再看优化不 // // //取技能ID的后两位,后两位是技能解锁表SkillUpConfig的ID, 取这个ID来判断,这个技能是否解锁,以及还差多少差解锁 // int skillUpID = skillID % 100; // SkillUpConfig skillUpConfig = ConfigComponent.Instance.Get(skillUpID); // // //取个位 // int gw = skillUpID % 10; // // int skillUpID1 = -1; // //当个位>1时,需要额外判断一下,技能的1级是否已经解锁(可能1级是星级解锁) // //避免出现,技能是5星解锁解锁1级,200级解锁2级,但玩家现在4星,201级,就不该解锁2级,因为星级不够 // if (gw > 1) // { // //技能1级的解锁ID,例如: 33 - 3 + 1 = 31, 31就是技能1级的解锁条件id // skillUpID1 = skillUpID - gw + 1; // } // // //等级解锁 // if (skillUpConfig.upType == 1) // { // SkillUpConfig skillUpConfig1 = new SkillUpConfig(); // //准备判断,该技能1级时,是否为星级解锁 // if (skillUpID1 > 0) // { // skillUpConfig1 = ConfigComponent.Instance.Get(skillUpID1); // } // // //如果技能的第一级需要星级解锁,需额外判断一下星级是否达到 // bool isStarOk = skillUpConfig1.upType != 2 || star > skillUpConfig1.upValue; // // // if (level >= skillUpConfig.upValue && isStarOk) // { // isUnLock = true; // } // } // //星级解锁 // else if (skillUpConfig.upType == 2) // { // if (star >= skillUpConfig.upValue) // { // isUnLock = true; // } // } // } // // return isUnLock; // } } }