skript プレイヤーの位置を検知

サーバー運用される方はこちらで情報交換されてはいかがでしょうか?
フォーラムルール
質問関連フォーラムで質問する時は、必ず次のトピックを一読/厳守お願い致します。
viewtopic.php?f=5&t=999
  • (PostNo.295007)

skript プレイヤーの位置を検知

投稿記事by sukafe » 2017年2月04日(土) 20:07

skriptについて質問させていただきます。

現在特定の場所でアイテムを使うと効果が発動するという形でコードを書いていたのですが

コード: 全て選択
on rightclick:
   name of held item contains "召喚アイテム"
   player's location is location of {point1}:
      loop all players in radius 5 around location of {point1}:
         send "&a5秒後にTPします、集まってください。" to loop-player
      wait 5 second
      loop all players in radius 5 around location of {point1}:
         teleport the loop-player to the location (-544, 97, -399)


このようにすると
小数点範囲まで座標があっていなければいけないので
実際には使えません。

なので
コード: 全て選択
on rightclick:
   name of held item contains "召喚アイテム"
   player's location is in radius 5 around location of {point1}:
      loop all players in radius 5 around location of {point1}:
         send "&a5秒後にTPします、集まってください。" to loop-player
      wait 5 second
      loop all players in radius 5 around location of {point1}:
         teleport the loop-player to the location (-544, 97, -399)


このようにしたのですがこれではエラーを吐いてしまいます。
なんとかプレイヤーの位置を取得する方法はありませんでしょうか、
宜しくお願いします。
最後に編集したユーザー sukafe [ 2017年2月04日(土) 21:28 ], 累計 1 回
sukafe
ID:86c5633e
水から上がったとこ
 
記事: 9
登録日時: 2016年12月18日(日) 17:48

  • (PostNo.295014)

Re: skript プレイヤーの位置を検知

投稿記事by mcgo » 2017年2月04日(土) 20:54

具体的にどのようなことをしたいのかを書いてください。
あと、エラー文も載せてください。
サーバー関係の分からないことは英語で検索したら案外出ててくるで!
だってMinecraftって海外生まれやで!
最近はSkriptを使って色々自作してサーバー作ってます。
もしよければSkript作成してもいいゾ(激ムズは拒否するかも・・・)
詳しくはPMで!
【Skript自作コード公開中】
アバター
mcgo
ID:d7e2f34f
石炭掘り
 
記事: 187
登録日時: 2016年11月04日(金) 00:05

  • (PostNo.295017)

Re: skript プレイヤーの位置を検知

投稿記事by sukafe » 2017年2月04日(土) 21:36

mcgo さんが書きました:具体的にどのようなことをしたいのかを書いてください。
あと、エラー文も載せてください。


したいことは上の通りプレイヤーの位置をコンディションとして使いたいです。
この場合は召喚アイテムという名前のアイテムを右クリックしたときに特定の範囲内にいるプレイヤーをTPさせるという形を作ろうとしていました
2個目のコードに関してはちょっとヤケ気味だったのですが

コード: 全て選択
[21:34:28] [Server thread/ERROR]: Can't compare a location with 'in radius 5 around location of {point1}' (aiueo.sk, line 3: player's location is in radius 5 around location of {point1}:')
[21:34:28] [Server thread/INFO]: [Skript] Encountered 1 error while reloading


こんな感じでした
sukafe
ID:86c5633e
水から上がったとこ
 
記事: 9
登録日時: 2016年12月18日(日) 17:48

  • (PostNo.295021)

Re: skript プレイヤーの位置を検知

投稿記事by mcgo » 2017年2月04日(土) 22:16

先程こちらでsukafeさんのコードを基に試行錯誤をしてみた結果、以下の文で動作を確認しました。
しかし自分1人での動作なので、これが複数人でしっかり動作するかはsukafeさん自身で試してください。
コード: 全て選択
on rightclick:
   name of held item contains "召喚アイテム"
   loop all players:
      loop all players in radius 5 around location of {point1}:
         send "&a5秒後にTPします、集まってください。" to loop-player-1
         wait 5 second
         teleport loop-player-1 to the location (-544, 97, -399)
サーバー関係の分からないことは英語で検索したら案外出ててくるで!
だってMinecraftって海外生まれやで!
最近はSkriptを使って色々自作してサーバー作ってます。
もしよければSkript作成してもいいゾ(激ムズは拒否するかも・・・)
詳しくはPMで!
【Skript自作コード公開中】
アバター
mcgo
ID:d7e2f34f
石炭掘り
 
記事: 187
登録日時: 2016年11月04日(金) 00:05

  • (PostNo.295034)

Re: skript プレイヤーの位置を検知

投稿記事by sukafe » 2017年2月05日(日) 06:00

mcgo さんが書きました:先程こちらでsukafeさんのコードを基に試行錯誤をしてみた結果、以下の文で動作を確認しました。
しかし自分1人での動作なので、これが複数人でしっかり動作するかはsukafeさん自身で試してください。
コード: 全て選択
on rightclick:
   name of held item contains "召喚アイテム"
   loop all players:
      loop all players in radius 5 around location of {point1}:
         send "&a5秒後にTPします、集まってください。" to loop-player-1
         wait 5 second
         teleport loop-player-1 to the location (-544, 97, -399)


返信ありがとうございます。
mcgo様のコードですとコンディション?として使えなような気がして
例えば範囲内にいない場合などのように処理を分けようとしてもできないみたいで;
なのでplayer's locationのようにプレイヤーの座標と特定座標を見分けるコードを使おうとしたのですが範囲がうまく指定
できずこのようなことになっていました。
sukafe
ID:86c5633e
水から上がったとこ
 
記事: 9
登録日時: 2016年12月18日(日) 17:48

  • (PostNo.295054)

Re: skript プレイヤーの位置を検知

投稿記事by Dotoo » 2017年2月05日(日) 13:13

sukafeさんはまず、

このようにすると
小数点範囲まで座標があっていなければいけないので
実際には使えません。


の部分だけを答えればいいのか、それとも頭の中にある仕様通りのスクリプトが欲しいのかをまず明らかにするべきではないでしょうか。傍から見ていると二人の会話は全く噛み合ってないように思えます。もし前者の場合はsnippetだけを教えれば済みますが、後者の場合は一体どういうアイテムを作って具体的に何をさせたいかを書くべきです。
アバター
Dotoo
ID:d4078ac9
金掘り
 
記事: 383
登録日時: 2012年11月21日(水) 15:20


Return to 質問:マルチサーバー運用

x