找回密码
 点一下
查看: 1283|回复: 10

局部变量排泄

[复制链接]
发表于 2011-6-19 22:26:03 | 显示全部楼层 |阅读模式
这.......不知是不是想多了,还是之前一直搞错了,请看触发的点和单位是否正常排泄了和是否多了几条多余的排泄代码
LHFB
    事件
        单位 - 任意单位 发动技能效果
    条件
        (施放技能) 等于 龙魂风暴 (逐日者)
    动作
        自定义代码: local unit array A_LHFB_DW
        自定义代码: local location array A_LHFB_D
        自定义代码: local effect array A_LHFB_TX
        自定义代码: set A_LHFB_DW[1] = GetTriggerUnit()
        自定义代码: set A_LHFB_D[1] = GetUnitLoc(A_LHFB_DW[1])
        自定义代码: set A_LHFB_TX[1] = AddSpecialEffectTarget("Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile.mdl", A_LHFB_DW[1], "weapon")
        For循环整数A从 1 到 6, 做动作
            Loop - 动作
                自定义代码: set A_LHFB_D[2] = PolarProjectionBJ(A_LHFB_D[1], 632.00, ( I2R(GetForLoopIndexA()) * 60.00 ))
                自定义代码: call CreateNUnitsAtLoc( 1, 'u000', GetOwningPlayer(A_LHFB_DW[1]), A_LHFB_D[1], bj_UNIT_FACING )
                自定义代码: call UnitAddAbilityBJ( 'A056', bj_lastCreatedUnit )
                自定义代码: call IssuePointOrderLoc( bj_lastCreatedUnit, "impale", A_LHFB_D[2] )
                自定义代码: call UnitApplyTimedLifeBJ( 1.00, 'BHwe', bj_lastCreatedUnit )
                自定义代码: call CreateNUnitsAtLoc( 1, 'e00R', GetOwningPlayer(A_LHFB_DW[1]), A_LHFB_D[2], bj_UNIT_FACING )
                自定义代码: call AddSpecialEffectTargetUnitBJ( "weapon", bj_lastCreatedUnit, "Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile.mdl" )
                自定义代码: call IssueImmediateOrder( bj_lastCreatedUnit, "whirlwind" )
                自定义代码: set A_LHFB_DW[( 1 + bj_forLoopAIndex )] = bj_lastCreatedUnit
                自定义代码: call RemoveLocation( A_LHFB_D[2] )
                自定义代码: set A_LHFB_D[2] = null
        等待 4.00 秒
        For循环整数A从 2 到 8, 做动作
            Loop - 动作
                自定义代码: call RemoveUnit( A_LHFB_DW[bj_forLoopAIndex] )
        自定义代码: call DestroyEffect( A_LHFB_TX[1] )
        自定义代码: set A_LHFB_DW[1] = null
        自定义代码: call RemoveLocation( A_LHFB_D[1] )
        自定义代码: set A_LHFB_D[1] = null
发表于 2011-6-19 22:34:56 | 显示全部楼层
还是这样好看点。。。

[trigger]LHFB
    事件
        单位 - 任意单位 发动技能效果
    条件
        (施放技能) 等于 龙魂风暴 (逐日者)
    动作
        自定义代码: local unit array A_LHFB_DW
        自定义代码: local location array A_LHFB_D
        自定义代码: local effect array A_LHFB_TX
        自定义代码: set A_LHFB_DW[1] = GetTriggerUnit()
        自定义代码: set A_LHFB_D[1] = GetUnitLoc(A_LHFB_DW[1])
        自定义代码: set A_LHFB_TX[1] = AddSpecialEffectTarget("Abilities\\\\Weapons\\\\PhoenixMissile\\\\Phoenix_Missile.mdl", A_LHFB_DW[1], "weapon")
        For循环整数A从 1 到 6, 做动作
            Loop - 动作
                自定义代码: set A_LHFB_D[2] = PolarProjectionBJ(A_LHFB_D[1], 632.00, ( I2R(GetForLoopIndexA()) * 60.00 ))
                自定义代码: call CreateNUnitsAtLoc( 1, 'u000', GetOwningPlayer(A_LHFB_DW[1]), A_LHFB_D[1], bj_UNIT_FACING )
                自定义代码: call UnitAddAbilityBJ( 'A056', bj_lastCreatedUnit )
                自定义代码: call IssuePointOrderLoc( bj_lastCreatedUnit, "impale", A_LHFB_D[2] )
                自定义代码: call UnitApplyTimedLifeBJ( 1.00, 'BHwe', bj_lastCreatedUnit )
                自定义代码: call CreateNUnitsAtLoc( 1, 'e00R', GetOwningPlayer(A_LHFB_DW[1]), A_LHFB_D[2], bj_UNIT_FACING )
                自定义代码: call AddSpecialEffectTargetUnitBJ( "weapon", bj_lastCreatedUnit, "Abilities\\\\Weapons\\\\PhoenixMissile\\\\Phoenix_Missile.mdl" )
                自定义代码: call IssueImmediateOrder( bj_lastCreatedUnit, "whirlwind" )
                自定义代码: set A_LHFB_DW[( 1 + bj_forLoopAIndex )] = bj_lastCreatedUnit
                自定义代码: call RemoveLocation( A_LHFB_D[2] )
                自定义代码: set A_LHFB_D[2] = null
        等待 4.00 秒
        For循环整数A从 2 到 8, 做动作
            Loop - 动作
                自定义代码: call RemoveUnit( A_LHFB_DW[bj_forLoopAIndex] )
        自定义代码: call DestroyEffect( A_LHFB_TX[1] )
        自定义代码: set A_LHFB_DW[1] = null
        自定义代码: call RemoveLocation( A_LHFB_D[1] )
        自定义代码: set A_LHFB_D[1] = null[/trigger]

是有东西没排掉。

。。。还有为什么要这么写呢。。直接写J不好么。。
回复

使用道具 举报

发表于 2011-6-19 22:39:53 | 显示全部楼层
第一个LOOP是1-6
+1就是2-7
第二个LOOP应该是2-7吧
而且需要清掉那个UNIT 还有第一个LOOP里面还有一批特效。
回复

使用道具 举报

 楼主| 发表于 2011-6-19 22:49:32 | 显示全部楼层
引用第2楼cynsw于2011-06-19 22:39发表的  :
第一个LOOP是1-6
+1就是2-7
第二个LOOP应该是2-7吧
而且需要清掉那个UNIT 还有第一个LOOP里面还有一批特效。
第二个LOOP2-8是因为我要删掉变量记录的第2-8个单位(技能里是辅助单位用完就删的),而1我已经记录了施法单位不是要删除的
而第一个LOOP里的特效是用在辅助单位里的(即记录到的6个单位),后面的第2个LOOP我已经连人都删掉了,所以特效应该不用删了吧?还是......
PS:J我还在学习中.........
回复

使用道具 举报

发表于 2011-6-19 22:53:04 | 显示全部楼层
引用第3楼无名娜迦于2011-06-19 22:49发表的  :

第二个LOOP2-8是因为我要删掉变量记录的第2-8个单位(技能里是辅助单位用完就删的),而1我已经记录了施法单位不是要删除的
而第一个LOOP里的特效是用在辅助单位里的(即记录到的6个单位),后面的第2个LOOP我已经连人都删掉了,所以特效应该不用删了吧?还是......
PS:J我还在学习中.........

你的记录里只有LOOPA+1哦~~6+1=8?第一个我知道是什么。

辅助单位你没排。你没看到重点 YOOOO~~
回复

使用道具 举报

 楼主| 发表于 2011-6-19 22:59:02 | 显示全部楼层
引用第4楼cynsw于2011-06-19 22:53发表的  :


你的记录里只有LOOPA+1哦~~6+1=8?第一个我知道是什么。

辅助单位你没排。你没看到重点 YOOOO~~
呵呵!不贴出来还不知道理解错得不少,感谢感谢!
回复

使用道具 举报

发表于 2011-6-19 23:01:27 | 显示全部楼层
引用第5楼无名娜迦于2011-06-19 22:59发表的  :

呵呵!不贴出来还不知道理解错得不少,感谢感谢!

直接写J吧,你可以的。。不要觉得没准备好。写了就会了。
回复

使用道具 举报

发表于 2011-6-20 01:58:05 | 显示全部楼层
   我在考虑我要不要学Jass

于是滚去Jass区视察
回复

使用道具 举报

发表于 2011-6-20 02:05:08 | 显示全部楼层
JASS就是看起来没有GUI友好。。我表示看多了头痛。
回复

使用道具 举报

发表于 2011-6-20 02:18:37 | 显示全部楼层
   算了还是乖乖用T吧
回复

使用道具 举报

 楼主| 发表于 2011-6-20 12:01:48 | 显示全部楼层
我会去试试写J的
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-29 01:38 , Processed in 0.032684 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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