Browse Source

Guild presence should update global. Cleaned up.

tags/1.0.0-rc2
RogueException 8 years ago
parent
commit
d7928622f3
3 changed files with 10 additions and 9 deletions
  1. +6
    -0
      src/Discord.Net.WebSocket/Entities/Users/SocketGlobalUser.cs
  2. +4
    -3
      src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs
  3. +0
    -6
      src/Discord.Net.WebSocket/Entities/Users/SocketUser.cs

+ 6
- 0
src/Discord.Net.WebSocket/Entities/Users/SocketGlobalUser.cs View File

@@ -1,5 +1,6 @@
using System.Diagnostics; using System.Diagnostics;
using Model = Discord.API.User; using Model = Discord.API.User;
using PresenceModel = Discord.API.Presence;


namespace Discord.WebSocket namespace Discord.WebSocket
{ {
@@ -47,6 +48,11 @@ namespace Discord.WebSocket
} }
} }
internal void Update(ClientState state, PresenceModel model)
{
Presence = SocketPresence.Create(model);
}
internal new SocketGlobalUser Clone() => MemberwiseClone() as SocketGlobalUser; internal new SocketGlobalUser Clone() => MemberwiseClone() as SocketGlobalUser;
} }
} }

+ 4
- 3
src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs View File

@@ -99,12 +99,13 @@ namespace Discord.WebSocket
if (model.Roles.IsSpecified) if (model.Roles.IsSpecified)
UpdateRoles(model.Roles.Value); UpdateRoles(model.Roles.Value);
} }
internal override void Update(ClientState state, PresenceModel model)
=> Update(state, model, true);
internal void Update(ClientState state, PresenceModel model, bool updatePresence) internal void Update(ClientState state, PresenceModel model, bool updatePresence)
{ {
if (updatePresence) if (updatePresence)
base.Update(state, model);
{
Presence = SocketPresence.Create(model);
GlobalUser.Update(state, model);
}
if (model.Nick.IsSpecified) if (model.Nick.IsSpecified)
Nickname = model.Nick.Value; Nickname = model.Nick.Value;
if (model.Roles.IsSpecified) if (model.Roles.IsSpecified)


+ 0
- 6
src/Discord.Net.WebSocket/Entities/Users/SocketUser.cs View File

@@ -2,7 +2,6 @@
using System; using System;
using System.Threading.Tasks; using System.Threading.Tasks;
using Model = Discord.API.User; using Model = Discord.API.User;
using PresenceModel = Discord.API.Presence;


namespace Discord.WebSocket namespace Discord.WebSocket
{ {
@@ -55,11 +54,6 @@ namespace Discord.WebSocket
} }
return hasChanges; return hasChanges;
} }
internal virtual void Update(ClientState state, PresenceModel model)
{
Presence = SocketPresence.Create(model);
//Update(state, model.User);
}


public Task<RestDMChannel> CreateDMChannelAsync(RequestOptions options = null) public Task<RestDMChannel> CreateDMChannelAsync(RequestOptions options = null)
=> UserHelper.CreateDMChannelAsync(this, Discord, options); => UserHelper.CreateDMChannelAsync(this, Discord, options);


Loading…
Cancel
Save