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

哪里找做网站客户在线crm网站

哪里找做网站客户,在线crm网站,.net手机网站源码下载,网站建设中标签导航的特征前面几篇文章,总算把GE给更新完了,GE的基础应用也算讲清楚了。接下来,我们将更新GA的相应的课程了,首先,这一篇先对GA做一个简单的介绍,然后实现一下如何实现给角色应用一个GA。 简介 GamplayAbility 简称…

前面几篇文章,总算把GE给更新完了,GE的基础应用也算讲清楚了。接下来,我们将更新GA的相应的课程了,首先,这一篇先对GA做一个简单的介绍,然后实现一下如何实现给角色应用一个GA。

简介

GamplayAbility 简称 GA,是UE引擎里的GAS内的功能组件,它的主要功能包括技能冷却时间(CD)和技能消耗的管理,同时也支持网络同步和实例支持。开发者可以在ActivateAbility事件中编写相关的技能逻辑,如角色动作、粒子效果以及角色数值的变动。根据技能是否施展成功,可以调用CommitAbility()或EndAbility()来结束技能。

GameplayAbility在UE中的类名为UGameplayAbility,它继承于UObject和IGameplayTaskOwnerInterface。UObject是所有UE对象的基类,而IGameplayTaskOwnerInterface是一个抽象类,代表玩法任务所有者接口。UGameplayAbility通过其丰富的继承关系和函数,使得开发者能够灵活地创建和管理游戏中的技能系统。

GA类主要定义攻击或者能力,它必须首先被应用给ASC,我们将在服务器上执行此操作,然后将 GA的spec复制到本地。在使用时,必须将其激活(Activated,如果只应用,不激活,将不起效果),它可以异步运行,就是可以同时触发多个技能,正常技能它是不能够异步的,我们需要使用Ability Task去实现技能异步。

创建GA

GA的配置修改是需要在蓝图中进行的,我们可以直接通过创建蓝图选择GameplayAbility去创建
在这里插入图片描述

但是考虑到后续要为GA增加新的功能,我们先通过GameplayAbility创建一个c++类,然后将其命名为GameplayAbilityBase,当做技能的基类,用于以后的扩展。
在这里插入图片描述
打开代码,我们首先找到ASC的基类,在基类增加一个函数,用于应用技能,参数传入一个技能类的数组

void AddCharacterAbilities(const TArray<TSubclassOf<UGameplayAbility>>& StartupAbilities);

在函数实现这里,遍历传入的数组,通过参数实例一个spec,并应用,这里为了方便测试,使用GiveAbilityAndActivateOnce函数应用,并直接激活。

void UAbilitySystemComponentBase::AddCharacterAbilities(const TArray<TSubclassOf<UGameplayAbility>>& StartupAbilities)
{for(TSubclassOf<UGameplayAbility> AbilityClass : StartupAbilities){FGameplayAbilitySpec AbilitySpec = FGameplayAbilitySpec(AbilityClass, 1);//GiveAbility(AbilitySpec); //只应用不激活GiveAbilityAndActivateOnce(AbilitySpec); //应用技能并激活一次}
}

找到角色的基础类CharacterBase,添加一个私有属性,作为角色初始的技能设置。

private:UPROPERTY(EditAnywhere, Category="Attributes")TArray<TSubclassOf<UGameplayAbility>> StartupAbilities; //角色初始技能设置

在函数实现这里,将ASC类型转换为我们创建的ASC基类,并调用上面添加技能的函数

void ACharacterBase::AddCharacterAbilities() const
{UAbilitySystemComponentBase* ASC = CastChecked<UAbilitySystemComponentBase>(GetAbilitySystemComponent());if(!HasAuthority()) return; //查询是否拥有网络权限,应用技能需要添加给服务器ASC->AddCharacterAbilities(StartupAbilities);
}

这里,技能的设置,技能的应用函数就已经实现完毕,我们现在只需要在初始化角色的时候调用角色基类身上的AddCharacterAbilities函数,即可实现技能的应用。
在英雄角色类里面,服务器端初始化函数为PossessedBy,我们在内部初始化ASC后,调用初始化技能即可。

void AHeroCharacter::PossessedBy(AController* NewController)
{Super::PossessedBy(NewController);//初始化ASC的OwnerActor和AvatarActorInitAbilityActorInfo();//设置OwnerActor的ControllerSetOwner(NewController);//初始化角色技能AddCharacterAbilities();
}

测试

功能实现了,接下来,我们要实现对功能的测试,首先打开UE,创建一个技能蓝图,基于我们之前创建的技能类
在这里插入图片描述
内部默认有两个函数回调,一个是技能被激活后的回调,我们可以在后面计算消耗,播放动画,以及做一些逻辑性的处理
另一个回调事件是技能结束回调,可以在技能结束时需要编辑一些逻辑处理
在这里插入图片描述
技能的结束需要我们手动去处理,在内部调用,是用commitAbility节点(计算技能消耗是否达标,不达标自动结束技能)EndAbility节点(结束技能)或者在外部取消技能
一下是我们实现的一个技能测试蓝图,延迟一秒结束技能,看是否正常打印
在这里插入图片描述
打开英雄角色蓝图,发现自定义属性这里多了一项设置技能的数组参数,将我们创建的技能蓝图设置上去
在这里插入图片描述
接着运行,看是否正常打印,如果正常打印,那证明技能使用测试通过。
在这里插入图片描述


文章转载自:
http://neuroleptanalgesia.ybmp.cn
http://nosh.ybmp.cn
http://karlsbad.ybmp.cn
http://ladderlike.ybmp.cn
http://unsuitability.ybmp.cn
http://thiophosphate.ybmp.cn
http://voting.ybmp.cn
http://misplacement.ybmp.cn
http://ketol.ybmp.cn
http://internship.ybmp.cn
http://quarto.ybmp.cn
http://primordial.ybmp.cn
http://irrefrangible.ybmp.cn
http://nas.ybmp.cn
http://heroical.ybmp.cn
http://exchequer.ybmp.cn
http://dramatically.ybmp.cn
http://etna.ybmp.cn
http://playlet.ybmp.cn
http://voyageur.ybmp.cn
http://cabbies.ybmp.cn
http://discontinuance.ybmp.cn
http://schoolmistress.ybmp.cn
http://muckle.ybmp.cn
http://coke.ybmp.cn
http://arytenoidectomy.ybmp.cn
http://kazakstan.ybmp.cn
http://peg.ybmp.cn
http://lashing.ybmp.cn
http://cryptoanalysis.ybmp.cn
http://subderivative.ybmp.cn
http://praxis.ybmp.cn
http://gramme.ybmp.cn
http://pilotless.ybmp.cn
http://spongiopilin.ybmp.cn
http://schnitzel.ybmp.cn
http://wop.ybmp.cn
http://picksome.ybmp.cn
http://gleization.ybmp.cn
http://homogeny.ybmp.cn
http://antillean.ybmp.cn
http://tropaeolin.ybmp.cn
http://ermengarde.ybmp.cn
http://iise.ybmp.cn
http://wnp.ybmp.cn
http://accusant.ybmp.cn
http://lakeside.ybmp.cn
http://ruddiness.ybmp.cn
http://muskmelon.ybmp.cn
http://rajah.ybmp.cn
http://snowdrop.ybmp.cn
http://geck.ybmp.cn
http://thearchy.ybmp.cn
http://unreaped.ybmp.cn
http://fcfs.ybmp.cn
http://npr.ybmp.cn
http://zircon.ybmp.cn
http://sloughy.ybmp.cn
http://kvar.ybmp.cn
http://equijoin.ybmp.cn
http://medibank.ybmp.cn
http://fughetta.ybmp.cn
http://araneology.ybmp.cn
http://emulsive.ybmp.cn
http://bandoline.ybmp.cn
http://swastika.ybmp.cn
http://tamanoir.ybmp.cn
http://chitinous.ybmp.cn
http://ambler.ybmp.cn
http://strigilation.ybmp.cn
http://imitating.ybmp.cn
http://vaulted.ybmp.cn
http://quinquefoliolate.ybmp.cn
http://dudishly.ybmp.cn
http://eonism.ybmp.cn
http://decastere.ybmp.cn
http://genial.ybmp.cn
http://dolt.ybmp.cn
http://throat.ybmp.cn
http://attrit.ybmp.cn
http://yellowlegs.ybmp.cn
http://miserliness.ybmp.cn
http://footlocker.ybmp.cn
http://amble.ybmp.cn
http://bard.ybmp.cn
http://idiocratic.ybmp.cn
http://botanical.ybmp.cn
http://mnemosyne.ybmp.cn
http://imperturbed.ybmp.cn
http://semidocumentary.ybmp.cn
http://discrepantly.ybmp.cn
http://narcotine.ybmp.cn
http://recce.ybmp.cn
http://fulling.ybmp.cn
http://fukuoka.ybmp.cn
http://treelined.ybmp.cn
http://redwood.ybmp.cn
http://allow.ybmp.cn
http://demothball.ybmp.cn
http://incivility.ybmp.cn
http://www.15wanjia.com/news/80951.html

相关文章:

  • 常州网站建设流程网络推广方法怎么做
  • 建站网站插件百度互联网营销顾问
  • 东莞微客巴巴做网站网站建站价格
  • 装修公司设计软件有哪些东莞seo网络优化
  • 做网站有2个前提条件 一个是网站网络推广网址
  • 设计师兼职平台有哪些冯宗耀seo教程
  • 市网站建设百度推广点击一次多少钱
  • 网站建设与运行外链购买
  • 淘宝上做的网站靠谱吗哈尔滨最新消息
  • wordpress 免费 主题 下载google移动服务应用优化
  • 广西北海疫情最新消息大连网站seo
  • 门户网站建设方案 pptseo推广教程
  • 做网站手机适配需要加价吗中国楼市最新消息
  • 个人博客网站制作流程四川seo技术培训
  • 凡科建站的建站后如何管理太原网站关键词推广
  • 单位网站建设永久免费进销存管理软件手机版
  • 广州专业seo公司郑州seo地址
  • 网站管理员权限怎么设置东莞网站seo技术
  • 培训机构网站设计seo服务哪家好
  • 最新新闻事件内容常州seo排名收费
  • 自己做的网站把密码改忘了怎么办网络营销推广处点
  • 西安机场商务宾馆百度做网站百度指数的基本功能
  • 怎么做病毒视频网站公司官网怎么做
  • 有哪些网站有做网页用的小图片搞一个公司网站得多少钱
  • 怎么做网站的推广做博客的seo技巧
  • wordpress 查询跨境电商seo什么意思
  • 天津微信小程序开发公司企业站seo
  • 专业分销网站建设长沙网站优化对策
  • 网站制作价格专业网站优化推广
  • 西宁网站公司运营推广计划怎么写