当前位置: 首页 > wzjs >正文

做热血钓鱼网站网站建设与管理规划书

做热血钓鱼网站,网站建设与管理规划书,免费推广网站大全下载,学风建设网站这一部分首先把复杂的每个属性委托全部换成了简洁可复用的委托,之后重新修改了UI蓝图,然后在新增了一个与之前表格关联的动画与血条延迟下降的蓝图 OverlayAuraWidgetController.h // Fill out your copyright notice in the Description page of Project Settings. #pragma …

这一部分首先把复杂的每个属性委托全部换成了简洁可复用的委托,之后重新修改了UI蓝图,然后在新增了一个与之前表格关联的动画与血条延迟下降的蓝图

OverlayAuraWidgetController.h

// Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "IPropertyTable.h" #include "UI/WidgetController/AuraWidgetController.h" #include "OverlayAuraWidgetController.generated.h" USTRUCT(BlueprintType) struct FUIWidgetRow : public FTableRowBase { GENERATED_BODY() UPROPERTY(EditAnywhere,BlueprintReadOnly) FGameplayTag MessageTag = FGameplayTag(); UPROPERTY(EditAnywhere,BlueprintReadOnly) FText Message = FText(); UPROPERTY(EditAnywhere,BlueprintReadOnly) TSubclassOf<class UAuraUserWidget> MessageWidget; UPROPERTY(EditAnywhere,BlueprintReadOnly) UTexture2D* Image = nullptr; }; class UAuraUserWidget; DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnAttributeChangedSignature, float, NewValue); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FMessageWidgetRowSingnature, FUIWidgetRow, Row); /** * */ UCLASS(BlueprintType,Blueprintable) class MYGAS_API UOverlayAuraWidgetController : public UAuraWidgetController { GENERATED_BODY() public: virtual void BroadcastInitialValues() override; virtual void BindCallbacksToDependencies() override; UPROPERTY(BlueprintAssignable,Category="GAS|Attributes") FOnAttributeChangedSignature OnHealthChangedSignature; UPROPERTY(BlueprintAssignable,Category="GAS|Attributes") FOnAttributeChangedSignature OnMaxHealthChangedSignature; UPROPERTY(BlueprintAssignable,Category="GAS|Attributes") FOnAttributeChangedSignature OnManaChangedSignature; UPROPERTY(BlueprintAssignable,Category="GAS|Attributes") FOnAttributeChangedSignature OnMaxManaChangedSignature; UPROPERTY(BlueprintAssignable,Category="GAS|Messages") FMessageWidgetRowSingnature MessageWidgetRowDelegate; protected: UPROPERTY(EditDefaultsOnly,BlueprintReadOnly,Category="Widget Data") TObjectPtr<UDataTable> MessageWidgetDataTable; template<typename T> T* GetDataTableRowByTag(UDataTable* DataTable,const FGameplayTag& Tag); }; template <typename T> T* UOverlayAuraWidgetController::GetDataTableRowByTag(UDataTable* DataTable, const FGameplayTag& Tag) { return DataTable->FindRow<T>(Tag.GetTagName(), TEXT(""));; }

OverlayAuraWidgetController.cpp

// Fill out your copyright notice in the Description page of Project Settings. #include "UI/WidgetController/OverlayAuraWidgetController.h" #include "AbilitySystem/AuraAbilitySystemComponentBase.h" #include "AbilitySystem/AuraAttributeSet.h" #include "Engine/Engine.h" #include "GameFramework/Pawn.h" class UAuraAttributeSet; void UOverlayAuraWidgetController::BroadcastInitialValues() { //这里应该绑定一个事件,获取到AuraAttributeSet const UAuraAttributeSet* AuraAttributeSet = CastChecked<UAuraAttributeSet>(AttributeSet); // 获取到 Health 和 MaxHealth 属性,并进行广播 OnHealthChangedSignature.Broadcast(AuraAttributeSet->GetHealth()); OnMaxHealthChangedSignature.Broadcast(AuraAttributeSet->GetMaxHealth()); OnManaChangedSignature.Broadcast(AuraAttributeSet->GetMana()); OnMaxManaChangedSignature.Broadcast(AuraAttributeSet->GetMaxMana()); } void UOverlayAuraWidgetController::BindCallbacksToDependencies() { const UAuraAttributeSet* AuraAttributeSet = CastChecked<UAuraAttributeSet>(AttributeSet); //绑定血量 AbilitySystemComponent->GetGameplayAttributeValueChangeDelegate( AuraAttributeSet->GetHealthAttribute()).AddLambda( [this](const FOnAttributeChangeData& Data) { OnHealthChangedSignature.Broadcast(Data.NewValue); } ); AbilitySystemComponent->GetGameplayAttributeValueChangeDelegate( AuraAttributeSet->GetMaxHealthAttribute()).AddLambda( [this](const FOnAttributeChangeData& Data) { OnMaxHealthChangedSignature.Broadcast(Data.NewValue); } ); //绑定蓝量 AbilitySystemComponent->GetGameplayAttributeValueChangeDelegate( AuraAttributeSet->GetManaAttribute()).AddLambda( [this](const FOnAttributeChangeData& Data) { OnManaChangedSignature.Broadcast(Data.NewValue); } ); AbilitySystemComponent->GetGameplayAttributeValueChangeDelegate( AuraAttributeSet->GetMaxManaAttribute()).AddLambda( [this](const FOnAttributeChangeData& Data) { OnMaxManaChangedSignature.Broadcast(Data.NewValue); } ); Cast<UAuraAbilitySystemComponentBase>(AbilitySystemComponent)->EffectAssetTags.AddLambda( [this](const FGameplayTagContainer& AssetTags) { for(const FGameplayTag& Tag : AssetTags) { //检查 MessageTag 是否是Data表内的 MessageTag,如何不是就会返回False FGameplayTag MessageTag = FGameplayTag::RequestGameplayTag(FName("Message")); if(Tag.MatchesTag(MessageTag)) { const FUIWidgetRow* Row = GetDataTableRowByTag<FUIWidgetRow>(MessageWidgetDataTable , Tag); if(Row) { MessageWidgetRowDelegate.Broadcast(*Row); } } } } ); }

修改WBP_GlobeProgressBar

在UI添加一个ProgressBar_Ghost

更新WBP_Globe_Health和WBP_Globe_Mana的蓝图

在WBP_OverLay里面添加子UI

在这里创建一个动画,先向上,再向右平移并且隐藏

在SetImageAndText内设置播放的字,图片和动画


文章转载自:

http://fyjaJSLJ.njdtq.cn
http://xLpLWE2v.njdtq.cn
http://aHaTNsEv.njdtq.cn
http://d3L3PlLb.njdtq.cn
http://cQ97iP1F.njdtq.cn
http://8vFDTw2y.njdtq.cn
http://Sjw4HNBO.njdtq.cn
http://MNCKhIop.njdtq.cn
http://F3j70qau.njdtq.cn
http://FENtBnRK.njdtq.cn
http://6tQ8t6cg.njdtq.cn
http://OZdxOYBc.njdtq.cn
http://dbQQQ73J.njdtq.cn
http://bprw8jVi.njdtq.cn
http://sJNoKZkR.njdtq.cn
http://UkRevxS4.njdtq.cn
http://UnADWZRC.njdtq.cn
http://iV9Ra2i5.njdtq.cn
http://ERNyRMo5.njdtq.cn
http://mH3Oi8db.njdtq.cn
http://sSjHkRJW.njdtq.cn
http://xR0tOcYF.njdtq.cn
http://EdmNFYqU.njdtq.cn
http://qBPj8arP.njdtq.cn
http://AfG9kLGZ.njdtq.cn
http://w1f8Veeo.njdtq.cn
http://JbddLARf.njdtq.cn
http://WxDqbZvg.njdtq.cn
http://tuidbnTv.njdtq.cn
http://CTPRxGju.njdtq.cn
http://www.dtcms.com/wzjs/730567.html

相关文章:

  • 河北建设工程招标网官方网站中教在线3d建模培训
  • 建设电影网站的教程网站建设有前途吗
  • 网络营销是不是网络销售几级英语可以做外贸网站seo
  • 专业建站网站服务建设银行武威分行网站
  • 旅游网站建设规划黄岩地区做环评立项在哪个网站
  • 企业门户网站属于什么层源码怎么用
  • 建设银行网站查开户行有的网站打不开是什么原因呢
  • 山东企业网站建设公司wordpress网站载入慢
  • 妹妹强迫我和她做网站化妆品 网站模板
  • 全国政务网站哪家做的好东莞网站建设与网络推广
  • 网站开发数据库设计的作用做音乐网站的栏目
  • 手机在线建网站深圳市房屋管理局官方网站
  • 网址导航网站一键建设动易学校网站模板
  • 网站宣传需要多少钱权重查询入口
  • 如何打造网站外贸怎样做网站
  • 青岛网站建设 推荐青岛博采网络网站建设维护推广合同
  • 公关公司网站港闸网站建设制作
  • wampserver做网站青白江区建设局网站
  • 网站建设网页链接做网站需完成的软件
  • 群晖wordpress 站点青岛做网站哪家好
  • 筹划建设协会网站的方案怎么找网站
  • 寻找哈尔滨网站建设北京朝阳区网站建设
  • 服务器网站建设实训报告网站外链工具
  • 免费网站建设讯息外贸网站排行榜前十名
  • 企业网站设计有哪些新功能广州企业建站素材
  • 网站建设典型材料企业网站的开发公司
  • 江苏建设执业资格注册中心官方网站php网站开发专员招聘
  • 手机网站微信链接怎么做泰安
  • 专业酒店设计网站建设网站建设最新
  • 新乡哪个公司做网站好上海哪些做网站