FTKR Item Self Variables - FTKR_ItemSelfVariables.js
▼FTKR Item Self Variables(フトコロ様作) - FTKR_ItemSelfVariables.js
https://plugin.fungamemake.com/archives/1315
アイテム、スキル、アクター、エネミーにセルフ変数を追加する
ふりがな:あいてむじこへんすう
機能概要: アイテム、スキル、アクター、エネミーにセルフ変数を追加する
利用規約(ライセンス): MITライセンス
作者:フトコロ
作者サイト:https://x.com/futokoro_mv
解説ページ:https://github.com/futokoro/RPGMaker/blob/master/FTKR_I…
ダウンロードページ:https://raw.githubusercontent.com/futokoro/RPGMaker/mas…
ファイル名:FTKR_ItemSelfVariables.js
プラグインのヘルプ:
/*: * @plugindesc v1.2.2 アイテムやスキルにセルフ変数を実装するプラグイン * @author フトコロ * * @param --セーブ設定-- * @desc * * @param Enabled Save * @desc セーブ時にセルフ変数を保存するか * 0 - 保存しない, 1 - 保存する * @default 0 * * @param --アイテム設定-- * @desc * * @param Item Number * @desc アイテムで使用するセルフ変数の数を設定する * @default 0 * * @param --武器設定-- * @desc * * @param Weapon Number * @desc 武器で使用するセルフ変数の数を設定する * @default 0 * * @param --防具設定-- * @desc * * @param Armor Number * @desc 防具で使用するセルフ変数の数を設定する * @default 0 * * @param --スキル設定-- * @desc * * @param Skill Number * @desc スキルで使用するセルフ変数の数を設定する * @default 0 * * @param --アクター設定-- * @desc * * @param Actor Number * @desc アクターで使用するセルフ変数の数を設定する * @default 0 * * @param --エネミー設定-- * @desc * * @param Enemy Number * @desc エネミーで使用するセルフ変数の数を設定する * @default 0 * * @help *----------------------------------------------------------------------------- * 概要 *----------------------------------------------------------------------------- * 本プラグインを実装することで、以下の対象にセーブ時に記録し値の操作が * 可能な、セルフ変数を実装することができます。 * * 1. アイテム * 2. 武器 * 3. 防具 * 4. スキル * 5. アクター * 6. エネミー * * セルフ変数は、制御文字で表示させることができます。 * * * プラグインの使い方は、以下のHPを参照してください。 * https://github.com/futokoro/RPGMaker/blob/master/FTKR_ItemSelfVariables.ja.md * * *----------------------------------------------------------------------------- * 設定方法 *----------------------------------------------------------------------------- * 1.「プラグインマネージャー(プラグイン管理)」に、本プラグインを追加して * ください。 * 本プラグインは、ダメージ計算式の処理部を書き換えています。 * そのため、プラグイン管理の出来るだけ上の位置に追加してください。 * * *----------------------------------------------------------------------------- * セルフ変数の設定 *----------------------------------------------------------------------------- * 以下の、プラグインパラメータで設定を変更します。 * * <*** Number> * :使用するセルフ変数の数を個別に設定します。 * * <Enabled Save> * :セーブ時にセルフ変数を保存するか指定します。 * :保存しない場合、ゲーム起動毎にリセットします。 * :この設定は、アイテム、武器、防具、スキル、アクター、エネミー共通です。 * * * 以下の、タグをアイテム(武器・防具含む)やスキル、アクターのメモ欄に * 追記すると初期値を設定できます。 * * <ISV IV[x]: y> * <ISV セルフ変数[x]: y> * :セルフ変数ID x の初期値を y に設定します。 * * *----------------------------------------------------------------------------- * スクリプトコマンド *----------------------------------------------------------------------------- * セルフ変数に対して、以下のスクリプトコマンドを使用できます。 * なお、item(x)の部分は、武器は'weapon(x)'、防具は'armor(x)'、 * スキルは'skill(x)'、アクターは'actor(x)'、エネミーは'enemy(x)'に * 変えてください。 * * 1.セルフ変数の値の取得 * $gameSelfVariables.item(x).value(y) * :アイテムID x のセルフ変数 y の値を取得します。 * * 2.セルフ変数の値の変更 * $gameSelfVariables.item(x).setValue(y, value (, 'code') ) * :アイテムID x のセルフ変数 y に value を代入します。 * :code部に以下の文字を入力することで、代入以外の計算が可能です。 * : 加算(+) - セルフ変数 y の値に value を加算します。 * : 減算(-) - セルフ変数 y の値から value を減算します。 * : 積算(*) - セルフ変数 y の値に value を積算します。 * : 除算(/) - セルフ変数 y の値から value を除算します。 * : 剰余(%) - セルフ変数 y の値から value を除算した余りを代入します。 * : * :入力例) * : $gameSelfVariables.item(10).setValue(1, 10) * : アイテムID 10 のセルフ変数 1 に 10 を代入する * : * : $gameSelfVariables.weapon(12).setValue(2, 6, '加算') * : $gameSelfVariables.weapon(12).setValue(2, 6, '+') * : 武器ID 12 のセルフ変数 2 に 6 を加算する * : * * 3.セルフ変数の削除 * $gameSelfVariables.item(x).clear() * :アイテムID x のセルフ変数をすべて削除します。 * :0 が代入されるわけではありません。 * * 4.セルフ変数の初期化 * $gameSelfVariables.item(x).allReset(value) * :アイテムID x のすべてのセルフ変数に value を代入します。 * :このときの'すべて'とは、<*** Number>で設定した数を指します。 * * *----------------------------------------------------------------------------- * プラグインコマンド *----------------------------------------------------------------------------- * 本プラグインでは、以下のコマンドを使用できます。 * なお、大文字小文字は区別しないため、どちらを使用しても構いません。 * * 1. セルフ変数の変更 * 指定したアイテムIDのセルフ変数を変更します。 * * ISV_セルフ変数変更 アイテムタイプ アイテムID セルフ変数ID 演算方法 値 * ISV_SET_SELF_VARIABLES ITEMTYPE itemId selfVariableId CALCTYPE value * * アイテムタイプには、アイテム(item)、武器(weapon)、防具(armor)、 * スキル(skill)、アクター(actor)、エネミー(enemy)を代入してください。 * 演算方法には、代入(=)、加算(+)、減算(-)、積算(*)、除算(/)、剰余(%)を * 代入してください。 * アイテムID、セルフ変数ID、代入する値には、ゲーム内変数を指定できます。 * ゲーム内変数を使用する場合は、数値の変わりに v[n] を入力してください。 * * 入力例) * ISV_セルフ変数変更 アイテム 10 1 代入 v[5] * ISV_SET_SELF_VARIABLES item 10 1 = v[5] * :アイテムID10 のセルフ変数ID1 に ゲーム内変数ID5 の値を代入する * * * 2. セルフ変数の取得 * 指定したアイテムIDのセルフ変数を、ゲーム内変数に代入します。 * * ISV_セルフ変数取得 ゲーム内変数ID アイテムタイプ アイテムID セルフ変数ID * ISV_GET_SELF_VARIABLES variableId ITEMTYPE itemId selfVariableId * * アイテムタイプには、アイテム(item)、武器(weapon)、防具(armor)、 * スキル(skill)、アクター(actor)、エネミー(enemy)を代入してください。 * ゲーム内変数ID、アイテムID、セルフ変数IDには、ゲーム内変数を指定できます。 * ゲーム内変数を使用する場合は、数値の変わりに v[n] を入力してください。 * * 入力例) * ISV_セルフ変数取得 5 武器 10 1 * ISV_GET_SELF_VARIABLES 5 weapon 10 1 * :武器ID10 のセルフ変数ID1 の値を ゲーム内変数ID5 に代入する * * *----------------------------------------------------------------------------- * セルフ変数のダメージ計算式への適用 *----------------------------------------------------------------------------- * セルフ変数は、アイテムおよびスキルのダメージ計算式に使用できます。 * 計算式に以下のコードを入力することで、セルフ変数ID x の値を参照します。 * * av[x] - 使用者のセルフ変数ID x の値を参照します。 * bv[x] - 対象者のセルフ変数ID x の値を参照します。 * iv[x] - 使用するアイテムまたはスキルのセルフ変数ID x の値を参照します。 * * 入力例) * a.atk * (4 + iv[1]) - b.def * 2 * * * <'iv[x]'などセルフ変数を入力すると、必ずダメージを与えられなくなる場合> * 他のプラグインと競合しており、コードが使用できません。 * この場合は、コードの替わりに、以下のスクリプトを記述してください。 * * iv[x] ⇒ item._seflVariables._data[x] * av[x] ⇒ (a.isActor() ? a.actor()._seflVariables._data[x] : a.enemy()._seflVariables._data[x]) * bv[x] ⇒ (b.isActor() ? b.actor()._seflVariables._data[x] : b.enemy()._seflVariables._data[x]) * * なお、av[x]のスクリプトについて、そのスキルやアイテムをアクターしか * 使用しない場合は、以下の様に記述を省くことも可能です。 * * av[x] ⇒ a.actor()._seflVariables._data[x] * * また、対象が味方のみであれば * bv[x] ⇒ b.actor()._seflVariables._data[x] * 対象が敵のみであれば * bv[x] ⇒ b.enemy()._seflVariables._data[x] * のように記述できます。 * * *----------------------------------------------------------------------------- * 制御文字 *----------------------------------------------------------------------------- * 本プラグインでは、以下の制御文字を使用できます。 * なお、大文字小文字は区別しないため、どちらを使用しても構いません。 * * ITV[x,y] : アイテムID x のセルフ変数ID y の値を参照する。 * WEV[x,y] : 武器ID x のセルフ変数ID y の値を参照する。 * ARV[x,y] : 防具ID x のセルフ変数ID y の値を参照する。 * SKV[x,y] : スキルID x のセルフ変数ID y の値を参照する。 * ACV[x,y] : アクターID x のセルフ変数ID y の値を参照する。 * ENV[x,y] : エネミーID x のセルフ変数ID y の値を参照する。 * * 注意) x と y の数字はどちらも必要です * * 説明文やプロフィールで、上記制御文字を使う場合に * []内の ”x,”部分を省略することが可能です。 * 省略した場合は、例えばアイテムならそのアイテムのセルフ変数を参照します。 * * *----------------------------------------------------------------------------- * 本プラグインのライセンスについて(License) *----------------------------------------------------------------------------- * 本プラグインはMITライセンスのもとで公開しています。 * This plugin is released under the MIT License. * * Copyright (c) 2017 Futokoro * http://opensource.org/licenses/mit-license.php * * *----------------------------------------------------------------------------- * 変更来歴 *----------------------------------------------------------------------------- * * v1.2.2 - 2018/01/08 : ヘルプ追記 * * v1.2.1 - 2017/10/20 : 機能追加 * 1. アイテムの説明欄に制御文字を使用する場合に、アイテムIDを * 省略できる機能を追加。 * * v1.2.0 - 2017/10/19 : 制御文字に対応 * * v1.1.3 - 2017/05/03 : 計算式の機能追加 * * v1.1.2 - 2017/04/29 : ダメージ計算式の処理を見直し * * v1.1.1 - 2017/04/26 : 不具合修正 * 1. ダメージ計算式に例外処理を追加。 * * v1.1.0 - 2017/04/18 : 仕様変更、機能追加 * 1. 使用するセルフ変数の数を、アイテムやスキル毎に設定できるように変更。 * 2. アクターとエネミーにセルフ変数を追加。 * * v1.0.1 - 2017/04/14 : 機能追加 * 1. セルフ変数の初期値を設定する機能追加。 * 2. セルフ変数に文字列を代入できる機能を追加。 * 3. ライセンス変更。 * * v1.0.0 - 2017/03/26 : 初版作成 * *----------------------------------------------------------------------------- */