RPGツクールMV用プラグイン投稿・告知サイト

#ツクプラ

セルフ変数 - SelfVariable.js

シェア用テキスト:
▼セルフ変数(うなぎおおとろ様作) - SelfVariable.js
https://plugin.fungamemake.com/archives/29403
セルフ変数を導入するプラグインです。

ふりがな:せるふへんすう

機能概要: セルフ変数を導入するプラグインです。

利用規約(ライセンス): MITライセンス

作者:うなぎおおとろ

作者サイト:https://twitter.com/unagiootoro8388

ダウンロードページ:https://raw.githubusercontent.com/unagiootoro/rpgmz/mas…

ファイル名:SelfVariable.js

プラグインのヘルプ:

/*:ja
@target MV MZ
@plugindesc セルフ変数 v1.5.1
@author うなぎおおとろ
@url https://raw.githubusercontent.com/unagiootoro/RPGMZ/master/SelfVariable.js
@help
セルフ変数を導入するプラグインです。

【使用方法】
■ 基本的な使用法
変数名の先頭に「$」を付けると、その変数はセルフ変数として扱われます。
設定例: $セルフ変数

セルフ変数はセルフスイッチと同じようにイベントごとに管理されます。
セルフ変数の値の取得や設定は通常の変数と同じようにエディタ上で
行うことができます。

また、変数だけでなくスイッチについてもスイッチ名の先頭に「$」をつけることで
拡張セルフスイッチとして扱うことができるようになります。

■ コモンイベント変数の使用
変数名の先頭に「%」を付けると、その変数はコモンイベント変数として扱われます。
設定例: %コモンイベント変数

コモンイベント変数はコモンイベント内だけで使用可能な変数です。
コモンイベントを呼び出すために値が0に初期化されます。
コモンイベント内でコモンイベントを呼び出した場合、
コモンイベント間で値は共有されません。

■ 小数変数の使用
変数名の先頭に「#」を付けると、その変数は小数変数として扱われます。
設定例: #小数変数

小数変数に設定した変数は、小数値を代入した場合でも小数としての値が保持されるようになります。
小数の設定については、イベントコマンドの「変数の操作」にて、
スクリプト欄に小数の値を入力することで行うことが可能です。

また、「#$」のような記載を先頭につけた場合、その変数はセルフ変数かつ小数変数として
扱うことが可能です。「#」と「$」はどちらを先に記載してもかまいません。
設定例: #$小数セルフ変数

■ プラグインコマンドからセルフ変数を操作する
プラグインコマンドの「セルフ変数値取得」「セルフ変数値設定」を
使用することで、あるイベントから他のイベントのセルフ変数を
操作することも可能です。

拡張セルフスイッチについても同じように「拡張セルフスイッチ値取得」
「拡張セルフスイッチ設定」を使用することで、外部からの拡張セルフスイッチの
操作が可能になります。

プラグインコマンドはMZで動作させる場合のみ使用できます。
MVの場合はスクリプトからセルフ変数を操作させる機能を使用することで
同様のことが実現可能です。

プラグインコマンドで「マップID」を指定するときに「マップID」に
0を指定した場合は、現在のマップのIDが適用されます。
また「イベントID」を指定するときに「イベントID」に0を指定した場合は、
プラグインコマンドを実行したイベントのIDが適用されます。

プラグインコマンドでセルフ変数/拡張セルフスイッチをクリアする場合、
引数「イベント指定有無」をONにした場合、イベントIDまたは変数で指定したイベントを
対象にクリアを行います。OFFにした場合、マップ上の全てのイベントに対してクリアを行います。

■ イベントタグによるセルフ変数/拡張セルフスイッチの一括設定
イベントにイベントタグを設定するとプラグインコマンド「イベントタグによるセルフ変数値設定」
または「イベントタグによる拡張セルフスイッチ値設定」によって指定したイベントタグを持つ
イベント全てに対してセルフ変数または拡張セルフスイッチを設定することができます。
イベントタグは複数設定することも可能です。
イベントタグを設定する場合、イベントの0ページ目の最初の注釈に以下のように記載してください。
<et: イベントタグ>

例: イベントタグ”ET1”と”ET2”を設定する場合
<et: ET1>
<et: ET2>

■ スクリプトからセルフ変数を操作する
・セルフ変数の取得
例: ID1のマップの、ID2のイベントの、ID3のセルフ変数を取得する場合
$gameVariables.selfVariableValue([1, 2, 3]);

・セルフ変数の設定
例: ID1のマップの、ID2のイベントの、ID3のセルフ変数に100を設定する場合
$gameVariables.selfVariableValue([1, 2, 3], 100);

・拡張セルフスイッチの取得
例: ID1のマップの、ID2のイベントの、ID3の拡張セルフスイッチを取得する場合
$gameSwitches.exSelfSwitchValue([1, 2, 3]);

・拡張セルフスイッチの設定
例: ID1のマップの、ID2のイベントの、ID3の拡張セルフスイッチにONを設定する場合
$gameVariables.setExSelfSwitchValue([1, 2, 3], true);

また、ある程度スクリプトが分かる人向けですが、Game_Eventに
以下のメソッドを定義していますので、これらを使用することで
より簡単にセルフ変数を操作することが可能です。
・Game_Event#selfVariableValue(variableId)
対象のイベントについてvariableIdで指定したセルフ変数を取得します。

・Game_Event#setSelfVariableValue(variableId, value)
対象のイベントについてvariableIdで指定したセルフ変数にvalueを格納します。

・Game_Event#exSelfSwitchValue(switchId)
対象のイベントについてswitchIdで指定した拡張セルフスイッチを取得します。

・Game_Event#setExSelfSwitchValue(switchId, value)
対象のイベントについてswitchIdで指定した拡張セルフスイッチにvalueを格納します。

【注意点】
・エディタ上で戦闘イベントからセルフ変数を操作しないでください。
 セルフ変数はマップイベントに紐づいていますので、マップイベント以外から
 イベントコマンド経由で変数にアクセスした場合、正常に動作しなくなります。

・以下の機能については仕様の都合上、正常に動作しません。
 これらの機能を使用する際は一旦通常の変数に格納してから
 セルフ変数に値を移すようにしてください。
  - 文章表示における\v
  - 数値入力の処理

【ライセンス】
このプラグインは、MITライセンスの条件の下で利用可能です。


@command GetSelfVariableValue
@text セルフ変数値取得
@desc セルフ変数の値を取得します。

@arg MapId
@type number
@text マップID
@default 1
@desc マップIDを指定します。

@arg MapIdByVariable
@type variable
@text マップID(変数指定)
@default 0
@desc マップIDを変数で指定します。直接マップID値を設定した場合は本パラメータは0を指定してください。

@arg EventId
@type number
@text イベントID
@default 1
@desc イベントIDを指定します。

@arg EventIdByVariable
@type variable
@text イベントID(変数指定)
@default 0
@desc イベントIDを変数で指定します。直接イベントID値を設定した場合は本パラメータは0を指定してください。

@arg SelfVariableId
@type variable
@text セルフ変数ID
@default 1
@desc セルフ変数IDを指定します。

@arg DestVariableId
@type variable
@text 格納先変数ID
@default 2
@desc 取得したセルフ変数の値を格納する変数IDを指定します。


@command SetSelfVariableValue
@text セルフ変数値設定
@desc セルフ変数の値を設定します。

@arg MapId
@type number
@text マップID
@default 1
@desc マップIDを指定します。

@arg MapIdByVariable
@type variable
@text マップID(変数指定)
@default 0
@desc マップIDを変数で指定します。直接マップID値を設定した場合は本パラメータは0を指定してください。

@arg EventId
@type number
@text イベントID
@default 1
@desc イベントIDを指定します。

@arg EventIdByVariable
@type variable
@text イベントID(変数指定)
@default 0
@desc イベントIDを変数で指定します。直接イベントID値を設定した場合は本パラメータは0を指定してください。

@arg SelfVariableId
@type variable
@text セルフ変数ID
@default 1
@desc セルフ変数IDを指定します。

@arg Value
@type number
@text 設定値
@default 0
@desc セルフ変数に設定する値を指定します。

@arg SrcVariableId
@type variable
@text 設定値格納変数ID
@default 0
@desc セルフ変数に設定する値を格納した変数IDを指定します。直接値を指定する場合、このパラメータは0を指定してください。


@command SetSelfVariableValueByEventTags
@text イベントタグによるセルフ変数値設定
@desc 指定したイベントタグを持つイベント全てにセルフ変数の値を設定します。

@arg EventTags
@type string[]
@text イベントタグ
@default []
@desc 対象となるイベントタグを指定します。

@arg SelfVariableId
@type variable
@text セルフ変数ID
@default 1
@desc セルフ変数IDを指定します。

@arg Value
@type number
@text 設定値
@default 0
@desc セルフ変数に設定する値を指定します。

@arg SrcVariableId
@type variable
@text 設定値格納変数ID
@default 0
@desc セルフ変数に設定する値を格納した変数IDを指定します。直接値を指定する場合、このパラメータは0を指定してください。


@command ClearSelfVariables
@text セルフ変数クリア
@desc 指定したマップIDとイベントIDに該当する全てのセルフ変数を0にします。

@arg MapId
@type number
@text マップID
@default 1
@desc マップIDを指定します。

@arg MapIdByVariable
@type variable
@text マップID(変数指定)
@default 0
@desc マップIDを変数で指定します。直接マップID値を設定した場合は本パラメータは0を指定してください。

@arg EventSpecification
@type boolean
@text イベント指定有無
@default true
@desc ONを指定すると対象のイベントを指定します。

@arg EventId
@type number
@text イベントID
@default 1
@desc イベントIDを指定します。

@arg EventIdByVariable
@type variable
@text イベントID(変数指定)
@default 0
@desc イベントIDを変数で指定します。直接イベントID値を設定した場合は本パラメータは0を指定してください。

@arg SelfVariableId
@type variable
@text セルフ変数ID
@default 0
@desc 指定した場合、そのセルフ変数のみクリアの対象とします。


@command GetExSelfSwitchValue
@text 拡張セルフスイッチ値取得
@desc 拡張セルフスイッチの値を取得します。

@arg MapId
@type number
@text マップID
@default 1
@desc マップIDを指定します。

@arg MapIdByVariable
@type variable
@text マップID(変数指定)
@default 0
@desc マップIDを変数で指定します。直接マップID値を設定した場合は本パラメータは0を指定してください。

@arg EventId
@type number
@text イベントID
@default 1
@desc イベントIDを指定します。

@arg EventIdByVariable
@type variable
@text イベントID(変数指定)
@default 0
@desc イベントIDを変数で指定します。直接イベントID値を設定した場合は本パラメータは0を指定してください。


@arg ExSelfSwitchId
@type switch
@text 拡張セルフスイッチID
@default 1
@desc 拡張セルフスイッチIDを指定します。

@arg DestSwitchId
@type switch
@text 格納先スイッチID
@default 2
@desc 取得した拡張セルフスイッチの値を格納するスイッチIDを指定します。


@command SetExSelfVariableValue
@text 拡張セルフスイッチ値設定
@desc 拡張セルフスイッチの値を設定します。

@arg MapId
@type number
@text マップID
@default 1
@desc マップIDを指定します。

@arg MapIdByVariable
@type variable
@text マップID(変数指定)
@default 0
@desc マップIDを変数で指定します。直接マップID値を設定した場合は本パラメータは0を指定してください。

@arg EventId
@type number
@text イベントID
@default 1
@desc イベントIDを指定します。

@arg EventIdByVariable
@type variable
@text イベントID(変数指定)
@default 0
@desc イベントIDを変数で指定します。直接イベントID値を設定した場合は本パラメータは0を指定してください。

@arg ExSelfSwitchId
@type switch
@text 拡張セルフスイッチID
@default 1
@desc 拡張セルフスイッチIDを指定します。

@arg Value
@type boolean
@text 設定値
@default true
@desc 拡張セルフスイッチに設定する値を指定します。

@arg SrcSwitchId
@type switch
@text 設定値格納スイッチID
@default 0
@desc 拡張セルフスイッチに設定する値を格納したスイッチIDを指定します。直接値を指定する場合、このパラメータは0を指定してください。


@command SetExSelfSwitchValueByEventTags
@text イベントタグによる拡張セルフスイッチ値設定
@desc 指定したイベントタグを持つイベント全てにセルフ変数の値を設定します。

@arg EventTags
@type string[]
@text イベントタグ
@default []
@desc 対象となるイベントタグを指定します。

@arg ExSelfSwitchId
@type switch
@text 拡張セルフスイッチID
@default 1
@desc 拡張セルフスイッチIDを指定します。

@arg Value
@type boolean
@text 設定値
@default true
@desc 拡張セルフスイッチに設定する値を指定します。

@arg SrcSwitchId
@type switch
@text 設定値格納スイッチID
@default 0
@desc 拡張セルフスイッチに設定する値を格納したスイッチIDを指定します。直接値を指定する場合、このパラメータは0を指定してください。


@command ClearExSelfSwitches
@text 拡張セルフスイッチクリア
@desc 指定したマップIDとイベントIDに該当する全ての拡張セルフスイッチをOFFにします。

@arg MapId
@type number
@text マップID
@default 1
@desc マップIDを指定します。

@arg MapIdByVariable
@type variable
@text マップID(変数指定)
@default 0
@desc マップIDを変数で指定します。直接マップID値を設定した場合は本パラメータは0を指定してください。

@arg EventSpecification
@type boolean
@text イベント指定有無
@default true
@desc ONを指定すると対象のイベントを指定します。

@arg EventId
@type number
@text イベントID
@default 1
@desc イベントIDを指定します。

@arg EventIdByVariable
@type variable
@text イベントID(変数指定)
@default 0
@desc イベントIDを変数で指定します。直接イベントID値を設定した場合は本パラメータは0を指定してください。

@arg ExSelfSwitchId
@type switch
@text 拡張セルフスイッチID
@default 0
@desc 指定した場合、その拡張セルフスイッチのみクリアの対象とします。



@param SelfVariablePrefix
@type string
@text セルフ変数/拡張セルフスイッチプレフィックス
@default $
@desc セルフ変数/拡張セルフスイッチの識別に使用する変数/スイッチ名のプレフィックスを指定します。

@param CommonVariablePrefix
@type string
@text コモン変数/コモンスイッチプレフィックス
@default %
@desc コモン変数/コモンスイッチの識別に使用する変数/スイッチ名のプレフィックスを指定します。

@param FloatVariablePrefix
@type string
@text 小数変数プレフィックス
@default #
@desc 小数変数の識別に使用する変数名のプレフィックスを指定します。

@param ErrorLanguage
@text エラーメッセージ言語
@type select
@option 英語
@value en
@option 日本語
@value ja
@default ja
@desc エラー表示の言語を指定します。通常このパラメータを変更する必要はありません。
*/

スポンサードリンク

スポンサードリンク

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