Hỏi cách làm skill phản con spectre trong dota (skill 3)

Thảo luận trong 'World Editor' bắt đầu bởi frostwyrm_9x, 5/7/10.

  1. frostwyrm_9x

    frostwyrm_9x Mr & Ms Pac-Man

    Tham gia ngày:
    12/7/09
    Bài viết:
    190
    Nơi ở:
    Warcraft III
    Chả hỉu sao cái WE nó lại ko cho Generic Unit Event thêm cái Takes Damage (nó ko cho Unit- a unit takes damage) nên em làm skill chỉ đc 1 con nhờ các pro giúp
    [​IMG]
    đây là map
    http://www.mediafire.com/?uxtmtomtyk3
     
  2. Tom_Kazansky

    Tom_Kazansky

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    http://forum.gamevn.com/showthread.php?t=474447

    ---
    Tạo trigger với event unit take damage (khi 1 unit bị mất máu)
    Cần 1 biến unit group, tên là TakeDamGroup.
    Và 3 trigger:

    Mã:
    UnitTakeDamageInit
        Events
            Time - Elapsed game time is 0.00 seconds
        Conditions
        Actions
            Custom script:   set bj_wantDestroyGroup = true
            Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
                Loop - Actions
                    Unit Group - Add (Picked unit) to TakeDamGroup
                    Trigger - Add to UnitTakeDamage <gen> the event (Unit - (Picked unit) Takes damage)
    Trigger này để add event "Specific Unit Takes Damage" đối với các unit có sẵn trên bản đồ và add unit đó vào TakeDamGroup. Lần sau nếu có add event nữa thì phải kiểm tra xem unit cần add có trong TakeDamGroup ko, nếu ko thì add, có thì thôi (nếu có mà add tiếp sẽ gây ra bug, trigger sẽ chạy 2 lần)
    ----
    Mã:
    UnitTakeDamageDetector
        Events
            Unit - A unit enters (Playable map area)
        Conditions
            ((Triggering unit) is in TakeDamGroup) Equal to False
        Actions
            Unit Group - Add (Triggering unit) to TakeDamGroup
            Trigger - Add to UnitTakeDamage <gen> the event (Unit - (Triggering unit) Takes damage)
    Trigger này, khi 1 unit "đi" vào "playable map area" hiểu nôm na là 1 unit xuất hiện ở bản đồ (summon, create with trigger, train,... ) thì add thêm event Unit đó take dam, và add unti đó vào TakeDamGroup.
    ----
    Mã:
    UnitTakeDamage
        Events
        Conditions
        Actions
            Trigger - Turn off (This trigger)
            -------- ---------------------- --------
            //spells, or whatever
            -------- ---------------------- --------
            Trigger - Turn on (This trigger)
    Khi một unit take damage, trigger này sẽ hoạt động, và để tránh 1 số bug, ta nên "tắt" trigger này đi, xong trigger sẽ "bật" lên.
     
    Chỉnh sửa cuối: 5/7/10
  3. frostwyrm_9x

    frostwyrm_9x Mr & Ms Pac-Man

    Tham gia ngày:
    12/7/09
    Bài viết:
    190
    Nơi ở:
    Warcraft III
    cám ơn anh Tom nhưng anh có thể cho xin map để minh họa đc ko, nói thế này khó hỉu wa'

    ---------- Post added at 19:21 ---------- Previous post was at 19:13 ----------

    P/s: map demo của anh là bản 1.23 nên em ko test đc, còn cái kia là 1.24c mà nhà em là 1.24b
     

Chia sẻ trang này