58 lines
1.6 KiB
Java
58 lines
1.6 KiB
Java
package org.bukkit.conversations;
|
|
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
|
/**
|
|
* The Conversable interface is used to indicate objects that can have
|
|
* conversations.
|
|
*/
|
|
public interface Conversable {
|
|
|
|
/**
|
|
* Tests to see of a Conversable object is actively engaged in a
|
|
* conversation.
|
|
*
|
|
* @return True if a conversation is in progress
|
|
*/
|
|
public boolean isConversing();
|
|
|
|
/**
|
|
* Accepts input into the active conversation. If no conversation is in
|
|
* progress, this method does nothing.
|
|
*
|
|
* @param input The input message into the conversation
|
|
*/
|
|
public void acceptConversationInput(@NotNull String input);
|
|
|
|
/**
|
|
* Enters into a dialog with a Conversation object.
|
|
*
|
|
* @param conversation The conversation to begin
|
|
* @return True if the conversation should proceed, false if it has been
|
|
* enqueued
|
|
*/
|
|
public boolean beginConversation(@NotNull Conversation conversation);
|
|
|
|
/**
|
|
* Abandons an active conversation.
|
|
*
|
|
* @param conversation The conversation to abandon
|
|
*/
|
|
public void abandonConversation(@NotNull Conversation conversation);
|
|
|
|
/**
|
|
* Abandons an active conversation.
|
|
*
|
|
* @param conversation The conversation to abandon
|
|
* @param details Details about why the conversation was abandoned
|
|
*/
|
|
public void abandonConversation(@NotNull Conversation conversation, @NotNull ConversationAbandonedEvent details);
|
|
|
|
/**
|
|
* Sends this sender a message raw
|
|
*
|
|
* @param message Message to be displayed
|
|
*/
|
|
public void sendRawMessage(@NotNull String message);
|
|
}
|