2014-12-07 19:09:38 -05:00
|
|
|
// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
|
2014-03-14 14:13:41 -04:00
|
|
|
#pragma once
|
2015-02-23 10:30:16 -05:00
|
|
|
|
|
|
|
|
#include "AIGraph.h"
|
2014-03-14 14:13:41 -04:00
|
|
|
#include "EnvironmentQueryGraph.generated.h"
|
|
|
|
|
|
2015-03-10 09:38:12 -04:00
|
|
|
class UEnvQueryOption;
|
|
|
|
|
class UEnvQueryTest;
|
|
|
|
|
class UEnvironmentQueryGraphNode;
|
|
|
|
|
|
2014-03-14 14:13:41 -04:00
|
|
|
UCLASS()
|
2015-02-23 10:30:16 -05:00
|
|
|
class UEnvironmentQueryGraph : public UAIGraph
|
2014-03-14 14:13:41 -04:00
|
|
|
{
|
2015-03-17 05:38:32 -04:00
|
|
|
GENERATED_UCLASS_BODY()
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2015-03-09 05:40:56 -04:00
|
|
|
virtual void Initialize() override;
|
|
|
|
|
virtual void OnLoaded() override;
|
2015-02-23 10:30:16 -05:00
|
|
|
virtual void UpdateVersion() override;
|
|
|
|
|
virtual void MarkVersion() override;
|
|
|
|
|
virtual void UpdateAsset(int32 UpdateFlags = 0) override;
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2015-03-09 05:40:56 -04:00
|
|
|
void UpdateDeprecatedGeneratorClasses();
|
|
|
|
|
void SpawnMissingNodes();
|
2014-03-14 14:13:41 -04:00
|
|
|
void CalculateAllWeights();
|
|
|
|
|
void CreateEnvQueryFromGraph(class UEnvironmentQueryGraphNode* RootEdNode);
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
|
|
|
|
void UpdateVersion_NestedNodes();
|
2014-04-23 19:29:53 -04:00
|
|
|
void UpdateVersion_FixupOuters();
|
2015-02-23 10:30:16 -05:00
|
|
|
void UpdateVersion_CollectClassData();
|
2014-03-14 14:13:41 -04:00
|
|
|
|
2015-02-23 10:30:16 -05:00
|
|
|
virtual void CollectAllNodeInstances(TSet<UObject*>& NodeInstances) override;
|
2015-03-10 09:38:12 -04:00
|
|
|
|
|
|
|
|
void SpawnMissingSubNodes(UEnvQueryOption* Option, TSet<UEnvQueryTest*> ExistingTests, UEnvironmentQueryGraphNode* OptionNode);
|
2015-02-23 10:30:16 -05:00
|
|
|
};
|