armswingのパケット送信がわからない
2.5.3 1.12.2 のpaperです
skript-packetをつかってswing armのパケットを送ろうとしていろいろやってます
22 Replies
(質問追記中)
field 0とか1をbroadcastすると
でした
protocolibのwikiを見てる限りでは
0はplayerID?、1はanimationの種類
だと思っていたので
いよいよfieldに何を入れればいいかわからなくなりました
どなたかprotocolib wikiのfieldと
実際にbroadcastした時の値の違いについて教えてもらえないでしょうか
⇧はbroadcastの結果とwikiのfieldから見様見真似でfieldの値を設定したりしてみたやつです
エラーはないのですが、当然動きませんでした
可能であればこれが動かなかった理由も教えてほしいです
解決策あるわけじゃないけど、
動かして普通に腕ふったときにどんな感じでfieldが使われてるかみてみたい
Skript Hub - Documentation
Packet Fields (Expression) - skript-packet
Get all packet fields, can't be set
おおむね、最初の画像の二枚目と同じでした
※カラー分けしてます
wikiでは最低でも2つfieldが設定されているようですが
結果としてMAIN_HANDのみでした
Skript Hub - Documentation
Packet Fields Classes (Expression) - skript-packet
Get all fields's classes of a packet.
This is not intended to be use on your final code,
it's only to help you to know what is inside a packet
これはどう
field 1を無理に設定しているのが悪影響なのかと、消してみましたが
それでも動きませんでした…
classの結果はこんな感じです
play_client_arm_animationってこっちだったりしない?
play_server_animation使わないといけない気がする
play_client....がクライアントからサーバーへのパケット(bound to server)で
play_server...がサーバーからクライアントへのパケット(bound to client)だと思う
今回チェックしたり送ろうとしたりしてたのはこのパケットで、だから1つしかフィールドがなかったのでは
実際exampleでも送ってるのはplay_server...だから
https://skripthub.net/docs/?id=5337
Skript Hub - Documentation
Send Packet (Effect) - skript-packet
Sends the specified packet(s) to the specified player(s).
あ”~
これって
play_client_arm_animation
こういうのの一覧ってどこで見ればいいかわからないです…
Skript Hub - Documentation
Packettypes (Expression) - skript-packet
Return all available ProtocolLib packettypes
これ使えばリスト出せると思う
send "%all packettypes%"
ありがとうございます(´;ω;`)
@unnnnnnnnnnn
メンションすみません
Entity IDって何を入れればいいのでしょうか…
NotesにPlayer IDって書いてあるからIDを入れればいいんだろうけど、そういうときはpacke eventでsend "%all fields%"やって実際にどんな値が入ってるか確認したほうがいい
id of player
でいけました
どうやらそのままだったみたいです…
解決?
解決しました!!
腕を振る(swing arm)できました
解決結果置いときます
今回でパケットを最低限理解できました
これで俺もようやくpacket使いの仲間入り(?)
(パケットなんもわからん使い方だけ教えろ民はDMくれれば反応します)