Project1

标题: 有什么办法防止角色/事件跳跃出屏幕吗? [打印本页]

作者: ysfx277439288    时间: 5 天前
标题: 有什么办法防止角色/事件跳跃出屏幕吗?
做了一个被击中时会随机方向跳三格的敌人,在地图边缘很容易跳出屏幕,尝试用四个变量记录跳跃前后的坐标,跳跃后超出地图范围会跳回前一个记录的坐标,不过可能是因为跳出屏幕后就无法获取坐标了?总之并没有生效

因为这是远程射击(bullet插件),所以限制敌人的活动范围也并没有用

能想到的其他办法就是条件判断在地图边缘不再乱跳,而是只会跳向地图里侧

还有什么其他的插件之类的好办法吗?

捕获.PNG (103.7 KB, 下载次数: 2)

捕获.PNG

作者: alexncf125    时间: 4 天前
本帖最后由 alexncf125 于 2025-9-3 01:25 编辑
  1. const _Game_CharacterBase_jump_viparcher = Game_CharacterBase.prototype.jump;
  2. Game_CharacterBase.prototype.jump = function (xPlus, yPlus) {
  3.     const x = this.x; const y = this.y;
  4.     if (this.isCollidedWithCharacters(x + xPlus, y + yPlus)) return;
  5.     if ([2, 4, 6, 8].some((d) => !this.isMapPassable(x + xPlus, y + yPlus, d))) return;
  6.     _Game_CharacterBase_jump_viparcher.call(this, xPlus, yPlus);
  7. }
复制代码


修改自VIPArcher的跳跃不会跳到不能移动的位置
作者: ysfx277439288    时间: 4 天前
alexncf125 发表于 2025-9-3 01:23
修改自VIPArcher的跳跃不会跳到不能移动的位置

厉害,这样地图做大一圈围一堆空事件大于跳跃距离就可以了




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