| | |
| | | |
| | | #endregion |
| | | |
| | | #region 皮肤开服天数相关方法 |
| | | |
| | | /// <summary> |
| | | /// 检查皮肤是否满足开服天数展示条件 |
| | | /// </summary> |
| | | /// <param name="skinID">皮肤ID</param> |
| | | /// <returns>true: 可展示; false: 尚未满足开服天数</returns> |
| | | public static bool IsSkinOpenDayMet(int skinID) |
| | | { |
| | | var skinConfig = HeroSkinConfig.Get(skinID); |
| | | if (skinConfig == null || skinConfig.OpenDay <= 0) |
| | | return true; // OpenDay <= 0 表示无限制 |
| | | return TimeUtility.OpenDay + 1 >= skinConfig.OpenDay; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 判断武将在考虑 OpenDay 限制后,是否有至少一个可显示的非默认皮肤 |
| | | /// 默认皮肤(SkinIDList[0])不受 OpenDay 控制,始终可用 |
| | | /// </summary> |
| | | /// <param name="heroID">武将ID</param> |
| | | /// <returns>true: 有至少一个非默认皮肤可显示; false: 仅默认皮肤可显示</returns> |
| | | public static bool HasHeroAnyAvailableSkin(int heroID) |
| | | { |
| | | var heroConfig = HeroConfig.Get(heroID); |
| | | if (heroConfig == null || heroConfig.SkinIDList.Length <= 1) |
| | | return false; // 只有默认皮肤或没有皮肤 |
| | | |
| | | // 从索引 1 开始检查非默认皮肤 |
| | | for (int i = 1; i < heroConfig.SkinIDList.Length; i++) |
| | | { |
| | | if (IsSkinOpenDayMet(heroConfig.SkinIDList[i])) |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #endregion |
| | | } |
| | | |