private void AddNpcHero(int cfgID) { WorldCityHeroInfo info = new WorldCityHeroInfo(); info.heroCfgID = cfgID; info.heroLevel = 1; info.heroQuality = 1; info.heroStar = 1; info.heroFightScore = 0; HeroInfoList.Add(info); }
public override void Deserialize(PResourceMapInfo data) { base.Deserialize(data); MapConfigID = data.cfgid; MapPosition = data.mapPos; if (data.simRoleAttr == null) { UserEntityID = 0; UserName = ""; UserLevel = 0; UserPalaceLevel = 0; UserIcon = 0; UserFightScore = -1; } else { UserEntityID = data.simRoleAttr.playerId; UserName = data.simRoleAttr.roleName; UserLevel = data.simRoleAttr.level; UserPalaceLevel = data.simRoleAttr.mainBuildLevel; UserIcon = data.simRoleAttr.headImage; UserFightScore = data.simRoleAttr.fighting; } MapLevel = data.mapLevel; RefreshRemainTime.SetTimeMilliseconds(data.refreshLeftTime); ConquerRemainTime = Utils.GetSeconds(data.occupyLeftTime); ConquerSyncTime = Time.realtimeSinceStartup; ProduceRewardElapseTime = Utils.GetSeconds(data.elapseTime); ProduceRewardSyncTime = Time.realtimeSinceStartup; ProduceValue = data.perHourGain; switch (data.sourceType) { case eSourceMapType.GOLD_OUT: ProduceType = ResourceType.MONEY; break; case eSourceMapType.STONE_OUT: ProduceType = ResourceType.STONE; break; case eSourceMapType.WOOD_OUT: ProduceType = ResourceType.WOOD; break; case eSourceMapType.YUANBAO_OUT: ProduceType = ResourceType.GOLD; break; } foreach (var item in data.heroAttrs) { WorldCityHeroInfo info = new WorldCityHeroInfo(); info.heroCfgID = item.heroCfgId; info.heroLevel = item.level; info.heroQuality = item.jinjie; info.heroStar = item.heroStar; HeroInfoList.Add(info); } }
public virtual void Deserialize(PPlayerMapInfo data) { MapPosition = data.mapPos; if (data.mapType == eWorldMapType.PLAYER_CITY_MAP) { IsNpc = false; if (data.simRoleAttr != null) { UserEntityID = data.simRoleAttr.playerId; UserName = data.simRoleAttr.roleName; UserIcon = data.simRoleAttr.headImage; UserLevel = data.simRoleAttr.level; UserPalaceLevel = data.simRoleAttr.mainBuildLevel; UserFightScore = data.simRoleAttr.fighting; } } else if (data.mapType == eWorldMapType.NPC_CITY_MAP) { IsNpc = true; if (data.simRoleAttr != null) { UserEntityID = data.simRoleAttr.playerId; WorldMapConfig cfg = WorldMapConfigLoader.GetConfig((int)UserEntityID); UserName = cfg.CityName; UserIcon = data.simRoleAttr.headImage; if (data.getAssertInfo != null) { // 已经侦查 UserLevel = cfg.PlayerLevel; UserPalaceLevel = cfg.CityLevel; UserFightScore = cfg.BattlePower; HeroInfoList.Clear(); AddNpcHero(cfg.DefenseHero1); AddNpcHero(cfg.DefenseHero2); AddNpcHero(cfg.DefenseHero3); } else { // 尚未侦查 UserLevel = 0; UserPalaceLevel = 0; UserFightScore = -1; } } } if (data.getAssertInfo != null) { RewardMoney = data.getAssertInfo.gold; RewardWood = data.getAssertInfo.wood; RewardStone = data.getAssertInfo.stone; RewardGold = data.getAssertInfo.yuanbao; } else { // 尚未侦查 RewardMoney = -1; RewardWood = -1; RewardStone = -1; RewardGold = -1; } if (data.heroInfos != null) { foreach (var item in data.heroInfos) { WorldCityHeroInfo info = new WorldCityHeroInfo(); info.heroCfgID = item.heroCfgId; info.heroLevel = item.level; info.heroQuality = item.jinjie; info.heroStar = item.heroStar; info.heroFightScore = item.fighting; HeroInfoList.Add(info); } } RefreshRemainTime.SetTimeMilliseconds(data.refreshLeftTime); }