相手のスキルに対抗して効果を変えるプラグイン – FTKR_SkillCounter.js

タイトル
相手のスキルに対抗して効果を変えるプラグイン
作者名
ヘルプ
-----------------------------------------------------------------------------
概要
-----------------------------------------------------------------------------
1. スキルのパラメータを指定して、その条件に合うスキルを
無効化・吸収・反射します。

2. スキルのダメージタイプを指定して、その条件に合うダメージの効果を変えます。

3. 上記1と2のタグ設定の有効条件を設定できます。
攻撃側と防御側のパラメータを比較して無効化・吸収・反射するかどうかを
設定できます。

※本プラグインには、プラグインパラメータとプラグインコマンドはありません。


-----------------------------------------------------------------------------
設定方法
-----------------------------------------------------------------------------
1.「プラグインマネージャー(プラグイン管理)」に、本プラグインを追加して
ください。


-----------------------------------------------------------------------------
スキルの無効化
-----------------------------------------------------------------------------
スキルのパラメータを指定して、その条件に合うスキルを無効化します。
ここでの無効化とは、「命中しなかった」ことを意味します。

対象:アクター、クラス、装備、ステート、エネミー
<InvalidSkillId: x>
<スキルID無効化: x>
:スキルIDが x のスキルを無効化します。

<InvalidSkillType: x>
<スキルタイプ無効化: x>
:スキルタイプIDが x のスキルを無効化します。
:スキルタイプIDは、データベースのタイプで設定した番号です。

<InvalidDamageType: x>
<ダメージタイプ無効化: x>
:ダメージタイプが x のスキルを無効化します。
:x は以下の番号を指定してください。
: 1 - HPダメージ
: 2 - MPダメージ
: 3 - HP回復
: 4 - MP回復
: 5 - HP吸収
: 6 - MP吸収

<InvalidElementId: x>
<属性無効化: x>
:属性IDが x のスキルを無効化します。
:属性IDは、データベースのタイプで設定した番号です。

<InvalidHitType: x>
<命中タイプ無効化: x>
:命中タイプが x のスキルを無効化します。
:x は以下の番号を指定してください。
: 1 - 必中
: 2 - 物理攻撃
: 3 - 魔法攻撃


例)
<スキルID無効化: 10>
:スキルID 10 のスキルを無効化

なお、以下のようにカンマ(,)を使って複数の条件を指定することができます。
<スキルID無効化: 10,11>
:スキルID 10 と 11 のスキルを無効化


-----------------------------------------------------------------------------
スキルの吸収
-----------------------------------------------------------------------------
スキルのパラメータを指定して、その条件に合うスキルを吸収します。

対象:アクター、クラス、装備、ステート、エネミー
<DrainSkillId: x>
<スキルID吸収: x>
:スキルIDが x のスキルを吸収します。

<DrainSkillType: x>
<スキルタイプ吸収: x>
:スキルタイプIDが x のスキルを吸収します。
:スキルタイプIDは、データベースのタイプで設定した番号です。

<DrainElementId: x>
<属性吸収: x>
:属性IDが x のスキルを吸収します。
:属性IDは、データベースのタイプで設定した番号です。

<DrainHitType: x>
<命中タイプ吸収: x>
:命中タイプが x のスキルを吸収します。
:x は以下の番号を指定してください。
: 1 - 必中
: 2 - 物理攻撃
: 3 - 魔法攻撃

例)
<スキルID吸収: 10>
:スキルID 10 のスキルを吸収

なお、以下のようにカンマ(,)を使って複数の条件を指定することができます。
<スキルID吸収: 10,11>
:スキルID 10 と 11 のスキルを吸収


-----------------------------------------------------------------------------
スキルの反射
-----------------------------------------------------------------------------
スキルのパラメータを指定して、その条件に合うスキルを反射します。

対象:アクター、クラス、装備、ステート、エネミー
<ReflectionSkillId: x>
<スキルID反射: x>
:スキルIDが x のスキルを反射します。

<ReflectionSkillType: x>
<スキルタイプ反射: x>
:スキルタイプIDが x のスキルを反射します。
:スキルタイプIDは、データベースのタイプで設定した番号です。

<ReflectionDamageType: x>
<ダメージタイプ反射: x>
:ダメージタイプが x のスキルを反射します。
:x は以下の番号を指定してください。
: 1 - HPダメージ
: 2 - MPダメージ
: 3 - HP回復
: 4 - MP回復
: 5 - HP吸収
: 6 - MP吸収

<ReflectionElementId: x>
<属性反射: x>
:属性IDが x のスキルを反射します。
:属性IDは、データベースのタイプで設定した番号です。

<ReflectionHitType: x>
<命中タイプ反射: x>
:命中タイプが x のスキルを反射します。
:x は以下の番号を指定してください。
: 1 - 必中
: 2 - 物理攻撃
: 3 - 魔法攻撃

例)
<スキルID反射: 10>
:スキルID 10 のスキルを反射

なお、以下のようにカンマ(,)を使って複数の条件を指定することができます。
<スキルID反射: 10,11>
:スキルID 10 と 11 のスキルを反射


-----------------------------------------------------------------------------
ダメージタイプの変更
-----------------------------------------------------------------------------
相手のスキルの効果を、ダメージなら回復に、回復ならダメージに変換するタグを
使用できます。

対象:アクター、クラス、装備、ステート、エネミー
<ReversDamage: type>
<ダメージ反転: type>
:受けた'type'のダメージ(吸収含む)を回復に変えます。
:type に使用できるコードは、以下です。
: Hp - Hp系のダメージを回復にします。
: Mp - Mp系のダメージを回復にします。
入力例)
<ReversDamage: Hp,Mp>
: HpダメージとMpダメージを両方回復にします。


<ReversRecover: type>
<回復反転: type>
:受けた'type'の回復をダメージに変えます。
:type に使用できるコードは、以下です。
: Hp - Hp系の回復をダメージにします。
: Mp - Mp系の回復をダメージにします。
入力例)
<ReversRecover: Hp,Mp>
: Hp回復とMp回復を両方ダメージにします。


-----------------------------------------------------------------------------
設定したタグの有効条件
-----------------------------------------------------------------------------
以下のノートタグを追記することで、無効化・吸収・反射・ダメージ反転タグの
有効条件を設定することができます。

<SCT 有効条件>
条件式
</SCT 有効条件>

[条件式(eval) の値について]
条件式(eval)は、ダメージ計算式のように、計算式を入力することで、
固定値以外の値を使用することができます。以下のコードを使用できます。
a.param - 攻撃側のパラメータを参照します。(a.atk で攻撃側の攻撃力)
b.param - 防御側のパラメータを参照します。(b.atk で防御側の攻撃力)
s[x] - スイッチID x の状態を参照します。
v[x] - 変数ID x の値を参照します。


入力例)
スイッチID1 が ON の時にタグが有効になる。
<SCT 有効条件>
s[1]
</SCT 有効条件>


[複数の条件を設定する場合]
以下の2種類の入力例は同じ意味です。

1. 縦に複数の条件式を並べる
<SCT 有効条件>
条件式1
条件式2
</SCT 有効条件>

1. '&&'を使用して横に複数の条件式を並べる
<SCT 有効条件>
条件式1 && 条件式2
</SCT 有効条件>


-----------------------------------------------------------------------------
本プラグインのライセンスについて(License)
-----------------------------------------------------------------------------
本プラグインはMITライセンスのもとで公開しています。
This plugin is released under the MIT License.

Copyright (c) 2017 Futokoro
http://opensource.org/licenses/mit-license.php


-----------------------------------------------------------------------------
変更来歴
-----------------------------------------------------------------------------

v1.0.6 - 2017/04/29 : 条件式にセルフ変数を使用できるように見直し。
v1.0.5 - 2017/04/23 : ヘルプ修正
v1.0.4 - 2017/04/23 : 日本語タグ追加、ヘルプ修正、内部処理見直し
v1.0.3 - 2017/04/23 : 不具合修正
v1.0.2 - 2017/04/23 : 機能追加
v1.0.1 - 2017/04/14 : 微修正
v1.0.0 - 2017/02/21 : 初版作成

-----------------------------------------------------------------------------
パラメータ
( なし )
ライセンス表記
本プラグインのライセンスについて(License)
本プラグインはMITライセンスのもとで公開しています。
This plugin is released under the MIT License.
Copyright (c) 2017 Futokoro
http://opensource.org/licenses/mit-license.php

紹介ページ https://github.com/futokoro/RPGMaker