MZ用プラグイン

NRP リスト形式のスキル習得システム - NRP_LearnSkillList.js

シェア用テキスト:
▼NRP リスト形式のスキル習得システム(砂川赳様作) - NRP_LearnSkillList.js
https://plugin-mz.fungamemake.com/archives/6032
獲得したスキルポイントを消費し、表から覚えたいスキルを選択するシンプルな仕組みです。スキルポイントは敵から入手したり、レベルアップ時に入手したりといった方法を選択できます。

ふりがな:りすとけいしきのすきるしゅうとくしすてむ

機能概要: 獲得したスキルポイントを消費し、表から覚えたいスキルを選択するシンプルな仕組みです。スキルポイントは敵から入手したり、レベルアップ時に入手したりといった方法を選択できます。

利用規約(ライセンス):
・著作権:保持
・商用利用:許可
・追加改変:許可
・再配布:許可
・詳細はダウンロードページ・プラグイン内を確認

作者:砂川赳

作者サイト:https://newrpg.seesaa.net//

解説ページ:https://newrpg.seesaa.net/article/499059518.html

ファイル名:NRP_LearnSkillList.js

プラグインのヘルプ:

/*:ja
 * @target MZ
 * @plugindesc v1.081 リスト形式のスキル習得システム。
 * @author 砂川赳(https://newrpg.seesaa.net/)
 * @url https://newrpg.seesaa.net/article/499059518.html
 *
 * @help リスト形式のスキル習得システムを実装します。
 * 
 * 獲得したスキルポイントを消費し、
 * 表から覚えたいスキルを選択するシンプルな仕組みです。
 * 
 * スキルポイントは敵から入手したり、
 * レベルアップ時に入手したりといった方法を選択できます。
 * 
 * -------------------------------------------------------------------
 * ■スキルリストの作成
 * -------------------------------------------------------------------
 * まずプラグインパラメータの『スキルセットのリスト』に
 * スキルセットを登録し、その下へさらにスキル情報を登録してください。
 * 
 * スキルセットには対象とするアクターなどの条件を指定できます。
 * 条件を指定しなかった場合は全員共通のスキルとなります。
 * 
 * 他にも、スキル毎に前提スキルなどの条件を指定できます。
 * 
 * メニューから『スキル習得』のコマンドを選択すれば、
 * スキル習得システムの画面が表示されるようになります。
 * 
 * -------------------------------------------------------------------
 * ■スキルポイントの設定
 * -------------------------------------------------------------------
 * スキルポイントの保有方法として『アクター毎』と『パーティ共有』の
 * 二種類から選択できます。
 * 
 * パーティ共有の場合は変数内に格納するため、
 * イベントコマンドの『変数の操作』での制御が可能となります。
 * 
 * -------------------------------------------------------------------
 * ■敵キャラのメモ欄
 * -------------------------------------------------------------------
 * <SkillPoint:?>
 * 獲得できるスキルポイントを指定します。
 * 
 * また、プラグインパラメータで既定値を指定することもできます。
 * 細かい指定が面倒なら、経験値やレベルに比例する値にしてしまえば楽です。
 * 
 * <SkillPointRate:?>
 * 獲得できるスキルポイントを指定した%に変更します。
 * 例えば、200ならば200%(2倍)になります。
 * 既定値とのセットで使うことを想定しています。
 * 
 * -------------------------------------------------------------------
 * ■アイテムのメモ欄
 * -------------------------------------------------------------------
 * <AddSkillPoint:?>
 * アクターのスキルポイントを数値分増加させます。
 * 
 * -------------------------------------------------------------------
 * ■プラグインコマンド
 * -------------------------------------------------------------------
 * ◆シーン開始
 * スキル習得画面を呼び出します。
 * アクターを指定しない場合は、アクター選択画面も表示します。
 * 
 * ◆スキルポイントの増減
 * アクターのスキルポイントを増減させます。
 * なお、0未満にはなりません。
 * 
 * ◆スキルリセット
 * 習得したスキルを忘れて、スキルポイントを元に戻します。
 * 
 * -------------------------------------------------------------------
 * ■利用規約
 * -------------------------------------------------------------------
 * 特に制約はありません。
 * 改変、再配布自由、商用可、権利表示も任意です。
 * 作者は責任を負いませんが、不具合については可能な範囲で対応します。
 * 
 * @-----------------------------------------------------
 * @ プラグインコマンド
 * @-----------------------------------------------------
 * 
 * @command SceneStart
 * @text シーン開始
 * @desc スキル習得画面を呼び出します。
 * アクターを指定しない場合は、アクター選択画面も表示。
 * 
 * @arg Actor
 * @text アクター
 * @type actor
 * @desc 対象とするアクターです。
 * 指定がない場合は、アクターの選択画面を表示します。
 * 
 * @arg VariableActor
 * @text アクター(変数)
 * @type variable
 * @desc 対象とするアクターを変数で指定します。
 * こちらのほうが優先されます。
 * 
 * @-----------------------------------------------------
 * 
 * @command ChangeSkillPoint
 * @text スキルポイントの増減
 * @desc スキルポイントを変更します。
 * 対象条件(AND)を指定してください。
 * 
 * @arg SkillPoint
 * @text スキルポイント
 * @type number @min -9999999 @max 9999999
 * @desc 増減するスキルポイントの量です。マイナス指定可。
 * 
 * @arg VariableSkillPoint
 * @text スキルポイント(変数)
 * @type variable
 * @desc 増減するスキルポイントの量を変数で指定します。
 * こちらのほうが優先されます。
 * 
 * @arg <Condition>
 * @text <対象条件>
 * 
 * @arg Actor
 * @parent <Condition>
 * @text アクター
 * @type actor
 * @desc 対象とするアクターです。
 * 未指定ならパーティ全体を対象とします。
 * 
 * @arg VariableActor
 * @parent <Condition>
 * @text アクター(変数)
 * @type variable
 * @desc 対象とするアクターを変数で指定します。
 * こちらのほうが優先されます。
 * 
 * @-----------------------------------------------------
 * 
 * @command ResetSkill
 * @text スキルリセット
 * @desc 習得したスキルを忘れて、スキルポイントを元に戻します。
 * 
 * @arg Actor
 * @text アクター
 * @type actor
 * @desc 対象とするアクターです。
 * 未指定ならパーティ全体を対象とします。
 * 
 * @arg VariableActor
 * @text アクター(変数)
 * @type variable
 * @desc 対象とするアクターを変数で指定します。
 * こちらのほうが優先されます。
 * 
 * @-----------------------------------------------------
 * @ プラグインパラメータ
 * @-----------------------------------------------------
 * 
 * @param SkillSetList
 * @text スキルセットのリスト
 * @type struct<SkillSet>[]
 * @desc 習得するスキルセットを定義します。
 * 
 * @param <SkillPoint>
 * @text <スキルポイント>
 * @desc スキルポイントに関する項目です。
 * 
 * @param SkillPointName
 * @text スキルポイントの表示名
 * @parent <SkillPoint>
 * @type string
 * @default SP
 * @desc スキルポイントを表す表示名です。
 * 
 * @param MaxSkillPoint
 * @text スキルポイントの最大値
 * @parent <SkillPoint>
 * @type number
 * @default 999999
 * @desc スキルポイントの最大値です。
 * これ以上の値にはなりません。
 * 
 * @param SkillPointType
 * @text スキルポイントの保有方法
 * @parent <SkillPoint>
 * @type select
 * @option アクター毎 @value actor
 * @option パーティ共有 @value party
 * @default actor
 * @desc スキルポイントの保有方法です。
 * アクター毎かパーティ共有かを選択できます。
 * 
 * @param SkillPointVariable
 * @text スキルポイントの変数
 * @parent <SkillPoint>
 * @type variable
 * @desc スキルポイントを格納する変数です。
 * 保有方法にパーティ共有を選んだ場合のみ有効です。
 * 
 * @param SkillPointMessage
 * @parent <SkillPoint>
 * @text スキルポイント獲得文
 * @type string
 * @default %1 の%2を獲得!
 * @desc スキルポイントの獲得文を表示します。
 * %1=数値, %2=スキルポイントの表示名となります。
 * 
 * @param DefaultEnemySkillPoint
 * @text 敵スキルポイントの既定値
 * @parent <SkillPoint>
 * @type string
 * @desc 敵が落とすスキルポイントの既定値を設定します。
 * 数式可(例:1 + Math.floor(a.exp() / 100))
 * 
 * @param SkillPointSwitch
 * @text SP有効化スイッチ
 * @parent <SkillPoint>
 * @type switch
 * @desc 指定のスイッチがオンの際、スキルポイントの増減を有効化します。空白なら常に有効。
 * 
 * @param BenchSkillPointRate
 * @text 控えの獲得率
 * @parent <SkillPoint>
 * @type string
 * @default 1.00
 * @desc 控えメンバーのスキルポイントの獲得率です。数式可
 * 空白の場合は通常経験値と同率を使用。
 * 
 * @param LevelUpSkillPoint
 * @text レベルアップ時のSP
 * @parent <SkillPoint>
 * @type string
 * @desc レベルアップ時に獲得できるスキルポイントです。
 * 数式可(例:a.level)
 * 
 * @param <SkillListWindow>
 * @text <スキルリスト関連>
 * @desc スキルリストウィンドウに関する項目です。
 * 
 * @param LearnedSkillDisplayStyle
 * @text 習得済スキルの表示方法
 * @parent <SkillListWindow>
 * @type select
 * @option そのまま @value display
 * @option 非表示 @value hide
 * @option 下に表示 @value below
 * @default display
 * @desc 習得したスキルの表示方法です。
 * 
 * @param UseIcon
 * @text アイコンを表示
 * @parent <SkillListWindow>
 * @type boolean
 * @default true
 * @desc アイコンをスキル名の前に表示するかどうか?
 * 
 * @param SkillPointColor
 * @text スキルポイントの色
 * @parent <SkillListWindow>
 * @type number
 * @default 0
 * @desc スキルポイントの文字色です。
 * システムカラーの番号を指定してください。
 * 
 * @param LearnedText
 * @text 習得済の表示文
 * @parent <SkillListWindow>
 * @type string
 * @default 済
 * @desc 習得済スキルに表示する文言です。
 * スキルポイントの場所に表示されます。
 * 
 * @param LearnedTextColor
 * @text 習得済の色
 * @parent <SkillListWindow>
 * @type number
 * @default 6
 * @desc 習得済スキルに表示する文言の色です。
 * システムカラーの番号を指定してください。
 * 
 * @param ShowHiddenSkills
 * @text 隠しスキルを表示
 * @parent <SkillListWindow>
 * @type boolean
 * @default false
 * @desc 条件を満たしていないスキルを表示します。
 * 条件表示する場合はヘルプの行数は3以上に。
 * 
 * @param HiddenSymbol
 * @text 隠しスキルの記号
 * @parent ShowHiddenSkills
 * @type string
 * @default ※
 * @desc 隠しスキルに表示する記号です。
 * 
 * @param HelpLines
 * @text ヘルプの行数
 * @parent ShowHiddenSkills
 * @type number
 * @desc ヘルプの行数を変更します。
 * 隠しスキルの条件表示を行うための設定です。
 * 
 * @param HiddenSkillMask
 * @text 隠しスキルのマスク
 * @parent ShowHiddenSkills
 * @type string
 * @desc 隠しスキルを指定した文字列(?など)で隠します。
 * 条件を満たすと表示されるようになります。
 * 
 * @param HiddenHelp
 * @text ヘルプを隠す
 * @parent ShowHiddenSkills
 * @type boolean
 * @default false
 * @desc 隠しスキルのヘルプ(追記除く)を隠します。
 * 条件を満たすと表示されるようになります。
 * 
 * @param <ActorWindow>
 * @text <アクターウィンドウ関連>
 * @desc アクターウィンドウに関する項目です。
 * 
 * @param ActorWindowWidth
 * @text アクターウィンドウの横幅
 * @parent <ActorWindow>
 * @type number
 * @default 240
 * @desc アクターウィンドウの横幅です。
 * 
 * @param ActorWindowHeight
 * @text アクターウィンドウの縦幅
 * @parent <ActorWindow>
 * @type number
 * @default 280
 * @desc アクターウィンドウの縦幅です。
 * 空白の場合は最大まで伸ばします。
 * 
 * @param ActorChangeInvalid
 * @text アクターの変更無効
 * @parent <ActorWindow>
 * @type boolean
 * @default false
 * @desc プラグインコマンドにて、アクターを指定して呼び出した場合はアクターの変更を禁止します。
 * 
 * @param <ConfirmWindow>
 * @text <確認ウィンドウ関連>
 * @desc スキルシステムを習得する際の確認ウィンドウに関する項目です。
 * 
 * @param ConfirmMessage
 * @text 確認メッセージ
 * @parent <ConfirmWindow>
 * @type multiline_string
 * @default %1を習得しますか?
 * @desc スキルの習得確認メッセージの内容です。
 * %1=スキル名、%2=アイコン、%3=スキルポイントです。
 * 
 * @param ConfirmButtonOk
 * @text OKの文言
 * @parent <ConfirmWindow>
 * @type string
 * @default OK
 * @desc スキルの習得確認メッセージを確定する際のボタンの表示です。
 * 
 * @param ConfirmButtonCancel
 * @text キャンセルの文言
 * @parent <ConfirmWindow>
 * @type string
 * @default キャンセル
 * @desc スキルの習得確認メッセージをキャンセルする際のボタンの表示です。
 * 
 * @param ConfirmOkSe
 * @text 確定時のSE
 * @parent <ConfirmWindow>
 * @type file
 * @dir audio/se
 * @default Decision5
 * @desc スキルの習得を確定した際の効果音です。
 * 
 * @param <Menu Command>
 * @text <メニューコマンド関連>
 * @desc メニューコマンドにスキルシステムを表示する際の関連項目です。
 * 
 * @param ShowMenuCommandPosition
 * @parent <Menu Command>
 * @text メニューコマンド挿入位置
 * @type number
 * @default 4
 * @desc メニューコマンドにスキル習得を挿入する位置です。
 * 0が先頭。不要ならDELで消去してください。
 * 
 * @param CommandName
 * @parent <Menu Command>
 * @text メニュー表示名
 * @type text
 * @default スキル習得
 * @desc スキルシステムの表示コマンド名を設定します。
 * 
 * @param MenuCommandSwitch
 * @parent <Menu Command>
 * @text 表示許可するスイッチ
 * @type switch
 * @desc スイッチがオンの時のみコマンドを表示します。
 * 空白なら常に表示します。
 * 
 * @param MaskString
 * @parent MenuCommandSwitch
 * @text マスク文字列
 * @type string
 * @desc 表示許可するスイッチがオフの際、指定した文字列でコマンドを表示します。空欄ならコマンド自体を非表示。
 * 
 * @param DisableSwitch
 * @parent <Menu Command>
 * @text 禁止するスイッチ
 * @type switch
 * @desc スイッチがオンの時のみコマンドを禁止(灰色)します。
 * 空白なら常に許可します。
 */

スポンサードリンク

スポンサードリンク

-MZ用プラグイン

Copyright© #ツクプラMZ , 2026 All Rights Reserved.