x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

How do I spawn an AActor from c++?

I followed the instructions on the wiki, but I cannot get my code to compile. I am trying to spawn an AActor from a ACharacter derived class. Here is my code

 void APlayerCharacter::DropFlag(bool Destroy)
 {
     IsHoldingFlag = false;
     FlagComponent->SetVisibility(false);
     if (!Destroy)
     {
         static ConstructorHelpers::FObjectFinder<UBlueprint> FlagClass(TEXT("Blueprint'/Game/BP/Entities/BP_Flag.BP_Flag'"));
         if (FlagClass.Object)
         {
             FlagClassBP = (UClass*)FlagClass.Object->GeneratedClass;
         }
         FVector FlagLocation = GetActorLocation();
 
         GetWorld()->SpawnActor
             (
                 FlagClassBP,
                 FName("BP_Flag"),
                 FlagLocation,
                 FRotator(0, 0, 0),
                 FlagTemplate,
                 true,
                 false,
                 GetLevel(),
                 this,
                 true,
                 GetLevel(),
                 true);
     }
     
 }

Here is the error: Error C2661 'UWorld::SpawnActor': no overloaded function takes 12 arguments CaptureTheFlag

But the wiki says it does have 12 arguments.

Product Version: UE 4.10
Tags:
more ▼

asked Feb 28 '16 at 04:18 PM in C++ Programming

avatar image

BeastKiller
1 2

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Just in case you didn't: You need to state what actor type your spawner is Look at my example: ** You need to include the Flagclass header in the cpp or header fileto the character class in order for this current class to know what flag is

//what do you need the flag spawned from? a socket? the actor? componet?

 UWorld* const World = GetWorld();
 
 
 FVector loc = GetActorLocation(MyActorComponent); 
 
 FRotator rot = GetActorRotation(MyActorComponent);
 
 
 AFlagActor *SpawnFlag = World->SpawnActor(FlagClassBP, loc, rot);

it's a lot more simple :)

You can also make the flag a part of the character as a component if you needed but there's a little more to that

more ▼

answered Feb 29 '16 at 12:19 AM

avatar image

spazchicken
447 35 20 53

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question