Я пытаюсь подражать коду из ShooterGame, сейчас бег у меня устроен так
.h
void Sprint();
void StopSprint();
void SetRunning(bool bNewRunning);
UFUNCTION(Reliable, Client, WithValidation)
void MyServFunct(bool bNewRunning);
void MyServFunct_Implementation(bool bNewRunning);
bool MyServFunct_Validate(bool bNewRunning);
.cpp
void ACppProjectCharacter::Sprint() {
SetRunning(true);
}
void ACppProjectCharacter::StopSprint() {
SetRunning(false);
}
void ACppProjectCharacter::SetRunning(bool bNewRunning) {
if(Role < ROLE_Authority) {
MyServFunct(bNewRunning);
}
ACppProjectCharacter::CharacterMovement->MaxWalkSpeed = bNewRunning ? 1000.0f : 600.f;
}
void ACppProjectCharacter::MyServFunct_Implementation(bool bNewRunning) {
GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Blue, TEXT("MyServFunct"));
SetRunning(bNewRunning);
}
bool ACppProjectCharacter::MyServFunct_Validate(bool bNewRunning) {
return true;
}
Игра тут же вылетает. Мне больше в голову не приходит, как ещё можно все это реализовать