//============================================================================= // MrTS_SimpleShopTax.js (日本語版+価格0機能追加) //============================================================================= /*: * @plugindesc ショップ全体の売買価格を簡単に一括変更できます(価格を0にする機能追加)。 * @author Mr. Trivel * * @help * -------------------------------------------------------------------------------- * 使用規約 * -------------------------------------------------------------------------------- * ヘッダーを削除したり、このプラグインの作者を偽らないでください。 * プロジェクトでこのプラグインを使用する場合は、Mr. Trivel をクレジットしてください。 * 商用・非商用プロジェクトに自由に使用可能です。 * -------------------------------------------------------------------------------- * Version 1.2 * -------------------------------------------------------------------------------- * * -------------------------------------------------------------------------------- * プラグインコマンド * -------------------------------------------------------------------------------- * SetTaxTo Buy [税率] - 購入価格を指定した税率(%)で増減させます。 * SetTaxTo Sell [税率] - 売却価格を指定した税率(%)で増減させます。 * SetTaxTo Buy Zero - 購入価格を0にします。 * SetTaxTo Sell Zero - 売却価格を0にします。 * * 使用例: * SetTaxTo Buy 50 - 購入価格を50%値上げ * SetTaxTo Buy -75 - 購入価格を75%値下げ * SetTaxTo Sell 25 - 売却価格を25%値下げ * SetTaxTo Sell -50 - 売却価格を50%値上げ * SetTaxTo Buy Zero - 購入価格を0に設定 * SetTaxTo Sell Zero - 売却価格を0に設定 * -------------------------------------------------------------------------------- * 更新履歴 * -------------------------------------------------------------------------------- * 1.2 - 価格を0にする機能追加、日本語化 * 1.1 - 売却価格変更機能追加 * 1.0 - 初版リリース */ (function() { //-------------------------------------------------------------------------- // Game_Interpreter // var _Game_Interpreter_pluginCommand = Game_Interpreter.prototype.pluginCommand; Game_Interpreter.prototype.pluginCommand = function(command, args) { _Game_Interpreter_pluginCommand.call(this, command, args); if (command.toLowerCase() === 'settaxto') { var type = args[0].toUpperCase(); var value = args[1].toUpperCase(); if (value === 'ZERO') { if (type === 'BUY') $gameSystem.setBuyTaxTo(-100); if (type === 'SELL') $gameSystem.setSellTaxTo(100); } else { switch(type) { case 'BUY': $gameSystem.setBuyTaxTo(Number(args[1])); break; case 'SELL': $gameSystem.setSellTaxTo(Number(args[1])); break; } } } }; //-------------------------------------------------------------------------- // Window_ShopBuy // var _WindowShopBuy_price = Window_ShopBuy.prototype.price; Window_ShopBuy.prototype.price = function(item) { var price = _WindowShopBuy_price.call(this, item); price += Math.floor(price * $gameSystem.getBuyTax()); return Math.max(price, 0); }; //-------------------------------------------------------------------------- // Scene_Shop // var _Scene_Shop_sellingPrice = Scene_Shop.prototype.sellingPrice; Scene_Shop.prototype.sellingPrice = function() { var sellingPrice = _Scene_Shop_sellingPrice.call(this); return Math.max(0, sellingPrice - Math.floor(sellingPrice * $gameSystem.getSellTax())); }; //-------------------------------------------------------------------------- // Game_System // Game_System.prototype.setBuyTaxTo = function(tax) { this._shopBuyTax = tax; }; Game_System.prototype.setSellTaxTo = function(tax) { this._shopSellTax = tax; }; Game_System.prototype.getBuyTax = function() { return this._shopBuyTax / 100 || 0; }; Game_System.prototype.getSellTax = function() { return this._shopSellTax / 100 || 0; }; })();