private void SetHeroInfo() { PlayerHeroLogic playerHeros = new PlayerHeroLogic(); playerHeros.SetUser(m_UserId); CacheDictionary <int, Hero> heros = playerHeros.GetHeroList(); foreach (var hero in heros) { PBLobbyHeroInfo heroInfo = new PBLobbyHeroInfo(); heroInfo.Type = hero.Key; heroInfo.Level = hero.Value.HeroLv; heroInfo.Exp = hero.Value.HeroExp; heroInfo.StarLevel = hero.Value.HeroStarLevel; heroInfo.ConsciousnessLevel = hero.Value.ConsciousnessLevel; heroInfo.ElevationLevel = hero.Value.ElevationLevel; heroInfo.SkillLevels.AddRange(hero.Value.SkillLevels); heroInfo.SkillExps.AddRange(hero.Value.SkillExps); heroInfo.Might = hero.Value.Might; foreach (var gear in hero.Value.Gears) { if (gear.Value == 0) { continue; } PBGearInfo gearInfo = new PBGearInfo(); gearInfo.Id = gear.Value; Gears gearData = CacheSet.GearCache.FindKey(gear.Value); gearInfo.Level = gearData.Level; gearInfo.StrengthenLevel = gearData.StrengthenLevel; gearInfo.Type = gearData.TypeId; heroInfo.GearInfo.Add(gearInfo); } foreach (var soul in hero.Value.Souls) { if (soul.Value == 0) { continue; } PBSoulInfo soulInfo = new PBSoulInfo(); soulInfo.Id = soul.Value; Souls soulData = CacheSet.SoulCache.FindKey(soul.Value); soulInfo.Type = soulData.TypeId; heroInfo.SoulInfo.Add(soulInfo); } m_ResponsePacket.LobbyHeroInfo.Add(heroInfo); } }
private static PBRoomPlayerInfo GetPlayerRoomData(int playerId) { PBRoomPlayerInfo retData = new PBRoomPlayerInfo(); PlayerLogic p = new PlayerLogic(); p.SetUser(playerId); retData.PlayerInfo = new PBPlayerInfo() { Id = playerId, Name = p.MyPlayer.Name, Level = p.MyPlayer.Level, VipLevel = p.MyPlayer.VIPLevel, PortraitType = p.MyPlayer.PortraitType, Might = p.MyPlayer.Might, }; HeroTeamLogic heroTeam = new HeroTeamLogic(); heroTeam.SetUser(playerId); CacheList <int> team = heroTeam.GetTeam(); PlayerHeroLogic ph = new PlayerHeroLogic().SetUser(playerId); foreach (int heroType in team) { if (heroType == 0) { continue; } ph.SetHero(heroType); var heroInfo = ph.GetHeroInfo(); PBLobbyHeroInfo lobbyHeroInfo = new PBLobbyHeroInfo(); lobbyHeroInfo.Type = heroInfo.HeroType; lobbyHeroInfo.Level = heroInfo.HeroLv; lobbyHeroInfo.Exp = heroInfo.HeroExp; lobbyHeroInfo.StarLevel = heroInfo.HeroStarLevel; lobbyHeroInfo.ConsciousnessLevel = heroInfo.ConsciousnessLevel; lobbyHeroInfo.ElevationLevel = heroInfo.ElevationLevel; lobbyHeroInfo.SkillLevels.AddRange(heroInfo.SkillLevels); foreach (var gear in heroInfo.Gears) { if (gear.Value == 0) { continue; } PBGearInfo gearInfo = new PBGearInfo(); gearInfo.Id = gear.Value; Gears gearData = CacheSet.GearCache.FindKey(gear.Value); gearInfo.Level = gearData.Level; gearInfo.Type = gearData.TypeId; gearInfo.StrengthenLevel = gearData.StrengthenLevel; lobbyHeroInfo.GearInfo.Add(gearInfo); } foreach (var soul in heroInfo.Souls) { if (soul.Value == 0) { continue; } PBSoulInfo soulInfo = new PBSoulInfo(); soulInfo.Id = soul.Value; Souls soulData = CacheSet.SoulCache.FindKey(soul.Value); soulInfo.Type = soulData.TypeId; lobbyHeroInfo.SoulInfo.Add(soulInfo); } PBRoomHeroInfo roomHeroInfo = new PBRoomHeroInfo() { LobbyHeroInfo = lobbyHeroInfo, }; retData.RoomHeroInfo.Add(roomHeroInfo); } retData.LobbyServerId = int.Parse(ConfigUtils.GetSetting("Server.Id")); PlayerSinglePvpLogic psp = new PlayerSinglePvpLogic(); psp.SetUser(playerId); retData.Score = psp.MyPvp.SinglePvpScore; return(retData); }