LuckyWorldV2/Source/Luckyrobots/Private/GameModes/LuckyRobotsGameMode.cpp
martinluckyrobots 55fabb31e8 Optimizing WB_MainScreen
2025-04-10 10:50:58 +08:00

38 lines
1.1 KiB
C++

// Fill out your copyright notice in the Description page of Project Settings.
#include "GameModes/LuckyRobotsGameMode.h"
#include "Core/LuckyRobotsGameInstance.h"
#include "FunctionLibraries/LuckyRobotsFunctionLibrary.h"
void ALuckyRobotsGameMode::BeginPlay()
{
Super::BeginPlay();
ULuckyRobotsFunctionLibrary::UpdateQualitySettings(this);
}
UClass* ALuckyRobotsGameMode::GetDefaultPawnClassForController_Implementation(AController* InController)
{
UClass* RobotClass = Super::GetDefaultPawnClassForController_Implementation(InController);
ERobotsName CurrentRobot = ERobotsName::None;
ULuckyRobotsGameInstance* GameInstance = Cast<ULuckyRobotsGameInstance>(GetGameInstance());
if (GameInstance)
{
CurrentRobot = GameInstance->CurrentSelectRobot;
}
if (CurrentRobot != ERobotsName::None)
{
TArray<FRobotData> ActiveRobotDataList = ULuckyRobotsFunctionLibrary::GetActiveRobotDataList(this);
for (const FRobotData& RobotData : ActiveRobotDataList)
{
if (RobotData.Name == CurrentRobot)
{
RobotClass = RobotData.RobotClass;
break;
}
}
}
return RobotClass;
}