Пример #1
0
 public Conversation(IPlugin plugin, IConversable forWhom, IPrompt firstPrompt, Dictionary <Object, Object> initialSessionData)
 {
     this.firstPrompt      = firstPrompt;
     this.context          = new ConversationContext(plugin, forWhom, initialSessionData);
     this.modal            = true;
     this.localEchoEnabled = true;
     this.prefix           = new NullConversationPrefix();
     this.cancellers       = new List <IConversationCanceller>();
 }
Пример #2
0
 protected override IPrompt AcceptValidatedInput(ConversationContext context, string input)
 {
     try
     {
         return(AcceptValidatedInput(context, int.Parse(input)));
     }
     catch (Exception e)
     {
         return(AcceptValidatedInput(context, 0));
     }
 }
Пример #3
0
        protected new string GetFailedValidationText(ConversationContext context, string invalidInput)
        {
            int tryNum;

            if (int.TryParse(invalidInput, out tryNum))
            {
                return(GetFailedValidationText(context, tryNum));
            }
            else
            {
                return(GetInputNotNumericText(context, invalidInput));
            }
        }
Пример #4
0
 public IPrompt AcceptInput(ConversationContext context, string input)
 {
     if (IsInputValid(context, input))
     {
         return(AcceptValidatedInput(context, input));
     }
     else
     {
         String failPrompt = GetFailedValidationText(context, input);
         if (failPrompt != null)
         {
             context.ForWhom.SendRawMessage(ChatColor.Red + failPrompt);
         }
         return(this);
     }
 }
Пример #5
0
        protected override bool IsInputValid(ConversationContext context, string input)
        {
            int inTry;

            return(int.TryParse(input, out inTry) && IsNumberValid(context, inTry));
        }
Пример #6
0
 protected IPrompt AcceptValidatedInput(ConversationContext context, string input)
 {
     return(AcceptValidatedInput(context, Convert.ToBoolean(input)));
 }
 public ConversationAbandonedEventArgs(Conversation conversation, IConversationCanceller canceller)
 {
     this.context   = conversation.Context;
     this.canceller = canceller;
 }
Пример #8
0
 protected override IPrompt AcceptValidatedInput(ConversationContext context, string input)
 {
     return(AcceptValidatedInput(context, plugin.GetServer().GetPlayer(input)));
 }
Пример #9
0
 public string GetPrefix(ConversationContext context)
 {
     return("");
 }
Пример #10
0
 public bool CancelBasedOnInput(ConversationContext context, string input)
 {
     StopTimer();
     StartTimer();
     return(false);
 }
 protected IPrompt GetNextPrompt(ConversationContext context)
 {
     return(Prompt.END_OF_CONVERSATION);
 }
Пример #12
0
 protected override bool IsInputValid(ConversationContext context, String input)
 {
     return(fixedSet.Contains(input));
 }
Пример #13
0
 protected abstract bool IsInputValid(ConversationContext context, string input);
Пример #14
0
 protected override bool IsInputValid(ConversationContext context, string input)
 {
     return(regex.Matches(input).Count > 0);
 }
Пример #15
0
 public string GetPrefix(ConversationContext context)
 {
     return(cachedPrefix);
 }
Пример #16
0
 protected bool IsNumberValid(ConversationContext context, int input)
 {
     return(true);
 }
Пример #17
0
 protected string GetFailedValidationText(ConversationContext context, int invalidInput)
 {
     return(null);
 }
Пример #18
0
 public abstract string GetPromptText(ConversationContext context);
 public string GetPromptText(ConversationContext context)
 {
     return(playerOnlyMessage);
 }
Пример #20
0
 protected string GetInputNotNumericText(ConversationContext context, string invalidInput)
 {
     return(null);
 }
Пример #21
0
 public bool BlocksForInput(ConversationContext context)
 {
     return(false);
 }
Пример #22
0
 public IPrompt AcceptInput(ConversationContext context, string input)
 {
     return(GetNextPrompt(context));
 }
Пример #23
0
 protected abstract IPrompt GetNextPrompt(ConversationContext context);
Пример #24
0
 public bool CancelBasedOnInput(ConversationContext context, string input)
 {
     throw new NotImplementedException();
 }
 public bool CancelBasedOnInput(ConversationContext context, string input)
 {
     return(input.Equals(escapeSequence));
 }
Пример #26
0
 protected override bool IsInputValid(ConversationContext context, string input)
 {
     return(plugin.GetServer().GetPlayer(input) != null);
 }
Пример #27
0
 protected override bool IsInputValid(ConversationContext context, string input)
 {
     string[] accepted = { "true", "false", "on", "off", "yes", "no" };
     return(accepted.Contains(input.ToLower()));
 }
Пример #28
0
 protected abstract IPrompt AcceptValidatedInput(ConversationContext context, IPlayer input);
Пример #29
0
 public abstract IPrompt AcceptInput(ConversationContext context, string input);