找回密码
 点一下
查看: 2378|回复: 16

求助:如何判断基地的注卵已经完成?

[复制链接]
发表于 2010-11-16 07:08:12 | 显示全部楼层 |阅读模式
用unit creation判断分不出是注卵还是天生产生的卵。
这是跟behavior有关系么?
sc2的判断单位buff是用什么函数?
发表于 2010-11-16 08:31:34 | 显示全部楼层
这个buff的ID是QueenSpawnLarva

SC2里判断buff用的是UnitHasBehavior()
回复

使用道具 举报

 楼主| 发表于 2010-11-16 08:52:23 | 显示全部楼层
  但是,没有单位buff结束这种事件吗?
要怎么捕捉注卵结束呢

还是只能对单位循环判断记录么
回复

使用道具 举报

发表于 2010-11-16 09:24:51 | 显示全部楼层
用不着那种事件。

如今已经有效果捕捉这种万能事件。


另外我还是问你下吧,你到底是要捕捉那个注卵进度条走到底的瞬间还是等4个卵都已经孵化出的瞬间?


两者之间相差1秒。

前者的话捕捉SpawnMutantLarvaApplySpawnBehavior这个效果,这个效果在度条完成后触发i。

后者的话捕捉SpawnMutantLarvaRemoveSpawnBehavior这个效果。这个效果在每次产生额外卵的时候触发。

后者还可以通过计算基地上的buff层数来得知还有多少个额外卵待产生。
Screenshot2010-11-16 09_24_20.jpg
回复

使用道具 举报

发表于 2010-11-16 09:33:37 | 显示全部楼层
00:00:46.00 Done
00:00:46.00 Running gt_TimeOut_Func (Event: TriggerDebug/EventPlayerEffectUsed)
00:00:46.25 3
00:00:46.25 Running gt_SpawnMutantLarva_Func (Event: TriggerDebug/EventPlayerEffectUsed)
00:00:46.50 2
00:00:46.50 Running gt_SpawnMutantLarva_Func (Event: TriggerDebug/EventPlayerEffectUsed)
00:00:46.75 1
00:00:46.75 Running gt_SpawnMutantLarva_Func (Event: TriggerDebug/EventPlayerEffectUsed)
00:00:47.00 0
00:00:47.00 Running gt_SpawnMutantLarva_Func (Event: TriggerDebug/EventPlayerEffectUsed)
回复

使用道具 举报

发表于 2010-11-16 09:52:22 | 显示全部楼层
关键是,判断这个要干嘛呢
回复

使用道具 举报

发表于 2010-11-16 09:56:04 | 显示全部楼层
你翻翻这个楼主以前的帖子就知道。他是想尽办法在对战里作弊呢。

所以才想知道对方多少农民采矿,多少农民采气,多少人口多少钱,多少个虫卵。
回复

使用道具 举报

 楼主| 发表于 2010-11-16 10:08:01 | 显示全部楼层
纳尼!!
我已经都写成timer了。。好吧

其实我的目的是在注卵走到底的时候播放音效。hmm
似乎是废弃的音效 “evolution complete” 没有见到什么情况下用到。



include "TriggerLibs/dreamgalaxy"

unitgroup ZergQueen_Hatchery = UnitGroupEmpty();

void PlayLarvaSpawnReadySound () {
    SoundPlay(SoundLink("Alert_ZergWarpTrainComplete", -1), PlayerGroupSingle(GetLocalPlayer()), 100.0, 0.0);
}

bool ZergQueen_CheckHatcheryState (bool testConds, bool runActions) {
    unit u = null;
    bool spawning = false;
   
    UnitGroupLoopBegin (ZergQueen_Hatchery);
    while (!UnitGroupLoopDone()) {
        u = UnitGroupLoopCurrent();
        if (u!=null){
            spawning = UnitHasBehavior(u, "QueenSpawnLarvaTimer");
            if (!spawning && DataTableGetBool(DataTable_Global, U2S(u)+"_SpawnLarva")) {
                PlayLarvaSpawnReadySound();
            }
            DataTableSetBool(DataTable_Global, U2S(u)+"_SpawnLarva", spawning);
        }
        UnitGroupLoopStep();
    }
    UnitGroupLoopEnd();

    return true;
}

bool ZergQueen_RegisterHatchery (bool testConds, bool runActions) {
    unit u = EventUnitCreatedUnit();
  if ( (UnitGetType(u) == "Hatchery") && (UnitGetOwner(u) == GetLocalPlayer()) ) {
      //ScreenMsg("Hatchery added");
      UnitGroupAdd(ZergQueen_Hatchery, u);
  }

  return true;
}


void ZergQueen_TriggerInit () {
  trigger t;
  
  t = TriggerCreate("ZergQueen_CheckHatcheryState");
  TriggerAddEventTimePeriodic(t, 0.5, c_timeGame);
  
  t = TriggerCreate("ZergQueen_RegisterHatchery");
  TriggerAddEventUnitCreated(t, null, null, null);

}
回复

使用道具 举报

发表于 2010-11-16 10:16:26 | 显示全部楼层
自从1.1.0加入效果事件以后,这个编辑器已经从WE的200倍提升到300倍了。
回复

使用道具 举报

 楼主| 发表于 2010-11-16 10:22:57 | 显示全部楼层
还有一个问题,galaxy中不提供事件镜头跳转的函数吗?
就是 设置按空格跳转到的地方
回复

使用道具 举报

发表于 2010-11-16 10:26:39 | 显示全部楼层
native void         UIAlertPoint (string alert, int player, text message, string icon, point p);
native void         UIAlertUnit (string alert, int player, text message, string icon, unit u);

当然不可能没有。
回复

使用道具 举报

发表于 2010-11-16 11:15:47 | 显示全部楼层
不关心目的神马的,我来学习。Mark
回复

使用道具 举报

发表于 2010-11-16 11:31:12 | 显示全部楼层
引用第6楼Renee于2010-11-16 09:56发表的  :
你翻翻这个楼主以前的帖子就知道。他是想尽办法在对战里作弊呢。

所以才想知道对方多少农民采矿,多少农民采气,多少人口多少钱,多少个虫卵。



玩這樣的 custom map 羸了又有什麼意思? 
回复

使用道具 举报

发表于 2010-11-16 11:32:15 | 显示全部楼层
其实是可以用在Ladder上的……

具体就不深入了。
回复

使用道具 举报

发表于 2010-11-16 12:28:02 | 显示全部楼层
這些行為在 ladder 上被發現大概會被 ban account 的..... 為了那小小的優勢而務這個風險, 似乎不值得.
回复

使用道具 举报

发表于 2012-4-15 14:59:16 | 显示全部楼层
请问,这个万能事件怎么捕捉呢?

比如我想捕捉人族基地的“calldown mule”
是捕捉哪个效果呢?
回复

使用道具 举报

发表于 2012-4-15 15:01:43 | 显示全部楼层
SpawnMutantLarvaApplySpawnBehavior 是捕捉注射虫卵的

那怎么找到calldown mule 或者其他的一些事件呢,能详细说下吗?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-8-7 13:22 , Processed in 0.038332 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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