《UE4游戏开发》之 《代理》

//FComsumedItemEvent可以被UPROPERTY(BlueprintAssignable)标识
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FComsumedItemEvent, int, ItemId);
//FOnAutoEquipEvent不可以被UPROPERTY(BlueprintAssignable)标识
DECLARE_DELEGATE_TwoParams(FOnAutoEquipEvent, int, float);
	//OnComsumedItem不可以OnComsumedItem.ExecuteIfBound(2)
	UPROPERTY(BlueprintAssignable)
	FComsumedItemEvent OnComsumedItem;
	//使用
	if (OnComsumedItem.IsBound())
	{
    
    
		OnComsumedItem.Broadcast(id);
	}
	//OnAutoEquip可以OnAutoEquip.ExecuteIfBound(2)
	FOnAutoEquipEvent OnAutoEquip;
	//使用方法1
	OnAutoEquip.ExecuteIfBound(2);
	//使用方法2
	if (OnAutoEquip.IsBound())
	{
    
    
		OnAutoEquip.Execute(12.0);
	}

猜你喜欢

转载自blog.csdn.net/qq_21919621/article/details/107511807