Topic Post Spell

Thảo luận trong 'World Editor' bắt đầu bởi ducthai, 12/5/09.

Trạng thái chủ đề:
Không mở trả lời sau này.
  1. NgacNhienChua!!

    NgacNhienChua!! Mr & Ms Pac-Man

    Tham gia ngày:
    8/1/09
    Bài viết:
    113
    ờ thì, theo mình mấy bác không nên post những spell đó...không phải, ý là những spell khó đó, quá nhìu chi tiết, và phức tạp không hợp với newbie khi bắt đầu làm spell :D, những spell đó nên dời về sau, nên post những spell cơ bản, cách dùng Group, cách move 1 Dumy....đại loại thế :D....

    xem ra hình như hok có newbie nào vào đây cả :D toàn pro không
     
  2. ducthai

    ducthai Donkey Kong

    Tham gia ngày:
    27/2/06
    Bài viết:
    334
    Nơi ở:
    Biên Hòa - Trảng Bom
    Lần trước mình đã làm 1 Spell action rùi và bậy giờ xin giới thiệu 1 Spell Passive , rất là cơ bản :D

    Name Spell : Hidden Strength (Sức mạnh tiềm ẩn) :D
    Type : Passive (Spell ẩn , bị động)
    Tác Dụng : khi demon tấn công có 30% chance add thêm % damage
    Lv1 : 30% damage
    Lv1 : 60% damage
    Lv1 : 90% damage
    Và đây là hình ảnh mặc dù nó ko nói lên đc gì hết b-)
    [​IMG]

    Típ theo là cách làm :
    uhm như mình đã nói ở những bài trên , giờ mình sẽ ko nói lại những cái cơ bản (tốn time => tốn tiền Net lắm) Vì mình đã attack Map demo ở dưới nên các bạn hãy mở ra sem những spell tạo cho dummy và chỉnh sửa thui , giờ mình giải thích Trigger .

    hide strength
    Mã:
    Events
            Unit - A unit Is attacked
        Conditions
            ((Attacking unit) has buff Hide Strength ) Equal to True
        Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    (Random integer number between 1 and 100) Less than or equal to 30
                Then - Actions
                    Set Caster = (Attacking unit)
                    Set CasterPoint = (Position of Caster)
                    Unit - Create 1 Dummy for (Owner of Caster) at CasterPoint facing Default building facing degrees
                    Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                    Unit - Set level of Inner Fire  for (Last created unit) to (Level of Hide Strength  for Caster)
                    Unit - Order (Last created unit) to Human Priest - Inner Fire Caster
                    Custom script:   call RemoveLocation(udg_CasterPoint)
                    Custom script:   set udg_Caster = null
                Else - Actions
    mình sẽ nói cách làm trước nhé : vỉ đây là spell ẩn khi đánh có % cơ hội add damage nên đầu tiên chúng ta phải có sự kiện sảy ra đó là Unit - A unit Is attacked (một Unit tấn công) và sau đó là điều kiện ((Attacking unit) has buff Hide Strength ) Equal to True (điều kiện ở đây là : Kẻ đang tấn công có Buff Hide Strength , thường khi làm Spell Passive thì có lẽ quan trọng nhất là Buff vào người và trong đây Unit của ta đã có Buff Hide Strength , và hội tụ đủ điều kiện thì sẽ thực hiện Action , để có thể add % dam thì chúng ta dùng 1 ability của Unit có tác dụng add % damage cụ thể mình sài ở đây là Inner Fire chỉ cần vào chỉnh sửa các thông số mà mình muốn và tạo 1 Buff mới "Hide Strength" rùi thay vào phần Buff của Ability Inner Fire là đc roài sau đó khi Unit của ta tấn công thì tạo 1 con dummy có mang ability Inner Fire vào ngay vị trí của Unit và ra lenh cho nó sử dụng Ability Inner Fire vào người Unit là xong rùi.

    Mã:
    Events
        Unit - A unit Is attacked

    (một Unit tấn công)
    Mã:
    Conditions
        ((Attacking unit) has buff Hide Strength ) Equal to True

    (unit tấn công có Buff Hide Strength)
    Mã:
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        If - Conditions
        Then - Actions
         Else - Actions
    (mình sử dụng cái If này để thêm điều kiện vào khi action hoặc các bạn cũng có thể thêm điều kiện ngay phần Condition ở bên trên cũng đc , cái nào cũng như nhau hết ah
    Mã:
    If - Conditions
        (Random integer number between 1 and 100) Less than or equal to 30

    (cho giá trị từ 1-100 random là 30%)
    Mã:
    [B]Then - Actions
        Set Caster = (Attacking unit)
        Set CasterPoint = (Position of Caster)[/B]
    (Tạo biến Caster - Unit , CasterPoint - Point và Set biến)
    Mã:
    Unit - Create 1 Dummy for (Owner of Caster) at CasterPoint facing Default building facing degrees

    (tạo unit .....của.... tại ,...... hướng về . .......)
    Mã:
    Unit - Add a 1.00 second Generic expiration timer to (Last created unit)

    (cho thời gian sống của Dummy là 1s)
    Mã:
    Unit - Set level of Inner Fire  for (Last created unit) to (Level of Hide Strength  for Caster)

    (Set lv của ability của dummy to lv của ability cho Caster . tức là nếu lv của ability Hide Strength của Caster là lv 2 thì lv của Inner Fire của dummy cũng là lv 2 và .....)
    Mã:
    Unit - Order (Last created unit) to Human Priest - Inner Fire Caster

    (Ra lenh cho dummy sử dụng ability Inner Fire lên người mình)
    Mã:
    Custom script:   call RemoveLocation(udg_CasterPoint)
    Custom script:   set udg_Caster = null

    (2 dòng Jass để xóa Leak , dòng đầu dùng để xóa Leak CasterPoint dòng sau để xóa Caster )

    OK vậy là xong roài , 1 spell Passive rất đơn giản và cơ bản , cố gắng tiếp thu nhé các Newbie :))
     

    Các file đính kèm:

  3. Meteor95

    Meteor95 Mario & Luigi

    Tham gia ngày:
    27/4/07
    Bài viết:
    861
    Em gà mà :P
    Ko phải hide streght,nếu dịch là sức mạnh tiềm ẩn thfi phải là hidden streght bác ạ
     
  4. ShadowThanatos

    ShadowThanatos -|--Soul Reaper--|-

    Tham gia ngày:
    23/2/09
    Bài viết:
    2,119
    Nơi ở:
    Horror Depht
    @NgacNhienChua: ờ, em sẽ post những spell less complicated hơn. (nghe mà tên nghe như quảng cáo bột giặc tide nhỉ? :)))
    @ducthai, meteor: thnks, bằng tuổi meteor ah, có bạn rồi :D
    By the way, rep cho anh ducthai này :D
     
  5. Jin Axl

    Jin Axl > Draw 2 Life Moderator Lão Làng GVN

    Tham gia ngày:
    2/3/06
    Bài viết:
    8,246
    Nơi ở:
    Over the rainbow
    Hidden Strength <<<<<
    Sửa lưng người ta cũng phải sửa cho đúng chứ 8-}
     
  6. virtualman

    virtualman Trùm Design GVN Lão Làng GVN

    Tham gia ngày:
    15/8/06
    Bài viết:
    3,951
    Nơi ở:
    Ha Noi, Vietnam,
    @ducthai : Test qua thấy có bug này ;))
    Đó là khi đã kích hoạt buff dam thì ko tắt đc, đáng ra là buff dam tồn tại đc tầm 20s thôi ;))

    mà theo mình làm cái demo về buff streng hay hơn. Kiểu đang đáng thì strength phọt lên trong tầm 20s :)) (strength tăng tức hp regen tăng ;;) và +armor nữa)
     
  7. game_war48

    game_war48 Dragon Quest

    Tham gia ngày:
    7/9/08
    Bài viết:
    1,320
    Nơi ở:
    Ice City
    Sửa bug spell của ducthai như sau:
    Mã:
    Events
            Unit - A unit Is attacked
        Conditions
            ((Attacking unit) has buff Hide Strength ) Equal to True
            ((Attacking unit) has buff Inner Fire  ) Equal to False
        Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    (Random integer number between 1 and 100) Less than or equal to 30
                Then - Actions
                    Set Caster = (Attacking unit)
                    Set CasterPoint = (Position of Caster)
                    Unit - Create 1 Dummy for (Owner of Caster) at CasterPoint facing Default building facing degrees
                    Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                    Unit - Set level of Inner Fire  for (Last created unit) to (Level of Hide Strength  for Caster)
                    Unit - Order (Last created unit) to Human Priest - Inner Fire Caster
                    Custom script:   call RemoveLocation(udg_CasterPoint)
                    Wait 20.00 second of game times
                    Unit - Remove Inner Fire buff from Caster
                    Custom script:   set udg_Caster = null
                Else - Actions
     
  8. virtualman

    virtualman Trùm Design GVN Lão Làng GVN

    Tham gia ngày:
    15/8/06
    Bài viết:
    3,951
    Nơi ở:
    Ha Noi, Vietnam,
    Skill còn leak kìa bác game war :))

    À , up hộ tớ cái skill Blink Flame nhé meteor, map demo ấy mà :))
    Và làm hộ tớ cái skill khi hero xài thì xung quanh 350 AoE sẽ dính Slow + Poison trong 20s :D

    P/s : Làm sao để khi hero cast 1 spell thì 1 spell khác đồng thời đc cast luôn vậy :D =))
    Ví dụ khi cast skill POISON vào target unit thì đồng thời unit cũng bị POISON hay SLOW, MISS..
     
  9. game_war48

    game_war48 Dragon Quest

    Tham gia ngày:
    7/9/08
    Bài viết:
    1,320
    Nơi ở:
    Ice City
    Leak ở đâu vậy:-/?

    Xài cái Drunken Haze vừa có Miss vừa có Slow (đấy là hiệu ứng của chiêu mà đâu phải là như thế này đâu "khi hero cast 1 spell thì 1 spell khác đồng thời đc cast luôn"? Ví dụ kì thế trời:|.
     
  10. Jin Axl

    Jin Axl > Draw 2 Life Moderator Lão Làng GVN

    Tham gia ngày:
    2/3/06
    Bài viết:
    8,246
    Nơi ở:
    Over the rainbow
    Vì ông VM nói ko rõ. Ý ổng là khi cast spell lên target đồng thời có thêm 1 hiệu ứng nào đấy.
    Thí dụ : Helllfire - mỗi khi caster niệm phép sẽ có 20% chance gây nổ 400 AoE xung quanh với 100 dmg. Khi Hellfire xuất hiện caster sẽ mất 50 Mana.

    @Dùng Dummy unit cast thêm spell thôi \m/
     
  11. virtualman

    virtualman Trùm Design GVN Lão Làng GVN

    Tham gia ngày:
    15/8/06
    Bài viết:
    3,951
    Nơi ở:
    Ha Noi, Vietnam,
    À nhầm nhìn lại hết leak :'>
    Thì skill là như WarStomp vậy, khi xài ko chỉ xung quanh stun mà còn bị poison chẳng hạn :|
     
  12. ShadowThanatos

    ShadowThanatos -|--Soul Reaper--|-

    Tham gia ngày:
    23/2/09
    Bài viết:
    2,119
    Nơi ở:
    Horror Depht
    Poison kiểu nào? Như skill Shadow Strike hay như envenom Weapon?. Nếu như shadow strike thì pick enemy đứng gần trong 1 phạm vi nhất định, tạo dummy ngay vị trí người cast rồi order cho nó (dummy ấy) cast shadow strike vào mấy con được picked. Còn nếu như envenom weapon thì cho dummy nó attack (dummy phải có skill envenom weapon).
     
  13. virtualman

    virtualman Trùm Design GVN Lão Làng GVN

    Tham gia ngày:
    15/8/06
    Bài viết:
    3,951
    Nơi ở:
    Ha Noi, Vietnam,
    Tớ gà lắm, làm cái spell demo đc ko :'>
     
  14. ShadowThanatos

    ShadowThanatos -|--Soul Reaper--|-

    Tham gia ngày:
    23/2/09
    Bài viết:
    2,119
    Nơi ở:
    Horror Depht
    Ờ, có gì rảnh thì làm, bây giờ phải học bài mai thi
     
  15. virtualman

    virtualman Trùm Design GVN Lão Làng GVN

    Tham gia ngày:
    15/8/06
    Bài viết:
    3,951
    Nơi ở:
    Ha Noi, Vietnam,
    :'> Viết tạm cái trigger ra cũng đc :'>
     
  16. ShadowThanatos

    ShadowThanatos -|--Soul Reaper--|-

    Tham gia ngày:
    23/2/09
    Bài viết:
    2,119
    Nơi ở:
    Horror Depht
    Đây, 2 spell co dummy mà mình nói (Poison Attack và shadow Strike). Tiện thể chỉ cho các bạn newbie lun ;));))
    Spell: Poisonous Gale
    Stun mấy enemy đứng kế bên rồi shadow strike bọn nó
    [​IMG]
    Mã:
    Poisonous Gale
        Events
            Unit - A unit Starts the effect of an ability
        Conditions
            (Ability being cast) Equal to Poisonous Gale 
        Actions
            Set PoiCaster = (Triggering unit)
            Set PoiIndex = (PoiIndex + 1)
            Set PoiLevel[PoiIndex] = (Level of Poisonous Gale  for PoiCaster)
            Set PoiGroup[PoiIndex] = (Units within 400.00 of (Position of PoiCaster) matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is dead) Equal to False) and (((Matching unit) belongs to an enemy of (O
            Unit Group - Pick every unit in PoiGroup[PoiIndex] and do (Actions)
                Loop - Actions
                    Unit - Create 1 Dummy Unit 2 for (Owner of PoiCaster) at (Position of PoiCaster) facing Default building facing degrees
                    Unit - Add Vine Poison  to (Last created unit)
                    Unit - Set level of Vine Poison  for (Last created unit) to (Level of Poisonous Gale  for PoiCaster)
                    Unit - Order (Last created unit) to Night Elf Warden - Shadow Strike (Picked unit)
                    Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            Set PoiLevel[PoiIndex] = PoiLevel[(PoiIndex + 1)]
            Set PoiGroup[PoiIndex] = PoiGroup[(PoiIndex + 1)]
            Set PoiIndex = (PoiIndex - 1)
            Custom script:   call DestroyGroup (udg_PoiGroup[udg_PoiIndex])
    Giải thích nhé, biến PoiCaster là để xác định người cast spell này, PoiLevel là level của skill này (đặc làm biến trứoc vì để nếu có làm những con số như damage, distance hay gì đó thì mình sẽ ấn nhanh hơn, đỡ mỏi tay). PoiGroup là dùng để "chọn" ra những unit tuy theo cái condition mà mình đặc ra. Ở đây, mình cho nó là: không phải là nhà, không phải là unit đang được kháng phép, unit đó chưa chết và nó là đối thủ của mình (như thế thì số dummy tạo ra sẽ không bị dư thừa, ít leak hơn. Mà thật ra tớ còn đặc thiếu condition như unit đó không bị hide,v...vv. Phần này các bạn có thể thêm condition tùy thích để phù hợp với spell của mình)
    Sau khi cọn xong, ở phần loop action, những action mà các bạn thêm vào đây sẽ tác động lên từng unit bị chọn (VD: tạo effect thunder clap trong phần loop action này thì mỗi unit bị chọn tương đương với 1 effect thunder clap => 6 picked unit = 6 effect thunder clap)
    Ở trong trigger này, mình tạo ra các dummy, add spell vào cho nó, set level cho spell bằng với level của spell chính (Poisonous Gale) rồi order cho nó cast vào từng picked unit. Add thêm timed life cho nó để kill dummy sau khi sử dụng xong (remove leak)
    Phần này:
    Mã:
    Set PoiLevel[PoiIndex] = PoiLevel[(PoiIndex + 1)]
            Set PoiGroup[PoiIndex] = PoiGroup[(PoiIndex + 1)]
            Set PoiIndex = (PoiIndex - 1)
    Là dùng để dẹp bớt variable (nghĩa là làm cho spell này MUI, thực ra, MUI là cho các biến có array và có PoiIndex tăng theo mỗi lần cast)
    Nói vậy thì thật là khó hiểu, để mình explain hơn 1 tý
    VD: Các bạn tạo 1 biến có tên là MyFood có array. Để set cho từng loại food của mình.
    Mã:
             Set MyFood[1] = Apple
             Set MyFood[2] = Banana
             Set MyFood[3] = Strawberries
    Và khi làm action như sau:
    Mã:
    Unit - Order MyMom to Night Elf Warden - Million Slice (MyFood[1])
    Trigger sẽ hiều rằng nó phải order MyMom để cast spell Million Slice vào Apple, khi tằng số này lên theo thứ tự từ 1 -> 3 thì nó sẽ order MyMom cast Million Slice vào Apple rồi đến Banana và Strawberies.
    Có nghĩa là, nếu như bạn cho 1 biến như mình ở phía trên (PoiLevel) có array là PoiIndex. PoiIndex tăng theo từng lần cast => Các action có PoiLevel sẽ được thực hiện 1 cách riêng biệt => Spell sẽ MUI
    Dẹp bớt là khi action của spell này đã được thực hiện hết (cứ hiểu là finished casting spell) thì trừ cái index xuống (nếu không thì 100 đứng cast thì có index là 100, sau đó thêm 1000 đứa khác cast thì index lại là 1100 và không bao giờ giảm xuống. Nếu như có thêm phần loại bới số như trên thì con số này sẽ quay lại là 0 sau khi tất cả các spell đã cast xong) BTW, phần này cũng quan trọng là làm để dừng 1 trigger có event là every x second (mình sẽ nói vào spell sau).

    Spell: Toxic Spread
    Tạo ra 1 làn khí độc bay ra từ caster, slow, deal damage per second vào mấy unit kế bên
    [​IMG]
    Trigger 1:
    Mã:
    Toxic Spread
        Events
            Unit - A unit Starts the effect of an ability
        Conditions
            (Ability being cast) Equal to Toxic Spread 
        Actions
            Set ToxCaster = (Triggering unit)
            Set ToxIndex = (ToxIndex + 1)
            Set ToxLevel[ToxIndex] = (Level of Toxic Spread  for ToxCaster)
            Set ToxDistance[ToxIndex] = 0.00
            Set ToxCount[ToxIndex] = 0
            Set ToxGroup[ToxIndex] = (Units within 400.00 of (Position of ToxCaster) matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is dead) Equal to False) and (((Matching unit) belongs to an enemy of (O
            Unit Group - Pick every unit in ToxGroup[ToxIndex] and do (Actions)
                Loop - Actions
                    Unit - Create 1 Dummy Unit for (Owner of ToxCaster) at (Position of (Picked unit)) facing Default building facing degrees
                    Unit - Add Normal Poison  to (Last created unit)
                    Unit - Set level of Normal Poison  for (Last created unit) to (Level of Toxic Spread  for ToxCaster)
                    Unit - Order (Last created unit) to Attack (Picked unit)
                    Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
    
    Trigger 1 thì cũng như trên thôi, như trigger của skill Poisonous Gale ấy.
    Trigger 2:
    Mã:
    Toxic Spread Effect
        Events
            Time - Every 0.04 seconds of game time
        Conditions
        Actions
            For each (Integer A) from 1 to ToxIndex, do (Actions)
                Loop - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            ToxDistance[(Integer A)] Greater than or equal to 375.00
                        Then - Actions
                            Custom script:   call DestroyGroup (udg_PoiGroup[GetForLoopIndexA()])
                            For each (Integer B) from (Integer A) to (ToxIndex - 1), do (Actions)
                                Loop - Actions
                                    Set ToxLevel[(Integer A)] = ToxLevel[((Integer A) + 1)]
                                    Set ToxGroup[(Integer A)] = ToxGroup[((Integer A) + 1)]
                            Set ToxIndex = (ToxIndex - 1)
                        Else - Actions
                    Set ToxDistance[(Integer A)] = (ToxDistance[(Integer A)] + 30.00)
                    For each (Integer B) from 1 to 20, do (Actions)
                        Loop - Actions
                            Special Effect - Create a special effect at ((Position of ToxCaster) offset by ToxDistance[(Integer A)] towards ((360.00 / 20.00) x (Real((Integer B)))) degrees) using Abilities\Weapons\LocustMissile\LocustMissile.mdl
                            Special Effect - Destroy (Last created special effect)
    
    Đây là phần effect của skill này (1 loạt cái đỏ đỏ bay ra từ caster)
    Để làm 1 hiệu ứng gồm nhiều SFX được sắp xếp đều nhau thành 1 hình tròn thì ta làm 1 dòng như thế này
    Mã:
    For each (Integer B) from 1 to 20, do (Actions)
                        Loop - Actions
                            Special Effect - Create a special effect at ((Point của bạn) offset by Dítance bạn muốn towards [B]((360.00 / 20.00) x (Real((Integer B))))[/B] degrees) using Abilities\Weapons\LocustMissile
    Phần bôi đen mớ là wa trọng vì nó là cái angel sắp xếp các effect thành 1 hình tròn.
    Mã:
    ((360.00 / 20.00) x (Real((Integer B))))
    360 là 360 độ (1 vòng quay). Chia cho 20 nghĩa là sắp xếp đều cho 20 vị trí trong 1 vòng 360 độ đó. Nhân với loop interger (Ngay chỗ For each (Integer B) from 1 to 20, do (Actions) thì cái from 1 to 20 là 1 con số được tăng lên liên tục (1, 2, 3, 4,.....) Khi nhân với nó, effect sẽ được create trên số vòng đó ngược chiều khim đồng hồ (nếu nhân thêm với -1 thì xuôi theo kim đồng hồ).
    Map mình attach ở phía dưới, các bạn down về xem ;)
     

    Các file đính kèm:

  17. ducthai

    ducthai Donkey Kong

    Tham gia ngày:
    27/2/06
    Bài viết:
    334
    Nơi ở:
    Biên Hòa - Trảng Bom
    Thật ra là ko có Bug đâu bạn ơi , bạn hỉu nhầm roài (bạn chưa mở Object Editor ra sem roài[-X) nếu bạn mở ra xem sẽ thấy trong đó mình để Buff tác dùng trong 15s , bạn thấy khi buff damage ko tắt đc vì đó là do 30% Chance đó vì là spell khi attack thì có % chance buff damage nên 30% thì bạn đánh vài cái là ra rùi (mình cố ý để 30% để các bạn khi Test thì chỉ cần đánh 1 vài cái là thấy luôn chứ nếu sài trong Map thì chỉ nên để là 15% chance và buff tác dụng trong 5s thui ) . Nếu bạn ko tin thì có thể Test lại , đánh 1 con cho đến khi đc buff damage rùi chay đi chỗ khác ko đánh nữa chờ 15s coi thử có mất Buff ko b-) OK

    Uhm vốn tiếng anh của mình ko nhìu nên vít sai mọi người thông cảm hen :D (Hidden Strength)

    Mod cho hỏi sao giờ mình ko thể Rep cho bất kì ai đc là sao ??? , mình ko hỉu nó cứ hiền lên cái thông báo You have give out too much Reputation in the last 24 hours , try again later (mình thấy Shadow Thanatos Post bài có ích định Rep mà sao lại ko đc ???)
     
  18. virtualman

    virtualman Trùm Design GVN Lão Làng GVN

    Tham gia ngày:
    15/8/06
    Bài viết:
    3,951
    Nơi ở:
    Ha Noi, Vietnam,
    Thanatos có phải đúng tuổi đó ko mà sao giải thích chuyên môn quá :-?
     
  19. ShadowThanatos

    ShadowThanatos -|--Soul Reaper--|-

    Tham gia ngày:
    23/2/09
    Bài viết:
    2,119
    Nơi ở:
    Horror Depht
    Đúng tuổi rồi mà =_=, chẳng qua đọc khá nhiều tutorial bởi nhiều người quá (the helper, anh Tom,..v...v..) nên ngôn ngữ nó bị như vậy (mốt còn tính dịch bài làm 1 model effect đơn giản nữa nhưng chưa có thờ gian) =_=
    BTW, chẳng biết mình giải thích có đúng hay không. hiểu sao nói vậy thôi ^^
     
  20. WordEditor

    WordEditor C O N T R A

    Tham gia ngày:
    8/9/08
    Bài viết:
    1,509
    Nơi ở:
    Leaf Village
    Name Spell : Tùy độc giả :D
    Type : Target
    Mô tả : (Không biết phải tả như thế nào nữa :D), spell giống như "lôi điện trảm" của Yaiba :P
    Lv1 : 200 damage
    Lv1 : 400 damage
    Lv1 : 600 damage
    B1: Tạo 1 spell dạng target (lấy mẫu từ Storm Bolt)
    B2: Lập trigger
    Trigger1
    Mã:
        Events
            Unit - A unit Starts the effect of an ability
        Conditions
            (Ability being cast) Equal to Spell 
        Actions
            Set Caster = (Casting unit)
            Set Target = (Target unit of ability being cast)
            Set Integer = 0
            Unit - Pause Caster
            Unit - Pause Target
            Animation - Play Caster's attack slam animation
            Wait 0.10 seconds
            Special Effect - Create a special effect at (Position of Caster) using Abilities\Spells\Orc\MirrorImage\MirrorImageCaster.mdl
            Special Effect - Destroy (Last created special effect)
            Special Effect - Create a special effect attached to the weapon of Caster using Abilities\Weapons\PhoenixMissile\Phoenix_Missile.mdl
            Set Effect = (Last created special effect)
            Unit - Add Crow Form to Caster
            Unit - Turn collision for Caster Off
            Unit - Move Caster instantly to ((Position of Target) offset by 150.00 towards 90.00 degrees), facing 270.00 degrees
            Set Point2 = (Position of Caster)
            Set Point = (Point2 offset by 140.00 towards 0.00 degrees)
            Animation - Change Caster flying height to 600.00 at 0.00
            Unit - Remove Crow Form from Caster
            Animation - Change Caster's animation speed to 10.00% of its original speed
            Wait 1.50 seconds
            Animation - Change Caster's animation speed to 100.00% of its original speed
            Wait 0.20 seconds
            Animation - Change Caster flying height to 0.00 at 1000.00
            Trigger - Turn on Spell Move Caster <gen>
            Wait 0.50 seconds
            Trigger - Turn off Spell Move Caster <gen>
            Unit - Move Caster instantly to ((Position of Target) offset by 150.00 towards 90.00 degrees), facing 270.00 degrees
            Special Effect - Create a special effect at (Position of Target) using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
            Special Effect - Destroy (Last created special effect)
            Special Effect - Create a special effect at (Position of Target) using Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
            Special Effect - Destroy (Last created special effect)
            Unit - Cause Caster to damage Target, dealing (200.00 x (Real((Level of Spell  for Caster)))) damage of attack type Spells and damage type Normal
            Special Effect - Destroy Effect
            Unit - Unpause Caster
            Unit - Unpause Target
            Custom script:   call RemoveLocation(udg_Point)
    
    Mấy phần variables thì như bài của ducthai :P
    Animation: change animation speed và change flying height
    Change animation speed: thay đổi tốc độ cử động của unit (nhanh, chậm), giống vài cảnh quay chậm trong phim ấy :D
    Chang flying height: thay đổi độ cao của unit ( unit phải type fly ), những unit không thuộc type Fly thì phải add Ability Crow Form và Remove mới change flying height được :D
    Trigger2 ( Để off sẵn )
    Mã:
        Events
            Time - Every 0.01 seconds of game time
        Conditions
        Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    (Integer((Distance between (Position of Caster) and Point))) Less than or equal to 30
                Then - Actions
                    Set Integer = (Integer + 180)
                    Set Point = (Point2 offset by 140.00 towards (Real(Integer)) degrees)
                Else - Actions
                    Unit - Move Caster instantly to ((Position of Caster) offset by 20.00 towards (Angle from (Position of Caster) to Point) degrees)
    
    Map đã Attach ở dưới, các bạn down về xem, ai có gì thắc mắc xin hỏi ( giải thích hơi ít :D )
    ( Không post hình được vì mạng hơi....dỏm :( )
     

    Các file đính kèm:

Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này