プレイヤーを斜め後ろにジャンプさせる方法

壁ジャンを作ろうと思っているのですがプレイヤーをジャンプさせる方法がわからなく、教えていただけると幸いです
28 Replies
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
この構文を使います Directionを使用して前後左右及び上下への単純な移動が実現できる他、ベクトルを使用して精密に移動させることもできます。 https://skripthub.net/docs/?id=1135
Skript Hub - Documentation
Push (Effect) - Skript
Push entities around.
unnnnnnnnnnn
unnnnnnnnnnn13mo ago
set velocity to ~も pushの制御は結構難しい
るび
るび13mo ago
斜め後ろってプレイヤーの向いてる方向の真後ろに飛ばすってことですか?
yukkina
yukkina13mo ago
pushというかvectorムズいよなぁ
月猫ch
月猫ch13mo ago
vectorとかいう くそ便利だけど中坊skripterをふるいにかけてくる悲しき概念
yukkina
yukkina13mo ago
wwww
Shake
ShakeOP13mo ago
そうですね。。。 後ろに飛ばしたい感じです ジャンプ以前に壁を検知することができない…
わし
わし13mo ago
if block at location 1 meter forward player is not air or water or lava: とかでいいと思いまふ
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
壁を検知できたとして 落下中のプレイヤーの何をトリガーにジャンプしたと判定させるかも問題 当然空中だからon jumpが使えないわけで 一瞬flightさせた上でその間の移動を検知するとかになるとは思う
unnnnnnnnnnn
unnnnnnnnnnn13mo ago
よくあるのはスニークで壁につかまってスニーク離したときに目線の方向にジャンプ 俺はFキーで壁方向velocityを反転させる方法でやったけど、壁にあたったら壁方向のvelocityが0になっちゃうからvelocityに依存しないほうがいいかも ジャンプしたあとにon flight toggleでやる方法は2回押さなきゃいけないからちょっと大変
月猫ch
月猫ch13mo ago
ふつうにPL使った方が早いと思う
unnnnnnnnnnn
unnnnnnnnnnn13mo ago
PLはスニークのやつしか知らないな
何か
何か13mo ago
前方に一ミリくらいのレイトレースで壁検知して密着したらフライト状態にする Y座標が一ミリでも増えたら反対方向に飛ばす
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
浮いてるからスペースキー一瞬押しただけで判定できるで
unnnnnnnnnnn
unnnnnnnnnnn13mo ago
なるほど壁検知してflightにしたときスペース押してたらy座標増えるからそれを使うのか 完全にman10のダブルジャンプのイメージだった 常にflyableにしてon flight toggleで検知するやつ
Shake
ShakeOP13mo ago
難しすぎてよくわからない。。。 誰か例のコードを書いていただけると嬉しいです…!
unnnnnnnnnnn
unnnnnnnnnnn13mo ago
every 1 tick:
壁を検知
flight toggle
wait for 1 tick
y座標が増えた
(set velocity/push)
every 1 tick:
壁を検知
flight toggle
wait for 1 tick
y座標が増えた
(set velocity/push)
どこがわからない? Fキーだったらこんな感じ
on swap hand items:
壁を検知
(set velocity/push)
on swap hand items:
壁を検知
(set velocity/push)
flight toglleだったらこう
every 10 seconds:
飛行可能にする

on flight toggle:
歩行状態からフライト状態へのtoggle
cancel event
壁を検知
(set velocity/push)
every 10 seconds:
飛行可能にする

on flight toggle:
歩行状態からフライト状態へのtoggle
cancel event
壁を検知
(set velocity/push)
Shake
ShakeOP13mo ago
ありがとうございます!! ちょっと頑張ってみます!
るび
るび13mo ago
できましたか?
Shake
ShakeOP13mo ago
えとやってみたんですけど下を見てジャンプしても反応してしまって..
月猫ch
月猫ch13mo ago
どう反応したん? ~にとんだとか
Shake
ShakeOP13mo ago
今堂が送ります こんな感じです
Shake
ShakeOP13mo ago
Shake
ShakeOP13mo ago
On jump:
if block at location 0.001 meter forward player is not air or water or lava:
wait for 1 tick
push player up at speed 0.2
push player backwards at speed 0.8
On jump:
if block at location 0.001 meter forward player is not air or water or lava:
wait for 1 tick
push player up at speed 0.2
push player backwards at speed 0.8
コードがこちらです
月猫ch
月猫ch13mo ago
block at location 0.001 meter forward player こいつが自分の足より下にあるか否かでチェックするとよいかも
Shake
ShakeOP13mo ago
なるほど... どのように書けばよろしいでしょうか...? わからなくて。。。すいません
月猫ch
月猫ch13mo ago
例えばこう?
on jump:
set {_block} to block at location 0.001 meter forward player
{_block} is not air or water or lava
y location of {_block} > y location of player
wait for 1 tick
push player up at speed 0.2
push player backwards at speed 0.8
on jump:
set {_block} to block at location 0.001 meter forward player
{_block} is not air or water or lava
y location of {_block} > y location of player
wait for 1 tick
push player up at speed 0.2
push player backwards at speed 0.8
防砂テストはしてないから注意 @GYORUI
Shake
ShakeOP13mo ago
ありがとうございます! 無事完成しました!!ありがとうございます!1
Want results from more Discord servers?
Add your server