internal S_LOGIN(LoginServerMessage message) { if (PacketProcessor.Instance.NeedInit) { PacketProcessor.Instance.RaiseConnected(BasicTeraData.Instance.Servers.GetServerName(message.ServerId, PacketProcessor.Instance.Server)); PacketProcessor.Instance.Server = BasicTeraData.Instance.Servers.GetServer(message.ServerId, PacketProcessor.Instance.Server); PacketProcessor.Instance.MessageFactory.Region = PacketProcessor.Instance.Server.Region; var trackerreset = true; if (PacketProcessor.Instance.EntityTracker != null) { try { var oldregion = BasicTeraData.Instance.Servers.GetServer(PacketProcessor.Instance.EntityTracker.CompassUser.ServerId).Region; trackerreset = PacketProcessor.Instance.Server.Region != oldregion; } catch { Trace.Write( "New server:" + PacketProcessor.Instance.Server + ";Old server Id:" + PacketProcessor.Instance.EntityTracker.CompassUser?.ServerId); throw; } } if (trackerreset) { PacketProcessor.Instance.EntityTracker = new EntityTracker(); PacketProcessor.Instance.CompassViewModel = new CompassViewModel(); } PacketProcessor.Instance.NeedInit = false; } PacketProcessor.Instance.EntityTracker.Update(message); Services.GameState = GameState.InGame; }
internal User(LoginServerMessage message) : base(message.Id) { Name = message.Name; GuildName = message.GuildName; RaceGenderClass = message.RaceGenderClass; }
internal S_LOGIN(LoginServerMessage message) { if (PacketProcessor.Instance.NeedInit) { PacketProcessor.Instance.RaiseConnected(BasicTeraData.Instance.Servers.GetServerName(message.ServerId, PacketProcessor.Instance.Server)); PacketProcessor.Instance.Server = BasicTeraData.Instance.Servers.GetServer(message.ServerId, PacketProcessor.Instance.Server); PacketProcessor.Instance.MessageFactory.Region = PacketProcessor.Instance.Server.Region; var trackerreset = true; if (PacketProcessor.Instance.EntityTracker != null) { try { var oldregion = BasicTeraData.Instance.Servers.GetServer(PacketProcessor.Instance.EntityTracker.MeterUser.ServerId).Region; trackerreset = PacketProcessor.Instance.Server.Region != oldregion; } catch { BasicTeraData.LogError( "New server:" + PacketProcessor.Instance.Server + ";Old server Id:" + PacketProcessor.Instance.EntityTracker.MeterUser?.ServerId, false, true); throw; } } if (trackerreset) { PacketProcessor.Instance.TeraData = BasicTeraData.Instance.DataForRegion(PacketProcessor.Instance.Server.Region); BasicTeraData.Instance.HotDotDatabase.Enraged.Name = LP.Enrage; BasicTeraData.Instance.HotDotDatabase.Slaying.Name = LP.Slaying; BasicTeraData.Instance.HotDotDatabase.Slaying.Tooltip = LP.SlayingTooltip; PacketProcessor.Instance.EntityTracker = new EntityTracker(BasicTeraData.Instance.MonsterDatabase, PacketProcessor.Instance.UserLogoTracker); PacketProcessor.Instance.PlayerTracker = new PlayerTracker(PacketProcessor.Instance.EntityTracker, BasicTeraData.Instance.Servers); PacketProcessor.Instance.MeterPlayers.Clear(); Database.Database.Instance.DeleteAll(); SelectFont(PacketProcessor.Instance.Server.Region); } PacketProcessor.Instance.NeedInit = false; } PacketProcessor.Instance.AbnormalityStorage.EndAll(message.Time.Ticks); PacketProcessor.Instance.AbnormalityTracker = new AbnormalityTracker(PacketProcessor.Instance.EntityTracker, PacketProcessor.Instance.PlayerTracker, BasicTeraData.Instance.HotDotDatabase, PacketProcessor.Instance.AbnormalityStorage, DamageTracker.Instance.Update); if (PacketProcessor.Instance.MessageFactory.ChatEnabled) { PacketProcessor.Instance.AbnormalityTracker.AbnormalityAdded += NotifyProcessor.Instance.AbnormalityNotifierAdded; PacketProcessor.Instance.AbnormalityTracker.AbnormalityRemoved += NotifyProcessor.Instance.AbnormalityNotifierRemoved; } PacketProcessor.Instance.OnGuildIconAction(PacketProcessor.Instance.UserLogoTracker.GetLogo(message.PlayerId)); PacketProcessor.Instance.EntityTracker.Update(message); BasicTeraData.Instance.EventsData.Load(PacketProcessor.Instance.EntityTracker.MeterUser.RaceGenderClass.Class); PacketProcessor.Instance.PacketProcessing.Update(); PacketProcessor.Instance.RaisePause(false); var me = PacketProcessor.Instance.PlayerTracker.Me(); if (!PacketProcessor.Instance.MeterPlayers.Contains(me)) { PacketProcessor.Instance.MeterPlayers.Add(me); } RichPresence.Instance.Login(me); }
private Entity LoginMe(LoginServerMessage m) { return(MeterUser = new UserEntity(m) { GuildName = _userLogoTracker?.GetGuildName(m.PlayerId) ?? "" }); }
internal UserEntity(LoginServerMessage message) : this(message.Id) { Name = message.Name; GuildName = message.GuildName; RaceGenderClass = message.RaceGenderClass; PlayerId = message.PlayerId; }
internal UserEntity(LoginServerMessage message) : this(message.Id) { Name = message.Name; GuildName = ""; RaceGenderClass = message.RaceGenderClass; PlayerId = message.PlayerId; ServerId = message.ServerId; Level = message.Level; OutOfRange = false; }
public void Update(LoginServerMessage message) { var newEntity = LoginMe(message); Register(newEntity); }
private Entity LoginMe(LoginServerMessage m) { MeterUser = new UserEntity(m); return(MeterUser); }
private Entity LoginMe(LoginServerMessage m) { CompassUser = new UserEntity(m); return CompassUser; }
public void Update(LoginServerMessage message) { _dictionary[message.Id] = new User(message); }
public void UpdateParty(LoginServerMessage message) { _currentParty = new List <Tuple <uint, uint> >(); PartyChangedEvent?.Invoke(); }