void UCheatManager::ChangeSize( float F ) { APawn* Pawn = GetOuterAPlayerController()->GetPawn(); // Note: only works on characters ACharacter *Character = Cast<ACharacter>(Pawn); if (Character) { ACharacter* DefaultCharacter = Character->GetClass()->GetDefaultObject<ACharacter>(); Character->GetCapsuleComponent()->SetCapsuleSize(DefaultCharacter->GetCapsuleComponent()->GetUnscaledCapsuleRadius() * F, DefaultCharacter->GetCapsuleComponent()->GetUnscaledCapsuleHalfHeight() * F); if (Character->GetMesh()) { Character->GetMesh()->SetRelativeScale3D(FVector(F)); } Character->TeleportTo(Character->GetActorLocation(), Character->GetActorRotation()); } }