ページ 1 / 1
【解決済み】SuperToolsEngineについて
Posted: 2017年5月11日(木) 18:03
by にゃたま
こんばんは。
海外の方が制作されているSuperToolsEngine(
http://sumrndm.site/super-tools-engine/)の
変数&スイッチ表示の機能を使いたいと思っていますが
Variables画面を例にすると画面に1から40までの変数を表示させている状態で
41以降の変数を変更しようとするとCannot set property 'value' of nullのエラーが表示されます。
Switchesの画面も同様の問題が発生します。
このエラーを改善する良い方法はないでしょうか?
皆様のお力を貸していただけませんでしょうか?
Re: SuperToolsEngineについて
Posted: 2017年5月11日(木) 22:12
by トリアコンタン
どうやら同プラグインのバグのようです。
規約に再配布禁止とあったので、ソースコードの2954行目付近を以下のように書き換えてください。
コード: 全て選択
_.Game_Switches_setValue = Game_Switches.prototype.setValue;
Game_Switches.prototype.setValue = function(switchId, value) {
_.Game_Switches_setValue.apply(this, arguments);
if(DebugManager.active && DebugManager.mode === 'switch' && switchId > 0 && switchId < $dataSystem.switches.length) {
if (!DebugManager.isInRangeOfVariable(switchId)) return;
const val = this._data[switchId];
MakerManager.document.getElementById('Switch ' + switchId).checked = val;
MakerManager.document.getElementById('Switch ' + switchId + ' Label').innerHTML = val ? 'ON' : 'OFF'
}
};
//-----------------------------------------------------------------------------
// Game_Variables
//-----------------------------------------------------------------------------
_.Game_Variables_setValue = Game_Variables.prototype.setValue;
Game_Variables.prototype.setValue = function(variableId, value) {
_.Game_Variables_setValue.apply(this, arguments);
if(DebugManager.active && DebugManager.mode === 'variable' && variableId > 0 && variableId < $dataSystem.variables.length) {
if (!DebugManager.isInRangeOfVariable(variableId)) return;
const val = this._data[variableId];
MakerManager.document.getElementById('Variable ' + variableId).value = val;
}
};
DebugManager.isInRangeOfVariable = function(id) {
const first = this._listIndex * 40 + 1;
return id >= first && id <= first + 39;
};
Re: SuperToolsEngineについて
Posted: 2017年5月12日(金) 00:51
by にゃたま
トリアコンタン様
トリアコンタン さんが書きました:どうやら同プラグインのバグのようです。
規約に再配布禁止とあったので、ソースコードの2954行目付近を以下のように書き換えてください。
完璧でございます!助かりました。本当にありがとうございました。
この変数やスイッチがわかるウィンドウは凄く便利なので動いて超嬉しいです(T_T)
どうもF9はゲームを実行しながらリアルタイムでみれないので不便だと思っていました。
この御恩は一生忘れません。