当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
FTKR Search Party Param - FTKR_SearchPartyParam.js

▼FTKR Search Party Param(フトコロ様作) - FTKR_SearchPartyParam.js
https://plugin.fungamemake.com/archives/1302
パーティー内のパラメータに関するスクリプトを実装する
ふりがな:ぱーてぃのうりょくちかくちょう
機能概要: パーティー内のパラメータに関するスクリプトを実装する
利用規約(ライセンス): MITライセンス
作者:フトコロ
作者サイト:https://x.com/futokoro_mv
解説ページ:https://github.com/futokoro/RPGMaker/blob/master/FTKR_S…
ダウンロードページ:https://raw.githubusercontent.com/futokoro/RPGMaker/mas…
ファイル名:FTKR_SearchPartyParam.js
プラグインのヘルプ:
/*:
* @plugindesc v1.0.1 パーティー内のパラメータに関するスクリプトを実装するプラグイン
* @author フトコロ
*
* @help
*-----------------------------------------------------------------------------
* 概要
*-----------------------------------------------------------------------------
* 本プラグインを実装することで、パーティー内のパラメータや状態に関する
* スクリプトを実装します。
*
*
*-----------------------------------------------------------------------------
* 設定方法
*-----------------------------------------------------------------------------
* 1.「プラグインマネージャー(プラグイン管理)」に、本プラグインを追加して
* ください。
*
*
*-----------------------------------------------------------------------------
* スクリプトを使用できる対象
*-----------------------------------------------------------------------------
* スクリプトの大文字で記述している文字列は、調べたい対象によって以下の記述に
* 変更してください。
*
* <GROUP>
* 以下の記述に置き換えます。
* 1. パーティー
* $gameParty
*
* 2. 敵グループ(*1)
* $gameTroop
*
* 3. パーティーと敵グループ(*2)
* $gameMember
*
* (*1) 戦闘中のみ使えます
* (*2) 戦闘中以外はパーティーのみになります
* なお、パーティーと敵グループでメンバーのIDが被るため
* 使用時には、アクターかどうか判定する処理も合わせて実行してください。
*
*
* <MEMBER>
* 以下の記述に置き換えます。
* 1. GROUP内のすべてのメンバー(*3)
* members()
*
* 2. GROUP内の生存メンバー
* aliveMembers()
*
* 3. GROUP内の戦闘不能メンバー
* deadMembers()
*
* (*3) 戦闘中はバトルに参加しているメンバーのみ
*
*
* [入力例]
* パーティー内の生存しているメンバー
* $gameParty.aliveMembers()
*
* 敵グループ内の戦闘不能メンバー
* $gameTroop.deadMembers()
*
* 敵味方含む戦闘中のすべてのメンバー
* $gameMember.members()
*
*
*-----------------------------------------------------------------------------
* スクリプトコマンド
*-----------------------------------------------------------------------------
* <パラメータの値を取得するスクリプト>
*
* 1. 指定したパラメータの合計値を取得する
* GROUP.MEMBER.sumParam('param')
* :param には パラメータ名(英字) を入力してください。
* :例)
* : $gameParty.members().sumParam('trg')
* : パーティー内の狙われ率の合計値を取得する。
*
* 2. 指定したパラメータの平均値を取得する
* GROUP.MEMBER.averageParam('param')
* :param には パラメータ名(英字) を入力してください。
* :例)
* : $gameParty.members().averageParam('hp')
* : パーティー内の現在HPの平均値を取得する。
*
* 3. 指定したパラメータの最大値を取得する
* GROUP.MEMBER.maxParam('param')
* :param には パラメータ名(英字) を入力してください。
* :例)
* : $gameParty.members().maxParam('atk')
* : パーティー内の攻撃力の最大値を取得する。
*
* 4. 指定したパラメータの最小値を取得する
* GROUP.MEMBER.minParam('param')
* :param には パラメータ名(英字) を入力してください。
* :例)
* : $gameParty.members().minParam('hit')
* : パーティー内の命中率の最小値を取得する。
*
*
* <メンバーのIDを取得するスクリプト>
*
* 1. 指定したパラメータの最大値を持つメンバーIDを取得する
* GROUP.MEMBER.isHighestParam('param')
* :param には パラメータ名(英字) を入力してください。
* :該当者が複数いる場合は、並び順で前にいるメンバーのIDを取得します。
* :例)
* : $gameParty.members().isHighestParam('atk')
* : パーティー内で最大の攻撃力を持つアクターのIDを取得する。
*
* 2. 指定したパラメータの最小値を持つメンバーIDを取得する
* GROUP.MEMBER.isLowestParam('param')
* :param には パラメータ名(英字) を入力してください。
* :該当者が複数いる場合は、並び順で前にいるメンバーのIDを取得します。
* :例)
* : $gameParty.members().isLowestParam('atk')
* : パーティー内で最小の攻撃力を持つアクターのIDを取得する。
*
* 3. 指定した装備をしているメンバーのIDを取得する
* GROUP.MEMBER.isEquipped(equip)
* GROUP.MEMBER.isEquippedWeapon(weaponId)
* GROUP.MEMBER.isEquippedArmor(armorId)
* :'equip' には 武器なら '$dataWeapons[weaponId]'
* :防具なら '$dataArmors[armorId]' を入力してください。
* :該当者がいない場合は、false を返します。
* :該当者が複数いる場合は、並び順で前にいるメンバーのIDを取得します。
* :例)
* : $gameParty.members().isEquipped($dataWeapons[10])
* : $gameParty.members().isEquippedWeapon(10)
* : パーティー内で武器ID10 の装備を持つアクターのIDを取得する。
*
* 4. 指定したスキルを習得しているメンバーのIDを取得する
* GROUP.MEMBER.isLearnedSkill(x)
* :x には スキルIDを入力してください。
* :該当者がいない場合は、false を返します。
* :該当者が複数いる場合は、並び順で前にいるメンバーのIDを取得します。
* :例)
* : $gameParty.members().isLearnedSkill(5)
* : パーティー内でスキルID5 のスキルを習得しているアクターのIDを取得する。
*
* 5. 指定したステートを付与されているメンバーのIDを取得する
* GROUP.MEMBER.isStateAffected(x)
* :x には ステートIDを入力してください。
* :該当者がいない場合は、false を返します。
* :該当者が複数いる場合は、並び順で前にいるメンバーのIDを取得します。
* :例)
* : $gameParty.members().isStateAffected(5)
* : パーティー内でステートID5 のステートを付与されているアクターの
* : IDを取得する。
*
* 6. 生存メンバーの中からランダムに一人選んで、そのメンバーのデータを取得する
* GROUP.randomTarget()
* :このスクリプトの末尾に以下を加えると、いろいろな値を取得できます。
* :例)
* :1. アクターかどうか判定する
* : GROUP.randomTarget().isActor()
* :2. IDを取得する
* : GROUP.randomTarget().memberId()
*
* 7. 戦闘不能メンバーの中からランダムに一人選んで、そのメンバーのデータを取得する
* GROUP.randomDeadTarget()
* :6 の GROUP.randomTarget() と使い方は同じです。
*
*
* <メンバーのIDのリストを取得するスクリプト>
*
* 1. 指定したパラメータが一定値を超えるメンバーのIDリスト(配列)を取得する
* GROUP.MEMBER.isHigherParam('param', x)
* :param には パラメータ名(英字) を入力してください。
* :x には判定値を入力してください。
* :なお、x と等しいパラメータを持つメンバーは数えません。
* :該当者がいない場合は、空の配列を取得します。
* :例)
* : $gameParty.members().isHigherParam('atk', 100)
* : パーティー内で攻撃力が 100 を超えるアクターのIDリストを取得する。
* :応用)
* : $gameParty.members().isHigherParam('atk', 100).length
* : パーティー内で攻撃力が 100 を超えるアクターの人数を取得する。
*
* 2. 指定したパラメータが一定値を下回るメンバーのIDリスト(配列)を取得する
* GROUP.MEMBER.isLowerParam('param', x)
* :param には パラメータ名(英字) を入力してください。
* :x には判定値を入力してください。
* :なお、x と等しいパラメータを持つメンバーは数えません。
* :該当者がいない場合は、空の配列を取得します。
* :例)
* : $gameParty.members().isLowerParam('atk', 100)
* : パーティー内で攻撃力が 100 未満のアクターのIDリストを取得する。
* :応用)
* : $gameParty.members().isLowerParam('atk', 100).length
* : パーティー内で攻撃力が 100 未満のアクターの人数を取得する。
*
*
*-----------------------------------------------------------------------------
* 本プラグインのライセンスについて(License)
*-----------------------------------------------------------------------------
* 本プラグインはMITライセンスのもとで公開しています。
* This plugin is released under the MIT License.
*
* Copyright (c) 2017 Futokoro
* http://opensource.org/licenses/mit-license.php
*
*
*-----------------------------------------------------------------------------
* 変更来歴
*-----------------------------------------------------------------------------
*
* v1.0.1 - 2017/04/14 : 不具合修正、スクリプト追加、ヘルプ修正
* 1. isLowerParam()とisHigherParam()をエネミーに使うとエラーになる
* 不具合を修正。
*
* v1.0.0 - 2017/04/09 : 初版公開
*
*-----------------------------------------------------------------------------
*/