Created the turn left tile and modified the collision

This commit is contained in:
JKuijperM 2023-01-06 11:55:53 +01:00
parent 24edf34abf
commit 9526c2a754
8 changed files with 18 additions and 41 deletions

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:37e7daf1431d2c994ad4027c7f1a025693551f04212539b979a231e00c4f5925 oid sha256:ef7d569bc00343bf21433a9cfd84c174063e963a6b5ea0e7c07f2ac11bfcfd8f
size 22666 size 22827

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4908692256a8bd59e7a12cfecd3986e5e29047fbc1e08e067a7a2aa949f72efe
size 36617

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:128870a6a999e250ae12fe9bf93bd5b80915245a672072c449950e09e49c5de4 oid sha256:4702776094ca194fc90b39435008fab198657e64f32856c9877692905f37138d
size 32357 size 36794

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:b4e620fed07f31f7c8b4d0fb8dd2ed2573c0eeb3fafe04db388fee2392bf4cad oid sha256:60905fe7b9218b65432b582878be699759c98b01a47d4cbc5588b1907328e32d
size 19728 size 20422

View File

@ -21,6 +21,7 @@ void APathGenerator::BeginPlay()
AddSelectedTile(Tiles[0]); AddSelectedTile(Tiles[0]);
} }
AddSelectedTile(Tiles[1]); AddSelectedTile(Tiles[1]);
AddSelectedTile(Tiles[2]);
} }

View File

@ -30,22 +30,17 @@ void ATileCurve::TurnBeginOverlap(UPrimitiveComponent* OverlappedComponent, AAct
{ {
if (!bWasTriggered) if (!bWasTriggered)
{ {
// Yaw
float fYawValue;
if (bTurnRight && !bTurnLeft) if (bTurnRight && !bTurnLeft)
{ {
UE_LOG(LogTemp, Warning, TEXT("[ATileCurve::OnBeginOverlapChild] Rotating right")); UE_LOG(LogTemp, Warning, TEXT("[ATileCurve::OnBeginOverlapChild] Rotating right"));
fYawValue = 90.f;
FRotator NewRotation = FRotator(0.f, fYawValue, 0.f);
ZombieCharacter->bStraight = false; ZombieCharacter->bStraight = false;
ZombieCharacter->NewRotation = NewRotation; ZombieCharacter->iSideTurn = 1;
//ZombieCharacter->RotateCharacter(NewRotation);
} }
else if (!bTurnRight && bTurnLeft) else if (!bTurnRight && bTurnLeft)
{ {
UE_LOG(LogTemp, Warning, TEXT("[ATileCurve::OnBeginOverlapChild] Rotating left")); UE_LOG(LogTemp, Warning, TEXT("[ATileCurve::OnBeginOverlapChild] Rotating left"));
fYawValue = -90.f; ZombieCharacter->bStraight = false;
ZombieCharacter->iSideTurn = -1;
} }
else else
{ {

View File

@ -99,9 +99,6 @@ void AZombieCharacter::Tick(float DeltaTime)
{ {
MoveForwardConstant(DeltaTime); MoveForwardConstant(DeltaTime);
} }
//NewRotation.Yaw += 5.f;
//RotateCharacter(a);
} }
// Called to bind functionality to input // Called to bind functionality to input
@ -187,27 +184,11 @@ void AZombieCharacter::PlayTurn()
} }
} }
void AZombieCharacter::UpdateDirection(int i)
{
iCurrentDirection += i;
if (iCurrentDirection > mDirections.Num())
{
iCurrentDirection = 0;
}
else if (iCurrentDirection < 0)
{
iCurrentDirection = mDirections.Num();
}
vCurrentDirection = mDirections[iCurrentDirection];
}
void AZombieCharacter::RotateCharacter() void AZombieCharacter::RotateCharacter()
{ {
FRotator CurrentRotation = GetActorRotation(); FRotator CurrentRotation = GetActorRotation();
fControlTurn = 0.f;
PlayTurn(); PlayTurn();
UE_LOG(LogTemp, Warning, TEXT("Girao"));
//Controller->SetControlRotation(NewRotation + CurrentRotation);
} }
void AZombieCharacter::ControlTurning() void AZombieCharacter::ControlTurning()
@ -224,11 +205,10 @@ void AZombieCharacter::ControlTurning()
if (fControlTurn <= 90.f) if (fControlTurn <= 90.f)
{ {
FRotator CurrentRotation = Controller->GetControlRotation(); FRotator CurrentRotation = Controller->GetControlRotation();
CurrentRotation.Yaw += fVal; CurrentRotation.Yaw += fVal * iSideTurn;
Controller->SetControlRotation(CurrentRotation); Controller->SetControlRotation(CurrentRotation);
UE_LOG(LogTemp, Warning, TEXT("[AZombieCharacter::ControlTurning] Yaw: %f"), CurrentRotation.Yaw); UE_LOG(LogTemp, Warning, TEXT("[AZombieCharacter::ControlTurning] Yaw: %f"), CurrentRotation.Yaw);
UE_LOG(LogTemp, Warning, TEXT("[AZombieCharacter::ControlTurning] Control Turn: %f"), fControlTurn); UE_LOG(LogTemp, Warning, TEXT("[AZombieCharacter::ControlTurning] Control Turn: %f"), fControlTurn);
} }
} }
@ -238,5 +218,5 @@ void AZombieCharacter::SetState()
bReadyState = true; bReadyState = true;
bTurning = false; bTurning = false;
bStraight = true; bStraight = true;
UE_LOG(LogTemp, Warning, TEXT("[AZombieCharacter::SetState] Set state")); fPrevCurvValue = 0.f;
} }

View File

@ -66,7 +66,7 @@ public:
void RotateCharacter(); void RotateCharacter();
bool bStraight = true; bool bStraight = true;
FRotator NewRotation = FRotator(0.f, 0.f, 0.f); int iSideTurn = 1;
// Properties for the timeline to turn right // Properties for the timeline to turn right
UFUNCTION() UFUNCTION()
@ -87,8 +87,6 @@ public:
int iCurrentDirection = 0; int iCurrentDirection = 0;
FVector vCurrentDirection; FVector vCurrentDirection;
void UpdateDirection(int i);
private: private:
void MoveForwardConstant(float DeltaTime); void MoveForwardConstant(float DeltaTime);