コード例 #1
0
        private bool OutputMultipleUsages(Player player, UserInputData userInputData, List <CommandMethodData> commandMethods)
        {
            var strBuilder = new StringBuilder();

            strBuilder.Append(_configuration.MultipleUsagesOutputPrefix);

            foreach (var methodData in commandMethods)
            {
                strBuilder.AppendLine();
                AddUsageText(strBuilder, userInputData.Command, methodData);
            }


            var messageOutputData = new CommandOutputData(player, strBuilder.ToString(), userInputData);

            _configuration.MessageOutputHandler.Invoke(messageOutputData);
            return(true);
        }
コード例 #2
0
        private bool OutputOneUsage(Player player, UserInputData userInputData, List <CommandMethodData> commandMethods)
        {
            var methodData = commandMethods.FirstOrDefault();

            if (methodData is null)
            {
                return(false);
            }

            var strBuilder = new StringBuilder(_configuration.SingleUsageOutputPrefix);

            AddUsageText(strBuilder, userInputData.Command, methodData);

            var messageOutputData = new CommandOutputData(player, strBuilder.ToString(), userInputData);

            _configuration.MessageOutputHandler.Invoke(messageOutputData);
            return(true);
        }