Announcement

Collapse
No announcement yet.

Unresolved external Symbol

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Unresolved external Symbol

    Hi guys,

    getting an error in my code, and honestly not sure whats going on.

    I have attached an image of the error, and if anything is needed, please do help. I can also provide a github link to the project.

    The error seems to be somewhere in FSM_State_Idle and FSM_State_GoTo, not being happy to inherit from FSM_State Base. In order the code blurbs are, FSM_State_Base.h
    FSM_State_Idle.h, FSM_State_Idle.cpp. I havent included the GoTo, as that should have the same issue, as currently idle and goto have the same functions.

    Code:
    #include "Spy.h"
    #include "GOAP/FiniteStateMachine/Finite_State_Machine.h"
    
    class FSM_State_Base
    {
    public:
        FSM_State_Base(AFinite_State_Machine* TheSpy) { Spy = TheSpy; }
        virtual ~FSM_State_Base();
    
    
        virtual void Update() = 0;
    
        virtual FSM_State_Base* ConditionCheck() = 0;
    
    
        AFinite_State_Machine* SpyOwner() { return Spy; }
    
        AFinite_State_Machine* Spy;
    };
    Code:
    #include "GOAP/FiniteStateMachine/FSM_State_Base.h"
    class AFiniteStateMachine;
    class Planner;
    
    class FSM_State_Idle : public FSM_State_Base
    {
    public:
        FSM_State_Idle(AFinite_State_Machine* TheSpy );
        ~FSM_State_Idle();
    
        AActor* vTheTarget;
        TQueue<GOAP_Action_Base*> vThePLan;
        Planner* vThePLanner;
    
        void Update();
        FSM_State_Base* ConditionCheck();
    };
    Code:
    #include "FSM_State_Idle.h"
    #include "GOAP/FiniteStateMachine/FMS_State_GoTo.h"
    #include "Spy.h"
    #include "GOAP/Planner/Planner.h"
    #include "GOAP/FiniteStateMachine/Finite_State_Machine.h"
    #include "AIController.h"
    #include "Materials/MaterialInstanceDynamic.h"
    #include "Engine/Classes/Components/SkeletalMeshComponent.h"
    #include "Classes/Blueprint/AIBlueprintHelperLibrary.h"
    #include "Engine/Classes/Kismet/GameplayStatics.h"
    
    FSM_State_Idle::FSM_State_Idle(AFinite_State_Machine* TheSpy) : FSM_State_Base (TheSpy)
    {
    
        vThePLanner = new Planner();
    
        TSet<TPair<FString, bool>> CurrentState = Cast<ASpy>(TheSpy)->GetPlayersCurrentState();
        TSet<TPair<FString, bool>> GoalState = Cast<ASpy>(TheSpy)->GoalState();
        //TSet<GOAP_Action_Base*> ActionList = Cast<ASpy>(TheSpy)->GetActionList();
    }
    
    FSM_State_Idle::~FSM_State_Idle()
    {
    
        if (vThePLanner)
        {
            delete vThePLanner;
        }
    }
    
    void FSM_State_Idle::Update()
    {
    }
    
    FSM_State_Base* FSM_State_Idle::ConditionCheck()
    {
        return nullptr;
    }
Working...
X