diff --git a/Source/RWTHVRToolkit/Private/Pawn/IntenSelectComponent.cpp b/Source/RWTHVRToolkit/Private/Pawn/IntenSelectComponent.cpp index 644f30c91b22cad8ec4536347912b8791f0d4da8..385e2b2e4a8f1818446f7385cf68b2672f0f851e 100644 --- a/Source/RWTHVRToolkit/Private/Pawn/IntenSelectComponent.cpp +++ b/Source/RWTHVRToolkit/Private/Pawn/IntenSelectComponent.cpp @@ -85,31 +85,21 @@ void UIntenSelectComponent::BeginPlay() void UIntenSelectComponent::InitInputBindings() { - const APlayerController* PC = UGameplayStatics::GetPlayerController(GetWorld(), 0); - - UEnhancedInputLocalPlayerSubsystem* Subsystem = - ULocalPlayer::GetSubsystem<UEnhancedInputLocalPlayerSubsystem>(PC->GetLocalPlayer()); - - UInputComponent* PlayerInputComponent = PC->InputComponent; - UEnhancedInputComponent* PEI = Cast<UEnhancedInputComponent>(PlayerInputComponent); + const APawn* Pawn = Cast<APawn>(GetOwner()); + if (!Pawn) + return; + UEnhancedInputComponent* EI = Cast<UEnhancedInputComponent>(Pawn->InputComponent); - if (!PEI) + if (!EI) { const FString Message = "Could not get PlayerInputComponent for IntenSelect Input Assignment!"; - -#if WITH_EDITOR - const FText Title = FText::FromString(FString("ERROR")); - FMessageDialog::Open(EAppMsgType::Ok, FText::FromString(Message), Title); -#endif - UE_LOG(LogTemp, Error, TEXT("%s"), *Message) - UKismetSystemLibrary::QuitGame(this, nullptr, EQuitPreference::Quit, false); return; } // Bind the actions - PEI->BindAction(InputClick, ETriggerEvent::Started, this, &UIntenSelectComponent::OnFireDown); - PEI->BindAction(InputClick, ETriggerEvent::Completed, this, &UIntenSelectComponent::OnFireUp); + EI->BindAction(InputClick, ETriggerEvent::Started, this, &UIntenSelectComponent::OnFireDown); + EI->BindAction(InputClick, ETriggerEvent::Completed, this, &UIntenSelectComponent::OnFireUp); } void UIntenSelectComponent::InitSplineComponent()