[Gather.town]盛り上がりたい時に便利なAPI3選

2022.12.29

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

  • t_o_dと申します。
  • Gather.townは基本機能以外の仕掛けが沢山ありますが、その中の1つがブラウザコンソールで扱えるSocket APIの存在です。
  • 「現在位置の取得」や「参加者情報の取得」など豊富に存在しており、それらを適切に組み合わせることで色々な操作を行うことが可能です。
  • 今回はこれまで執筆してきた中から大人数で盛り上がりそうな機能3選をご紹介いたします。

準備

1. 一括ダンス

  • 全員で全身で喜びを表現したい時に利用できます。
  • 以下の内容をChromeコンソール画面に入力して実行するだけで、参加者全員に一括でダンスしてもらうことができます。
game.playerUidsSeenOnConnect.forEach(p => game.move(4,true,p))

2. 一括リアクション

  • 報告や発表の際に全員で同じリアクションをしたい時に利用できます。
  • 以下の内容をChromeコンソール画面に入力して実行するだけで、参加者全員にリアクションしてもらうことができます。
game.playerUidsSeenOnConnect.forEach(async p => {
    game.setEmote("?",p);
    await new Promise(r => setTimeout(r,3000));
    game.setEmote("",p)
})

  • また上記の絵文字の部分を手を振る絵文字に変えると集まりの終了時などに利用できます。

3. 一括着せ替え

  • イベント時などに全員に同じ格好をしてもらいたい時に利用できます。
  • まず自身が着せ替えたいキャラになり、以下の内容をChromeコンソール画面に入力して実行するだけで、参加者全員を一括で着せ替えることができます。
    • ※戻す実装をしていないので各々に戻していただいてください。
const character = game.players[gameSpace.id].outfitString
game.playerUidsSeenOnConnect.forEach(p => {
    game.setOutfitString(character,p)
})

まとめ

  • これまでGatherTownで利用されているAPIを利用することでさまざまな仕掛けを作ることができました。
  • 他にもこうした便利な機能が沢山あるので、組み合わせてより良い新しいリモートライフに繋がれば良いなと思います。

参考

アノテーション株式会社について

アノテーション株式会社は、クラスメソッド社のグループ企業として「オペレーション・エクセレンス」を担える企業を目指してチャレンジを続けています。「らしく働く、らしく生きる」のスローガンを掲げ、様々な背景をもつ多様なメンバーが自由度の高い働き方を通してお客様へサービスを提供し続けてきました。現在当社では一緒に会社を盛り上げていただけるメンバーを募集中です。少しでもご興味あれば、アノテーション株式会社WEBサイトをご覧ください。