/// <summary> /// 获取对应等级图标 /// </summary> /// <param name="iconDataManager"></param> /// <returns></returns> public Sprite GetBedLevelIcon() { LevelTypeEnum bedLevel = GetBedLevel(); Sprite spIcon = LevelTypeEnumTools.GetLevelIcon(bedLevel); return(spIcon); }
/// <summary> /// 设置等级 /// </summary> public void SetLevel(BuildBedBean buildBedData) { LevelTypeEnum level = buildBedData.GetBedLevel(out string levelStr, out int nextLevelExp); if ((int)level >= 3) { objLevelProgress.SetActive(false); } else { objLevelProgress.SetActive(true); } Sprite spIcon = buildBedData.GetBedLevelIcon(); if (spIcon == null) { ivLevel.gameObject.SetActive(false); } else { ivLevel.gameObject.SetActive(true); } ivLevel.sprite = spIcon; tvLevelName.text = levelStr; proLevel.SetData(nextLevelExp, buildBedData.bedExp); if (buildBedData.GetBedStatus() == ResearchStatusEnum.WaitForResearch) { proLevel.SetContent(TextHandler.Instance.manager.GetTextById(287)); } }
public static string GetLevelStr(LevelTypeEnum level) { string levelStr = ""; if (level == LevelTypeEnum.Init) { levelStr = TextHandler.Instance.manager.GetTextById(104); } else if (level == LevelTypeEnum.Star) { levelStr = TextHandler.Instance.manager.GetTextById(101); } else if (level == LevelTypeEnum.Moon) { levelStr = TextHandler.Instance.manager.GetTextById(102); } else if (level == LevelTypeEnum.Sun) { levelStr = TextHandler.Instance.manager.GetTextById(103); } else { } return(levelStr); }
/// <summary> /// 设置等级 /// </summary> /// <param name="level"></param> /// <param name="spIcon"></param> public void SetLevel(LevelTypeEnum level, Sprite spIcon) { pbReputation.gameObject.SetActive(true); ivReputation.sprite = spIcon; if (level == LevelTypeEnum.Init) { tvName.color = new Color(0, 0, 0, 1f); ivBackground.sprite = spBackgroundInit; pbReputation.gameObject.SetActive(false); } else if (level == LevelTypeEnum.Star) { tvName.color = new Color(0, 0.75f, 0, 1f); ivBackground.sprite = spBackgroundStar; } else if (level == LevelTypeEnum.Moon) { tvName.color = new Color(0.1f, 0.75f, 0.95f, 1f); ivBackground.sprite = spBackgroundMoon; } else if (level == LevelTypeEnum.Sun) { tvName.color = new Color(1, 0.85f, 0.2f, 1f); ivBackground.sprite = spBackgroundSun; } else { tvName.color = new Color(0, 0, 0, 1f); ivBackground.sprite = spBackgroundInit; } }
/// <summary> /// 获取价格 /// </summary> /// <param name="menuInfo"></param> /// <param name="priceL"></param> /// <param name="priceM"></param> /// <param name="priceS"></param> public void GetPrice(MenuInfoBean menuInfo, out long priceL, out long priceM, out long priceS) { float addRate = 1; LevelTypeEnum menuLevel = GetMenuLevel(); if (menuLevel == LevelTypeEnum.Init) { addRate = 1; } else if (menuLevel == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.MenuForPriceAddRate1, out addRate); } else if (menuLevel == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.MenuForPriceAddRate2, out addRate); } else if (menuLevel == LevelTypeEnum.Sun) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.MenuForPriceAddRate3, out addRate); } priceL = (long)(menuInfo.price_l * addRate); priceM = (long)(menuInfo.price_m * addRate); priceS = (long)(menuInfo.price_s * addRate); }
/// <summary> /// 获取对应等级图标 /// </summary> /// <param name="iconDataManager"></param> /// <returns></returns> public Sprite GetMenuLevelIcon() { LevelTypeEnum menuLevel = GetMenuLevel(); Sprite spIcon = LevelTypeEnumTools.GetLevelIcon(menuLevel); return(spIcon); }
/// <summary> /// 增加研究经验 /// </summary> /// <param name="exp"></param> public bool AddResearchExp(int exp) { researchExp += exp; int researchLevelExp = 0; LevelTypeEnum bedLevel = GetBedLevel(); if (bedLevel == LevelTypeEnum.Init) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelResearchExp1, out researchLevelExp); } else if (bedLevel == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelResearchExp2, out researchLevelExp); } else if (bedLevel == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelResearchExp3, out researchLevelExp); } if (researchLevelExp == 0) { researchExp = 0; } else if (researchExp >= researchLevelExp) { researchExp = researchLevelExp; return(true); } return(false); }
/// <summary> /// 获取价格 /// </summary> /// <param name="menuInfo"></param> /// <param name="priceL"></param> /// <param name="priceM"></param> /// <param name="priceS"></param> public void GetPrice(out long outPriceL, out long outPriceM, out long outPriceS) { float addRate = 1; LevelTypeEnum bedLevel = GetBedLevel(); if (bedLevel == LevelTypeEnum.Init) { addRate = 1; } else if (bedLevel == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForPriceAddRate1, out addRate); } else if (bedLevel == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForPriceAddRate2, out addRate); } else if (bedLevel == LevelTypeEnum.Sun) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForPriceAddRate3, out addRate); } outPriceL = (long)(priceL * addRate); outPriceM = (long)(priceM * addRate); outPriceS = (long)(priceS * addRate); }
/// <summary> /// 获取菜品等级 /// </summary> /// <returns></returns> public LevelTypeEnum GetBedLevel(out string levelStr, out int nextLevelExp) { levelStr = "???"; LevelTypeEnum bedLevel = GetBedLevel(); levelStr = LevelTypeEnumTools.GetLevelStr(bedLevel); nextLevelExp = GetBedLevelUpExp(bedLevel); return(bedLevel); }
private static int GetLevelDepth(Hierarchy oHierarchy, LevelTypeEnum LevelType) { foreach (Level oLevel in oHierarchy.Levels) { if (oLevel.LevelType == LevelType) { return(oLevel.LevelNumber); } } throw new Exception("Could not find a level of type " + LevelType.ToString() + ". If you are looking for this level in a Fiscal hierarchy, the code will need to change to use AMO so it can see all the types of levels, not just the level types that AdomdServer exposes."); }
/// <summary> /// 获取研究材料消耗 /// </summary> /// <param name="menuInfo"></param> /// <returns></returns> public SortedList <IngredientsEnum, long> GetResearchIngredients(MenuInfoBean menuInfo) { SortedList <IngredientsEnum, long> listIng = new SortedList <IngredientsEnum, long>(); float addRate = 1; LevelTypeEnum menuLevel = GetMenuLevel(); if (menuLevel == LevelTypeEnum.Init) { addRate = 10; } else if (menuLevel == LevelTypeEnum.Star) { addRate = 100; } else if (menuLevel == LevelTypeEnum.Moon) { addRate = 1000; } if (menuInfo.ing_oilsalt != 0) { listIng.Add(IngredientsEnum.Oilsalt, (long)(menuInfo.ing_oilsalt * addRate)); } if (menuInfo.ing_meat != 0) { listIng.Add(IngredientsEnum.Meat, (long)(menuInfo.ing_meat * addRate)); } if (menuInfo.ing_riverfresh != 0) { listIng.Add(IngredientsEnum.Riverfresh, (long)(menuInfo.ing_riverfresh * addRate)); } if (menuInfo.ing_seafood != 0) { listIng.Add(IngredientsEnum.Seafood, (long)(menuInfo.ing_seafood * addRate)); } if (menuInfo.ing_vegetables != 0) { listIng.Add(IngredientsEnum.Vegetables, (long)(menuInfo.ing_vegetables * addRate)); } if (menuInfo.ing_melonfruit != 0) { listIng.Add(IngredientsEnum.Melonfruit, (long)(menuInfo.ing_melonfruit * addRate)); } if (menuInfo.ing_waterwine != 0) { listIng.Add(IngredientsEnum.Waterwine, (long)(menuInfo.ing_waterwine * addRate)); } if (menuInfo.ing_flour != 0) { listIng.Add(IngredientsEnum.Flour, (long)(menuInfo.ing_flour * addRate)); } return(listIng); }
/// <summary> /// 通过等级获取菜品数量 /// </summary> /// <param name="level"></param> /// <returns></returns> public int GetMenuNumberByLevel(LevelTypeEnum menuLevel) { int number = 0; foreach (MenuOwnBean itemMenu in listMenu) { if (itemMenu.GetMenuLevel() >= menuLevel) { number++; } } return(number); }
/// <summary> /// 通过等级获取床单数量 /// </summary> /// <param name="levelType"></param> /// <returns></returns> public int GetBedNumberByLevel(LevelTypeEnum levelType) { int number = 0; foreach (BuildBedBean itemBed in listBed) { if (itemBed.GetBedLevel() >= levelType) { number++; } } return(number); }
/// <summary> /// 检测是否能研究 /// </summary> /// <returns></returns> public bool CheckCanResearch(GameDataBean gameData, out string failStr) { failStr = ""; string levelStr = gameData.GetInnAttributesData().GetInnLevel(out int levelTitle, out int levelStart); LevelTypeEnum bedLevel = GetBedLevel(); if (bedLevel == LevelTypeEnum.Init) { if (levelTitle <= 0) { failStr = string.Format(TextHandler.Instance.manager.GetTextById(1072), gameData.GetInnAttributesData().GetInnLevelStr(1, 1)); return(false); } } else if (bedLevel == LevelTypeEnum.Star) { if (levelTitle <= 1) { failStr = string.Format(TextHandler.Instance.manager.GetTextById(1072), gameData.GetInnAttributesData().GetInnLevelStr(2, 1)); return(false); } } else if (bedLevel == LevelTypeEnum.Moon) { if (levelTitle <= 2) { failStr = string.Format(TextHandler.Instance.manager.GetTextById(1072), gameData.GetInnAttributesData().GetInnLevelStr(3, 1)); return(false); } } else if (bedLevel == LevelTypeEnum.Sun) { failStr = TextHandler.Instance.manager.GetTextById(1073); return(false); } //判断是否有足够的研究经费 GetResearchPrice(out long researchPriceL, out long researchPriceM, out long researchPriceS); if (!gameData.HasEnoughMoney(researchPriceL, researchPriceM, researchPriceS)) { failStr = TextHandler.Instance.manager.GetTextById(1005); return(false); } return(true); }
public int GetBedLevelUpExp(LevelTypeEnum level) { int levelExp = 0; if (level == LevelTypeEnum.Init) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelUpExp1, out levelExp); } else if (level == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelUpExp2, out levelExp); } else if (level == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelUpExp3, out levelExp); } return(levelExp); }
public int GetMenuLevelUpExp(LevelTypeEnum menuLevel) { int levelExp = 0; if (menuLevel == LevelTypeEnum.Init) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.MenuForLevelUpExp1, out levelExp); } else if (menuLevel == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.MenuForLevelUpExp2, out levelExp); } else if (menuLevel == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.MenuForLevelUpExp3, out levelExp); } MenuInfoBean menuInfo = InnFoodHandler.Instance.manager.GetFoodDataById(menuId); //不同稀有度经验不同 if (menuInfo.rarity == 0) { levelExp = levelExp * 1; } else if (menuInfo.rarity == 1) { levelExp = levelExp * 3; } else if (menuInfo.rarity == 2) { levelExp = levelExp * 5; } else if (menuInfo.rarity == 3) { levelExp = levelExp * 10; } else if (menuInfo.rarity == 4) { levelExp = levelExp * 20; } return(levelExp); }
public static Sprite GetLevelIcon(LevelTypeEnum level) { Sprite spIcon = null; if (level == LevelTypeEnum.Init) { } else if (level == LevelTypeEnum.Star) { spIcon = IconDataHandler.Instance.manager.GetIconSpriteByName("reputation_level_1_1"); } else if (level == LevelTypeEnum.Moon) { spIcon = IconDataHandler.Instance.manager.GetIconSpriteByName("reputation_level_2_1"); } else if (level == LevelTypeEnum.Sun) { spIcon = IconDataHandler.Instance.manager.GetIconSpriteByName("reputation_level_3_1"); } return(spIcon); }
/// <summary> /// 增加经验 /// </summary> /// <param name="exp"></param> public void AddLevelExp(int exp, out bool isLevelUp) { bedExp += exp; isLevelUp = false; LevelTypeEnum bedLevel = GetBedLevel(); int levelExp = GetBedLevelUpExp(bedLevel); if (levelExp == 0) { bedExp = 0; } else if (bedExp >= levelExp) { bedExp = levelExp; if (bedStatus == (int)ResearchStatusEnum.Normal) { bedStatus = (int)ResearchStatusEnum.WaitForResearch; isLevelUp = true; } } }
/// <summary> /// 获取研究价格 /// </summary> /// <param name="researchPriceL"></param> /// <param name="researchPriceM"></param> /// <param name="researchPriceS"></param> public void GetResearchPrice(out long researchPriceL, out long researchPriceM, out long researchPriceS) { string researchPrice = "0,0,0"; LevelTypeEnum bedLevel = GetBedLevel(); if (bedLevel == LevelTypeEnum.Init) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForResearchPrice1, out researchPrice); } else if (bedLevel == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForResearchPrice2, out researchPrice); } else if (bedLevel == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForResearchPrice3, out researchPrice); } long[] priceList = StringUtil.SplitBySubstringForArrayLong(researchPrice, ','); researchPriceL = priceList[0]; researchPriceM = priceList[1]; researchPriceS = priceList[2]; }
/// <summary> /// 获取研究进度 /// </summary> /// <returns></returns> public float GetResearchProgress(out long completeResearchExp, out long researchExp) { completeResearchExp = 0; LevelTypeEnum bedLevel = GetBedLevel(); if (bedLevel == LevelTypeEnum.Init) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelResearchExp1, out completeResearchExp); } else if (bedLevel == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelResearchExp2, out completeResearchExp); } else if (bedLevel == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForLevelResearchExp3, out completeResearchExp); } researchExp = this.researchExp; float progress = (float)researchExp / completeResearchExp; return((float)Math.Round(progress, 4)); }
public float GetPriceAddRate() { float addRate = 1; LevelTypeEnum bedLevel = GetBedLevel(); if (bedLevel == LevelTypeEnum.Init) { addRate = 1; } else if (bedLevel == LevelTypeEnum.Star) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForPriceAddRate1, out addRate); } else if (bedLevel == LevelTypeEnum.Moon) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForPriceAddRate2, out addRate); } else if (bedLevel == LevelTypeEnum.Sun) { GameCommonInfo.baseDataController.GetBaseData(BaseDataTypeEnum.BedForPriceAddRate3, out addRate); } return(addRate); }
/// <summary> /// 设置等级 /// </summary> /// <param name="buildBedData"></param> public void SetLevel(BuildBedBean buildBedData) { //设置等级图标 Sprite spLevel = buildBedData.GetBedLevelIcon(); if (spLevel == null) { ivLevel.gameObject.SetActive(false); } else { ivLevel.gameObject.SetActive(true); ivLevel.sprite = spLevel; } //设置不同的等级框 LevelTypeEnum levelType = buildBedData.GetBedLevel(); switch (levelType) { case LevelTypeEnum.Init: ivBgLevel.sprite = spBgLevel0; break; case LevelTypeEnum.Star: ivBgLevel.sprite = spBgLevel1; break; case LevelTypeEnum.Moon: ivBgLevel.sprite = spBgLevel2; break; case LevelTypeEnum.Sun: ivBgLevel.sprite = spBgLevel3; break; } }
/// <summary> /// 检测是否能研究 /// </summary> /// <returns></returns> public bool CheckCanResearch(GameDataBean gameData, out string failStr) { failStr = ""; string levelStr = gameData.GetInnAttributesData().GetInnLevel(out int levelTitle, out int levelStart); LevelTypeEnum menuLevel = GetMenuLevel(); if (menuLevel == LevelTypeEnum.Init) { if (levelTitle <= 0) { failStr = string.Format(TextHandler.Instance.manager.GetTextById(1072), gameData.GetInnAttributesData().GetInnLevelStr(1, 1)); return(false); } } else if (menuLevel == LevelTypeEnum.Star) { if (levelTitle <= 1) { failStr = string.Format(TextHandler.Instance.manager.GetTextById(1072), gameData.GetInnAttributesData().GetInnLevelStr(2, 1)); return(false); } } else if (menuLevel == LevelTypeEnum.Moon) { if (levelTitle <= 2) { failStr = string.Format(TextHandler.Instance.manager.GetTextById(1072), gameData.GetInnAttributesData().GetInnLevelStr(3, 1)); return(false); } } else if (menuLevel == LevelTypeEnum.Sun) { failStr = TextHandler.Instance.manager.GetTextById(1073); return(false); } return(true); }
private static int GetLevelDepth(Hierarchy oHierarchy, LevelTypeEnum LevelType) { foreach (Level oLevel in oHierarchy.Levels) { if (oLevel.LevelType == LevelType) { return oLevel.LevelNumber; } } throw new Exception("Could not find a level of type " + LevelType.ToString() + ". If you are looking for this level in a Fiscal hierarchy, the code will need to change to use AMO so it can see all the types of levels, not just the level types that AdomdServer exposes."); }
public StaticLevelData(string key, Point mapPosition, LevelTypeEnum levelType) { this.key = key; this.mapPosition = mapPosition; this.levelType = levelType; }