メインコンテンツまでスキップ

すべてをまとめる - ログインキュー - (Unreal Engine モジュール)

Last updated on February 4, 2026

注釈:本資料はAI技術を用いて翻訳されています。

ログインキューのステータスを表示するために UI を接続する

  1. LoginQueueWidget_Starter CPP ファイルを開き、NativeOnActivated() 関数に移動して、以下のハイライトされたコードを追加します。これは、サブシステムで設定したデリゲートに UI 機能をバインドするためのものです。

    void ULoginQueueWidget_Starter::NativeOnActivated()
    {
    Super::NativeOnActivated();

    LoginQueueSubsystem = GetGameInstance()->GetSubsystem<ULoginQueueSubsystem_Starter>();
    ensure(LoginQueueSubsystem);

    W_Parent = GetFirstOccurenceOuter<ULoginWidget_Starter>();
    if (!W_Parent)
    {
    UE_LOG_LOGIN_QUEUE(Warning, TEXT("Deactivate Auth Essentials's starter mode or activate this module's starter mode to make this widget work properly."))
    return;
    }

    Btn_CancelQueue->OnClicked().AddUObject(this, &ThisClass::CancelQueue);
    LoginQueueSubsystem->OnLoginQueueCancelCompletedDelegates.AddUObject(this, &ThisClass::OnCancelQueueCompleted);
    LoginQueueSubsystem->OnLoginQueuedDelegates.AddUObject(this, &ThisClass::OnLoginQueued);
    LoginQueueSubsystem->OnLoginTicketStatusUpdatedDelegates.AddUObject(this, &ThisClass::OnLoginStatusUpdated);
    }
  2. 引き続き CPP ファイルで、NativeOnDeactivated() 関数に移動し、以下のハイライトされたコードを追加します。ここでは、UI が閉じられたときに UI 機能のバインドを解除して、望ましくない動作を防ぎます。

    void ULoginQueueWidget_Starter::NativeOnDeactivated()
    {
    Super::NativeOnDeactivated();

    Btn_CancelQueue->OnClicked().RemoveAll(this);
    LoginQueueSubsystem->OnLoginQueueCancelCompletedDelegates.RemoveAll(this);
    LoginQueueSubsystem->OnLoginQueuedDelegates.RemoveAll(this);
    LoginQueueSubsystem->OnLoginTicketStatusUpdatedDelegates.RemoveAll(this);
    }
  3. 次に、CancelQueue() 関数に移動します。お気づきかもしれませんが、その関数内にプレースホルダーのインラインコメントがあります。そのインラインコメントを以下のコードに置き換えます。ここでキャンセルリクエスト機能を呼び出します。

    void ULoginQueueWidget_Starter::CancelQueue() const
    {
    Ws_Root->SetActiveWidget(W_Loading);
    LoginQueueSubsystem->CancelLoginQueue(GetOwningPlayer());
    }
  4. AccelByteWars プロジェクトをビルドし、コンパイルエラーがないことを確認します。

リソース