Package org.bukkit.conversations

# Interface Prompt

All Superinterfaces:
  `Cloneable`

All Known Implementing Classes:
  `BooleanPrompt`, `FixedSetPrompt`, `MessagePrompt`, `NumericPrompt`, `PlayerNamePrompt`, `RegexPrompt`, `StringPrompt`, `ValidatingPrompt`

public interface Prompt extends Cloneable
A Prompt is the main constituent of a `Conversation`. Each prompt displays text to the user and optionally waits for a user's response. Prompts are chained together into a directed graph that represents the conversation flow. To halt a conversation, END_OF_CONVERSATION is returned in liu of another Prompt object.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final Prompt`
`END_OF_CONVERSATION`
A convenience constant for indicating the end of a conversation.

## Method Summary

Modifier and Type
Method
Description
`@Nullable Prompt`
`acceptInput(@NotNull ConversationContext context, @Nullable String input)`
Accepts and processes input from the user.
`boolean`
`blocksForInput(@NotNull ConversationContext context)`
Checks to see if this prompt implementation should wait for user input or immediately display the next prompt.
`@NotNull String`
`getPromptText(@NotNull ConversationContext context)`
Gets the text to display to the user when this prompt is first presented.

## Field Details

### END_OF_CONVERSATION

static final Prompt END_OF_CONVERSATION
A convenience constant for indicating the end of a conversation.

## Method Details

### getPromptText

@NotNull @NotNull String getPromptText(@NotNull @NotNull ConversationContext context)
Gets the text to display to the user when this prompt is first presented.

Parameters:
  `context` - Context information about the conversation.
Returns:
  The text to display.

### blocksForInput

boolean blocksForInput(@NotNull @NotNull ConversationContext context)
Checks to see if this prompt implementation should wait for user input or immediately display the next prompt.

Parameters:
  `context` - Context information about the conversation.
Returns:
  If true, the `Conversation` will wait for input before continuing. If false, `acceptInput(ConversationContext, String)` will be called immediately with `null` input.

### acceptInput

@Nullable @Nullable Prompt acceptInput(@NotNull @NotNull ConversationContext context, @Nullable @Nullable String input)
Accepts and processes input from the user. Using the input, the next Prompt in the prompt graph is returned.

Parameters:
  `context` - Context information about the conversation.
  `input` - The input text from the user.
Returns:
  The next Prompt in the prompt graph.