コード例 #1
0
        /// <summary>
        /// returns result of operation
        /// </summary>
        /// <param name="content"></param>
        /// <param name="infoType"></param>
        /// <returns></returns>
        public async Task <string> SetDefaultStreamerInfo(string content, StreamerInfoType infoType)
        {
            string actionType = string.Empty;

            switch (infoType)
            {
            case StreamerInfoType.StartPhrase:
            {
                actionType         = "фраза для начала стрима";
                defaultStartPhrase = content;
                break;
            }

            case StreamerInfoType.ImageUrl:
            {
                actionType      = "картинка для стрима";
                defaultImageUrl = content;
                break;
            }

            case StreamerInfoType.EndPhrase:
            {
                actionType       = "фраза для окончания стрима";
                defaultEndPhrase = content;
                break;
            }
            }
            await SaveAsync();

            return($"Стандартная {actionType} успешно установлена");
        }
コード例 #2
0
        public async Task SetStreamerInfo(CommandContext ctx, string content, StreamerInfoType infoType)
        {
            var member = ctx.Member;

            if (!member.Roles.Any((x) => x.Id == streamerRoleId))
            {
                return;
            }

            var memberId = member.Id;

            if (!streamersInfo.ContainsKey(memberId))
            {
                streamersInfo.Add(memberId, new StreamerInfo());
            }
            string actionType = string.Empty;
            var    info       = streamersInfo[memberId];

            switch (infoType)
            {
            case StreamerInfoType.StartPhrase:
            {
                actionType       = "фраза для начала стрима";
                info.StartPhrase = content;
                break;
            }

            case StreamerInfoType.ImageUrl:
            {
                actionType    = "картинка для стрима";
                info.ImageUrl = content;
                break;
            }

            case StreamerInfoType.EndPhrase:
            {
                actionType     = "фраза для окончания стрима";
                info.EndPhrase = content;
                break;
            }
            }

            streamersInfo[memberId] = info;
            await SaveAsync();

            await ctx.Channel.SendTempMessageAsync($"Успешно установлена {actionType}: \"{content}\" у пользователя {ctx.Member.Mention}");
        }