Why do we need to forward declare UCapsuleComponent but not UStaticMesh or the USceneComponent when creating our APawnBase?
Relevant code:
class UCapsuleComponent;
class AProjectileBase;
class UHealthComponent;
UCLASS()
class TOONTANKS_API APawnBase : public APawn
{
GENERATED_BODY()
public:
// Sets default values for this pawn's properties
APawnBase();
virtual void HandleDestruction();
private:
// COMPONENTS
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Components", meta=(AllowPrivateAccess="true"))
UCapsuleComponent* CapsuleComponent;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Components", meta=(AllowPrivateAccess="true"))
UStaticMeshComponent* BaseMesh;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Components", meta=(AllowPrivateAccess="true"))
UStaticMeshComponent* TurretMesh;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Components", meta=(AllowPrivateAccess="true"))
USceneComponent* ProjectileSpawnPoint;