コード例 #1
0
        public static void HandlePartyMemberList(S_PARTY_MEMBER_LIST p)
        {
            var notifyLfg = GroupWindowViewModel.Instance.Members.Count == 0;

            GroupWindowViewModel.Instance.SetRaid(p.Raid);

            foreach (var user in p.Members)
            {
                GroupWindowViewModel.Instance.AddOrUpdateMember(user);
            }

            if (notifyLfg && WindowManager.LfgListWindow != null && WindowManager.LfgListWindow.VM != null)
            {
                WindowManager.LfgListWindow.VM.NotifyMyLfg();
            }
            if (Proxy.IsConnected)
            {
                Proxy.RequestCandidates();
                if (WindowManager.LfgListWindow != null)
                {
                    if (WindowManager.LfgListWindow.IsVisible)
                    {
                        Proxy.RequestLfgList();
                    }
                }
            }
        }
コード例 #2
0
 public static void HandlePartyMemberList(S_PARTY_MEMBER_LIST p)
 {
     GroupWindowViewModel.Instance.SetRaid(p.Raid);
     foreach (var user in p.Members)
     {
         Task.Delay(200).ContinueWith(t =>
         {
             GroupWindowViewModel.Instance.AddOrUpdateMember(user);
         });
     }
 }
コード例 #3
0
ファイル: PlayerTracker.cs プロジェクト: Roukanken42/Tera
 public void UpdateParty(S_PARTY_MEMBER_LIST m)
 {
     _currentParty = m.Party.ConvertAll(x => Tuple.Create(x.ServerId, x.PlayerId));
     IsRaid        = m.Raid;
     PartyChangedEvent?.Invoke();
 }
コード例 #4
0
 public void UpdateParty(S_PARTY_MEMBER_LIST m)
 {
     _currentParty = m.Party.ConvertAll(x => Tuple.Create(x.ServerId, x.PlayerId));
 }