赞 | 31 |
VIP | 0 |
好人卡 | 0 |
积分 | 56 |
经验 | 0 |
最后登录 | 2024-5-14 |
在线时间 | 407 小时 |
Lv4.逐梦者
- 梦石
- 0
- 星屑
- 5565
- 在线时间
- 407 小时
- 注册时间
- 2021-12-4
- 帖子
- 435
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
Game_CharacterBase.prototype.isMapPassable = function(x, y, d) {
const x2 = $gameMap.roundXWithDirection(x, d);
const y2 = $gameMap.roundYWithDirection(y, d);
const d2 = this.reverseDir(d);
return $gameMap.isPassable(x, y, d) && $gameMap.isPassable(x2, y2, d2);
}
上面是mv/mz判定一个人物能否走到相邻某格的函数,可以看到它使用了reverseDir同时判定了【当前图块能否从某个方向离开】和【相邻点图块能否从反方向进入】,但是在图块组设置里这两项是绑定的(相当于设定了一个图块作为正方形的四条边中哪几条可以被穿过)。
那么比如说我要做这样一个图块,它可以【从上、左、下进入】,但只能【向右离开】,怎么做会方便一些呢?
图块组设置里提供了地形标志(terrain tag)但是这东西只支持0-7,但凡它如果支持0-15我都会好办很多qwq
目前想到的唯一思路是在其他bit中找一个用不到的配合terrain tag凑出4个bit来表示(比如说我用不到「有害地形」),但是这样会很不方便查看。 |
|