查看: 2257|回复: 3

[有事请教] 求助!!!如何在修改分辨率后按钮位置不变呢

[复制链接]
梦石
0
星屑
507
在线时间
83 小时
注册时间
2021-12-3
回帖
12
发表于 2022-11-19 22:29:34 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
QQ截图20221119222659.png
如图,修改分辨率后按钮变得很为何。、
另外本人完全不懂代码...
有没有什么插件可以做到按钮变回816X624的尺寸呢
梦石
2
星屑
8479
在线时间
463 小时
注册时间
2021-12-4
回帖
486

MZ评测员

发表于 2022-11-19 23:57:54 | 显示全部楼层
不知道你用什么插件改的分辨率,最好是官方自带的Community_Basic.js。
rpg_managers.js第1800行左右有以下代码:
SceneManager._scene             = null;
SceneManager._nextScene         = null;
SceneManager._stack             = [];
SceneManager._stopped           = false;
SceneManager._sceneStarted      = false;
SceneManager._exiting           = false;
SceneManager._previousClass     = null;
SceneManager._backgroundBitmap  = null;
SceneManager._screenWidth       = 816;
SceneManager._screenHeight      = 624;
SceneManager._boxWidth          = 816;
SceneManager._boxHeight         = 624;
SceneManager._deltaTime = 1.0 / 60.0;
其中screenWidth和screenHeight是「游戏视野」的大小,而boxWidth和boxHeight是「UI面板」的大小,Community_Basic.js中修改前者会绑定修改后者,如下:
[pre lang="javascript" line="1" file="Community_Basic.js"](function() {
    function toNumber(str, def) {
        return isNaN(str) ? def : +(str || def);
    }

    var parameters = PluginManager.parameters('Community_Basic');
    var cacheLimit = toNumber(parameters['cacheLimit'], 10);
    var screenWidth = toNumber(parameters['screenWidth'], 816);
    var screenHeight = toNumber(parameters['screenHeight'], 624);
    var renderingMode = parameters['renderingMode'].toLowerCase();
    var alwaysDash = parameters['alwaysDash'].toLowerCase() === 'on';
    var windowWidthTo = toNumber(parameters['changeWindowWidthTo'], 0);
    var windowHeightTo = toNumber(parameters['changeWindowHeightTo'], 0);

    var windowWidth;
    var windowHeight;

    if(windowWidthTo){
        windowWidth = windowWidthTo;
    }else if(screenWidth !== SceneManager._screenWidth){
        windowWidth = screenWidth;
    }

    if(windowHeightTo){
        windowHeight = windowHeightTo;
    }else if(screenHeight !== SceneManager._screenHeight){
        windowHeight = screenHeight;
    }


    ImageCache.limit = cacheLimit * 1000 * 1000;
    SceneManager._screenWidth = screenWidth;
    SceneManager._screenHeight = screenHeight;
    SceneManager._boxWidth = screenWidth;
    SceneManager._boxHeight = screenHeight; // 这里就是绑定修改,可以把本行和上一行的等号右侧改为816和624来解绑

    SceneManager.preferableRendererType = function() {
        if (Utils.isOptionValid('canvas')) {
            return 'canvas';
        } else if (Utils.isOptionValid('webgl')) {
            return 'webgl';
        } else if (renderingMode === 'canvas') {
            return 'canvas';
        } else if (renderingMode === 'webgl') {
            return 'webgl';
        } else {
            return 'auto';
        }
    };

    var _ConfigManager_applyData = ConfigManager.applyData;
    ConfigManager.applyData = function(config) {
        _ConfigManager_applyData.apply(this, arguments);
        if (config['alwaysDash'] === undefined) {
            this.alwaysDash = alwaysDash;
        }
    };


    var _SceneManager_initNwjs = SceneManager.initNwjs;
    SceneManager.initNwjs = function() {
        _SceneManager_initNwjs.apply(this, arguments);

        if (Utils.isNwjs() && windowWidth && windowHeight) {
            var dw = windowWidth - window.innerWidth;
            var dh = windowHeight - window.innerHeight;
            window.moveBy(-dw / 2, -dh / 2);
            window.resizeBy(dw, dh);
        }
    };
})();[/pre]
回复 1 0

使用道具 举报

梦石
0
星屑
507
在线时间
83 小时
注册时间
2021-12-3
回帖
12
 楼主| 发表于 2022-11-20 10:36:48 | 显示全部楼层
本帖最后由 Feng020120 于 2022-11-20 10:38 编辑
小秋橙 发表于 2022-11-19 23:57
不知道你用什么插件改的分辨率,最好是官方自带的Community_Basic.js。
rpg_managers.js第1800行左右有以下 ...



截图.png
谢谢大佬,刚试了一下,画面好像还是有点小问题...
回复

使用道具 举报

梦石
0
星屑
338
在线时间
169 小时
注册时间
2022-7-14
回帖
83
发表于 2022-11-20 21:19:55 | 显示全部楼层
你这是mv吗?看起来很奇怪

我用得是GraphicalDesignMode这个插件,它不需要编程,只要开启插件里的开关后拖动位置就可以了 ,横键盘123456的数字键还可以改变窗口的长宽高字体,然后按ctrl+s保存
反正能给你这个窗口弄回去原来的分辨率那样,有很多人再用

但是要记得如果你用了yep的什么核心的话,里面也有类似的窗口自动大小功能,你找找看,得把它关掉,不然会影响
然后yep的核心改分辨率也是不错的,一下子就可以改成1080P
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部