You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
- added customizeProperty option for anim node properties, so that you can customize - slot node is customized so that you can add slot/group name as well as you can go to manage section - skeleton now stores list of slot/group names available #code reivew: Laurent.Delayen, Michael.Noland [CL 2075622 by Lina Halper in Main branch]
77 lines
2.0 KiB
C++
77 lines
2.0 KiB
C++
// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "AnimGraphPrivatePCH.h"
|
|
|
|
#include "GraphEditorActions.h"
|
|
#include "ScopedTransaction.h"
|
|
#include "AnimGraphNode_Slot.h"
|
|
|
|
/////////////////////////////////////////////////////
|
|
// UAnimGraphNode_Slot
|
|
|
|
#define LOCTEXT_NAMESPACE "A3Nodes"
|
|
|
|
UAnimGraphNode_Slot::UAnimGraphNode_Slot(const FPostConstructInitializeProperties& PCIP)
|
|
: Super(PCIP)
|
|
{
|
|
}
|
|
|
|
FLinearColor UAnimGraphNode_Slot::GetNodeTitleColor() const
|
|
{
|
|
return FLinearColor(0.7f, 0.7f, 0.7f);
|
|
}
|
|
|
|
FString UAnimGraphNode_Slot::GetTooltip() const
|
|
{
|
|
return TEXT("Plays animation from code using AnimMontage");
|
|
}
|
|
|
|
FText UAnimGraphNode_Slot::GetNodeTitle(ENodeTitleType::Type TitleType) const
|
|
{
|
|
const FText SlotName = (Node.SlotName != NAME_None) ? FText::FromName(Node.SlotName) : LOCTEXT("NoSlotName", "(No slot name)");
|
|
|
|
FFormatNamedArguments Args;
|
|
Args.Add(TEXT("SlotName"), SlotName);
|
|
|
|
if (TitleType == ENodeTitleType::ListView)
|
|
{
|
|
return FText::Format(LOCTEXT("SlotNodeListTitle", "Slot '{SlotName}'"), Args);
|
|
}
|
|
else
|
|
{
|
|
return FText::Format(LOCTEXT("SlotNodeTitle", "{SlotName}\nSlot"), Args);
|
|
}
|
|
}
|
|
|
|
FString UAnimGraphNode_Slot::GetNodeNativeTitle(ENodeTitleType::Type TitleType) const
|
|
{
|
|
// Do not setup this function for localization, intentionally left unlocalized!
|
|
const FString SlotName = (Node.SlotName != NAME_None) ? Node.SlotName.ToString() : TEXT("(No slot name)");
|
|
|
|
if (TitleType == ENodeTitleType::ListView)
|
|
{
|
|
return FString::Printf(TEXT("Slot '%s'"), *SlotName);
|
|
}
|
|
else
|
|
{
|
|
return FString::Printf(TEXT("%s\nSlot"), *SlotName);
|
|
}
|
|
}
|
|
|
|
FString UAnimGraphNode_Slot::GetNodeCategory() const
|
|
{
|
|
return TEXT("Blends");
|
|
}
|
|
|
|
void UAnimGraphNode_Slot::BakeDataDuringCompilation(class FCompilerResultsLog& MessageLog)
|
|
{
|
|
UAnimBlueprint* AnimBlueprint = GetAnimBlueprint();
|
|
if (AnimBlueprint->TargetSkeleton)
|
|
{
|
|
AnimBlueprint->TargetSkeleton->AddSlotNodeName(Node.SlotName);
|
|
AnimBlueprint->TargetSkeleton->AddSlotGroupName(Node.GroupName);
|
|
}
|
|
}
|
|
|
|
#undef LOCTEXT_NAMESPACE
|