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

『功能项目』战士的伤害型技能【45】

我们打开上一篇44战士职业平A怪物掉血的项目,

本章要做的事情是制作技能按钮,点鼠标点击时释放对范围内怪物的伤害技能

首先双击打开资源脚本下的Canvas预制体

制作技能栏

在资源商店中下载免费资源 - 技能图片

将技能图片拖拽至技能栏的Button按钮组件的Image上

对战士动画状态机增加一个 技能的动画 并创建参数Skill01Trigger

设直线

设置返回线

创建脚本:AttackCtrl.cs

using UnityEngine;
using UnityEngine.Events;
//提供机制不提供策略
public class AttackCtrl : MonoBehaviour{float hurtTime;float endTime;float nowTime;UnityAction hurtAction;UnityAction endAction;bool isAttacking = false;public void Init() {nowTime = 0;hurtAction = null;endAction = null;endTime = 0;hurtTime = 0;isAttacking = false;}public bool DoAttack(float hurtTime,float endTime,UnityAction hurtAction,UnityAction endAction) {if (isAttacking)return false;nowTime = 0;this.isAttacking = true;this.hurtTime = hurtTime;this.endTime = endTime;this.hurtAction = hurtAction;this.endAction = endAction;return true;}void Update() {if (isAttacking == false)return;nowTime += Time.deltaTime;if (nowTime >= hurtTime) {if (hurtAction != null) {//回调hurtAction();hurtAction = null;}}if (nowTime >= endTime) {if (endAction != null) {endAction();endAction = null;}this.isAttacking = false;}}
}

修改脚本:PlayerCtrl.cs

修改脚本:PlayerOpt.cs

保存脚本,接下来给怪物设置一个当血量小于等于0时触发的一个死亡动画以及销毁功能

修改脚本”BossCtrl.cs

修改脚本:Boss01UIInfo.cs

最后设置Boss01UI对象的血量同步脚本10000滴血

运行项目 - 战士职业主角点击一技能释放伤害型技能致使怪物血量中量减少

本章做了点击技能栏的1技能释放技能致使怪物血量减少以及怪物死亡后触发的死亡动画及销毁功能

接下来的内容:

1.战士职业的位移型技能

2.窗口可拖拽脚本

3.点击名称寻找地点功能

4.隐藏怪物的生成

5.怪物I攻击范围内的主动攻击

6.掉落坐骑蛋的获取

7.异步传送转换场景

以及开放回合制、坐骑系统、宠物系统、背包系统、神炼系统、商城系统、Boss的目标跟随任务导航系统以及UI播放3D动画效果等等。

具体项目运行效果请关注water1024的b站视频项目演示《破碎纪元》

【Unity回合2.5D】破碎纪元_单机游戏热门视频 (bilibili.com)icon-default.png?t=O83Ahttps://www.bilibili.com/video/BV1rZY4e9Ebs/?spm_id_from=333.999.0.0&vd_source=547091a95b03acfa8e8a9e46ef499cd6

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Spring Boot 自动配置
  • 深度学习-03 Pytorch
  • 基于Python的自然语言处理系列(8):使用TorchText进行新闻分类
  • 迎接AI时代的机遇与挑战:个人成长指南
  • C语言 | Leetcode C语言题解之第404题左叶子之和
  • c++类和对象(3):默认成员函数(下)
  • 电巢科技携Ecosmos元宇宙产品亮相第25届中国光博会
  • Java | Leetcode Java题解之第404题左叶子之和
  • 光伏选址和设计离不开气象分析!
  • Android 蓝牙三方和动态权限三方
  • 【Android安全】Keystone和Capstone
  • Flink CEP(复杂事件处理)高级进阶
  • 【C++题解】1406. 石头剪刀布?
  • vue国际化vue-i18n搭配i18n-ally实现多语言国际化
  • linux gcc 静态库的简单介绍
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • 03Go 类型总结
  • CAP 一致性协议及应用解析
  • centos安装java运行环境jdk+tomcat
  • Django 博客开发教程 16 - 统计文章阅读量
  • dva中组件的懒加载
  • echarts的各种常用效果展示
  • Facebook AccountKit 接入的坑点
  • golang中接口赋值与方法集
  • puppeteer stop redirect 的正确姿势及 net::ERR_FAILED 的解决
  • python学习笔记 - ThreadLocal
  • session共享问题解决方案
  • SpiderData 2019年2月25日 DApp数据排行榜
  • 测试如何在敏捷团队中工作?
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 容器服务kubernetes弹性伸缩高级用法
  • 详解NodeJs流之一
  • FaaS 的简单实践
  • hi-nginx-1.3.4编译安装
  • Mac 上flink的安装与启动
  • ​人工智能书单(数学基础篇)
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • #QT(智能家居界面-界面切换)
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (1)Android开发优化---------UI优化
  • (SpringBoot)第七章:SpringBoot日志文件
  • (超详细)语音信号处理之特征提取
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (一) storm的集群安装与配置
  • (一)Docker基本介绍
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • (转载)PyTorch代码规范最佳实践和样式指南
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .java 9 找不到符号_java找不到符号
  • .Net 高效开发之不可错过的实用工具
  • .NET 命令行参数包含应用程序路径吗?
  • .Net(C#)常用转换byte转uint32、byte转float等