魔兽地图编辑器吧 关注:64,405贴子:3,828,634
  • 25回复贴,共1

关于树木重新生长

只看楼主收藏回复

用触发器怎么让树木死亡几秒后重新生长,不是那种过一段时间就全部长出来的,是每棵树单独计算时间的,在网上找了一种触发方式,但不知道为啥在对战图里不生效


IP属地:江西来自Android客户端1楼2024-04-15 14:33回复
    有没有大佬教教


    IP属地:江西来自Android客户端2楼2024-04-15 15:34
    回复
      告诉你一个最快捷的方法,
      百度搜索 魔兽地图DOTA未加密下载
      然后打开复制粘贴即可
      改个重生时间就行


      IP属地:江苏来自Android客户端3楼2024-04-15 17:10
      收起回复
        游戏初始化,选取所有树木,选取可破坏物死亡注册到重生触发器


        IP属地:湖北来自iPhone客户端4楼2024-04-15 17:22
        收起回复
          因为你那个事件最多只能监测64棵树。然后4楼说得对


          IP属地:浙江来自Android客户端5楼2024-04-15 18:41
          收起回复

            这就是dota2的
            反正实现是 就是你给另一个触发器增加某个可破坏物的死亡事件


            IP属地:四川6楼2024-04-15 20:16
            收起回复
              加上大佬发的dota触发后就弄好了,多谢大佬们


              IP属地:江西来自Android客户端7楼2024-04-15 22:58
              收起回复


                IP属地:江苏来自Android客户端8楼2024-04-16 14:42
                收起回复
                  很久没做图了,我有个想法就是:
                  事件 - 树 -死亡
                  条件 - 死亡=某树
                  动作 -
                  设置点
                  创建120s计时器。
                  创建树。
                  或者


                  IP属地:浙江9楼2024-04-17 10:20
                  收起回复
                    能不能所有的树加个凤凰的技能,死后自动复活,到时间也自动复活,和凤凰一样


                    IP属地:江西来自Android客户端10楼2024-04-29 09:54
                    回复
                      library TreeRebirth initializer Init_tree
                      globals
                      private trigger tri=CreateTrigger()
                      private hashtable hxb=InitHashtable()
                      private real time=2 //这个控制复活时间。单位为秒,自行修改。
                      endglobals
                      private function Rebirth_run takes nothing returns nothing
                      local timer t=GetExpiredTimer()
                      call DestructableRestoreLife(LoadDestructableHandle(hxb,GetHandleId(t),1), GetDestructableMaxLife(LoadDestructableHandle(hxb,GetHandleId(t),1)), true )
                      call FlushChildHashtable(hxb,GetHandleId(t))
                      call DestroyTimer(t)
                      set t=null
                      endfunction
                      private function Rebirth takes nothing returns nothing
                      local timer t=CreateTimer()
                      call SaveDestructableHandle(hxb,GetHandleId(t),1,GetTriggerDestructable())
                      call TimerStart(t,time,false,function Rebirth_run)
                      set t=null
                      endfunction
                      private function RegisterTree takes nothing returns nothing
                      if ((GetDestructableTypeId(GetEnumDestructable()) == 'LTlt')) then
                      call TriggerRegisterDeathEvent(tri, GetEnumDestructable())
                      endif
                      endfunction
                      private function Init_tree takes nothing returns nothing
                      call EnumDestructablesInRect(bj_mapInitialPlayableArea, null, function RegisterTree)
                      call TriggerAddAction(tri, function Rebirth)
                      endfunction
                      endlibrary
                      ——————————————————
                      贴吧几年前有大佬写的,拿去吧,记得给大佬上柱香。


                      星座王
                      点亮12星座印记,去领取
                      活动截止:2100-01-01
                      去徽章馆》
                      IP属地:黑龙江12楼2024-05-13 00:35
                      回复