머지 완료, 데미지 관련 간단 구현
This commit is contained in:
@@ -252,9 +252,10 @@ void ADefaultPlayerController::Skill1()
|
||||
FVector Location = GetPawn()->GetActorLocation();
|
||||
Location.Z = 0;
|
||||
|
||||
SimpleMoveToLocation(this, Location);
|
||||
this->MoveToLocation(Location);
|
||||
Server_StopMove();
|
||||
Multicast_StopMove();
|
||||
|
||||
Multicast_SetRotation(GetMouseHitLocation());
|
||||
Server_SetRotation(GetMouseHitLocation());
|
||||
|
||||
UE_LOG(LogTemp, Warning, TEXT("Skill1"));
|
||||
@@ -267,9 +268,10 @@ void ADefaultPlayerController::Skill2()
|
||||
FVector Location = GetPawn()->GetActorLocation();
|
||||
Location.Z = 0;
|
||||
|
||||
SimpleMoveToLocation(this, Location);
|
||||
this->MoveToLocation(Location);
|
||||
Server_StopMove();
|
||||
Multicast_StopMove();
|
||||
|
||||
Multicast_SetRotation(GetMouseHitLocation());
|
||||
Server_SetRotation(GetMouseHitLocation());
|
||||
|
||||
UE_LOG(LogTemp, Warning, TEXT("Skill2"));
|
||||
@@ -282,9 +284,10 @@ void ADefaultPlayerController::Skill3()
|
||||
FVector Location = GetPawn()->GetActorLocation();
|
||||
Location.Z = 0;
|
||||
|
||||
SimpleMoveToLocation(this, Location);
|
||||
this->MoveToLocation(Location);
|
||||
Server_StopMove();
|
||||
Multicast_StopMove();
|
||||
|
||||
Multicast_SetRotation(GetMouseHitLocation());
|
||||
Server_SetRotation(GetMouseHitLocation());
|
||||
|
||||
UE_LOG(LogTemp, Warning, TEXT("Skill3"));
|
||||
@@ -297,9 +300,10 @@ void ADefaultPlayerController::Skill4Triggered()
|
||||
FVector Location = GetPawn()->GetActorLocation();
|
||||
Location.Z = 0;
|
||||
|
||||
SimpleMoveToLocation(this, Location);
|
||||
this->MoveToLocation(Location);
|
||||
Server_StopMove();
|
||||
Multicast_StopMove();
|
||||
|
||||
Multicast_SetRotation(GetMouseHitLocation());
|
||||
Server_SetRotation(GetMouseHitLocation());
|
||||
|
||||
UE_LOG(LogTemp, Warning, TEXT("Skill4 Triggered"));
|
||||
@@ -312,9 +316,10 @@ void ADefaultPlayerController::Skill4Completed()
|
||||
FVector Location = GetPawn()->GetActorLocation();
|
||||
Location.Z = 0;
|
||||
|
||||
SimpleMoveToLocation(this, Location);
|
||||
this->MoveToLocation(Location);
|
||||
Server_StopMove();
|
||||
Multicast_StopMove();
|
||||
|
||||
Multicast_SetRotation(GetMouseHitLocation());
|
||||
Server_SetRotation(GetMouseHitLocation());
|
||||
|
||||
UE_LOG(LogTemp, Warning, TEXT("Skill4 Completed"));
|
||||
@@ -388,6 +393,23 @@ void ADefaultPlayerController::Server_SetRotation_Implementation(FVector MouseHi
|
||||
Multicast_SetRotation(MouseHitLocation);
|
||||
}
|
||||
|
||||
void ADefaultPlayerController::Server_StopMove_Implementation()
|
||||
{
|
||||
Multicast_StopMove();
|
||||
}
|
||||
|
||||
void ADefaultPlayerController::Multicast_StopMove_Implementation()
|
||||
{
|
||||
UPathFollowingComponent* PFollowComp = this->FindComponentByClass<UPathFollowingComponent>();
|
||||
if (!PFollowComp) return;
|
||||
|
||||
PFollowComp->OnRequestFinished.Clear();
|
||||
|
||||
PFollowComp->RequestMoveWithImmediateFinish(EPathFollowingResult::Success);
|
||||
|
||||
PFollowComp->OnRequestFinished.AddUObject(this, &ADefaultPlayerController::OnMoveCompleted);
|
||||
}
|
||||
|
||||
FVector ADefaultPlayerController::GetMouseHitLocation()
|
||||
{
|
||||
FHitResult HitResult;
|
||||
|
||||
@@ -46,6 +46,11 @@ public:
|
||||
UFUNCTION(Server, Reliable)
|
||||
void MoveToLocation(FVector Location);
|
||||
|
||||
UFUNCTION(Server, Reliable)
|
||||
void Server_StopMove();
|
||||
UFUNCTION(NetMulticast, Reliable)
|
||||
void Multicast_StopMove();
|
||||
|
||||
UFUNCTION(NetMulticast, Reliable)
|
||||
void Multicast_SetRotation(FVector MouseHitLocation);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user