戦績プラグイン – BattleRecord.js

タイトル
戦績プラグイン
作者名
ヘルプ
戦闘中の様々な情報を記録していつでも取得可能にします。
戦績として記録に残せるほか、特殊なスキルのダメージ計算式に
組み込んだりすることもできます。

アクターごとに以下の要素を記録できます。

・スキルごとの使用回数(戦闘中のみカウント。他項目も同様)
・全スキルの使用回数合計
・アイテムごとの使用回数
・全アイテムの使用回数合計
・敵キャラごとの撃破回数
・全敵キャラの撃破回数合計
・与えたダメージの合計
・与えたダメージの最大
・与えたダメージの最大(1行動ごと)
・受けたダメージの合計
・受けたダメージの最大
・回復したダメージの合計
・消費したMP合計
・消費したTP合計
・戦闘不能回数

値はイベントコマンド「変数の操作」から「スクリプト」で
対応するスクリプトを呼び出して取得してください。

・データベースのアクターIDから取得する場合
$gameActors.actor(1).getSkillUseCounter(2); # アクター[1]のスキル[2]使用回数
$gameActors.actor(1).getAllSkillUseCounter(); # アクター[1]の全スキル使用回数
$gameActors.actor(1).getItemUseCounter(3); # アクター[1]のアイテム[3]使用回数
$gameActors.actor(1).getAllItemUseCounter(); # アクター[1]の全アイテム使用回数
$gameActors.actor(1).getKillEnemyCounter(4); # アクター[1]の敵キャラ[4]撃破数
$gameActors.actor(1).getAllKillEnemyCounter();# アクター[1]の全敵キャラ撃破数
$gameActors.actor(1).attackDamageMax; # アクター[1]の最大与ダメージ
$gameActors.actor(1).actionDamageMax; # アクター[1]の行動あたりの最大与ダメージ
$gameActors.actor(1).attackDamageSum; # アクター[1]の合計与ダメージ
$gameActors.actor(1).acceptDamageMax; # アクター[1]の最大被ダメージ
$gameActors.actor(1).acceptDamageSum; # アクター[1]の合計被ダメージ
$gameActors.actor(1).recoverDamageSum; # アクター[1]の合計回復ダメージ
$gameActors.actor(1).payCostMpSum; # アクター[1]の消費MP合計
$gameActors.actor(1).payCostTpSum; # アクター[1]の消費TP合計
$gameActors.actor(1).deadCounter; # アクター[1]の戦闘不能回数

・パーティの並び順(先頭は0)から取得する場合
$gameActors.actor(n)を$gameParty.members()[n]に置き換えて実行する。
(例)
$gameParty.members()[0].attackDamageMax # 先頭メンバーの最大与ダメージ

・スキルのダメージ計算式で使用する場合
$gameActors.actor(n)をa(実行者)もしくはb(対象者)に置き換えて実行する。
(例)
a.getSkillUseCounter(5) # 実行者のスキル[5]使用回数
b.getKillEnemyCounter(6) # 対象者の敵キャラ[6]撃破数

・すべてのアクターの合計値を取得する場合
$gameActors.actor(n)を$gameActorsに置き換えて実行する。
(例)
$gameActors.getKillEnemyCounter(4); # 全アクターの敵キャラ[4]撃破数合計

・パーティごとに管理される戦績を取得する場合
$gameParty.gainGoldSum; # 入手ゴールド合計
$gameParty.loseGoldSum; # 消費ゴールド合計
$gameParty.getGainItemSum(1); # アイテム[1]の入手合計
$gameParty.getGainWeaponSum(1); # 武器[1]の入手合計(初期装備以外)
$gameParty.getGainArmorSum(1); # 防具[1]の入手合計(初期装備以外)

・売買履歴情報を取得する場合
アイテムごとの売買履歴を取得できます。
開始IDと終了IDを指定することで、その範囲内の売買履歴を取得可能です。
開始IDと終了IDを指定しなかった場合、全ての売買履歴の合計を取得します。

1.購入
# ID[1]からID[3]までのアイテムの累計購入金額の合計
$gameParty.getItemBuyingRecord().getUseGoldSum(1, 3);

# ID[2]からID[4]のアイテムの累計購入個数の合計
$gameParty.getItemBuyingRecord().getAmountSum(2, 4);

# アイテムの累計購入回数(まとめ買いは1回でカウント)
$gameParty.getItemBuyingRecord().getTradeCount();

# ID[1]の武器の累計購入金額
$gameParty.getWeaponBuyingRecord().getUseGoldSum(1);

# ID[2]の武器の累計購入個数
$gameParty.getWeaponBuyingRecord().getAmountSum(2);

# 武器の累計購入回数(まとめ買いは1回でカウント)
$gameParty.getWeaponBuyingRecord().getTradeCount();

# 全防具の累計購入金額の合計
$gameParty.getArmorBuyingRecord().getUseGoldSum();

# 全防具の累計購入個数
$gameParty.getArmorBuyingRecord().getAmountSum();

# 防具の累計購入回数(まとめ買いは1回でカウント)
$gameParty.getArmorBuyingRecord().getTradeCount();

2.売却
# ID[1]からID[3]までのアイテムの累計売却金額の合計
$gameParty.getItemSellingRecord().getUseGoldSum(1, 3);

# ID[2]からID[4]のアイテムの累計売却個数の合計
$gameParty.getItemSellingRecord().getAmountSum(2, 4);

# アイテムの累計売却回数(まとめ買いは1回でカウント)
$gameParty.getItemSellingRecord().getTradeCount();

# ID[1]の武器の累計売却金額
$gameParty.getWeaponSellingRecord().getUseGoldSum(1);

# ID[2]の武器の累計売却個数
$gameParty.getWeaponSellingRecord().getAmountSum(2);

# 武器の累計売却回数(まとめ買いは1回でカウント)
$gameParty.getWeaponSellingRecord().getTradeCount();

# 全防具の累計売却金額の合計
$gameParty.getArmorSellingRecord().getUseGoldSum();

# 全防具の累計売却個数
$gameParty.getArmorSellingRecord().getAmountSum();

# 防具の累計売却回数(まとめ買いは1回でカウント)
$gameParty.getArmorSellingRecord().getTradeCount();

応用的な使い方として「動的データベース構築プラグイン」と組み合わせれば
戦績をデータベースの値に組み込んでより多彩な装備品やスキルを
作成することができます。
「動的データベース構築プラグイン」は、本プラグインと同一の配布元で
配布しています。

・戦績をクリア(初期化)する場合

アクター関連項目
$gameActors.actor(アクターID).clearBattleRecord();

パーティ関連項目
$gameParty.clearRecord();

このプラグインにはプラグインコマンドはありません。

利用規約:
作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)
についても制限はありません。
このプラグインはもうあなたのものです。
パラメータ
( なし )
ライセンス表記
「動的データベース構築プラグイン」は、本プラグインと同一の配布元で
配布しています。
作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)
(C)2016 Triacontane
This software is released under the MIT License.
http://opensource.org/licenses/mit-license.php

紹介ページ https://github.com/triacontane/RPGMakerMV/blob/master/BattleRecord.js