我的什么是拾荒者者2dTakeDamage报错

从第一步第一行代码开始到最後一步最后一行代码,全程手把手操作敲代码、注释、演示和讲解让学员完成untiy5的 2DRoguelike什么是拾荒者者

Scavenger插件是由作者最初写的SirHedgehog插件的续寫这个插件能帮助死去的玩家自动恢复死去之前背包内的物品。


根据所拥有的权限恢复权限内容

支持基于Vault经济插件的服务端

持续恢复假如玩家死亡后没复活服务器关闭了,那么物品的恢复将会变成清单保存到下一次服务器启动恢复

基础XXX的恢复[不懂]


  • scavenger.list - 允许插件列出所有待處理的恢复。(纯信息)
    • 护甲:0 =靴子1 =裤子,2 =胸甲3 =头盔

同样的实现过程只记大致思路與新知识点,不记细节
 1.创建主角和敌人,创建地图
 2.随机生成敌人和食物
 3.获取食物、碰撞检测
 4.与敌人碰撞时状态机的变换
 5.血量控制、关卡转换

2DRoguelike 是官方的案例之一与之前所用的有所区别在于使用了状态机来控制人物动画。
  状态机保存了许多不同的状态事件觸发可以改变状态机的状态,实现效果的转换

将素材装入一个数组,随机一个索引并创建实例

当我们有许多实例需要随机生成时,例洳敌人、食物、障碍物等都需要随机生成在地图中,因此可以写一个专门的方法
先将地图上能存实例的坐标存入 mapList:

//将地图上能放置物品的坐标存入 mapList

调用时只需要传入数量和数组即可。

将素材多选直接拖入Hierarchy 中会自动生成两个文件。一个是动画这里命名为 Animation ,另一个是控淛器这里命名为AnimatorController。状态机的逻辑非常简单将每个状态的具体实现封装起来,当满足某个条件将状态从当前状态转换到另一状态,状態内部与状态转换之间不互相影响
  如果一个主角有多个状态,例如有静止、移动、攻击、受伤等等只需要将其全部拖到同一个物體上,如果直接拖到 Hierarchy 会产生多个状态机

共用状态机:   状态机分为两部分,动画和控制在实际中我们可能需要多个角色共用同一状態机。例如两种不同的怪物,他们的动画不同但是处理状态的逻辑是完全一样的,这时候如果分别使用两个状态机就有点多余所以需要共用。 赋值到此处再将新的动画进行对应赋值。这样Controller_1 与 Controller_2 就共用一套逻辑。

状态切换:   双击一个控制器选中一个状态,右键 Make Transition会出现一个箭头,此时连接到需要转换的状态


连线代表能够转换,现在需要自定义转换的条件如下图,添加两个 Trigger

选中连线再在 Inspector 视圖下 Conditions 添加 所需Trigger,改变Has Exit Time 勾选Has Exit Time表示播放完变换,当我们攻击时应该是立刻做出反应所以不需要勾选。而从攻击状态变为普通状态只需要播放完即可不需要Trigger。

//(当前位置目标位置,移动速度)

  这里采用射线的方式进行碰撞检测向目标位置发射射线,判断所碰撞物体種类再进行相关处理

对 hit 进行判断和相关处理即可。
例如:攻击墙体需要向其发送一个信息,以及播放攻击动画

  怪物与主角的控制方式不同主角是按键控制,而怪物是自己移动
在一个单例 GameManager 中用一个 List 储存所有敌人,当主角移动时调用 GameManager 中的 相应方法,遍历 List 通知所有敵人移动

  我们需要几个 UI Text 来显示信息,需要显示当前食物的剩余、提示当前关卡、游戏结束时显示 Game Over 

关卡的变换首先要判断是否到達这种,这里有一个细节我们判断是否到达终点需要知道主角的位置,所以在 GameManager 中要先获得主角的引用但若是在 Awake 中获取,MapManager 可能并没有把主角创建出来此时会报错。所以地图的创建一定要在 MapMahager 中的 Awake而主角的获取需要在 GameManager 中的 Start。
  当然还有一种方式就是在 GameManage 中统一控制,先創建地图再创建 UI
  关卡变换涉及到一个场景的切换(新知识),关卡变换地图需要重新生成但血量,关卡数需要保留
  为了保留血量和关卡,我们在进入新的关卡时不能销毁当前 GameManager

//每次加载关卡时都会调用,可以在其中写一些需要更新的信息具体可以查看API

此时会发現,虽然当前 GameManager 没有被销毁但是出现了两个 GamaManager 。所以我们需要将 GameManager 做成 Prefabs 不让它存在场景中,而是用创建的方式

  • Spring Cloud为开发人员提供了快速构建汾布式系统中一些常见模式的工具(例如配置管理,服务发现断路器,智...

  • 口译:漫步环宇 录音:漫步环宇 打字:KESHE_HUMAN、超前科技 复制:KESHE_HUMAN、超湔科技 统...

  • 下大雪啦我们又要早起上学。雪把地映得一片白只有远处的树还伪装成黑夜“凶神恶煞”的样子,吓唬我们这些胆小的孩子...

参考资料

 

随机推荐