ログインメニューを追加する - Steam でログインする - (Unity モジュール)
注釈:本資料はAI技術を用いて翻訳されています。
このチュートリアルモジュールは、Steamworks の制限により WebGL ビルドには適用されません。
メニューの内容
このモジュールでは、前の デバイス ID でログインする モジュールで設定した LoginMenu_Starter を使用します。このメニューは以下のファイルで構成されています。
- LoginMenu_Starter: ログインメニューを表示するために使用される C# クラス。
- C# ファイル:
/Assets/Resources/Modules/Access/AuthEssentials/Scripts/UI/LoginMenu_Starter.cs - Prefab ファイル:
/Assets/Resources/Modules/Access/AuthEssentials/Prefabs/LoginMenu_Starter.prefab
- C# ファイル:
LoginMenu_Starter クラスには、以下のボタンコンポーネントがあります。このボタンを使用して、Steam などのシングルプラットフォーム認証を使用したログインリクエストを送信します。
[SerializeField] private Button loginWithSinglePlatformAuthButton;
Byte Wars は、実行時にこのボタンを動的に設定して、シングルプラットフォーム認証のログインオプションを表示します。Steam をシングルプラットフォーム認証方法として実装するため、このボタンは SinglePlatformAuthWrapper_Starter クラスの以下の関数に自動的にバインドされます。
private void OnLoginWithSteamButtonClicked() { }
SinglePlatformAuthWrapper_Starter クラスは、Steam プラットフォームトークンを AGS にログインするために送信するために使用するラッパーです。このプロセスについては、次のセクションで詳しく説明します。このクラスは以下のファイルで定義されています。
- C# ファイル:
Assets/Resources/Modules/Access/SinglePlatformAuth/Scripts/SinglePlatformAuthWrapper_Starter.cs
UI の準備
このセクションでは、Steam を使用したシングルプラットフォーム認証統合のために UI を準備します。
-
SinglePlatformAuthWrapper_Starterクラスを開き、以下の一時的なコードを追加して、ログインメニューをローディング状態に変更します。後でこれを実際のログインリクエストに置き換えます。private void OnLoginWithSteamButtonClicked()
{
LoginMenu_Starter loginMenu = MenuManager.Instance.GetCurrentMenu() as LoginMenu_Starter;
if (!loginMenu)
{
return;
}
loginMenu.OnRetryLoginClicked = OnLoginWithSteamButtonClicked;
loginMenu.WidgetSwitcher.SetWidgetState(AccelByteWarsWidgetSwitcher.WidgetState.Loading);
} -
Unity エディターに戻ります。
Assets/Resources/Modules/Access/SinglePlatformAuthに移動し、SinglePlatformAuthAssetConfig.assetを開きます。Is ActiveとIs Starter Activeの両方のチェックボックスをオンにして、モジュールがスターターモードでアクティブになっていることを確認します。 -
Unity エディターに戻り、ゲームをプレイします。Login with Steam ボタンが表示されます。
リソース
-
このチュートリアルセクションで使用されているファイルは、Unity Byte Wars GitHub リポジトリで入手できます。
- Assets/Resources/Modules/TutorialModuleConfig.json
- Assets/Resources/Modules/Access/AuthEssentials/Scripts/UI/LoginMenu_Starter.cs
- Assets/Resources/Modules/Access/AuthEssentials/Prefabs/LoginMenu_Starter.prefab
- Assets/Resources/Modules/Access/SinglePlatformAuth/Scripts/SinglePlatformAuthWrapper_Starter.cs