找回密码
 点一下
查看: 927|回复: 9

用T能实现这个单位填补的功能吗?(内详

[复制链接]
发表于 2013-6-25 23:57:20 | 显示全部楼层 |阅读模式
本帖最后由 hellmangl 于 2013-6-26 00:23 编辑

我做了一个实验性质的地图然后卡在了一个“英雄竞技场”的环节



我方有2个英雄(这两个英雄是一开始用小精灵选择的)
敌方(这里我不知道是设置中立敌对好还是敌对玩家好?)有ABCDE FGHIJ KL  12个英雄

当我方2个英雄全都进入“竞技场”区域的时候
则开启“英雄竞技场”
这时ABCD出现在竞技场中心摆个POSE,奔向玩家(任意英雄)

ABCD任意英雄被击杀的时候,始终保持竞技场内地方有4个英雄,
则由剩余的EFGHIJ KL   7个英雄填补空位,出现在竞技场中心(固定点), 直到没有多余英雄为止。

我方英雄的目的就是最后杀完 12个敌方英雄(每个英雄死亡时随机掉落物品,这里我猜会用到预置的单位组,所以也不知道怎么做掉落了)

这里填补空缺有两种办法
1,随机选择剩余的英雄填充   
2,以EFGHI JKL的字母顺序来填充

然后当我方英雄(2个)全部阵亡或者全部离开竞技场(比如回城)的时候   竞技场重置(也就是敌方无论损失了多少英雄都重新复活)
当我方英雄再一次踏入竞技场  则竞技场重新启动

(总之这个设置是为了必须一次杀死12个英雄)

补充: 填补空缺的英雄一出来后就要第一时间奔向玩家英雄(任意)去豪日他们

请问以上的功能可以用T做出来吗···
在下只能用T做一些简单的触发
这个东西我找不到头绪了  请教一下各位  该怎么做 :)
我感觉可能有点复杂?
我很愿意努力学习的!



发表于 2013-6-26 09:42:59 | 显示全部楼层
本帖最后由 chyj4747 于 2013-6-26 09:44 编辑

用一个单位数组记录敌对12个英雄,然后用一个整数记录敌对英雄总数

捕捉己方英雄进入竞技场,然后从单位数组中随机选4个放到竞技场里,同时英雄总数-4
给进入竞技场的英雄注册死亡事件(也可以初始化的时候就注册好,这样就不用动态注册及删除触发了),死亡时判断英雄总数,若为0则结束,否则从剩下的英雄里随机一个出来放到竞技场内

随机的方法:
随机的区间是[0, 英雄总数-1],这个区间是单位数组的区间,随到一个数字就把“单位[随到的数字]”这个英雄放到竞技场内,同时把这个数组的最后一个英雄放到数组的这个位置(即“单位[英雄总数-1]”放到“单位[随到的数字]”),这一步是为了保持数组内从0到英雄总数-1这一段都是满的,且排除掉已经随到的英雄,这样下一次就会随到未出场的新英雄,最后把英雄总数减少1,代表剩下未出场的英雄数量

至于剩下的部分,什么让敌对英雄主动攻击什么的就只要给他们发布命令就行了,LZ自行解决吧~

点评

谢谢! 好像看起来稍微有点复杂(之前只用过一些不带函数T 没用过数组 我回去试试看  详情 回复 发表于 2013-6-26 19:45
回复

使用道具 举报

发表于 2013-6-26 16:14:41 | 显示全部楼层
随机还是用“单位组内随机单位”更简单……

点评

随机选择剩余的英雄填充 2,以EFGHI JKL的字母顺序来填充  详情 回复 发表于 2013-7-19 15:55
回复

使用道具 举报

 楼主| 发表于 2013-6-26 19:45:48 | 显示全部楼层
chyj4747 发表于 2013-6-26 09:42
用一个单位数组记录敌对12个英雄,然后用一个整数记录敌对英雄总数

捕捉己方英雄进入竞技场,然后从单位 ...

谢谢!
好像看起来稍微有点复杂(之前只用过一些不带函数T 没用过数组  
我回去试试看  
回复

使用道具 举报

发表于 2013-6-26 21:38:51 | 显示全部楼层
hellmangl 发表于 2013-6-26 19:45
谢谢!
好像看起来稍微有点复杂(之前只用过一些不带函数T 没用过数组  
我回去试试看

额。。我说的那个单位数组应该是单位类型数组
如果敌对12个英雄是一开始就创建好的话如板凳所说用单位组来随机更简单,随到后从单位组内移除就行

另外每次竞技场重置的时候要将单位类型数组或单位组还原

点评

还有就是我方英雄(2个)进入竞技场那块。我设置的当区域内单位(区域单位组)数量大于等于2的时候关闭大门。 有时候可以有时候又不行好奇怪··  详情 回复 发表于 2013-7-17 23:59
你好 我做了一下 还是弄不好。空了能做个演示给我吗, 谢谢了 :)  详情 回复 发表于 2013-7-17 23:57
试了一下 搞不来 哈哈 貌似我得再去学习一下基础的东西  详情 回复 发表于 2013-7-3 20:41
回复

使用道具 举报

 楼主| 发表于 2013-7-3 20:41:17 | 显示全部楼层
chyj4747 发表于 2013-6-26 21:38
额。。我说的那个单位数组应该是单位类型数组
如果敌对12个英雄是一开始就创建好的话如板凳所说用单位组 ...

试了一下  搞不来 哈哈   貌似我得再去学习一下基础的东西
回复

使用道具 举报

 楼主| 发表于 2013-7-17 23:57:10 | 显示全部楼层
chyj4747 发表于 2013-6-26 21:38
额。。我说的那个单位数组应该是单位类型数组
如果敌对12个英雄是一开始就创建好的话如板凳所说用单位组 ...

你好  我做了一下 还是弄不好。空了能做个演示给我吗, 谢谢了 :)
回复

使用道具 举报

 楼主| 发表于 2013-7-17 23:59:41 | 显示全部楼层
chyj4747 发表于 2013-6-26 21:38
额。。我说的那个单位数组应该是单位类型数组
如果敌对12个英雄是一开始就创建好的话如板凳所说用单位组 ...

还有就是我方英雄(2个)进入竞技场那块。我设置的当区域内单位(区域单位组)数量大于等于2的时候关闭大门。 有时候可以有时候又不行好奇怪··
回复

使用道具 举报

发表于 2013-7-18 09:18:06 | 显示全部楼层
设置单位类型变量组A[X],设置整数变量X,一个整数变量Y。

将12个单位添加进A[1] - A[12],设置整数X=12,Y随机1到X。

创建一个A[Y]的单位,然后赋值A[Y]=A[X],再X=X-1进行整数调整就完成一次随机选择了。

判断区域内单位数量的事件应该采用“单位进入区域”,然后添加进单位组再进行判断单位组中的单位数量,而同时需要添加离开区域移除出单位组的触发。

进入区域判断区域内单位本身存在BUG,我记得只有从左边和上边进入有效,右边和下边进入无效,或者位置记错了,但的确是WE本身的问题,无解。
回复

使用道具 举报

发表于 2013-7-19 15:55:36 | 显示全部楼层
lo 发表于 2013-6-26 16:14
随机还是用“单位组内随机单位”更简单……

随机选择剩余的英雄填充   
2,以EFGHI JKL的字母顺序来填充
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 13:43 , Processed in 0.292941 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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