コード例 #1
0
ファイル: ServerEmoji.cs プロジェクト: hujgup/DiscordApi
 private ServerEmoji(ulong forServer, EmojiJson json, ulong ogId) : base(json.id, json.name)
 {
     if (json.id == 0)
     {
         throw new NoSuchEmojiException("No emoji with ID " + ogId + " exists on server " + forServer + ".");
     }
     ServerId = forServer;
     Server   = new CachedPromise <Servers.Server>(Servers.Server._cache, ServerId, Servers.Server.GetAsync);
 }
コード例 #2
0
ファイル: ServerEmoji.cs プロジェクト: hujgup/DiscordApi
 private static void Populate(ServerEmoji obj, EmojiJson json, [CanBeNull] object state)
 {
     Emoji.Populate(obj, json);
     obj.UsableRoles = json.roles.ToIdDic(Role._cache, async(id, c) => await Role.GetAsync(id, obj.ServerId, c));
     obj.HasCreator  = json.user != null;
     if (obj.HasCreator)
     {
         // ReSharper disable once PossibleNullReferenceException (checked already)
         obj.CreatorId = json.user.id;
         obj.Creator   = User.CreateFromJson(json.user, obj.ServerId);
     }
     else
     {
         obj.CreatorId = 0;
     }
     obj.MustWrapInColons = json.require_colons;
     obj.IsManaged        = json.managed;
 }
コード例 #3
0
ファイル: ServerEmoji.cs プロジェクト: hujgup/DiscordApi
 internal static ServerEmoji CreateFromJson(ulong serverId, EmojiJson json, [CanBeNull] object state)
 {
     return(FactoryUtils.CreateFromJson(_cache, state, json2 => new ServerEmoji(serverId, json, 1), Populate, json));
 }
コード例 #4
0
ファイル: Emoji.cs プロジェクト: hujgup/DiscordApi
 internal static void Populate(Emoji obj, EmojiJson json)
 {
     obj.Name = json.name;
 }