public static void Load(string datas) { _datas = new List <Extension>(); foreach (var data in datas.Split('\n')) { if (!string.IsNullOrEmpty(data)) { var item = new AutoData.Extension(data.Split('\t')); _datas.Add(item); _dicDataIndexForId[item.Id] = _datas.Count - 1; } } }
/// <summary> /// 扩建店铺 成功 构造返回 /// </summary> /// <param name="build"></param> /// <param name="config"></param> /// <returns></returns> private async Task <LoadBuildInfo> BuildExtend(BuildData build, AutoData.Extension config) { var role = LogicServer.User.role; using (var tx = LogicServer.Instance.StateManager.CreateTransaction()) { build.CurExtendLv++; build.Employee += config.ClerkAddtion; build.CustomerAddtion += config.CustomerAddtion; build.Star++; build.Income += config.Income; role.SocialStatus += config.Income; await BagDataHelper.Instance.DecGold(config.UpgradeCost.Count, config.UpgradeCost.CurrencyID, tx); //扣钱 await RoleDataHelper.Instance.UpdateRoleByRoleIdAsync(role.Id, role, tx); //更新用户身价 await BuildDataHelper.Instance.UpdateBuildByBuildId(build, tx); //更新建筑 await tx.CommitAsync(); } await MsgSender.Instance.UpdateGold(config.UpgradeCost.CurrencyID); await MsgSender.Instance.UpdateIncome(); LoadBuildInfo info = new LoadBuildInfo() { BuildId = build.Id, BuildType = build.BuildType, Employee = build.Employee, GetMoney = build.GetMoney, Level = build.Level, Name = build.Name, Popularity = build.Popularity, Pos = build.Pos, RoleId = build.RoleId, Star = build.Star, TodayCanAdvartise = build.TodayCanAdvartise, CustomerAddtion = build.CustomerAddtion, CurExtendLv = build.CurExtendLv, CostGold = build.CostGold, Income = build.Income }; return(info); }