闪电战吧 关注:8,684贴子:108,212
  • 9回复贴,共1

闪电战脚本编写-----如何控制伞兵攻击

只看楼主收藏回复

在编 闪1自定义任务时,如能控制伞兵去干一些活,应该是比较有意思的。
上次一个老铁问了这个问题,我说了 前贤的大概思路,
就是 先设一个全局变量,再用命令控制。
但实际运行时,没效果,
伞兵们都不听使唤。
近来,我在做 推演三国战役 时,
测试了一下,
发现了问题的根源。


IP属地:湖南1楼2023-10-26 09:40回复
    function Pdrop() -----让敌人空降
    Cmd(22, 10001, 1, 5295, 1343);
    Suicide( );
    end;
    function Objective0()
    if ( GetNScriptUnitsInArea( GetIGlobalVar( "ParadropSquad.ScriptID", 0), "Drop") > 0) then
    Cmd( 0, GetIGlobalVar( "ParadropSquad.ScriptID", 0), 8600, 2504); --让伞兵去攻击某点
    --Suicide(); --这是关键。一定要删掉这句
    end;
    end;
    function Presets() ----事先设定伞兵ID的全局变量
    SetIGlobalVar( "ParadropSquad.ScriptID", 5000);
    end;
    function Init()
    RunScript("Objective0", 3000 );
    RunScript("Pdrop", 2000 );
    Presets();
    end;


    IP属地:湖南2楼2023-10-26 09:44
    回复
      问题的关键是 要删掉 命令伞兵干活的程序里面的自杀语句。
      不能自杀。
      因为伞兵在天上时,命令就已经生效了。
      但人在天上又不能 服从命令。
      命令生效后,程序就不再执行。
      伞兵落地后就不会再动了。
      -------------------
      有志于编写任务的老铁,
      可以把它用在你的新任务中。


      IP属地:湖南3楼2023-10-26 09:47
      回复
        上期推演了 蜀汉兴复汉室之战。
        无论 出祁山,还是子午谷奇谋 都没用,两国国力差距太大。
        下一期 是 官渡之战。
        也找了几方面的原因。
        来 重演三国战役吧。


        IP属地:湖南4楼2023-10-26 09:51
        回复
          66666


          IP属地:甘肃来自Android客户端5楼2023-10-26 12:28
          回复
            脚本这东西是好玩,看着就头疼,佩服你们这些发烧级玩家,造福闪众。


            IP属地:广东来自iPhone客户端6楼2023-10-26 12:37
            回复
              楼主强啊!!!困扰多年的问题终于解决了
              弱弱的问一句,你是从哪里找到“ParadropSquad.ScriptID”这个伞兵的代码的?


              IP属地:广东7楼2023-11-01 10:16
              收起回复
                这个的缺点是:所有伞兵,无论是谁的,都服从这个命令,不能单独控制。单位太多时容易卡顿。
                优点是可以调度敌我双方最终决战。


                IP属地:四川8楼2024-01-04 19:29
                回复