赞 | 5 |
VIP | 1 |
好人卡 | 7 |
积分 | 18 |
经验 | 12264 |
最后登录 | 2024-11-24 |
在线时间 | 281 小时 |
Lv3.寻梦者
- 梦石
- 0
- 星屑
- 1837
- 在线时间
- 281 小时
- 注册时间
- 2008-7-11
- 帖子
- 658
|
回帖奖励 +25
本帖最后由 涂鸦boy 于 2024-1-3 01:53 编辑
最基础的方法, 将事件优先级改为「玩家接触」,这样无需按键, 怪物事件和玩家接触时就会触发事件中的内容
假如你已经这么做了, 但怪物还是在玩家身边徘徊
可以尝试我的事件农场中用脚本写的接触判定条件, 脚本比 MZ 默认的「玩家接触」更灵敏
把怪物事件触发条件改成「并行处理」,在事件中添加一个判断,条件使用脚本
这个稍微修改过, 事件农场中要求在范围内按下ok键,
以下脚本玩家和事件只要接近就成立, 脚本如下
- $gamePlayer.x >= $gameMap.event(this._eventId).x - 1 && $gamePlayer.x <= $gameMap.event(this._eventId).x + 1 && $gamePlayer.y >= $gameMap.event(this._eventId).y - 1 && $gamePlayer.y <= $gameMap.event(this._eventId).y + 1
复制代码
还有一种判定方法, 同样怪物事件「并行处理」, 并将优先级改为「在玩家下方」
这种方式玩家和怪物完全重叠时, 条件成立
- $gamePlayer.x === $gameMap.event(this._eventId).x && $gamePlayer.y === $gameMap.event(this._eventId).y
复制代码
也许你会问握哪种方式更好, 我想这需要你尝试了之后看哪种更适合你的玩法和你想要的视觉效果
我有写四种判定范围范例, 四种分别如下图顶部所示, 以上脚本是第一种判定范围, 需要其他的可以下载工程复制里面的方法
https://rpg.blue/thread-494882-1-1.html
|
|