Project1
标题:
如何用脚本判断存档窗口是否打开
[打印本页]
作者:
thyzqwy
时间:
2021-3-26 15:00
标题:
如何用脚本判断存档窗口是否打开
需要在条件分歧里判断存档窗口是否打开,首次接触MZ,不晓得怎么写。有知道的吗?谢谢
作者:
redsight
时间:
2021-3-29 21:19
在群里帮你问了一下
SceneManager._scene.constructor === Scene_Save
作者:
thyzqwy
时间:
2021-3-30 12:16
谢谢帮忙,这个代码好像不行的,在控制台尝试了,一直返回false,无论存档页面是否打开。SceneManager._scene.constructor === Scene_Save
false。本来是想判断打开存档页面更换行走图的,发现那个更换行走图的代码也不行,控制台一直报错。$gameParty.members[3].setCharacterImage(people4, 2)
VM610:1 Uncaught TypeError: Cannot read property 'setCharacterImage' of undefined
at <anonymous>:1:23
(anonymous)
@
VM610:1。不知道哪里错了。。。。
作者:
redsight
时间:
2021-3-30 15:39
SceneManager._scene.constructor === Scene_Save这个我是在控制台试过的没问题啊
$gameParty.members[3]好像是$gameParty.members()[3]吧
我上班不能玩RM,等晚上回去再试试
作者:
thyzqwy
时间:
2021-3-30 19:57
谢谢回答。新开工程测试可以的。发现是使用飞猫的那个存档插件后造成的。用这个的初衷是使用了八方向行走图,存档时显示的行走图不是一帧的,所以想在存档界面更换行走图。已经用其他办法解决了。分享给有需要的新手,高手勿喷。。。。。
Game_Party.prototype.charactersForSavefile = function() {
return this.battleMembers().map(actor => [
actor.characterName()+"save",//更改存档行走图名字
actor.characterIndex()
]);
另外,发现修改这个地方也是一种方法。
Window_Base.prototype.drawCharacter = function(
characterName, characterIndex, x, y
) {
const bitmap = ImageManager.loadCharacter(characterName);
const big = ImageManager.isBigCharacter(characterName);
const pw = bitmap.width / (big ? 8 : 8);
const ph = bitmap.height / (big ? 8 : 8);
const n = big ? 0: characterIndex;
const sx = ((n % 8) * 8 + 1) * pw;
const sy = Math.floor(n / 8) * 8 * ph;
this.contents.blt(bitmap, sx, sy, pw, ph, x - pw / 2, y - ph);
};
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1