Пример #1
0
        public async Task AddShopRole(SocketRole role, int cost, int requiredLevel)
        {
            var user = _context.User as SocketGuildUser;

            if (user == null)
            {
                //todo: error handle
                return;
            }

            if (user.GuildPermissions.Administrator)
            {
                var serverCache = ServerDataManager.GetServerDataByServerId(_context.Guild.Id);
                var shopRole    = new ShopRoleModel(role.Id, role.Name, cost, requiredLevel);
                serverCache.AddShopRole(role.Id, shopRole);

                var builder = new EmbedBuilder();

                builder.WithTitle("Added shop role!");
                builder.WithAuthor(user.Username, user.GetAvatarUrl());
                builder.WithColor(255, 183, 229);
                builder.AddField("Role id", role.Id);
                builder.AddField("Role name", role.Name);

                builder.AddField("Role cost", cost);

                if (requiredLevel > 0)
                {
                    builder.AddField("Required level", requiredLevel);
                }
                await _context.Channel.SendMessageAsync("", false, builder.Build());
            }
            else
            {
                await _context.Channel.SendMessageAsync("Only admins can add shop roles!");
            }
        }
Пример #2
0
 public void AddShopRole(ulong roleId, ShopRoleModel shopRoleModel)
 {
     _shopRoleCache.Add(roleId, shopRoleModel);
 }