• Unity 敌人波次设计


    一.平均时间随机敌人

         将所有种类敌人预制物体放在一个列表里面,每隔时间T从列表中随机选出一个生成在场景中。

    二.时间加权紧迫度随机敌人

         在随机情况下每种敌人出现的概率近似相等,当敌人种类较多时,有可能有些种类敌人从来没有出现过。解决的方法是,给某个种类的敌人设置一个权值R大小,每个权值乘以当前的帧时间T,结果累加存储为Rt,当间隔时间到时,从每个敌人中找出Rt最大的那个生成在场景中,从而保证每个种类的敌人都能有机会出现在场景中。

    三.时间阶段种数量波次

        有时候只是想要在某个时间段内场景中只有特定种类,且每个种类数量一定的几种敌人出现。首先设计一个列表,即场景种类敌人数量列表,该列表存储了所有种类的敌人,以及当前正在场景中的每个种类的敌人的数量。 那么可以将波次设计为一个数组,每个数组单元的数据为:一个敌人种类数列表,该列表中存储了在波次中应该出现的敌人的种类,以及每个种类的数量;一个时间t,表示这个波次应该保持多久。

        设计一个index表示指向的当前波次,timer进行当前波次倒计时

       游戏开始后在,首先进入某个波次,检索当前波次的列表中每个种类的敌人在场景中的数量,如果某个种类的敌人的数量小于当前波次设定的数量,那么就生成该敌人,并且使得场景种类敌人数量列表中对应的敌人数量加一。如果某个种类的敌人死亡,那么使得场景种类敌人数量列表中对应的敌人数量减一。如果倒计时为0,那么index加一,从而进入下一个波次

        每个波次中多出的其他种类的敌人可以不理睬,只是在被消灭时记录数量。

  • 相关阅读:
    转:npm安装教程
    转:数据库收缩
    转:日志插件 log4net 的使用
    转:更改SQLServer实例默认字符集
    转:IIS 应用程序池 内存 自动回收
    IDisposable
    Sql Server 判断字符串是否可以转数字
    常用算法之快速排序
    Java调用JavaScript
    使用python生成iOS各规格icon
  • 原文地址:https://www.cnblogs.com/xiaoahui/p/10753654.html
Copyright © 2020-2023  润新知