|
发表于 2006-4-19 03:02:16
|
显示全部楼层
初步判断,是怪物堆积引起的。
一次产生60个怪,容易引起堆积而失去原来的控制。
用类似我的T重新修改,一次不要产生太多怪。贵精不在多。
可以在LOOP后面加WAIT 1 秒。
另外,
1)你的漂浮文字中有WAIT 10 秒后才销毁漂浮文字。这需要用局部变量处理。
2)对于Center of 地区 000 <情报>等重复调用的点,可以先用全局变量先储存,以免每次都产生临时点而有没法销毁,导致越玩越卡。
3)对于产生的3×2路兵(敌我双方),可以用单位组数组储存,单位死亡后从单位组中移除。
以下是例子
初始化经常使用的点,避免调用(Center of xxxx)的时候不断产生临时点
[trigger]Location Init
事件
Map initialization
环境
动作
-------- 初始化经常使用的点,避免调用(Center of xxxx)的时候不断产生临时点 --------
Set regioncenter[1] = (Center of armBron <情报>)
Set regioncenter[2] = (Center of 1 <情报>)
Set regioncenter[10] = (Center of Wang2 <情报>)[/trigger]
出兵举例:
[trigger]bron
事件
时间 - Every 120.00 seconds of game time
环境
动作
Wait 10.00 seconds
For each (Integer A) from 1 to 30, do (Actions)
Loop - 动作
Wait 0.50 seconds
单位 - Create 1 armType[Lv] for 玩家 12 (棕色) at regioncenter[1] facing 默认的建筑朝向 degrees
单位组 - Add (Last created unit) to myUnitGroup[1]
单位 - Order (Last created unit) to 攻击-移动到 regioncenter[2]
-------- 如果出现兵徘徊的情况,加下面的 --------
单位组 - Pick every unit in myUnitGroup[1] and do (Actions)
Loop - 动作
单位 - Order (Picked unit) to 攻击-移动到 regioncenter[2]
Set Lv = (Lv + 1)[/trigger]
[trigger]Units1Died
事件
单位 - A unit 死亡
环境
((Triggering unit) is in myUnitGroup[1]) 等于 TRUE
动作
-------- 当单位死亡的时候,从单位组(myUnitGroup[1])里清除单位 --------
-------- 避免在很大的区域使用Pick Unit Do Something --------
单位组 - Remove (Triggering unit) from myUnitGroup[1][/trigger]
正确使用漂浮文字:
[trigger]WangJinWei
事件
单位 - 伪军指挥部 0061 <情报> 死亡
环境
动作
-------- FloatTextTmp在变量表中已经定义(只是为了方便在“Set FloatTextTmp = (Last created floating text)”中引用才定义的,实际上在这例子中不是使用全局变量FloatTextTmp) --------
-------- 下面的局部变量声明必须在TRIGGER的头部 --------
Custom script: local texttag udg_FloatTextTmp
单位 - Unhide 汪精卫 0047 <情报>
单位 - Move 汪精卫 0047 <情报> instantly to regioncenter[10]
镜头 - wangjinwei <情报> for 玩家 1 (红色) over 0.00 seconds
动画 - Play 汪精卫 0047 <情报>\'s stand animation
漂浮文字 - Create floating text that reads 杀死汉奸汪精... at regioncenter[10] with Z offset 10.00, using font size 30.00, color (0.00%, 0.00%, 0.00%), and 0.00% transparency
-------- 实际上,在“Set FloatTextTmp = (Last created floating text)”中使用的已经是声明过的局部变量udg_FloatTextTmp --------
Set FloatTextTmp = (Last created floating text)
Wait 5.00 seconds
单位 - Order 汪精卫 0047 <情报> to 攻击-移动到 regioncenter[10]
-------- 先销毁(但依然没清空udg_FloatTextTmp所占用的内存) --------
漂浮文字 - Destroy FloatTextTmp
-------- 下句是彻底清理内存,防止内存泄漏 --------
Custom script: set udg_FloatTextTmp = null[/trigger] |
|