Java Swing游戏开发学习13

本文介绍了在Unity游戏中实现NPC对话功能,包括新增GameState状态来控制对话流程,创建对话子窗口进行文本渲染,以及处理文本换行和玩家与NPC的交互逻辑。视频作者还提到代码中的一个小问题和后续修复。
摘要由CSDN通过智能技术生成

内容来自RyiSnow视频讲解

这一节讲的是与NPC对话,新增了一个Game State游戏状态,对话状态。游戏状态后面会根据需要持续添加的。

与NPC对话

增加一个对话状态

在游戏窗口中增加一个int变量,表示对话状态,开始的时候玩家碰到NPC就会开始对话状态,按Enter重新进入游戏中状态。后来又改成了,当玩家碰到NPC按下Enter键才会进入对话状态。

实现对话的子窗口

这里叫“窗口“,不是特别准确,其实是在游戏窗口面板中填充绘制了一个圆角矩形,外面又描边绘制了一个frame(边框);为了看到后面的地图,又增加了一个透明度,最后的效果就是下面这样
在这里插入图片描述

显示对话内容

根据对话的“窗口”位置,x, y坐标确定对话内容坐标,然后将文本绘制到对话窗口里面,当文字过长的时候,文字会超出对话窗口。后面有相应的处理。
在这里插入图片描述

与npc面对面对话

在对话的时候,根据玩家面向的方向调整npc的方向即可。

文本过长的换行处理

在文本内容中提前增加了换行符号,这里使用的\n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值