Topic hỏi đáp về cách làm map | version 15

Thảo luận trong 'World Editor' bắt đầu bởi Tom_Kazansky, 2/9/12.

  1. Drakkar Knight

    Drakkar Knight Mr & Ms Pac-Man Lão Làng GVN

    Tham gia ngày:
    13/11/11
    Bài viết:
    269
    Nơi ở:
    Hà Nội
    Em làm thử trigger như thế này sai ở chỗ nào mà thỉnh thoảng nó chọn 2 thằng chứ ko phải chọn 1 (2 thằng máu ko bằng nhau).

    [SPOIL]
    Mã:
    Untitled Trigger 001
        Events
            Player - Player 1 (Red) skips a cinematic sequence
        Conditions
        Actions
            Set Group = (Units in Region 000 <gen>)
            Set Life = (Life of (Random unit from Group))
            Unit Group - Pick every unit in Group and do (Actions)
                Loop - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            (Life of (Picked unit)) Less than Life
                        Then - Actions
                            Set Unit = (Picked unit)
                            Set Life = (Life of Unit)
                            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                If - Conditions
                                    (Life of (Picked unit)) Less than or equal to Life
                                Then - Actions
                                    Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
                                    Special Effect - Destroy (Last created special effect)
                                Else - Actions
                        Else - Actions
    [/SPOIL]
     
  2. Ngoc LeO

    Ngoc LeO Mario & Luigi

    Tham gia ngày:
    23/7/06
    Bài viết:
    839
    Nơi ở:
    Nothing...
    Mã:
    Untitled Trigger 001
        Events
            Player - Player 1 (Red) skips a cinematic sequence
        Conditions
        Actions
            Set Group = (Units in Region 000 <gen>)
            Set Life = (Life of (Random unit from Group))
            Unit Group - Pick every unit in Group and do (Actions)
                Loop - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            (Life of (Picked unit)) Less than Life
                        Then - Actions
                            Set Unit = (Picked unit)
                            Set Life = (Life of Unit)
           Unit Group - Pick every unit in Group and do (Actions)
                Loop - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            (Life of (Picked unit)) Less than or equal to Life
                        Then - Actions
                            Set Unit = (Picked unit)
                            Set Life = (Life of Unit)                       
                            Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
                            Special Effect - Destroy (Last created special effect)                     
                        Else - Actions
     
    vihanh, vm1288, vnsAMCh@p and 67 others like this.
  3. Ăn xong dong

    Ăn xong dong Mr & Ms Pac-Man

    Tham gia ngày:
    7/6/11
    Bài viết:
    136
    Tk dragonmanga :D skill khi cast thì pick từng unit trong phạm vi 200. Unit cứ 2s thì mất máu (max 3 lần). tức là khi dính skill rùi mà có blink ra đâu hay chạy bao xa cũng bị mất máu :D
     
  4. Drakkar Knight

    Drakkar Knight Mr & Ms Pac-Man Lão Làng GVN

    Tham gia ngày:
    13/11/11
    Bài viết:
    269
    Nơi ở:
    Hà Nội
    Thay Ability của bạn vào nhé

    [SPOIL]
    Mã:
    Demo
        Events
            Unit - A unit Starts the effect of an ability
        Conditions
            (Ability being cast) Equal to Blizzard
        Actions
            Set Point = (Target point of ability being cast)
            Set UnitGroup = (Units within 200.00 of Point matching ((((Matching unit) is A structure) Equal to False) and (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True)))
            For each (Integer A) from 1 to 3, do (Actions)
                Loop - Actions
                    Wait 2.00 seconds
                    Unit Group - Pick every unit in UnitGroup and do (Actions)
                        Loop - Actions
                            Unit - Cause (Triggering unit) to damage (Picked unit), dealing 500.00 damage of attack type Spells and damage type Normal
            Custom script:   call RemoveLocation(udg_Point)
            Custom script:   call DestroyGroup(udg_UnitGroup)
    [/SPOIL]
     
  5. vuongkkk

    vuongkkk T.E.T.Я.I.S

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội


    Không cậu ạ. Thời gian load map chỉ tốn ở các function Init thôi. Các function init sẽ đc gọi trong lúc load map
    Ví dụ như library A initializer Init
    thì Init sẽ đc gọi trong lúc khởi tạo map.
    Hay các function của GUI như:
    function InitTrig_FireBolt takes nothing returns nothing

    Các object (units, destructibles) đc đặt trước trong map thực ra cũng là code chạy tạo ra object lúc load map mà thôi
     
  6. YAN[asian]

    YAN[asian] Mario & Luigi

    Tham gia ngày:
    27/3/07
    Bài viết:
    812
    Khi tạo 1 multiboard, làm thế nào để cố định player nào thì ở dòng đấy nhỉ? VD : Player Red luôn ở dòng 1 và tên có màu đỏ, Player Blue luôn ở dòng 2 và có tên màu xanh,...
     
  7. Kenmj

    Kenmj Youtube Master Race

    Tham gia ngày:
    26/5/09
    Bài viết:
    95
    Cách 1:
    Cho hỏi về Trigger.Có 1 unit đứng bán item theo dạng Shop.Tôi chạy lại mua item có lever bất kì.Và item đó không chứa trong người của mình,sau khi mua xong thì xuất hiện 1 group unit khác player tại 1 vị trí region định sẳn.Vậy viết trigger như thế nào các bạn giúp tôi.
    Cách 2:
    Tiếp theo là item.Tôi làm khác với cách trên.Sau khi unit mua item và đi vào region định sẳn và có cầm theo 1 lệnh bài gì đó tương ứng với lever quái.Điều kiện của trigger là phải mang theo lệnh bài đó trong túi,thì sẽ xuất hiện quái.và cứ 15s xuất hiện 10 quái tại điểm region đó.

    Ai biết cách nào giúp tôi nhé..cám ơn tất cả.^^
     
    Chỉnh sửa cuối: 29/1/13
  8. Drakkar Knight

    Drakkar Knight Mr & Ms Pac-Man Lão Làng GVN

    Tham gia ngày:
    13/11/11
    Bài viết:
    269
    Nơi ở:
    Hà Nội
    Cho em hỏi 2 lệnh trong Custom script là call DestroyGroupset bj_wantDestroyGroup = true khác nhau ở điểm nào ạ?
     
  9. dh-g

    dh-g Fire in the hole!

    Tham gia ngày:
    29/8/09
    Bài viết:
    2,654
    Nơi ở:
    Q1 TP.HCM
    khi sử dụng Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
    Loop - Actions
    thì sử dụng hàm set bj_wantDestroyGroup = true nó sẽ tự hiểu rằng group đó chỉ sử dụng 1 lần!
    còn nếu sử set My_var = group v.v... thì sử dụng call DestroyGroup
     
  10. Drakkar Knight

    Drakkar Knight Mr & Ms Pac-Man Lão Làng GVN

    Tham gia ngày:
    13/11/11
    Bài viết:
    269
    Nơi ở:
    Hà Nội
    Có Ability nào khi đánh tạo buff lên thằng bị đánh (giống như Slow Poison) nhưng tác dụng với các Orb Effect khác ko các bác?
     
  11. Ngoc LeO

    Ngoc LeO Mario & Luigi

    Tham gia ngày:
    23/7/06
    Bài viết:
    839
    Nơi ở:
    Nothing...
    Hoàn toàn không \m/ ngoại trừ Orb Of Slow :D 'AIsb'
     
  12. bahomao12345

    bahomao12345 Mr & Ms Pac-Man

    Tham gia ngày:
    9/6/12
    Bài viết:
    111
    1. Ai hướng dẫn cho mình làmc cái hình Minimap với. Mình thấy hiện cái mini map mặc dịnh ra thì nó xấu, còn hide mini map thì lại ko đc bắt mắt và đẹp

    2. Làm sao để cứ 10 phút thì tất cả player sẽ đc đưa dến 1 vị trí (region) để solo (giống trong map Tổng Hợp) Ai chỉ cho em cách làm với!
     
    Chỉnh sửa cuối: 30/1/13
  13. Drakkar Knight

    Drakkar Knight Mr & Ms Pac-Man Lão Làng GVN

    Tham gia ngày:
    13/11/11
    Bài viết:
    269
    Nơi ở:
    Hà Nội
    2: Trong Tổng hợp các bài hướng dẫn và một số link hữu dụng có mà: http://www.mediafire.com/download.php?mwg5ymy4cn2
     
  14. khoai_so

    khoai_so Youtube Master Race

    Tham gia ngày:
    13/6/11
    Bài viết:
    68
    Nơi ở:
    Gia Lâm - Hà Nội
    cho mình hỏi trong GUI làm thế nào để sử dụng được lệnh call BJDebugMessage giống trong Jass ?
     
  15. Ngoc LeO

    Ngoc LeO Mario & Luigi

    Tham gia ngày:
    23/7/06
    Bài viết:
    839
    Nơi ở:
    Nothing...
    Thì bạn viết dòng jass đó vào lệnh Custom script

    Custom Script: call BJDebugMsg("yay!")
     
    Last edited by a moderator: 30/1/13
  16. YAN[asian]

    YAN[asian] Mario & Luigi

    Tham gia ngày:
    27/3/07
    Bài viết:
    812
    Có cách nào để khi làm gì đấy mà ko đủ gỗ thì không hiện thông báo bằng âm thanh "not enough lumber" không nhỉ?
     
  17. sown1310

    sown1310 Youtube Master Race

    Tham gia ngày:
    31/1/13
    Bài viết:
    6
    e là người mới có ai chỉ e cách hồi sinh tướng như thế nào không

    chỉ e hồi sinh tướng đi a e mò hoài mà không được
     
    Last edited by a moderator: 31/1/13
  18. andy_bi

    andy_bi Mr & Ms Pac-Man

    Tham gia ngày:
    17/5/12
    Bài viết:
    106
    mọi ng cho mình hỏi: làm sao để làm 1 unit khi vừa đc tạo ra (=trigger) nhưng ko đk đc nó
    going như zombie của undying trong dota
     
  19. truongdzuy

    truongdzuy Mr & Ms Pac-Man

    Tham gia ngày:
    25/1/09
    Bài viết:
    274
    Nơi ở:
    Tp.HCM
    Mã:
    globals
        integer array CombatPoint
        boolean array CombatFlag
    endglobals
    
    function CombatCon takes nothing returns boolean
        return ((GetEventPlayerChatString() == "-st") or (GetUnitAbilityLevel(GetKillingUnit(),'A03J') > 0)) or (GetLearnedSkillBJ() == 'A03J')
    endfunction
    
    function CombatAct takes nothing returns nothing
        local unit u
        local player p
        if GetLearnedSkillBJ() == 'A03J' then
            set u = GetTriggerUnit()
            set p = GetOwningPlayer(u)
            set CombatFlag[GetConvertedPlayerId(p)] = true
        endif
        if GetEventPlayerChatString() == "-st" then
            set p = GetTriggerPlayer()
            if CombatFlag[GetConvertedPlayerId(p)] then
                call DisplayTextToForce(GetForceOfPlayer(p),( "Combat Points: " + ( I2S(CombatPoint[GetConvertedPlayerId(p)]) + "." )))
            endif
        else
            if (GetUnitAbilityLevel(GetKillingUnit(),'A03J') > 0) and (GetDyingUnit() == UNIT_TYPE_HERO) then
                set u = GetKillingUnit()
                set p = GetOwningPlayer(u)
                if CombatFlag[GetConvertedPlayerId(p)] then
                    set CombatPoint[GetConvertedPlayerId(p)] = CombatPoint[GetConvertedPlayerId(p)] + 1
                endif
            endif
        endif
        set p = null
        set u = null
    endfunction
    
    //===========================================================================
    function InitTrig_Combat_Mastery takes nothing returns nothing
        local trigger t = CreateTrigger(  )
        call TriggerRegisterAnyUnitEventBJ( t, EVENT_PLAYER_UNIT_DEATH )
        call TriggerRegisterAnyUnitEventBJ( t, EVENT_PLAYER_HERO_SKILL )    
        set bj_forLoopAIndex = 0
        set bj_forLoopAIndexEnd = 11
        loop
            exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
            call TriggerRegisterPlayerChatEvent( t, Player(GetForLoopIndexA()), "-st", true )
            set bj_forLoopAIndex = bj_forLoopAIndex + 1
        endloop
        call TriggerAddCondition(t,function CombatCon)
        call TriggerAddAction( t, function CombatAct )
        set t = null
    endfunction
    
    cho hỏi lỗi ở đâu mà khi -st thì CombatPoint nó không + thêm vào ( khi giết hero thì đáng ra nó phải từ 0 lên 1, đằng này nó cứ 0 hoài ).
    Code khi học skill sẽ mở CombatPoint, cho phép giết 1 Hero tăng 1 charge và -st để ktra số charge.
     
  20. bahomao12345

    bahomao12345 Mr & Ms Pac-Man

    Tham gia ngày:
    9/6/12
    Bài viết:
    111
    Ai hướng dẫn cho mình làmc cái hình Minimap với. Mình thấy hiện cái mini map mặc dịnh ra thì nó xấu, còn hide mini map thì lại ko đc bắt mắt và đẹp

    P/S; Sao mình cứ xài model (download) thì người nó không hiện gì vậy, trong suốt luôn ko nhìn thấy gì. Vậy là sao? Con nào cũng vậy, ai hướng dẫn dùm mình cách khắc phục với
     
    Chỉnh sửa cuối: 31/1/13

Chia sẻ trang này