“Chemdah 开发者文档:会话控制”的版本间的差异
来自Purtmars Wikipedia —— 普特莫斯维基
(建立内容为“{{:Chemdah 开发者文档目录}} = 关系 = 对话(Conversation)与会话(Session)是两个不同的概念,如同类(Class)与对象(Object)…”的新页面) |
|||
第23行: | 第23行: | ||
): CompletableFuture<Session> | ): CompletableFuture<Session> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | 通过 '''player.conversationSession''' 扩展属性可以获取到玩家正在进行的会话,若返回空则视为玩家不在对话。 |
2021年5月5日 (三) 22:19的版本
目录
- Chemdah
- 开始
- 基本
- 事件
- ink.ptms.chemdah.api.event.collect.ConversationEvents
- ink.ptms.chemdah.api.event.collect.ObjectiveEvents
- ink.ptms.chemdah.api.event.collect.PlayerEvents
- ink.ptms.chemdah.api.event.collect.QuestEvents
- ink.ptms.chemdah.api.event.collect.TemplateEvents
- ink.ptms.chemdah.api.event.InferEntityHookEvent
- ink.ptms.chemdah.api.event.InferItemHookEvent
- ink.ptms.chemdah.api.event.PartyHookEvent
- 对话相关
- 数据相关
- 任务相关
关系
对话(Conversation)与会话(Session)是两个不同的概念,如同类(Class)与对象(Object)的关系。
对话(Conversation)中包含一个核心方法:
/**
* 唤起对话
* 脚本代理的执行在添加对话内容之前
* 所有脚本包括嵌入式在内都会继承会话中的所有变量
*
* @param player 玩家
* @param origin 原点(对话实体的头顶坐标)
* @param sessionTop 上层会话(继承关系)
* @param npcName 对话 NPC 名称
* @param npcObject 对话 NPC 对象
*/
fun open(
player: Player,
origin: Location,
sessionTop: Session? = null,
npcName: String? = null,
npcObject: Any? = null
): CompletableFuture
通过 player.conversationSession 扩展属性可以获取到玩家正在进行的会话,若返回空则视为玩家不在对话。