找回密码
 点一下
查看: 2634|回复: 11

现在征集一个通用地图的刷怪系统(做得好有奖)

[复制链接]
发表于 2009-5-7 12:31:38 | 显示全部楼层 |阅读模式
该系统的目标:让不懂触发器的人也能自由地控制中立生物的刷新。

该系统需要实现的功能

自动将在we中扔到地图上的单位分组,当某一组的怪物全部死亡以后则将在一段时间(大约5分钟)后刷新。

如果某个组的怪物部分死亡,并且处于战斗状态的时候是不会刷新的,只有脱离战斗状态后才能计算刷新时间,单个怪物刷新的时间会比较长。

可以为一些组指定一个立刻刷新条件,比如(Boss击杀,副本刷新),同样也可以为一些组指定一个禁止刷新/恢复刷新条件(比如,副本中的怪物在全体成员退出副本之前不会刷新)。

以上,该系统旨在服务广大制作orpg地图的朋友。
阿里山慝少 该用户已被删除
发表于 2009-5-7 12:45:11 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2009-5-7 15:58:24 | 显示全部楼层
可以用到触发器么?
回复

使用道具 举报

 楼主| 发表于 2009-5-7 20:54:50 | 显示全部楼层
要求是这个玩意是通用的,可以将怪物刷新和地图的制作剥离开来
回复

使用道具 举报

发表于 2009-5-8 19:19:16 | 显示全部楼层
ls纯表情,不怕制裁么?
我觉得这个不存在通用一说额……
具体问题具体分析,完全生搬硬套的移植总会有这样或是那样的问题的……
回复

使用道具 举报

发表于 2009-5-9 15:04:08 | 显示全部楼层
"让不懂触发器的人也能自由地控制中立生物的刷新。"  实在比较难想象

如果是像直接用地图刷子摆单位时附加上的功能,需要用什么方式操纵编辑器生成的war3map.j呢
回复

使用道具 举报

发表于 2009-5-9 17:29:55 | 显示全部楼层
比如我经常写的某某系统 那些都封装很好了..
回复

使用道具 举报

发表于 2009-5-9 18:45:42 | 显示全部楼层
[trigger]
未命名触发器 001
    事件
        时间 - 游戏开始 0.01 秒
    条件
    动作
        设置 DWZ_LianJiChang[0] = (新建的空单位组)
        设置 DW[1] = 步兵
        设置 DW[2] = 矮人火枪手
        设置 DW[3] = 骑士
        设置 DW[4] = 迫击炮小队
        设置 DW2[1] = 圣骑士
        设置 DW2[2] = 大魔法师
        设置 DW2[3] = 山丘之王
        设置 DW2[4] = 血魔法师
        触发器 - 运行 未命名触发器 002 <预设> (无视条件)
        计时器 - 开启 JSQ[1] ,计时方式: 一次性 时间设置: 150.00 秒
        计时器 - 为 JSQ[1] 创建计时器窗口,使用标题: 敌主将出现时...
        设置 JSQCK[1] = (最后创建的计时器窗口)
        For循环整数A从 1 到 12, 做动作
            Loop - 动作
                触发器 - 为 XuanYX <预设> 添加事件: (玩家 - (玩家 循环整数A [R]) 选择 一个单位)
                玩家 - 设置 (玩家 循环整数A [R]) 属性: 给予奖励 打开
                玩家 - 增加 5000 (玩家 循环整数A [R]) 的 现有黄金
[/trigger]

[trigger]
未命名触发器 002
    事件
    条件
    动作
        设置 ZS1 = (ZS1 + 1)
        For循环整数B从 1 到 30, 做动作
            Loop - 动作
                For循环整数A从 1 到 3, 做动作
                    Loop - 动作
                        单位 - 创建 1 个 DW[ZS1] 给 玩家2(蓝色) 在 (玩家2(蓝色) 的游戏开始位置) ,面向角度为 默认建筑朝向 度
                        单位 - 对 (最后创建的单位) 发布 攻击移动 命令到目标点: (玩家1(红色) 的游戏开始位置)
                等待 5.00 秒
[/trigger]
[trigger]
未命名触发器 003
    事件
        时间 - JSQ[1] 到期
    条件
    动作
        触发器 - 关闭 未命名触发器 002 <预设>
        触发器 - 开启 未命名触发器 004 <预设>
        计时器 - 删除 JSQCK[1]
        计时器 - 开启 JSQ[2] ,计时方式: 一次性 时间设置: 150.00 秒
        计时器 - 为 JSQ[2] 创建计时器窗口,使用标题: 下一波进攻时...
        设置 JSQCK[2] = (最后创建的计时器窗口)
        等待 5.00 秒
        单位 - 创建 1 个 DW2[ZS1] 给 玩家2(蓝色) 在 (玩家2(蓝色) 的游戏开始位置) ,面向角度为 默认建筑朝向 度
        英雄 - 设置 (最后创建的单位) 的英雄等级为 25 , 隐藏 升级动画
        单位 - 对 (最后创建的单位) 发布 攻击移动 命令到目标点: (玩家1(红色) 的游戏开始位置)
[/trigger]
[trigger]
未命名触发器 004
    事件
        时间 - JSQ[2] 到期
    条件
    动作
        触发器 - 运行 未命名触发器 002 <预设> (无视条件)
        计时器 - 删除 JSQCK[2]
        计时器 - 开启 JSQ[1] ,计时方式: 一次性 时间设置: 150.00 秒
        计时器 - 为 JSQ[1] 创建计时器窗口,使用标题: 敌主将出现时...
        设置 JSQCK[1] = (最后创建的计时器窗口)
[/trigger]
[trigger]
未命名触发器 005
    事件
        单位 - 任意单位 死亡
    条件
        ((触发单位) 的类型) 等于 DW2[ZS1]
    动作
        计时器 - 删除 JSQCK[2]
        触发器 - 运行 未命名触发器 002 <预设> (无视条件)
        触发器 - 关闭 未命名触发器 004 <预设>
        计时器 - 开启 JSQ[1] ,计时方式: 一次性 时间设置: 150.00 秒
        计时器 - 为 JSQ[1] 创建计时器窗口,使用标题: 敌主将出现时...
        设置 JSQCK[1] = (最后创建的计时器窗口)
[/trigger]
回复

使用道具 举报

发表于 2009-5-10 03:48:45 | 显示全部楼层
我有个简单的就2个触发~~~一个单位数组的变量~~~~~~~~

是怪死亡40秒后在原地复活,这个当然是可以自己设置时间的~~

我看了你的要求好多次还是不明白你的要求是什么。。。 所以也就不发了
回复

使用道具 举报

发表于 2009-5-11 14:57:33 | 显示全部楼层
楼主说详细点
回复

使用道具 举报

发表于 2009-5-11 15:05:34 | 显示全部楼层
那么是否刷怪,立即复活之类的参数要用什么传递呢?既然是不懂WE的人肯定不能用函数参数传递了,要占用宝贵的自定义值?
回复

使用道具 举报

 楼主| 发表于 2009-5-11 16:45:58 | 显示全部楼层
用技能,物品,附加经验什么的呀。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-23 21:39 , Processed in 0.053779 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表