【UE4 塔防游戏系列】11-多种类型敌人

目录

效果

前言

步骤

一、创建多种不同类型敌人

[二、创建波次 (修改游戏模式)](#二、创建波次 (修改游戏模式))


效果

前言

我们之前使用的敌人都是同一种敌人,都是名为"Crossbowman"敌人

这里我们根据(【UE4 塔防游戏系列】03-创建第一个敌人)中创建敌人的步骤来创建敌人角色。

步骤

一、创建多种不同类型敌人

  1. 创建动画蓝图

骨架选择"Skeleton_Grunt_Skel"

命名为"Enemy2_AnimBP"

  1. 新建混合空间1D,骨架还选择"Skeleton_Grunt_Skel"

命名为"Enemy2_BlendSpace1D"

打开"Enemy2_BlendSpace1D",将站立和跑步动画添加到坐标中

设置水平坐标的名称和最大轴值

  1. 打开"Enemy2_AnimBP"和"Enemy1_AnimBP"

找到"Enemy1_AnimBP"动画图表中的状态机

将其复制到"Enemy2_AnimBP"动画图表中

修改混合空间1D

同样创建速度变量

在事件图表中设置角色速度

此时第二个敌人"Grunt"就制作完成了。下面用同样的方法完成敌人"King"、"Mage"、"Swordman"的制作。

最后创建蓝图

只需替换Mesh组件中的骨架网格体和动画类

设置一下自身的一些属性

二、创建波次 (修改游戏模式)

  1. 下面开始设置不同波次出现不同的敌人

新建一个整型变量命名为"Round",默认值为1

新建一个结构体,这里命名为"Round"

打开"Round",添加5个整型变量,分别表示5个不同的敌人的数量

在"TaFangGameMode"的事件图表中,首先判断当前是第几波

不同的波次设置不同的敌人会出现的数量

循环生成这几种类型的敌人

生成完毕后,让波次++,然后重新设置每一种类型敌人的生成数量为0,因为每一波次需要单独统计每一种类型的敌人的数量。

生成完毕后,重新判断当前是第几波

其中"CreateEnemy"函数的逻辑如下,需要输入三个参数,分别是敌人的类型,需要生成该类型的敌人数量以及当前生成的是该种类型的第几个敌人。如果当前这种类型的敌人生成完毕,就返回一个True,否则为Fasle。

相关推荐
神仙别闹14 小时前
基于QT(C++)实现的翻金币游戏
c++·qt·游戏
夏鹏今天学习了吗20 小时前
【LeetCode热题100(74/100)】跳跃游戏
算法·leetcode·游戏
郝学胜-神的一滴21 小时前
使用Qt OpenGL开发俄罗斯方块:从零到一实现经典游戏
c++·qt·程序人生·游戏·设计模式·系统架构·图形渲染
夏鹏今天学习了吗21 小时前
【LeetCode热题100(75/100)】跳跃游戏 II
算法·leetcode·游戏
星光一影21 小时前
合成植物大战僵尸 安卓原生APP Cocos游戏 支持Sigmob
android·游戏·php·html5·web app
元亓亓亓21 小时前
LeetCode热题100--45. 跳跃游戏 II--中等
算法·leetcode·游戏
关于不上作者榜就原神启动那件事1 天前
游戏音效脚本添加
游戏
JIngJaneIL1 天前
基于java+ vue畅游游戏销售管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·游戏
顾安r1 天前
12.17 脚本网页 创意导航
java·linux·前端·游戏·html
zore_c1 天前
【C语言】贪吃蛇游戏超详解(包含音效、颜色、封装成应用等)
c语言·数据结构·笔记·stm32·游戏·链表