Project1

标题: 请问这种敌人带视线的功能是怎么实现的 [打印本页]

作者: bananaskin2023    时间: 2023-10-22 12:04
标题: 请问这种敌人带视线的功能是怎么实现的
白色的正方形,玩家接触就会触发事件,而且还能跟随敌人方向移动

11.png (173.51 KB, 下载次数: 23)

11.png

作者: Echo回声定位    时间: 2023-10-22 13:34
纯事件有三种办法可以实现
第一种适用于路线固定型的敌人。
给敌人周围设置好一圈接触就会触发且可穿过的事件,把敌人的路径复制给它,让它跟敌人一起移动。
如果玩家接触到事件就打开某个开关让其沉默,并让中央的敌人转换为接近玩家的状态进行追杀

第二种适用于路线不固定的敌人
首先用变量里的地图xyz手动为敌人创建一个视野圈
比如当敌人朝向下方时,玩家进入它的前方6格,也就是“敌人坐标(地图x,地图y)≤玩家坐标(地图x,地图y)≤敌人坐标(地图x,地图y+2)”时触发追逐,
以此类推创建四个方向不同的视野圈。

第二步就是让这个视野圈显示出来,那这个办法就很多了
可以创建一个48*48的单格视野圈图片,然后读取敌人坐标,通过变量计算在前方对应的格子上显示图片
偷懒的话直接画四方向的视野圈硬显示就行了【游戏体积暴涨
当然也可以直接把视野圈画在行走图里,开启追逐后替换敌人的行走图,但是这样记得要对障碍物的显示等级做调整,不然会出现圈在障碍物上面穿模的状态。缺点是游戏体积会暴涨且敌人在地图上的显示容易错位这样

第三种是将视野圈作为事件,像地雷那样平铺在一个区域,然后让敌人事件在上面移动。
通过读取敌人位置显示对应视野的范围
作者: Echo回声定位    时间: 2023-10-22 13:35
Echo回声定位 发表于 2023-10-22 13:34
纯事件有三种办法可以实现
第一种适用于路线固定型的敌人。
给敌人周围设置好一圈接触就会触发且可穿过的事 ...

第三种一般不太推荐,因为过多的事件可能会卡,但是可以用这个思路写扫雷的小游戏
作者: 1071257831    时间: 2023-10-22 14:18
这个插件
作者: bananaskin2023    时间: 2023-10-22 18:48
Echo回声定位 发表于 2023-10-22 13:34
纯事件有三种办法可以实现
第一种适用于路线固定型的敌人。
给敌人周围设置好一圈接触就会触发且可穿过的事 ...

谢谢大佬给予的思路
作者: bananaskin2023    时间: 2023-10-22 18:49
1071257831 发表于 2023-10-22 14:18
这个插件

太棒了,就是这种,谢谢大佬




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1