虚幻5|暴击攻击和释放技能,造成伤害

news/2024/9/18 12:33:28/ 标签: ue5, 笔记, 虚幻引擎

玩家数据的Actor组件制作:虚幻5|制作玩家血量,体力-CSDN博客

造成伤害时,显示暴击及暴击字体颜色和未暴击的字体颜色,还有释放技能连击

一.编辑暴击数据

1.打开之前创建的玩家数据Actor组件

创建一个浮点变量,命名为基础暴击,并右侧细节默认值为0.1,0.1表示10%

创建一个浮点变量,命名为基础攻击,并右侧细节默认值为5

2.创建一个函数,命名为获取暴击

编辑以下蓝图

在0到1之间,取小数,取到的小数如果小于等于基础暴击默认值的0.1就暴击,否则就不暴击

二.暴击传递及更好的区分暴击生成的数值颜色和未暴击生成的颜色

1.打开武器表数据,如果你不知道武器表数据(学习内容:虚幻5|角色武器装备的数据库学习(不只是用来装备武器,甚至是角色切换也很可能用到)_虚幻5 数据库-CSDN博客)

编辑武器的伤害浮点值

用于武器造成伤害的浮动

2.打开装备的武器的Actor蓝图类

找到事件图表,这位置

编辑以下蓝图

取消链接base damage

事件开始运行时类型转换一下

来到命中(武器碰撞组件),把应用点状伤害往右拉开以及如下

拉开后中间的位置编辑如下

使用我们刚刚转换类型的变量,引用玩家数据的基础攻击和基础暴击

最终伤害是左侧添加的一个浮点变量,一个设置成暴击最终伤害,一个是未暴击的最终伤害

由于最终伤害是branch决定的,所以以此为变量链接base damage

编辑print打印,再运行检测一下

是否暴击,如果暴击,就打印true和暴击,未暴击,打印false

4.打开敌人血量UI,设置显示伤害,转换为文本保留的小数点位数

保留一位小数,当然你可以不保留,直接0

更换显示字符串蓝图,你也可以不用,这个是拓展

之前是用上面红圈的,可以改用下面红圈的,个人感觉下面的更好

再尝试运行一下

三,传递暴击给敌人

1.创建一个敌人接收信息的接口蓝图,命名为敌人接口

打开编辑如下

2.打开含血量敌人的角色蓝图

点击类默认,添加敌人接口

双击接口得到如下

设置暴击

3,打开装备的武器Actor蓝图

找到命中事件,下面中断命中结果的hit actor(敌人)链接接收暴击,让敌人接收到暴击

放到获取暴击的后面

4.打开敌人数据Actor组件和敌人血量UI

在敌人血量UI里,找到显示血量事件,选中,在细节栏的输入处添加布尔变量,命名为暴击?

再点开敌人数据Actor组件,选中down up就是减少血量的函数,在以下位置链接蓝图

四,设置暴击颜色及改进伤害数字动画

1.打开伤害数字UI

点击最下栏处的动画二字,选中伤害数字动画

删掉之前的颜色和不透明度轨道,添加渲染不透明度轨道

渲染不透明度轨道,0——1——0的形式,透明——不透明——透明

我们也可以拉长一下时间轨道,动画变缓慢

2.点击画布画板,在细节栏处,将渲染不透明度改成1

3.打开敌人血量UI,在显示血量事件的最后面链接更改,设置渲染不透明度

4.显示血量事件的输入值暴击,链接branch

再编辑如下蓝图,下面的数字颜色是提升为变量的,set数字颜色需要分割成引脚才能设置颜色

下面蓝图之意是,如果为暴击真,显示红色字体,如果暴击假,显示白色字体

好,我们运行测试一下

四,角色技能释放

1.在蓝图,创建一个枚举,命名为角色技能分配

2.打开后添加枚举器,三样

3.再加一个枚举,命名未角色技能分配_物理,进行详细分配

编辑内容

4.打开战斗组件(Actor组件)

创建一个函数,命名为技能释放

点击函数蓝图,在细节栏,输入处,增加以下两个变量

编译一下,在技能释放函数内,编辑以下蓝图

5.打开主角的角色蓝图,在事件图表内,找到添加刀光特效部分,一般在攻击动画之后,如果你没有,学习如下虚幻5|制作刀光粒子效果_虚幻5粒子-CSDN博客

找到后,把刀光特效折叠成函数

命名为刀光

6.找到武器Weapon文件下的Partcal这是我们之前做的刀光特效

打开刀光材质

编辑如下

更好颜色主控为如下

7.回到Partical文件,创建刀光材质的材质实例

打开后,可以编辑颜色,先不编辑

我们先打开刀光效果Niagara系统

选中empty的条带渲染器,选择我们刚刚创建的刀光材质实例

左侧参数栏的用户公开,再新建一个线性颜色的用户,命名为刀光颜色

选择empty的条带渲染器,右侧细节栏,展开绑定,找到材质绑定

8.打开主角的角色蓝图,点开刚刚折叠成函数的刀光函数,选中函数,细节栏,找到输入,添加刀光颜色变量并引用线性颜色

在刀光函数后面的刀光效果变量链接一个Niagara变量(线性颜色),如下

刀光颜色变量,就是刚刚刀光函数创建的输入变量

9.打开刀光函数位置的事件图表处,将刀光颜色提升为变量

再链接刚提升的变量,设置颜色

10.添加一个输入,命名为IA_技能释放,并在输入映射添加输入操作

鼠标右键释放技能

11.打开战斗组件Actor组件

点开事件图表,找到事件开始运行,引用主角的类型

打开主角的角色蓝图,创建一个函数,命名为2连击

打开战斗组件,再打开技能选择函数,编辑如下

链接函数2连击

12.回到主角的角色蓝图里创建的2连击函数,再准备好二连击动画蒙太奇,当然,我们也可以不使用二连击,可以是多段连击或大招,随你喜欢

在后面设置刀光颜色,之前是在普通攻击后设置的,可以copy粘贴在这里

打开该动画蒙太奇,设置通知,之前普通攻击的动画也设置了通知,所以这也要设置一下

我的是多段攻击

13,打开主角的角色蓝图,在事件图表里,编辑如下

要在装备武器的时候,才能释放技能

运行一下

运行发现,在二段连击的时候,发现刀光特效会有一部分失效,你的可能没有,如果有的话,更改如下

打开主角的角色蓝图,普通攻击这块

打开战斗组件Actor组件里的技能选择函数

添加一个正在攻击?布尔set

这样有助于在释放技能的时候,无法进行普通攻击了

好了,运行一下吧

可以多添加函数释放多个技能


http://www.ppmy.cn/news/1516400.html

相关文章

Python实现贪心算法

目录 贪心算法简介贪心算法的基本思想贪心算法的应用场景活动选择问题 Python实现活动选择问题代码解释活动选择问题的解贪心算法的正确性分析贪心算法的其他应用贪心算法的局限性贪心算法的优化与变种总结 贪心算法简介 贪心算法(Greedy Algorithm)是一…

10天速通Tkinter库——Day7:主菜单及图鉴

本篇博客我将介绍Tkinter实践项目《植物杂交实验室》中的杂交实验室主菜单、基础植物图鉴、杂交植物图鉴、杂交植物更多信息四个页面的制作。 它们作为主窗口的子页面实例,除了继承主窗口的基础设置(如图标、标题、尺寸等等)、还可以使用主窗…

使用C++开发黑神话悟空类似3A如何避免内存泄漏

智能指针:使用C11或更高版本中的智能指针(如std::unique_ptr、std::shared_ptr和std::weak_ptr)来自动管理内存。这些智能指针在超出作用域时会自动释放它们所管理的内存。 RAII(Resource Acquisition Is Initialization&#xf…

Java开发程序员职业发展路径

入行阶段:后端 3年 目标 在这一阶段,你将专注于后端开发,特别是Java编程语言及其相关技术栈。 主要任务和技能 掌握Java基础: 理解Java语言的核心概念,如OOP(面向对象编程)、数据结构、算法等。学习后端…

【Rust练习】10.元组

练习题来自:https://practice-zh.course.rs/compound-types/tuple.html 1 元组中的元素可以是不同的类型。元组的类型签名是 (T1, T2, …), 这里 T1, T2 是相对应的元组成员的类型. fn main() {let _t0: (u8,i16) (0, -1);// 元组的成员还可以是一个元组let _t1:…

相关性分析

斯皮尔曼、皮尔逊、肯德尔、点双列相关分析、偏相关分析、距离相关分析、双变量回归分析和互信息。 特性斯皮尔曼相关分析(Spearman Correlation)皮尔逊相关分析(Pearson Correlation)肯德尔相关分析(Kendall’s Tau&…

华为OD题目 csv格式的数据 字符串 用C没写出来

这题对于嵌入式mcu的人来说,太难为了。不想解了,烂摆。有心情再说把。 将一个csv格式的数据文件中包含有单元格引用的内容替换为对应单元格内容的实际值。 Comma seprated values(CSV)逗号分隔值,csv格式的数据文件使用…

nodemon学习(一)简介、安装、配置、使用

nodemon用来监视node.js应用程序中的任何更改并自动重启服务,非常适合用在开发环境中。以前,我们开发一个node后端服务时,每次更改文件,均需重启一下,服务才能生效。这使我们的开发效率降低了很多。nodemon的出现,可以…

Catf1ag CTF Crypto(六)

前言 Catf1agCTF 是一个面向所有CTF(Capture The Flag)爱好者的综合训练平台,尤其适合新手学习和提升技能 。该平台由catf1ag团队打造,拥有超过200个原创题目,题目设计注重知识点的掌握,旨在帮助新手掌握C…

ffmpeg.exe命令行常见应用

基本转换: ffmpeg -i input.mp4 output.avi将input.mp4文件转换为output.avi文件。 提取音频: ffmpeg -i input.mp4 -vn output.mp3从input.mp4文件中提取音频并保存为output.mp3文件。 视频剪辑: ffmpeg -i input.mp4 -ss 00:00:30 -t 00:…

深入探讨Java多线程

我的主页:2的n次方_ 1. 多线程的概念 多线程是指在同一个程序中同时执行多个线程的技术。线程是操作系统能够独立调度和执行的最小单位。在Java中,线程由Thread类来表示,所有的线程都是通过这个类或其子类来创建和控制的。通过合理的多线…

codetop标签动态规划大全C++讲解(上)!!动态规划刷穿地心!!学吐了家人们o(╥﹏╥)o

主要供自己回顾学习,会持续更新,题源codetop动态规划近半年 1.零钱兑换2.零钱兑换II3.面试题08.11.硬币4.单词拆分5.最长递增子序列6.最长递增子序列的个数7.得到山形数组的最少删除次数8.最长公共子序列9.最长重复子数组10.最长等差数列11.最大子数组和…

Docker数据卷使用手册

目录 目标 前言 概念 官方文档 匿名卷(Anonymous Volumes) 简介 案例 命名卷(Named Volumes) 简介 案例 目标 掌握Volume命令通过演示案例,理解数据卷种类与各自的用途。 前言 我们在很多网上教程上可以看到…

前端宝典十:webpack性能优化最佳实践

Webpack 内置了很多功能。 通常你可用如下经验去判断如何配置 Webpack: 想让源文件加入到构建流程中去被 Webpack 控制,配置 entry;想自定义输出文件的位置和名称,配置 output;想自定义寻找依赖模块时的策略&#xff…

云计算day31

⼀、Docker 1、Docker介绍.pdf 1、Docker 是什么? Docker 是⼀个开源的应⽤容器引擎,可以实现虚拟化,完全采⽤“沙 盒”机制,容器之间不会存在任何接⼝。 Docker 通过 Linux Container(容器)技术将任意…

如何在Docker中部署Eureka Server:容器化微服务注册中心

在现代微服务架构中,服务注册和发现是至关重要的。Eureka Server 是一个由 Netflix 开发的开源服务注册和发现工具,它允许微服务实例在运行时动态地注册和查询其他服务。将 Eureka Server 部署在 Docker 中可以提高其可移植性和可维护性,同时…

Django 后端架构开发:手机与邮箱验证码接入、腾讯云短信SDK和网易邮箱

Django 后端架构开发:手机与邮箱验证码接入、腾讯云短信SDK和网易邮箱接入 🌟 手机短信与邮箱短信验证码的应用场景 在现代应用中,短信和邮箱验证码是用户验证和安全管理的关键组成部分。它们广泛应用于注册、登录、找回密码等场景&#xf…

elasticsearch -- RestClient操作文档

RestClient操作文档 为了与索引库操作分离,我们再次参加一个测试类,做两件事情: 初始化RestHighLevelClient我们的酒店数据在数据库,需要利用IHotelService去查询,所以注入这个接口 package cn.itcast.hotel;import…

机器学习:opencv图像识别--图片专项

目录 前言 一、读取图片 1.安装opencv库 2.读取彩色图片 3.读取灰度图 二、RGB 1.RGB的概念 2.颜色通道: 3.图像表示 4.代码实现单通道图像 三、ROI 1.代码实现 四、图片打码 五、图片组合 六、图片缩放 总结 前言 OpenCV(Open Source C…

Nginx 丢弃指定响应头

如果想丢弃服务器响应回来的某个头,可以使用Nginx进行代理该服务器,再进行配置 Nginx中丢弃指定响应头 Nginx 中拦截某个响应并丢弃特定的响应头,可以使用 proxy_hide_header 指令。 修改 Nginx 配置 在您的 Nginx 配置文件中&#xff08…