跳至主要內容

6波怪脚本(TD)

鸵鸟工作室大约 2 分钟

提示

  • 如果你只是想用这个模板编辑自己的脚本,无需理解这个脚本
  • 复制脚本内全部内容到任意的编辑软件,修改最上面WAVE_1 = { 60, 30, 1000, 7, 200, "初" }等波数内的参数
  • 全选修改后的内容.在游戏内粘贴即可
  • 如何更换默认的出怪脚本
  • 如何复制粘贴代码

注意

  • 这是一个简易的TD出怪脚本.
  • 采用的是CMD("出兵",分数...) 具有很大的随机性
  • 可以通过更改上面的参数从而调整整体的出怪难度
-- 6波怪脚本(TD) v1.0
--
-- 你可以修改Wave1~Wave6内的如下参数调整难度
-- 当然你也可以按格式增加Wave789 等等
--
-- 参数1: 延迟预警时间
-- 参数2: 开始出兵后多久开始下一波延迟预警(也就是给玩家多久击溃当前波的时间)
-- 参数3: 延迟预警奖励金币数
-- 参数4: 产生多少个爆哥
-- 参数5: 出兵的分数 详情参考 http://wiki.tuoniao.fun/egm/quick/cmd/cmd_send_unit.html
-- 参数6: 出什么种类的兵
WAVE_1 = { 60, 30, 1000, 7, 200, "初" }
WAVE_2 = { 60, 10, 1000, 10, 350, "初#辅" }
WAVE_3 = { 60, 20, 1500, 13, 400, "初#中" }
WAVE_4 = { 60, 30, 1500, 15, 450, "初#中#辅#飞" }
WAVE_5 = { 60, 30, 2000, 17, 550, "中#辅#飞" }
WAVE_6 = { 60, 30, 2500, 18, 700, "中#高#辅#飞" }

function Init()
    CMD("等待", "延迟", 1)
    CMD("奖励", "阻挡箱", 10)
    CMD("等待", "延迟", 3)

    DoSendWave(WAVE_1)
    DoSendWave(WAVE_2)
    DoSendWave(WAVE_3)
    DoSendWave(WAVE_4)
    DoSendWave(WAVE_5)
    DoSendWave(WAVE_6)

    local boss = LowAPI.GetRandomBossID()
    CMD("延迟_预警", 60, boss, false, "Reward", 1000)
    CMD("出兵", "分数", 200, "初#中#辅")
    CMD("等待", "延迟", 1)
    CMD("出兵", boss, 1)
    CMD("出兵", "分数", 200, "辅")
    CMD("等待", "延迟", 2)
    CMD("出兵", "分数", 350, "中#高#辅")
    CMD("等待", "延迟", 2)
    CMD("出兵", "分数", 350, "初#中#高#辅")
end

function DoSendWave(_config)
    CMD("延迟_预警", _config[1], "Ground", false, "Reward", _config[3])
    CMD("出兵", "分数", _config[5], _config[6])
    CMD("出兵", "爆哥", _config[4])
    CMD("等待", "延迟", _config[2])
end

function Reward(_shiLiID, _percent, _customArg)
    CMD("奖励", "金币", math.ceil(_customArg * _percent), "势力", _shiLiID)
end

解析

  • 代码中首先定义了一个每一波的配置(LuaTable),这样可以方便其他人去修改当前脚本里面的参数
  • 使用DoSendWave函数传入每一波的配置,这样不用大量复制重复的代码(程序员第一编程准则:能偷懒就偷懒)
  • CMD("出兵",分数...) 具有很大的随机性. 只需要控制传入的分数和类型即可.后续增加新怪不影响现有的脚本.推荐普通地图采取这种方案
  • 最终Boss波建议分开出怪,这样Boss不会拉满仇恨瞬间被秒
上次编辑于:
贡献者: Eran