Example #1
0
 private static bool CheckLobbyCharacterItem(LobbyCharacterItem info)
 {
     return(info != null &&
            info.CharacterId != 0 &&
            GlobalConfig.CHARA_SERVER_AVAILABLE.Contains(info.CurrentWorldId) &&
            GlobalConfig.CHARA_SERVER_AVAILABLE.Contains(info.HomeWorldId) &&
            !string.IsNullOrWhiteSpace(info.CurrentWorldName) &&
            !string.IsNullOrWhiteSpace(info.HomeWorldName) &&
            IsValidInGameName(info.CharacterName, false));
 }
Example #2
0
        public static CharacterData ToDb(this LobbyCharacterItem item, long serviceId)
        {
            var detail = JsonConvert.DeserializeObject<LobbyJson>(item.DetailJson);
            var hasJobLevels = detail?.ClassName == "ClientSelectData";

            var result = new CharacterData();
            {
                result.CharacterId = item.CharacterId;
                result.CharacterName = item.CharacterName;
                result.ServiceId = serviceId;
                result.HomeWorld = item.HomeWorldId;
                result.JobLevels = hasJobLevels ? LobbyJsonCharacter.MapFrom(detail.Content).CharacterLevels : null;
            }

            return result;
        }