Compile Errors
Error 1 error C2146: syntax error : missing ‘;’ before identifier ‘GetCurrentState’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 2 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 3 error C4183: ‘GetCurrentState’: missing return type; assumed to be a member function returning ‘int’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 4 error C2061: syntax error : identifier ‘EACPPowerAbilityPlayState’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 29 1 CPPowerAbility
Error 5 error C2146: syntax error : missing ‘;’ before identifier ‘CurrentState’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 35 1 CPPowerAbility
Error 6 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 35 1 CPPowerAbility
Error 7 error C2061: syntax error : identifier ‘EACPPowerAbilityPlayState’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 37 1 CPPowerAbility
Error 8 error C2556: ‘EACPPowerAbilityPlayerState ACPPowerAbilityGameMode::GetCurrentState(void) const’ : overloaded function differs only by return type from ‘int ACPPowerAbilityGameMode::GetCurrentState(void) const’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 42 1 CPPowerAbility
Error 9 error C2371: ‘ACPPowerAbilityGameMode::GetCurrentState’ : redefinition; different basic types c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 42 1 CPPowerAbility
Error 10 error C2065: ‘CurrentState’ : undeclared identifier c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 43 1 CPPowerAbility
Error 11 error C2084: function ‘ACPPowerAbilityGameMode::ACPPowerAbilityGameMode(const FObjectInitializer &)’ already has a body C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 8 1 CPPowerAbility
Error 12 error C2146: syntax error : missing ‘;’ before identifier ‘GetCurrentState’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 13 error C4430: missing type specifier - int assumed. Note: C++ does not support default-intC:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp(31) : error C2275: ‘ACPPowerAbilityCharacter’ : illegal use of this type as an expression c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 14 error C4183: ‘GetCurrentState’: missing return type; assumed to be a member function returning ‘int’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityCharacter.h(7) : see declaration of ‘ACPPowerAbilityCharacter’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 15 error C2061: syntax error : identifier 'EACPPowerAbilityPlayState’C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp(31) : error C2227: left of ‘->PowerLevel’ must point to class/struct/union/generic type c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 29 1 CPPowerAbility
Error 16 error C2146: syntax error : missing ‘;’ before identifier 'CurrentState’C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp(35) : error C2660: ‘ACPPowerAbilityGameMode::SetCurrentState’ : function does not take 1 arguments c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 35 1 CPPowerAbility
Error 17 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 35 1 CPPowerAbility
Error 18 error C2511: ‘void ACPPowerAbilityGameMode::SetCurrentState(EACPPowerAbilityPlayerState)’ : overloaded member function not found in 'ACPPowerAbilityGameMode’c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h(37) : error C2061: syntax error : identifier ‘EACPPowerAbilityPlayState’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 40 1 CPPowerAbility
Error 19 error C2065: ‘CurrentState’ : undeclared identifier C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 41 1 CPPowerAbility
Error 20 error C2143: syntax error : missing ‘;’ before '}'c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h(42) : error C2556: ‘EACPPowerAbilityPlayerState ACPPowerAbilityGameMode::GetCurrentState(void) const’ : overloaded function differs only by return type from ‘int ACPPowerAbilityGameMode::GetCurrentState(void) const’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 45 1 CPPowerAbility
Error 21 error C3861: ‘HandlesNewState’: identifier not found c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h(27) : see declaration of ‘ACPPowerAbilityGameMode::GetCurrentState’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 43 1 CPPowerAbility
Error 22 error C2371: ‘ACPPowerAbilityGameMode::GetCurrentState’ : redefinition; different basic typesC:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp(47) : error C2039: ‘HandlesNewState’ : is not a member of ‘ACPPowerAbilityGameMode’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 42 1 CPPowerAbility
Error 23 error C2065: ‘CurrentState’ : undeclared identifierC:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp(53) : error C2143: syntax error : missing ‘:’ before ‘;’ c:\users\user\documents\unreal projects\cppowerability\source\cppowerability\CPPowerAbilityGameMode.h 43 1 CPPowerAbility
Error 24 error C2653: ‘EACPPowerAbilityPlayState’ : is not a class or namespace name C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 55 1 CPPowerAbility
Error 25 error C2065: ‘EUnknown’ : undeclared identifier C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 55 1 CPPowerAbility
Error 26 error C2143: syntax error : missing ‘:’ before ‘;’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 55 1 CPPowerAbility
Error 27 error C2051: case expression not constant C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 55 1 CPPowerAbility
Error 28 error C2065: ‘default’ : undeclared identifier C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.cpp 56 1 CPPowerAbility
Error 29 error C2146: syntax error : missing ‘;’ before identifier ‘GetCurrentState’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 30 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 31 error C4183: ‘GetCurrentState’: missing return type; assumed to be a member function returning ‘int’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 27 1 CPPowerAbility
Error 32 error C2061: syntax error : identifier ‘EACPPowerAbilityPlayState’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 29 1 CPPowerAbility
Error 33 error C2146: syntax error : missing ‘;’ before identifier ‘CurrentState’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 35 1 CPPowerAbility
Error 34 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 35 1 CPPowerAbility
Error 35 error C2061: syntax error : identifier ‘EACPPowerAbilityPlayState’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 37 1 CPPowerAbility
Error 36 error C2556: ‘EACPPowerAbilityPlayerState ACPPowerAbilityGameMode::GetCurrentState(void) const’ : overloaded function differs only by return type from ‘int ACPPowerAbilityGameMode::GetCurrentState(void) const’ C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 42 1 CPPowerAbility
Error 37 error C2371: ‘ACPPowerAbilityGameMode::GetCurrentState’ : redefinition; different basic types C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 42 1 CPPowerAbility
Error 38 error C2065: ‘CurrentState’ : undeclared identifier C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 43 1 CPPowerAbility
Error 39 error : Failed to produce item: C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Binaries\Win64\CPPowerAbility-Win64-DebugGame.exe C:\Users\User\Documents\Unreal Projects\CPPowerAbility\Intermediate\ProjectFiles\ERROR CPPowerAbility
Error 40 error MSB3073: The command ““C:\Program Files\Epic Games\4.9\Engine\Build\BatchFiles\Build.bat” CPPowerAbility Win64 DebugGame “C:\Users\User\Documents\Unreal Projects\CPPowerAbility\CPPowerAbility.uproject” -rocket” exited with code -1. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.MakeFile.Targets 38 5 CPPowerAbility
41 IntelliSense: this declaration has no storage class or type specifier c:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 16 1 CPPowerAbility
42 IntelliSense: expected a ‘;’ c:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 17 1 CPPowerAbility
43 IntelliSense: name followed by ‘::’ must be a class or namespace name c:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 41 41 CPPowerAbility
44 IntelliSense: a type qualifier is not allowed on a nonmember function c:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 41 84 CPPowerAbility
45 IntelliSense: identifier “CurrentState” is undefined c:\Users\User\Documents\Unreal Projects\CPPowerAbility\Source\CPPowerAbility\CPPowerAbilityGameMode.h 43 9 CPPowerAbility
CPPowerAbilityPlayerState.h
#pragma once
#include "GameFramework/GameMode.h"
#include "SpawnVolume.h"
#include "CPPowerAbilityGameMode.generated.h"
//enum to store the current state of gameplay
enum class EACPPowerAbilityPlayerState : uint8
{
EPlaying,
EGameOver,
EUnknown
};
UCLASS()
class ACPPowerAbilityGameMode : public AGameMode
{
GENERATED_BODY()
public:
virtual void Tick(float DeltaSeconds) override;
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = Power)
float DecayRate;
EACPPowerAbilityPlayState GetCurrentState() const;
void SetCurrentState(EACPPowerAbilityPlayState NewState);
virtual void BeginPlay() override;
private:
EACPPowerAbilityPlayState CurrentState;
void HandleNewState(EACPPowerAbilityPlayState NewState);
};
FORCEINLINE EACPPowerAbilityPlayerState ACPPowerAbilityGameMode::GetCurrentState() const
{
return CurrentState;
}
CPPowerAbilityPlayerState.cpp
// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#include "CPPowerAbility.h"
#include "CPPowerAbilityGameMode.h"
#include "CPPowerAbilityCharacter.h"
#include "Kismet/GameplayStatics.h"
ACPPowerAbilityGameMode::ACPPowerAbilityGameMode(const FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer)
{
// set default pawn class to our Blueprinted character
static ConstructorHelpers::FClassFinder<APawn> PlayerPawnBPClass(TEXT("/Game/ThirdPersonCPP/Blueprints/ThirdPersonCharacter"));
if (PlayerPawnBPClass.Class != NULL)
{
DefaultPawnClass = PlayerPawnBPClass.Class;
}
//base decay rate
DecayRate = 1;
}
void ACPPowerAbilityGameMode::Tick(float DeltaSeconds)
{
ACPPowerAbilityCharacter* MyCharacter = Cast<ACPPowerAbilityCharacter>(UGameplayStatics::GetPlayerPawn(this, 0));
// if the character still has power decrease the characters power
if (MyCharacter->PowerLevel > 0.05)
{
//decrease characters power
MyCharacter->PowerLevel = FMath::FInterpTo(ACPPowerAbilityCharacter->PowerLevel, 0.f, DeltaSeconds, DecayRate);
}else
{
SetCurrentState(EACPPowerAbilityPlayerState::EGameOver);
}
}
void ACPPowerAbilityGameMode::SetCurrentState(EACPPowerAbilityPlayerState NewState)
{
CurrentState = NewState;
HandlesNewState(NewState)
}
void ACPPowerAbilityGameMode::HandlesNewState(EACPPowerAbilityPlayerState NewState)
{
switch (NewState)
{
case EACPPowerAbilityPlayerState::EPlaying:
break;
case EACPPowerAbilityPlayerState::EGameOver;
break;
case EACPPowerAbilityPlayState::EUnknown;
default;
//Do Nothing
break;
}
}