Проблемка нубасовская, короче такой вопрос, мне нужно что бы когда изменялось значение переменной в редакторе, получалась ссылка на эту самую переменную которая задействовала ивент и дальше уже с ней проводились операции, переменная кстати является элементом структуры.
Код:
#if WITH_EDITOR
void AUnitCharacteristics::PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent)
{
Super::PostEditChangeProperty(PropertyChangedEvent);
FName PropertyName = (PropertyChangedEvent.Property != nullptr) ? PropertyChangedEvent.Property->GetFName() : NAME_None;
// Change Attributes Base Value
if ((PropertyName == GET_MEMBER_NAME_CHECKED(FUnitAttribute, BaseValue)))
{
UFloatProperty* TriggeredProperty = Cast<UFloatProperty>(PropertyChangedEvent.Property);
float TriggeredPropertyValue = TriggeredProperty->GetPropertyValue_InContainer(TriggeredProperty);
if (TriggeredPropertyValue < AttributeMinimalValue)
{
TriggeredProperty->SetPropertyValue_InContainer(TriggeredProperty, AttributeMinimalValue);
}
CalculateTotalAttributes();
}
}
#endif
У меня ничего не работает, ue4 виснет когда меняешь значения.
//---
У меня еще одна проблема появилась ;(
Не получается создать массив указателей.
Ни так
Код:
MyStruct Var1;
MyStruct Var2;
MyStruct Var3;
TArray<MyStruct*> MyArray;
Код:
void MyClass::AddPointerToArray()
{
MyArray.Add(&Var1);
MyArray.Add(&Var2);
MyArray.Add(&Var3);
};
Ни так
Код:
MyStruct* MyArray[] = {&Var1, &Var2, &Var3};
Не работает, выдает вот такую вот ошибку: ***.h(394) : Error: Inappropriate '*' on variable of type 'MyStruct', cannot have an exposed pointer to this type.
Последний раз редактировалось
RepkaGaming 13 ноя 2017, 14:09, всего редактировалось 3 раз(а).