Need some help! [Beginner]

When I created this thread I had some problems with overlapping, but after spending half day, I finally fixed it :smiley: But I still have some questions! Im a beginner, I’ve just started learning the Unreal Engine(Im pretty familiar with c++). And the thing that confuses me the most is the lack of information regarding overall coding and using functions/macros(I tend to get lost/forget them). Could you guys move me to the right direction and share your experience in beginning to learn this engine? I’d be very grateful! Also, the thing that seems very strange to me, is the fact that this engine API is getting updated very constantly. I followed a 5 months-old guide and the code just didnt work for me. I got very frustrated because I had to spent half a day to fix it and the fact that even tutorials in this page are not updated(for example overlapping parameters) wasnt satisfying either. How can I learn the engine if there are constant updates and most of the tutorials I want to learn from are not up to date?

The major thing I found wrong was that your overlap “start” function wasn’t correct for the OnComponentBeginOverlap delegate.

MyActor.h


/** MyActor
https://forums.unrealengine.com/showthread.php?113723-Need-some-help!-Beginner
*/

#pragma once

#include "GameFramework/Actor.h"
#include "MyActor.generated.h"

UCLASS()
class T_API AMyActor : public AActor
{
	GENERATED_BODY()
	
public:	
	AMyActor();
	virtual void BeginPlay() override;	
	virtual void Tick( float DeltaSeconds ) override;

	UPROPERTY(EditAnywhere)
	UShapeComponent* tBox;

	UPROPERTY(EditAnywhere)
	UStaticMeshComponent* meshas;

	UPROPERTY(EditAnywhere, Category = "Testing")
	float SpeedScale;
	float RunningTime;
	FVector StartingLocation = FVector(-91.0f, -1719.0f, 270.0f);
	FVector Sizeation = FVector(1.5f, 1.5f, 1.5f);

	UFUNCTION()
	void start( class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult & SweepResult );
	
};


MyActor.cpp


/** MyActor
https://forums.unrealengine.com/showthread.php?113723-Need-some-help!-Beginner
*/

#include "T.h"
#include "MyActor.h"

AMyActor::AMyActor()
{
	PrimaryActorTick.bCanEverTick = true;
	tBox = CreateDefaultSubobject<UBoxComponent>(TEXT("Box"));
	tBox->bGenerateOverlapEvents = true;
	RootComponent = tBox;
	meshas = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("meshas"));
	meshas->AttachTo(RootComponent);
	
	// Bob distance
	SpeedScale = 128.f;
}

void AMyActor::BeginPlay()
{
	Super::BeginPlay();
	if( tBox )
	{
		// Overlap event (currently not used but points to start( ) )
		tBox->OnComponentBeginOverlap.AddDynamic( this, &AMyActor::start );
	}
}

void AMyActor::Tick( float DeltaTime )
{
	Super::Tick( DeltaTime );

	// Bob up and down
	FVector NewLocation = GetActorLocation();
	float DeltaHeight = (FMath::Sin(RunningTime + DeltaTime) - FMath::Sin(RunningTime));
	NewLocation.Z += DeltaHeight * SpeedScale;
	RunningTime += ( DeltaTime * 4.0f );
	SetActorLocation( NewLocation );
}

void AMyActor::start(class AActor* OtherActor, class UPrimitiveComponent* OtherComp,	int32 OtherBodyIndex, bool bFromSweep, const FHitResult & SweepResult )
{

}