少年修仙传客户端代码仓库
2313 2315 【前端】仙界密境“单人进入”流程修改 冰晶矿脉“单人进入”流程修改
3个文件已修改
105 ■■■■■ 已修改文件
System/Dungeon/DungeonSuppliesLackWin.cs 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/NormalDungeonEntranceWin.cs 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/GeneralConfig/GeneralConfig.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonSuppliesLackWin.cs
@@ -132,6 +132,10 @@
                    return dungeonModel.selectedKylinDungeon;
                case LackType.IceCrystal:
                    return new Dungeon(31140, 0);
                case LackType.FairyLand:
                    return new Dungeon(31080, 0);
                case LackType.SingleIceCrystal:
                    return new Dungeon(31140, 0);
                default:
                    return default(Dungeon);
            }
@@ -149,6 +153,10 @@
                    return dungeonModel.GetSweepCost(dungeonModel.selectedKylinDungeon);
                case LackType.IceCrystal:
                    return dungeonModel.GetSweepCost(new Dungeon(31140, 0));
                case LackType.FairyLand:
                    return dungeonModel.GetDungeonTicketCost(31080);
                case LackType.SingleIceCrystal:
                    return dungeonModel.GetDungeonTicketCost(31140);
                default:
                    return default(Item);
            }
@@ -169,6 +177,14 @@
                case LackType.Kylin:
                case LackType.IceCrystal:
                    return GeneralConfig.Instance.autoBuyItemPrices[0];
                case LackType.FairyLand:
                    var dungeonId3 = dungeonModel.DungeonMap(31080, 0);
                    var config3 = ConfigManager.Instance.GetTemplate<DungeonConfig>(dungeonId3);
                    return config3.TicketPrice;
                case LackType.SingleIceCrystal:
                    var dungeonId4 = dungeonModel.DungeonMap(31140, 0);
                    var config4 = ConfigManager.Instance.GetTemplate<DungeonConfig>(dungeonId4);
                    return config4.TicketPrice;
                default:
                    return 0;
            }
@@ -187,6 +203,10 @@
                    var dungeonId = dungeonModel.DungeonMap(GetDungeon(_lackType));
                    var config = ConfigManager.Instance.GetTemplate<DungeonConfig>(dungeonId);
                    return Language.Get("MultipleSweep_Text1", config.FBName, config.SweepCostCnt);
                case LackType.FairyLand:
                    return Language.Get("W_XJMJGodTickets");
                case LackType.SingleIceCrystal:
                    return Language.Get("W_BJKMGodTickets");
                default:
                    return string.Empty;
            }
@@ -198,6 +218,8 @@
            {
                case LackType.PersonalBoss:
                case LackType.ElderGodArea:
                case LackType.FairyLand:
                case LackType.SingleIceCrystal:
                    return Language.Get("W_TicketJade", _moneyLack);
                case LackType.Kylin:
                case LackType.IceCrystal:
@@ -213,6 +235,8 @@
            {
                case LackType.PersonalBoss:
                case LackType.ElderGodArea:
                case LackType.FairyLand:
                case LackType.SingleIceCrystal:
                    return Language.Get("JadeChargeAgainst", _moneyNeed, _moneyOwn);
                case LackType.Kylin:
                case LackType.IceCrystal:
@@ -236,6 +260,12 @@
                case LackType.IceCrystal:
                    dungeonModel.SweepDungeon(GetDungeon(_lackType));
                    break;
                case LackType.FairyLand:
                    dungeonModel.SingleChallengeDungeon(GetDungeon(_lackType));
                    break;
                case LackType.SingleIceCrystal:
                    dungeonModel.SingleChallengeDungeon(GetDungeon(_lackType));
                    break;
                default:
                    break;
            }
@@ -247,6 +277,8 @@
            ElderGodArea,
            Kylin,
            IceCrystal,
            FairyLand,
            SingleIceCrystal,
        }
    }
System/Dungeon/NormalDungeonEntranceWin.cs
@@ -209,11 +209,76 @@
            var error = 0;
            if (model.TestChallangeDungeon(model.currentDungeon, out error))
            {
                model.SingleChallengeDungeon(model.currentDungeon);
                if (GeneralConfig.Instance.dungeonCanUseMoneyIds.Contains(model.currentDungeon.mapId))
                {
                    CheckUseMoneyDungeon(model.currentDungeon);
                }
                else
                {
                    model.SingleChallengeDungeon(model.currentDungeon);
                }
            }
            else
            {
                ProcessEnterDungeonError(error);
                if (GeneralConfig.Instance.dungeonCanUseMoneyIds.Contains(model.currentDungeon.mapId)
                    && error == 5)
                {
                    CheckUseMoneyDungeon(model.currentDungeon);
                }
                else
                {
                    ProcessEnterDungeonError(error);
                }
            }
        }
        private void CheckUseMoneyDungeon(Dungeon _dungeon)
        {
            var mapId = _dungeon.mapId;
            var mapConfig = ConfigManager.Instance.GetTemplate<MapConfig>(mapId);
            if ((MapType)mapConfig.MapFBType == MapType.MultipleFB)
            {
                var teamModel = ModelCenter.Instance.GetModel<TeamModel>();
                if (teamModel.myTeam.inTeam)
                {
                    ConfirmCancel.ShowPopConfirm(
                        Language.Get("Mail101"),
                        Language.Get("PlayerExitTeamSolo"),
                        (bool _ok) =>
                        {
                            if (_ok)
                            {
                                teamModel.RequestExitTeam();
                                Clock.Create(DateTime.Now + new TimeSpan(1 * TimeSpan.TicksPerSecond),
                                    () =>
                                    {
                                        OpenDungeonSuppliesLack(_dungeon);
                                    }
                                    );
                            }
                        }
                        );
                    return;
                }
            }
            OpenDungeonSuppliesLack(_dungeon);
        }
        void OpenDungeonSuppliesLack(Dungeon _dungeon)
        {
            switch (_dungeon.mapId)
            {
                case 31080:
                    DungeonSuppliesLackWin.lackType = DungeonSuppliesLackWin.LackType.FairyLand;
                    WindowCenter.Instance.Open<DungeonSuppliesLackWin>();
                    break;
                case 31140:
                    DungeonSuppliesLackWin.lackType = DungeonSuppliesLackWin.LackType.SingleIceCrystal;
                    WindowCenter.Instance.Open<DungeonSuppliesLackWin>();
                    break;
            }
        }
System/GeneralConfig/GeneralConfig.cs
@@ -127,6 +127,8 @@
    public int inGameDownLoadHighestLevelPoint { get; private set; }
    public List<int> dungeonCanUseMoneyIds { get; private set; }
    public void Init()
    {
        try
@@ -430,6 +432,8 @@
            func = ConfigManager.Instance.GetTemplate<FuncConfigConfig>("PrefightAtkRange");
            PrefightAtkRange = float.Parse(func.Numerical1);
            inGameDownLoadHighestLevelPoint = GetInt("DownReward", 2);
            dungeonCanUseMoneyIds = new List<int>(GetIntArray("FBEnterTickeyAuto", 1));
        }
        catch (Exception ex)
        {