Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void AAuroraBaseAICharacter::Tick(float DeltaSeconds)
- {
- // Make sure we aren't going over our sensed time or set it back to false
- if (bSensedTarget && (GetWorld()->TimeSeconds - LastSeenTime) > SenseTimeOut)
- {
- AAuroraBaseAIController* AIController = Cast<AAuroraBaseAIController>(GetController());
- if (AIController)
- {
- bSensedTarget = false;
- GEngine->AddOnScreenDebugMessage(-2, 2.0f, FColor::Red, TEXT("Shit I lost him"));
- /* Reset */
- AIController->SetTargetEnemy(nullptr);
- }
- }
- }
- void AAuroraBaseAICharacter::OnSeePlayer(APawn * Pawn)
- {
- GEngine->AddOnScreenDebugMessage(-1, 2.0f, FColor::Green, TEXT("I SEE YOU!"));
- // Keep track of when a player is tracked
- LastSeenTime = GetWorld()->GetTimeSeconds();
- bSensedTarget = true;
- // Get the controller
- AAuroraBaseAIController* aiController = Cast<AAuroraBaseAIController>(this->GetController());
- // Cast to see if player is a Aurora Base Character
- AAuroraBaseCharacter* sensedPlayer = Cast<AAuroraBaseCharacter>(Pawn);
- if (aiController)
- {
- aiController->SetTargetEnemy(sensedPlayer);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement