UE5笔记【十三】蓝图系统-血量控制系统

news2024/11/28 2:46:23

上一篇我们讲解了,蓝图中的函数功能。可以将蓝图中重复的代码,再次利用。演示了Smasher的效果。

这一篇中,我们讲解Smasher造成伤害之后,如何保存和计算角色的血量状态。

我们的设计思路是:smasher每次碰到角色是,造成50点伤害,角色血量100。

触碰到两次,角色Die。

首先我们打开角色蓝图:

然后我们新建一个变量:名称为:Health。类型为float型,然后用此保存角色血量。设置默认值为100。

然后我们,新建一个自定义事件:这个事件名称:TakeDamage,输入参数为DamageAmount。一看就是造成伤害的事件,参数为伤害值。然后拖动血量Health进入蓝图。两者做差。

又重新得到血量值。然后set血量值。此时新建一个Branch。用于判断血量是否小于0。

小于0

然后将Branch连接。此时如果血量小于0需要角色Die。如何Die呢。

我们需要新建一个事件:PlayerDeath。这个事件专门用来演示,当角色Die时的动作。

所以我们需要用到角色的蓝图mesh。拖动进入到蓝图中。

 我们可以看到角色的Mesh细节:里面包含了物理仿真和碰撞预设。其中碰撞预设中包含了RagDoll。

当角色发生Die时,然后启动物理仿真setSimulate physics,然后设置碰撞。setCollisionPorfileName。  

设置profileName为RagDoll。

最后Disable any input from the user after they die。

 此时我们就可以在TakeDamage事件后面添加上角色Die事件。

 完成这两个事件的配置后,我们需要回到Smasher蓝图中,因为:造成伤害,需要Smasher来执行。

在Smasher中,触碰到Box造成伤害,当好Box有个On Component Begin Overlap事件。

点击添加+

 然后,我们需要添加到底哪个Actor触碰了Box。

cast to ThirdPersonCharacter。

然后我们就可以调用这个Character的造成伤害的方法了。

 给方法传递一个参数。Damage。 

 然后保存。

回到角色蓝图中,然后:

print一下,HIT!。然后再打印一下角色血量值。

添加两个Print。然后变更流程。 

 同时,在Smasher蓝图中,将Damage变量,设置默认值为50。

需要编译,才可以设置默认值。

 编译角色时,报错:

 我们将mesh和目标连接。

注意:

勾选这两个选项,否则无效果。 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/88368.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GCSE英语语言考试-角色定位

What is characterisation? 什么是角色定位? Characterisation is the way writers create characters and make them believable. When writing about texts, it is easy to treat characters as real people. Try to remember that the author is creating chara…

大数据 finalshell免密登录

私有云 查看私有云创建的虚拟机 本机用FinalShell连接三个虚拟机 使用浮动IP地址创建连接 设置主机名 maser虚拟机 slave1虚拟机 slave2虚拟机 IP地址与主机名映射 master虚拟机 slave1虚拟机 slave2虚拟机 ##关闭防火墙 关闭防火墙:systemctl stop f…

LeaRun.net代码生成器 一键生成前后端代码

自动代码生成是指根据自然语言的功能描述来生成代码。在项目开发过程中,有很多业务模块的代码是具有一定规律性的,例如controller控制器、service接口、service实现类、mapper接口、model实体类等等,这部分代码可以使用代码生成器生成&#x…

一种通过刷写替换boot的方法

写在前面的废话 众所周知,ECU软件包括BOOT和APP两部分,一般来说,boot是固化的软件,改动可能性很小,一般用来更新APP,但是,如果有一天boot真的需要更新呢,而且是大批量的更新,真的需要一个个的开盖烧录吗,有没有一种便捷的方式去实现boot的替换呢?下面提供一种boot替…

手把手教你使用SpringBoot做一个员工管理系统【配置篇】

手把手教你使用SpringBoot做一个员工管理系统【配置篇】1.导入资源2.编写pojo层3.编写dao层4.首页实现5.页面国际化1.导入资源 导入前端文件: 管理系统前端源码下载地址 将下载的前端文件导入到SpringBoot资源目录: 导入Maven依赖:&#x…

iOS微信8.0.31更新,带来7个功能

近日,iOS微信更新了8.0.31正式版。经过几天的深入体验,我发现了7个新特性。如果你还没有升级,我们就往下看吧。 功能一:优化编辑按钮 微信发图片,发送前可以编辑,底部的编辑按钮变了。新版画笔工具变成了钢…

数据驱动测试-从方法探研到最佳实践

作者:刘红妍 导读 在自动化测试实践中,测试数据是制造测试场景的必要条件,本文主要讲述了在沟通自动化框架如何分层,数据如何存储,以及基于单元测试pytest下如何执行。并通过实践案例分享,提供数据驱动测…

qq录制视频保存到哪了?qq录制视频怎么没了?找回方法在这

相信很多小伙伴都跟小编一样,使用qq录屏录制好后,结果就怎么也找不到录屏的文件了。经过小编一番研究,终于找到了qq录屏后视频文件的所保存的文件路径了。qq录制视频保存到哪了?别担心,下面小编就带大家一起来找找看。…

VS代码片段(CodeSnippet)的制作以及常用代码片段记录

总目录 文章目录总目录前言一、代码片段是什么?1.了解2.查找代码片段文件夹二、编写代码片段1.认识代码片段2.编写自定义代码片段1、trycf (try,catch,finally)2、propp(用于MVVMLight中)3、ts (创建一个test方法)3.使…

零基础入门:实时音视频技术基础知识全面盘点

1、引言 随着移动网络速度越来越快、质量越来越来,实时音视频技术已经在各种应用场景下全面开花,语音通话、视频通话、视频会议、远程白板、远程监控等等。 实时音视频技术的开发也越来越受到重视,但是由于音视频开发涉及知识面比较广&…

可视化搭建,1天开发1款“智慧楼宇”应用

随着我国城市建设的飞速发展,现代建筑正朝着智能化和网络化不断前进。物联网技术、智能化技术使得建筑内众多公共资源具有语境感知能力,现代建筑进入了智慧楼宇阶段。 天翼物联推出智慧楼宇应用,为物业等管理单位提供安全监控、能源监控、智慧…

【DBN分类】基于哈里斯鹰算法优化深度置信网络HHO-DBN实现数据分类附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

oracle学习篇(一)

oracle学习篇(一) 1 oracle属于大型数据库吗? 解答:是的,数据库按照负载量的规模可以分为一下几类 小型数据库:ACCESS 中型数据库:mysql 大型数据库(海量数据):oracle、db22 创建并使用户可用 2.0 前提 必须是要sys或者system这种需要有管理权限的才能进行用户的创建 普通…

链表反转,指定区间反转,k个一组反转---详解

牛客上的三道反转链表的题,入门题,反转链表有很多种做法,本来做第一题的时候是随便写了一种,然后后面发现我用的方法,在做第二题第三题的时候有点繁琐,所以就把三道题一起考虑了一下,选了一种相…

[附源码]Python计算机毕业设计二手图书回收销售网站Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

python3.9.0 windows环境搭建

第一步: 下载安装包:CNPM Binaries Mirror 执行exe安装。。。。。 第二步:升级pip 和 setuptools(避免在每一个虚拟环境中都要升级) python -m pip install --upgrade pip python -m pip install --upgrade setuptoo…

基于android音乐播放器的设计

本科毕业论文(设计)诚信声明 本人郑重声明:所呈交的毕业论文(设计),题目《………基于android音乐播放器的设计……………………………》是本人在指导教师的指导下,进行研究工作所取得的成果。对…

ChatGPT写Flask-Demo——有体验地址

ChatGPT中API的试用 最近ChatGPT智能AI很火,可以写代码,DEBUG,写简历等等 上去查看了一下,是可以调用API的,本着学习的态度就是用这个款AI辅助我写了一个demo(本人原来对flask只懂一点点) 目录0…

基于51单片机的数字电压表(ADC0832)(Proteus仿真+程序)

编号:29 基于51单片机的数字电压表(ADC0832) 功能描述: 本设计由51单片机最小系统ADC0832模块两路模拟量输入模块液晶1602显示模块 1、主控制器是AT89C82单片机 2、ADC0832模数转换器进行A/D转换,读取电压两路数据&a…

栅格瓦片和矢量瓦片

地图瓦片 地图瓦片的诞生 在以前没有瓦片的概念时,由于地图要素多、范围大等特点导致地图数据量很大,如果从浏览器可视化地图就对网络和数据渲染能力有高的要求,所以导致瓦片诞生以前,地图多在pc电脑中桌面软件使用。随着互联网…