-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMEC_Core.js
More file actions
90 lines (83 loc) · 3.11 KB
/
MEC_Core.js
File metadata and controls
90 lines (83 loc) · 3.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
/*:
* @target MZ
* @plugindesc 🌿 Minto Engine Core v1.0 (M.E.C.) — 共通基幹エンジン by MintoSoft
* @author MintoSoft
* @help
* -------------------------------------------------------
* 🧩 Minto Engine Core v1.0
* -------------------------------------------------------
* MintoSoft 全作品の共通基盤となる Core モジュール。
* 以下のMECシリーズと連携して最適化を行います。
*
* - MEC_WorkerLoader.js (JSON並列+キャッシュ)
* - MEC_Optimizer.js (FPS・メモリ最適化)
* - MEC_LoaderUI.js (起動画面UI:任意)
* - MEC_DevTools.js (開発支援・デバッグ)
*
* ⚙️ 基本仕様
* - グローバル変数名: MEC
* - テーマカラー: ミントグリーン (#7fffd4)
* - 著作権表記: © MintoSoft
*
* 💬 コンソールでの確認
* 起動時に [M.E.C.] ロゴとバージョンが表示されます。
* 他モジュールのロード状況も自動検出。
*
* -------------------------------------------------------
* Powered by Minto Engine Core (M.E.C.)
* -------------------------------------------------------
*/
(() => {
const MEC = {};
MEC.name = "Minto Engine Core";
MEC.version = "1.0.0";
MEC.author = "MintoSoft";
MEC.color = "#7fffd4"; // ミントグリーン
MEC.modules = {};
// ====== ロゴ出力 ======
function logBanner() {
const style1 = "color:#7fffd4;font-weight:bold;";
const style2 = "color:#cccccc;";
console.log("%c🌿 Minto Engine Core%c v" + MEC.version + " — © MintoSoft", style1, style2);
}
// ====== モジュール検出 ======
function detectModules() {
const known = [
{ key: "WorkerLoader", desc: "JSON並列+キャッシュ" },
{ key: "Optimizer", desc: "FPS・メモリ最適化" },
{ key: "LoaderUI", desc: "起動画面UI" },
{ key: "DevTools", desc: "開発支援" }
];
known.forEach(m => {
const modName = "MEC_" + m.key;
MEC.modules[m.key] = !!window[modName];
if (MEC.modules[m.key]) {
console.log(`%c[M.E.C.] Loaded: ${modName} (${m.desc})`, "color:#7fffd4");
}
});
}
// ====== 安全な登録 ======
if (!window.MEC) window.MEC = MEC;
// ====== 起動時処理 ======
const _Scene_Boot_start = Scene_Boot.prototype.start;
Scene_Boot.prototype.start = function() {
if (!_Scene_Boot_start._mec_init) {
logBanner();
detectModules();
console.log("%c[M.E.C.] Initialization complete.", "color:#7fffd4");
_Scene_Boot_start._mec_init = true;
}
_Scene_Boot_start.call(this);
};
// ====== デバッグキー (Ctrl+F9で概要再表示) ======
const _updateScene = Scene_Map.prototype.update;
Scene_Map.prototype.update = function() {
_updateScene.call(this);
if (Input.isPressed("control") && Input.isTriggered("f9")) {
logBanner();
detectModules();
console.log("[M.E.C.] Runtime info:", JSON.stringify(MEC.modules, null, 2));
}
};
console.log("%c[M.E.C.] Core module loaded.", "color:#7fffd4");
})();