独自ジャンプや昇降を実装【プラグイン】

ジャンプや持ち上げる動作による座標変化を簡単に行えるコマンドを実装します。
表示優先度を修正するプラグインと組み合わせることで持ち上げたキャラクターが後ろにいるキャラクターに隠れてしまう現象を防げます。

更新履歴

2024/02/16:Ver.1.0.0 公開。
2024/02/17:Ver.1.0.1 OverpassTileが無くても動くように修正。
2024/02/17:Ver.1.0.2 茂み深さを高さに応じて変化するように修正。

ダウンロード

メイン
UniqueJump.js Ver.1.0.2
MITライセンス
オマケ
自作システムを省略するためのコマンド集(将来内容が大きく変化する可能性アリなので保証しません)
MITライセンス

使い方

【基本】
this.jump(距離X, 距離Y) //ジャンプ(コアスクリプト)
this.setThrough(真偽値) //すり抜け(コアスクリプト)
this.uniqueJump(頂点, 時間) //独自ジャンプ
this.uniqueJump(頂点)
this.uniqueJump()
頂点:未入力で50。
時間:未入力で(頂点*2)^0.5 * 2
真偽値:trueまたはfalse

【昇降】
this.uniqueLift(高さ) //高さを指定
this.uniqueLift(高さ, 時間) //フレーム数を指定して移動
this.uniqueLift(高さ, -1) //ジャンプの残り時間で移動
this.uniqueLift(高さ, -2) //独自ジャンプの残り時間で移動

【データ取得】
this.isJumping() //ジャンプ中か(コアスクリプト)
this.isThrough() //すり抜け中か
this.direction() //現在の向き(コアスクリプト)
this.canPass(X座標, Y座標, 向き) //その座標からその方向に移動可能か(コアスクリプト)
[2,4,6,8].every(d=>!this.canPass(this.x, this.y, d)) //現座標は全方向移動不可能か
this.isUniqueJumping() //独自ジャンプ中か
this.isUniqueLifting() //高さ変化中か
this.uniqueJumpHeight() //現在のジャンプ高さ
this.uniqueJumpLastSpeed() //最新のフレーム毎上昇速度(下降はマイナスで表現)
this.uniqueLiftHeight() //現在の高さ
$gamePlayer.canMove() //プレイヤーが操作可能な状態か
向き:テンキーの矢印の数字に対応。
※canPassはすり抜けているか否かで結果が変わるので扱いには注意。
移動コマンドで使う場合はそのまま、
イベントコマンドで使う場合はthisを$gamePlayer、
もしくはthis.character(キャラクターID)に置き換えて使ってください。

仕様

この記事へのコメント