Project1

标题: 纯小白,想问下怎么让状态栏的敏捷和幸运放在攻击防御..... [打印本页]

作者: cwz    时间: 2023-5-5 16:19
标题: 纯小白,想问下怎么让状态栏的敏捷和幸运放在攻击防御.....
本帖最后由 cwz 于 2023-5-5 16:28 编辑


如图,我想让第三行显示成敏捷:0,第四行显示成幸运:27,然后最后两行才是魔法攻击魔法防御。

是在rmmz_windows.js里面改吗?有没有大佬告诉我该怎么改?研究了大半天了


还有这个装备栏上的,同样也想把敏捷和幸运放到第三四行
作者: 小秋橙    时间: 2023-5-5 16:19
Window_EquipStatus.prototype.drawAllParams = function() {
    let a = [2,3,6,7,4,5]; // 强行指定顺序,默认是2,3,4,5,6,7(0和1是最大hp/mp)
    for (let i = 0; i < 6; i++) {
        const x = this.itemPadding();
        const y = this.paramY(i);
        this.drawItem(x, y, a[i]); // 读取上面指定的顺序,而不是默认的 2+i
    }
};
上述函数位于rmmz_windows.js的第2523行左右,有注释的两行为新增或修改内容。
作者: cwz    时间: 2023-5-6 14:29
解决掉了
作者: cwz    时间: 2023-5-8 15:34
小秋橙 发表于 2023-5-5 16:19
Window_EquipStatus.prototype.drawAllParams = function() {
    let a = [2,3,6,7,4,5]; // 强行指定顺序 ...

好的,谢谢大佬
作者: ex悠米桑    时间: 2023-5-25 05:56
小秋橙 发表于 2023-5-5 16:19
Window_EquipStatus.prototype.drawAllParams = function() {
    let a = [2,3,6,7,4,5]; // 强行指定顺序 ...

我也用了一下大佬的方法,但是只有在装备页面顺序修改了,但是在状态界面,还是默认的顺序???不知道是不是我哪里搞错了……求个指教
作者: 小秋橙    时间: 2023-5-25 13:55
ex悠米桑 发表于 2023-5-25 05:56
我也用了一下大佬的方法,但是只有在装备页面顺序修改了,但是在状态界面,还是默认的顺序???不知道是 ...

好问题,这就涉及到窗口类的继承关系了。
Window_StatusBase类有两个子类Window_StatusParams和Window_EquipStatus。
Window_EquipStatus类由drawAllParams方法(我上面的回答)控制顺序,而Window_StatusParams类由drawItem方法控制顺序。
因此需要重写该方法:
Window_StatusParams.prototype.drawItem = function(index) {
    const rect = this.itemLineRect([0,1,4,5,2,3][index]); // 修改这一行,注意下一行会+2
    const paramId = index + 2;
    const name = TextManager.param(paramId);
    const value = this._actor.param(paramId);
    this.changeTextColor(ColorManager.systemColor());
    this.drawText(name, rect.x, rect.y, 160);
    this.resetTextColor();
    this.drawText(value, rect.x + 160, rect.y, 60, "right");
};
作者: ex悠米桑    时间: 2023-5-25 15:45
小秋橙 发表于 2023-5-25 13:55
好问题,这就涉及到窗口类的继承关系了。
Window_StatusBase类有两个子类Window_StatusParams和Window_Eq ...

谢谢大佬指点!已经成功修改顺序了!!!大佬威武
作者: 野原新之助参见    时间: 2023-7-29 14:58
小秋橙 发表于 2023-5-5 16:19
Window_EquipStatus.prototype.drawAllParams = function() {
    let a = [2,3,6,7,4,5]; // 强行指定顺序 ...

大佬,请问怎么在栏里添加暴击率命中率这些附加属性?




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