ギルド

概要

ショールームの訪問者全員が共有するギルドを作成し、他の訪問者が作ったギルドを探して参加するデモです。ギルドの参加方式は「誰でも参加」と「マスターの承認制」から選べ、マスターは参加申請への回答、ギルドの引き渡し、解散ができます。ギルドの定員は 5 人から始まり、最大 10 人まで、1 人が所属できるギルドは 1 つです。

試し方

  1. Guild lobby の Name your guild にギルド名を入力し、必要なら Join policy: anybody joins (press to change) を押して承認制(the master approves)に切り替えます。
  2. Create a guild with this name を押すとギルドが作成され、ロビーにギルド名・人数・メンバー一覧(自分は master)が表示されます。Your guild には You are a member. The lobby above shows which guild. と Room for 5, up to 10 が表示されます。
  3. 別のブラウザ(またはプライベートウィンドウ)でこのデモを開くと、Guilds you can join にそのギルドが表示されます。誰でも参加なら Join …、承認制なら Ask to join … を押します。
  4. 承認制の場合、マスター側の Requests to join に申請が表示され、Accept … か Decline … で回答します。
  5. メンバーは Leave the guild で脱退できます。マスターは他のメンバーがいれば Hand over to … and leave で引き渡して脱退し、自分だけなら Disband the guild で解散します。

ギルドはショールームの訪問者全員で共有されるため、他の訪問者が作ったギルドが Guilds you can join に並ぶこともあります。参加・脱退・申請は通知で相手の画面にすぐ反映されます。

使用している GS2 のサービス

  • GS2-Guild: GS2-Guild がギルド種別 adventurers(初期定員 5、最大 10、1 人 1 ギルド)と、マスター・一般メンバーの 2 つのロールを定義し、ギルド・メンバー・参加申請を保持します。マスターはギルドとして振る舞い、ロールのポリシーで許可された申請への回答・引き渡し・解散だけを行えます。

GS2 Studio で使う

GS2 Studio のシンプルモードで 機能を追加 を開き、ギルド の 追加 を押すと、この機能を自分のプロジェクトに取り込めます。パッケージを直接指定する場合は GitHub から追加 を選び、次のパッケージを指定します。

https://github.com/gs2io/gs2-studio-package/tree/main/foundation-social-guild/packages/foundation-social-guild
  • オーナー: gs2io
  • リポジトリ: gs2-studio-package
  • サブディレクトリ: foundation-social-guild/packages/foundation-social-guild

ソースコード