当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
NRP スキルの効果範囲を拡張 - NRP_SkillRangeEX.js
シェア用テキスト:
▼NRP スキルの効果範囲を拡張(砂川赳様作) - NRP_SkillRangeEX.js
https://plugin-mz.fungamemake.com/archives/1076
スキル及びアイテムの効果範囲を拡張します。縦列・横列・グループ・円形など様々な指定が可能です。
ふりがな:すきるのこうかはんいをかくちょう
機能概要: スキル及びアイテムの効果範囲を拡張します。縦列・横列・グループ・円形など様々な指定が可能です。
利用規約(ライセンス):
・著作権:保持
・商用利用:許可
・追加改変:許可
・再配布:許可
・詳細はダウンロードページ・プラグイン内を確認
作者:砂川赳
作者サイト:https://newrpg.seesaa.net//
解説ページ:https://newrpg.seesaa.net//article/473374355.html
ファイル名:NRP_SkillRangeEX.js
プラグインのヘルプ:
/*:ja
* @target MZ
* @plugindesc v1.042 スキル及びアイテムの効果範囲を拡張します。
* @author 砂川赳(http://newrpg.seesaa.net/)
* @url http://newrpg.seesaa.net/article/473374355.html
*
* @help スキル及びアイテムの効果範囲を拡張します。
* 縦列・横列・グループ・円形など様々な指定が可能です。
*
* ■使用方法
* <RangeEx:vertical>
* というように登録されている範囲をスキル(アイテム)のメモ欄に記述します。
* また、独自範囲の追加も可能です。
*
* 詳細は以下のページをご覧ください。
* http://newrpg.seesaa.net/article/473374355.html
*
* ■注意点
* このプラグインは以下のプラグインよりも、上に配置してください。
* そうしないと一部の機能が動作しなくなります。
* ・NRP_VisualTurn.js(順序リストの色変え対象に影響)
* ・NRP_DynamicAnimation.js(アニメーションの表示位置に影響)
*
* ■利用規約
* 特に制約はありません。
* 改変、再配布自由、商用可、権利表示も任意です。
* 作者は責任を負いませんが、不具合については可能な範囲で対応します。
*
* @param rangeList
* @text 範囲一覧
* @type struct<Range>[]
* @default [”{”name”:”縦”,”id”:”vertical”,”rangeIf”:”40 >= Math.abs(b.x - c.x)”,”screenAnimationX”:”b.x”,”screenAnimationY”:””,”mainTargetAllIf”:”c1._battler.isEnemy() ? c1.x > c2.x : c1.x < c2.x”,”noSide”:”false”}”,”{”name”:”横”,”id”:”horizontal”,”rangeIf”:”40 >= Math.abs(b.y - b.height / 2 - (c.y - c.height / 2))”,”screenAnimationX”:””,”screenAnimationY”:”b.y - b.height / 2”,”mainTargetAllIf”:”c1._battler.isEnemy() ? c1.y > c2.y : c1.y < c2.y”,”noSide”:”false”}”,”{”name”:”グループ”,”id”:”group”,”rangeIf”:”b._battler.isEnemy() ? b._battler.enemyId() == c._battler.enemyId() : true”,”screenAnimationX”:””,”screenAnimationY”:””,”mainTargetAllIf”:””,”noSide”:”false”}”,”{”name”:”円”,”id”:”circle”,”rangeIf”:”100**2 >= Math.max(Math.abs(c.x - b.x) - c.width / 2, 0)**2 + Math.max(Math.abs(c.y - c.height / 2 - (b.y - b.height / 2)) - c.height / 2, 0)**2”,”screenAnimationX”:”b.x”,”screenAnimationY”:”b.y - b.height / 2”,”mainTargetAllIf”:”(c1.x - a.x)**2 + (c1.y - a.y)**2 < (c2.x - a.x)**2 + (c2.y - a.y)**2”,”noSide”:”false”}”,”{”name”:”十字”,”id”:”cross”,”rangeIf”:”40 >= Math.abs(b.x - c.x) || 40 >= Math.abs(b.y - b.height / 2 - (c.y - c.height / 2))”,”screenAnimationX”:”b.x”,”screenAnimationY”:”b.y - b.height / 2”,”mainTargetAllIf”:””,”noSide”:”false”}”,”{”name”:”直線”,”id”:”line”,”rangeIf”:”40 >= Math.abs(a.y - a.height / 2 + (b.y - b.height / 2 - (a.y - a.height / 2)) / (b.x - a.x) * (c.x - a.x) - (c.y - c.height / 2))”,”screenAnimationX”:””,”screenAnimationY”:””,”mainTargetAllIf”:””,”noSide”:”false”}”,”{”name”:”自分周辺”,”id”:”around”,”rangeIf”:”250**2 >= Math.max(Math.abs(c.x - a.x) - c.width / 2, 0)**2 + Math.max(Math.abs(c.y - c.height / 2 - (a.y - a.height / 2)) - c.height / 2, 0)**2”,”screenAnimationX”:”a.x”,”screenAnimationY”:”a.y - a.height / 2”,”mainTargetAllIf”:””,”noSide”:”false”}”,”{”name”:”敵味方全員”,”id”:”all”,”rangeIf”:”true”,”screenAnimationX”:””,”screenAnimationY”:””,”mainTargetAllIf”:””,”noSide”:”true”}”,”{”name”:”自分以外”,”id”:”allOther”,”rangeIf”:”a != c”,”screenAnimationX”:””,”screenAnimationY”:””,”mainTargetAllIf”:””,”noSide”:”true”}”,”{”name”:”LV5の倍数”,”id”:”lv5”,”rangeIf”:”c._battler.level % 5 == 0”,”screenAnimationX”:””,”screenAnimationY”:””,”mainTargetAllIf”:””,”noSide”:”false”}”]
* @desc 定義された効果範囲の一覧です。
* 新しい範囲を追加することも可能です。
*/