Skip to content

Commit 14ea7de

Browse files
author
liply
authored
Merge pull request rpgtkoolmv#108 from rpgtkoolmv/window-size
add window size parameter
2 parents 8404080 + 7a7c6e3 commit 14ea7de

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

plugins/Community_Basic.js

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
* @plugindesc Basic plugin for manipulating important parameters..
33
* @author RM CoreScript team
44
*
5+
* @help
6+
* Basic plugin for manipulating important parameters..
7+
* There is no plugin command.
8+
*
59
* @param cacheLimit
610
* @desc The upper limit of images' cached size (MPixel)
711
* @default 20
@@ -14,6 +18,16 @@
1418
* @desc The resolution of screen height
1519
* @default 624
1620
*
21+
* @param windowScaleFactor
22+
* @desc Scale window to (screen size * value).
23+
* @default 1
24+
*
25+
* @param changeWindowWidthTo
26+
* @desc If set, change window width to this value
27+
*
28+
* @param changeWindowHeightTo
29+
* @desc If set, change window height to this value
30+
*
1731
* @param renderingMode
1832
* @desc The rendering mode (canvas/webgl/auto)
1933
* @default auto
@@ -27,6 +41,10 @@
2741
* @plugindesc 基本的なパラメーターを設定するプラグインです。
2842
* @author RM CoreScript team
2943
*
44+
* @help
45+
* 基本的なパラメーターを設定するプラグインです。
46+
* このプラグインにはプラグインコマンドはありません。
47+
*
3048
* @param cacheLimit
3149
* @desc 画像のメモリへのキャッシュの上限値 (MPix)
3250
* @default 20
@@ -39,6 +57,16 @@
3957
* @desc 画面サイズの高さ
4058
* @default 624
4159
*
60+
* @param windowScaleFactor
61+
* @desc ウインドウを、画面サイズの指定された値分拡大・縮小します
62+
* @default 1
63+
*
64+
* @param changeWindowWidthTo
65+
* @desc 値が設定された場合、ウインドウの幅を指定した値に変更
66+
*
67+
* @param changeWindowHeightTo
68+
* @desc 値が設定された場合、ウインドウの高さを指定した値に変更
69+
*
4270
* @param renderingMode
4371
* @desc レンダリングモード (canvas/webgl/auto)
4472
* @default auto
@@ -55,10 +83,33 @@
5583

5684
var parameters = PluginManager.parameters('Community_Basic');
5785
var cacheLimit = toNumber(parameters['cacheLimit'], 20);
86+
var scaleFactor = toNumber(parameters['windowScaleFactor'], 1);
5887
var screenWidth = toNumber(parameters['screenWidth'], 816);
5988
var screenHeight = toNumber(parameters['screenHeight'], 624);
6089
var renderingMode = parameters['renderingMode'].toLowerCase();
6190
var alwaysDash = parameters['alwaysDash'].toLowerCase() === 'on';
91+
var windowWidthTo = toNumber(parameters['changeWindowWidthTo'], 0);
92+
var windowHeightTo = toNumber(parameters['changeWindowHeightTo'], 0);
93+
94+
var windowWidth;
95+
var windowHeight;
96+
97+
if(windowWidthTo){
98+
windowWidth = windowWidthTo;
99+
}else if(scaleFactor !== 1){
100+
windowWidth = screenWidth * scaleFactor;
101+
}else if(screenWidth !== SceneManager._screenWidth){
102+
windowWidth = screenWidth;
103+
}
104+
105+
if(windowHeightTo){
106+
windowHeight = windowHeightTo;
107+
}else if(scaleFactor !== 1){
108+
windowHeight = screenHeight * scaleFactor;
109+
}else if(screenHeight !== SceneManager._screenHeight){
110+
windowHeight = screenHeight;
111+
}
112+
62113

63114
ImageCache.limit = cacheLimit * 1000 * 1000;
64115
SceneManager._screenWidth = screenWidth;
@@ -87,4 +138,17 @@
87138
this.alwaysDash = alwaysDash;
88139
}
89140
};
141+
142+
143+
var _SceneManager_initNwjs = SceneManager.initNwjs;
144+
SceneManager.initNwjs = function() {
145+
_SceneManager_initNwjs.apply(this, arguments);
146+
147+
if (Utils.isNwjs() && windowWidth && windowHeight) {
148+
var dw = windowWidth - window.innerWidth;
149+
var dh = windowHeight - window.innerHeight;
150+
window.moveBy(-dw / 2, -dh / 2);
151+
window.resizeBy(dw, dh);
152+
}
153+
};
90154
})();

0 commit comments

Comments
 (0)