prison-brave/js/plugins/LevelLimit.js
2025-08-28 10:38:20 -05:00

66 lines
2.4 KiB
JavaScript

//=============================================================================
// RPG Maker MZ - LevelLimit
//
// Copyright 2024 min-pub. All rights reserved.
// This source code or any portion thereof must not be
// reproduced or used without licensed in any manner whatsoever.
//=============================================================================
/*:
* @target MZ
* @plugindesc 最大レベル設定(上限突破)
* @author 四号戦車
* @base PluginCommonBase
* @base PluginUtils
* @orderAfter PluginCommonBase
* @orderAfter PluginUtils
*
* @param maxLevel
* @text 最大レベル
* @desc 最大レベルを指定します。
* 100以上の指定が可能です。
* @type number
* @default 99
* @min 1
*
* @help LevelLimit.js
*
* Version: 0.0.1
*
* 最大レベルを100以上に設定出来ます。
*
*/
(() => {
"use strict";
//========================================================================
// プラグイン定義
//========================================================================
const pluginName = "LevelLimit";
const script = document.currentScript;
const param = PluginManagerEx.createParameter(script);
//========================================================================
// 定数定義
//========================================================================
//========================================================================
// コアスクリプト変更部 (Game_Actor)
//========================================================================
const _Game_Actor_paramBase = Game_Actor.prototype.paramBase;
Game_Actor.prototype.paramBase = function(paramId) {
if (this._level >= 100) {
const u_levelParam = this.currentClass().params[paramId][99];
const d_levelParam = this.currentClass().params[paramId][94];
const level = (this._level - 99) * ((u_levelParam - d_levelParam) / 5) + u_levelParam;
return Math.round(level);
} else {
return _Game_Actor_paramBase.apply(this, arguments);
}
};
const _Game_Actor_maxLevel = Game_Actor.prototype.maxLevel;
Game_Actor.prototype.maxLevel = function() {
return !this._maxLevel && param.maxLevel ? param.maxLevel : _Game_Actor_maxLevel.apply(this, arguments);
};
})();