豚さんが段差を上れるようにしたい

command /bike:
trigger:
give gold horse armour named "&6bike" to player
on rightclick:
if {Horse.riding.%player%} is false:
name of player's tool is "&6bike"
cancel event
spawn a pig at player's location
make the player ride the spawned pig
set {Horse.riding.%player%} to true
else:
push spawned pig in horizontal direction of player at speed 0.5

on sneak toggle:
set {Horse.riding.%player%} to false
command /bike:
trigger:
give gold horse armour named "&6bike" to player
on rightclick:
if {Horse.riding.%player%} is false:
name of player's tool is "&6bike"
cancel event
spawn a pig at player's location
make the player ride the spawned pig
set {Horse.riding.%player%} to true
else:
push spawned pig in horizontal direction of player at speed 0.5

on sneak toggle:
set {Horse.riding.%player%} to false
17 Replies
ふぁたおくん
ふぁたおくんOP17mo ago
あと、豚から降りる時にスニークを一瞬だけにするとon sneak toggleで検出できてないと思います どうすればいい; 別に豚であることにこだわりはないです というかアマスタのほうがいいかもしれない 豚を変数に入れて、変数に入った豚の目の前にあるブロックがairじゃければ上にpushするとできると分かった もうめんどくさいので、豚さんを人参付き棒で誘導することにしました。 豚さんを透明化させて3Dモデル被せたいんですけど、豚さんにはプレイヤーが乗ってるのでアマスタを乗せられないんですが、どうしたらいいですか
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
Skript Hub - Documentation
On Entity Dismount (Event) - Skript
Called when an entity dismounts.
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
tpすれば出来ないこともないんじゃね 最悪opti必須だけどカスタムエンティティモデル使うとか
ふぁたおくん
ふぁたおくんOP17mo ago
on rightclick:
if {Bike.riding.%player%} is false:
name of player's tool is "&6bike"
cancel event
spawn a pig at player's location
set {Bike.%player%::*} to spawned pig
add "{NoAI:1b,Invisible:1b}" to nbt of spawned pig
apply potion of speed 10 without particles to spawned pig for 999 days
apply potion of invisibility 10 without particles to spawned pig for 999 days
make the armor stand ride the spawned pig
make the player ride the spawned pig
spawn an armor stand at player's location
set {bycicle.%player%} to the spawned armor stand
set {Bike.riding.%player%} to true
on rightclick:
if {Bike.riding.%player%} is false:
name of player's tool is "&6bike"
cancel event
spawn a pig at player's location
set {Bike.%player%::*} to spawned pig
add "{NoAI:1b,Invisible:1b}" to nbt of spawned pig
apply potion of speed 10 without particles to spawned pig for 999 days
apply potion of invisibility 10 without particles to spawned pig for 999 days
make the armor stand ride the spawned pig
make the player ride the spawned pig
spawn an armor stand at player's location
set {bycicle.%player%} to the spawned armor stand
set {Bike.riding.%player%} to true
豚にアーマースタンドをevery tickでTPさせようとした
every tick in "world":
loop all players:
if {Bike.riding.%loop-player%} is true:
send "true" to loop-player
teleport {Bike.%loop-player%::*} to {bycicle.%loop-player%}
every tick in "world":
loop all players:
if {Bike.riding.%loop-player%} is true:
send "true" to loop-player
teleport {Bike.%loop-player%::*} to {bycicle.%loop-player%}
リロードした時に、存在するエンティティは保存できませんよ~みたいなこと言われるけど、ほんと?
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
ほんと それの意味は サーバー再起動した時にエンティティのデータ保持できませんよってだけ 止めなければ保持できる
ふぁたおくん
ふぁたおくんOP17mo ago
上のコードを入れて、bikeって名前のアイテムを右クリックして動いてみても アマスタが豚にTPしてこないでげす;
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
なんだこれは、 てか豚に乗ってるプレイヤーにアマスタ乗せちゃダメなん?
ふぁたおくん
ふぁたおくんOP17mo ago
え 確かに(笑) あーでも ん? 頭装備とrideは別だっけ 頭装備できなくなるの悲しいナと思ってたけど別だからええか できました!あざす! あ、あと向いてる方向をプレイヤーと同じにしたいんですけど、そういう構文ありましたっけ、、😔
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
それはtpが必要 座標に含まれるyawとpitchっていう情報をプレイヤーのと一致させなきゃいけない ただtpすると多分プレイヤーから下ろされるので 常にtpとrideしなきゃいけない 今日帰ったら車sk作ってみる
ふぁたおくん
ふぁたおくんOP17mo ago
every tick in "world":
loop all players:
if {Bike.riding.%loop-player%} is true:
set {_l} to location of loop-player
set {_y} to yaw of {_l}
set {Bike.loc.%loop-player%} to location of {Bike.%loop-player%}
set {Bycicle.loc.%loop-player%} to location of {Bycicle.loc.%loop-player%}
teleport {Bike.%loop-player%} to location(~, ~, ~, ~, {_y}, ~})
teleport {Bycicle.%loop-player%} to location(~, ~, ~, ~, {_y}, ~)
every tick in "world":
loop all players:
if {Bike.riding.%loop-player%} is true:
set {_l} to location of loop-player
set {_y} to yaw of {_l}
set {Bike.loc.%loop-player%} to location of {Bike.%loop-player%}
set {Bycicle.loc.%loop-player%} to location of {Bycicle.loc.%loop-player%}
teleport {Bike.%loop-player%} to location(~, ~, ~, ~, {_y}, ~})
teleport {Bycicle.%loop-player%} to location(~, ~, ~, ~, {_y}, ~)
teleportするときにyaw以外いじらなくていいんですが~じゃだめですか
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
だめだす ちなyaw of {_l}をsetすればよい そのあと tp 〜 to {_l}
ふぁたおくん
ふぁたおくんOP17mo ago
なんかおそいんです;
every tick in "world":
loop all players:
if {Bike.riding.%loop-player%} is true:
set {_l} to location of loop-player
set {_y} to yaw of {_l}
add "{Pose:{Head:[0f,%{_y}%f,0f]}}" to nbt of {Bycicle.%loop-player%}
every tick in "world":
loop all players:
if {Bike.riding.%loop-player%} is true:
set {_l} to location of loop-player
set {_y} to yaw of {_l}
add "{Pose:{Head:[0f,%{_y}%f,0f]}}" to nbt of {Bycicle.%loop-player%}
プレイヤーのyawを取得して、それをアマスタのposeのheadの2番目に代入するっていう天才的な発明をしました。 が、yawは360度であるのに対し、poseはなんか変な数値の付き方してるので検証します。
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
そういやアマスタならその方法があった
ふぁたおくん
ふぁたおくんOP17mo ago
普通に助けてほしい なんか アマスタが向かない方向がある 運営に「別に頭動かさなくても向いてる方向向くよ」って言われたので上のコード消してみましたが むりか アマスタの頭ぐるぐる回したらある一定の箇所でアマスタの体ごと動くんだけどなんだこれ
ふぁたおくん
ふぁたおくんOP17mo ago
rideしてるentityの向きがたまに変わるのを止めたいので rideしてるアマスタの向きを固定したいナ
add "{Rotation:[0f,0f]}" to nbt of {Bycicle.%player%}
add "{Rotation:[0f,0f]}" to nbt of {Bycicle.%player%}
でアマスタにnbt付与したんですけど、アマスタの体の向きを固定できませんでした。 every tickでloopしてみても無理でした。 どうしたらいいですか
Want results from more Discord servers?
Add your server