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

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

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

    zzchaolegionzz T.E.T.Я.I.S

    Tham gia ngày:
    27/9/07
    Bài viết:
    606
    Nơi ở:
    Black Parade
    ai giúp mình cái này với nha. giờ mình muốn 1 tringger như thê này. VD sau 10 phút vào game xuất hiện 3 -4 con ngựa chở hàng đỉ từ A> B. A và B là 2 địa điểm xuất phát và kết thúc. nếu trên quãng đường đi. đến B mà không ai đánh 3 4 con ngựa đó. thì nó xẽ biến mất. 3 -4 con ngựa đó là chở hàng như kiểu đi buôn á nếu chết sẽ rớt ra item VD hàng như kiểu con đường tơ lụa á: Thủy Tinh , Nước hoa..vv bán được là được . mà cả 2 team đều có thể đánh được nó để cướp ;)). ai giúp với nha
    còn cái vụ jass lỗi đó thì khỏi. bo trinnger vào map lỗi xong không load map đươc lun ;SS. sợ quá ra del tringger đi. vào lại load được :-j. sợ hết hồn :D
     
    Chỉnh sửa cuối: 2/7/11
  2. ZhengHe

    ZhengHe T.E.T.Я.I.S

    Tham gia ngày:
    4/1/09
    Bài viết:
    623
    Cho mình hỏi cách làm 1 skill = jass thế này: pick units trong range x (ví dụ là 300) rồi đóng băng (tương tự như stun) trong 5s nhưng trong 5s đó nếu bị đánh thì bỏ stun. Thanks

    Edit: Hỏi thêm 2 câu:
    - Cách đổi màu model. Mình muốn đổi màu model có sẵng của war3 thì làm cách nào?
    - Có system nào để học và tăng lvl của ability (ability trong spellbook) qua item ko? Trên hive có 1 cái nhưng chỉ add thêm chứ ko tăng lvl :(
     
    Chỉnh sửa cuối: 2/7/11
  3. AbCd112

    AbCd112 Youtube Master Race

    Tham gia ngày:
    21/6/11
    Bài viết:
    28
    Good có thể làm cái này chữ có màu giống màu mỗi player ko?!? Với lại đồng minh trong phạm vi 500 sẽ nhận được tiền và có hiện text là hỗ trợ : xxxxx ( XXX là đồng minh ) giống như của Dota là assintain gì đó :XX:
     
  4. goldviper

    goldviper Mario & Luigi Lão Làng GVN

    Tham gia ngày:
    7/1/10
    Bài viết:
    757
    Nơi ở:
    Tổ dân phố
    mình nghe mang máng giống Sleep của Dreadlord , ko biết có đúng ý bạn ko :-? còn nếu đúng thì việc phạm vi bn thì đơn giản rồi.
     
  5. nh0kl0ve14

    nh0kl0ve14 Youtube Master Race

    Tham gia ngày:
    17/6/10
    Bài viết:
    27
    1.Làm ơn chỉ mình cái teleport region đi từ điểm A sang B và từ B sang A, mình làm rồi mà bị crash quài.
    2.Sao mình dùng trigger để gán ability cho item và khi hero cầm item thì mấy cái ability nó nằm ở ability của hero chiếm hết skill của hero.
    Thanks nhiều.

    ---------- Post added at 21:21 ---------- Previous post was at 21:17 ----------

    àh còn 1 cái nữa mình tạo cái bảng multiboard xong thì mấy player không có màu toàn là chữ màu trắng không.
     
  6. Ryanpzo9

    Ryanpzo9 Donkey Kong

    Tham gia ngày:
    20/10/08
    Bài viết:
    326
    Anh Tom đâu rồi làm ơn cho em hỏi cái. Ngồi mần mãi mới làm đc cái MUI này thì giờ lại kẹt 1 tẹo với nó =.=! Tạm gọi skill đấy là Grand Storm Bolt. Cast vào 1 điểm thì sẽ có 1 cái búa bay từ chỗ con hero đến cái điểm đó. Chạm vào điểm đó thì stun tất cả unit trong 200 AoE. Khổ nỗi em nghĩ mãi mà ko hiểu sao nó bị cái lỗi như thế này lúc cái búa của con cast trước chạm vào mục tiêu thì cái búa đang bay của con cast sau bị ngừng lại (Nếu chỉ 1 con cast liên tục thì ko lỗi) (Xem clip lỗi bên dưới). Làm ơn chỉ dùm em cách fix.
    [video]http://www.youtube.com/watch?v=s2Z376OQuxo[/video]

    Và đây là 2 triggers:
    Mã:
    Grand Storm Bolt Main (Initially ON)
    
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        Or - Any (Conditions) are true
            Conditions
                (Ability being cast) Equal to Grand Storm Bolt 
                (Ability being cast) Equal to Dispel Magic (Neutral Hostile) (Neutral Hostile) //Cái này chỉ là skill để test với cooldown 0 :D
    Actions
        Set GrandSBCurrentIndex = (GrandSBCurrentIndex + 1)
        Set GrandSBCaster[GrandSBCurrentIndex] = (Casting unit)
        Special Effect - Create a special effect attached to the weapon of GrandSBCaster[GrandSBCurrentIndex] using Abilities\Weapons\Bolt\BoltImpact.mdl
        Special Effect - Destroy (Last created special effect)
        Set GrandSBCasterLoc[GrandSBCurrentIndex] = (Position of GrandSBCaster[GrandSBCurrentIndex])
        Set GrandSBPoint[GrandSBCurrentIndex] = (Target point of ability being cast)
        Set GrandSBDistance[GrandSBCurrentIndex] = (Distance between GrandSBCasterLoc[GrandSBCurrentIndex] and GrandSBPoint[GrandSBCurrentIndex])
        Set GrandSBAngle[GrandSBCurrentIndex] = (Angle from GrandSBCasterLoc[GrandSBCurrentIndex] to GrandSBPoint[GrandSBCurrentIndex])
        Unit - Create 1 Grand Storm Bolt Dummy for (Owner of GrandSBCaster[GrandSBCurrentIndex]) at GrandSBCasterLoc[GrandSBCurrentIndex] facing GrandSBAngle[GrandSBCurrentIndex] degrees
        Set GrandSBDummy[GrandSBCurrentIndex] = (Last created unit)
        For each (Integer A) from 1 to GrandSBCurrentIndex, do (Actions)
            Loop - Actions
                Custom script:   call RemoveLocation(udg_GrandSBCasterLoc[GetForLoopIndexA()])
                Custom script:   call RemoveLocation(udg_GrandSBPoint[GetForLoopIndexA()])
    
    Mã:
    Grand Storm Bolt Move (Initially ON)
    
    Events
        Time - Every 0.01 seconds of game time
    Conditions
    Actions
        For each (Integer A) from 1 to GrandSBCurrentIndex, do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        GrandSBDistance[(Integer A)] Greater than 40.00
                    Then - Actions
                        Set GrandSBDummyLoc = (Position of GrandSBDummy[(Integer A)])
                        Set GrandSBDummyLoc2 = (GrandSBDummyLoc offset by 10.00 towards (Facing of GrandSBDummy[(Integer A)]) degrees)
                        Set GrandSBDistance[(Integer A)] = (GrandSBDistance[(Integer A)] - 10.00)
                        Unit - Move GrandSBDummy[(Integer A)] instantly to GrandSBDummyLoc2
                        Custom script:   call RemoveLocation(udg_GrandSBDummyLoc)
                        Custom script:   call RemoveLocation(udg_GrandSBDummyLoc2)
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                GrandSBDistance[(Integer A)] Less than or equal to 40.00
                            Then - Actions
                                Set GrandSBDummyLoc = (Position of GrandSBDummy[(Integer A)])
                                Unit - Kill GrandSBDummy[(Integer A)]
                                Unit - Remove GrandSBDummy[(Integer A)] from the game
                                Special Effect - Create a special effect at GrandSBDummyLoc using Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
                                Special Effect - Destroy (Last created special effect)
                                Set GrandSBGroup[(Integer A)] = (Units within 250.00 of GrandSBDummyLoc matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) is Magic Immune) Not equal to True) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Own
                                Unit Group - Pick every unit in GrandSBGroup[(Integer A)] and do (Actions)
                                    Loop - Actions
                                        Set GrandSBGroupLoc = (Position of (Picked unit))
                                        Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\Bolt\BoltImpact.mdl
                                        Special Effect - Destroy (Last created special effect)
                                        Unit - Create 1 Grand Storm Bolt Cast Spell for (Owner of GrandSBDummy[(Integer A)]) at GrandSBDummyLoc facing Default building facing degrees
                                        Unit - Add a 0.10 second Generic expiration timer to (Last created unit)
                                        Unit - Set level of Grand Storm Bolt Dummy  for (Last created unit) to (Level of Grand Storm Bolt  for GrandSBCaster[(Integer A)])
                                        Unit - Set level of Grand Storm Bolt Dummy  for (Last created unit) to (Level of Dispel Magic (Neutral Hostile) (Neutral Hostile) for GrandSBCaster[(Integer A)])
                                        Unit - Order (Last created unit) to Neutral - Firebolt (Picked unit)
                                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                            If - Conditions
                                                ((Picked unit) has an item of type |cff00ff00Emblem of Grass|r) Equal to True
                                            Then - Actions
                                                Unit - Cause GrandSBCaster[(Integer A)] to damage (Picked unit), dealing 150.00 damage of attack type Spells and damage type Lightning
                                                Floating Text - Create floating text that reads (|cffc0c0c0+150!|r + <Empty String>) above (Picked unit) with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
                                                Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                                                Floating Text - Change (Last created floating text): Disable permanence
                                                Floating Text - Change the lifespan of (Last created floating text) to 3.00 seconds
                                                Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
                                            Else - Actions
                                Custom script:   call DestroyGroup(udg_GrandSBGroup[GetForLoopIndexA()])
                                Custom script:   call RemoveLocation(udg_GrandSBDummyLoc)
                                For each (Integer B) from (Integer A) to (GrandSBCurrentIndex - 1), do (Actions)
                                    Loop - Actions
                                        Set GrandSBCaster[(Integer A)] = GrandSBCaster[((Integer A) + 1)]
                                        Set GrandSBCasterLoc[(Integer A)] = GrandSBCasterLoc[((Integer A) + 1)]
                                        Set GrandSBDistance[(Integer A)] = GrandSBDistance[((Integer A) + 1)]
                                        Set GrandSBDummy[(Integer A)] = GrandSBDummy[((Integer A) + 1)]
                                        Set GrandSBGroup[(Integer A)] = GrandSBGroup[((Integer A) + 1)]
                                Set GrandSBCurrentIndex = (GrandSBCurrentIndex - 1)
                            Else - Actions
                    Else - Actions
    


    ---------- Post added at 23:16 ---------- Previous post was at 23:11 ----------

    Chết sao ko add đc video thế này... Anh xem tạm qua link youtube vậy: http://www.youtube.com/watch?v=s2Z376OQuxo
     
  7. hieu2525

    hieu2525 Mr & Ms Pac-Man

    Tham gia ngày:
    23/3/09
    Bài viết:
    111
    Nơi ở:
    HN
    Các anh cho em hỏi, khi em cóp trigger của Empowering Haste từ map khác sang, khi save lại thì nó bị lỗi này
    Mã:
    Line 10307: Unexpected "Haste initializer Init"
    
    Trigger:
    Mã:
    scope Empowering Haste initializer Init
    
    globals
    	private constant integer AbilId = 'A07B' // Enpowering Haste
    	private constant integer DumAbilId = 'A07A' // Empowering Haste Dummy
    	
    	private group G = null
    endglobals
    
    private function Effects takes nothing returns nothing
    	local unit u = GetEnumUnit()
    	local integer bonus = R2I(GetUnitAbilityLevel(u,AbilId)*.04*GetUnitMoveSpeed(u))
    	
        if GetWidgetLife(u)>.405 then
            call SetUnitAbilityLevel(u,DumAbilId,bonus+1)
        endif
        
        set u = null
    endfunction
    private function Update takes nothing returns nothing
    	call ForGroup(G,function Effects)
    endfunction
    private function Actions takes nothing returns nothing
    	local timer t
    	local unit u = GetTriggerUnit()
    	
    	if G==null then
    		set G = CreateGroup()
    		set t = CreateTimer()
    		call TimerStart(t,.5,true,function Update)
    	endif
    	call GroupAddUnit(G,u)
    	call UnitAddAbility(u,DumAbilId)
    endfunction
    
    private function Conds takes nothing returns boolean
    	if GetOwningPlayer(GetTriggerUnit())!=Player(15) and GetLearnedSkill()==AbilId and not IsUnitIllusion(GetTriggerUnit()) and GetUnitAbilityLevel(GetTriggerUnit(),AbilId)==1 then
    		call Actions()
    	endif
    	return false
    endfunction
    private function Init takes nothing returns nothing
    	local trigger t=CreateTrigger()
    	call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_HERO_SKILL)
    	call TriggerAddCondition(t,Condition(function Conds))
    	
    	call PreloadAbil(DumAbilId)
    endfunction
    
    endscope
    
     
  8. raivor

    raivor Dragon Quest Lão Làng GVN

    Tham gia ngày:
    24/7/09
    Bài viết:
    1,411
    1. Bạn thử nghĩ, nếu bạn làm 2 cái trigger, 1 có event như kiểu unit enter region 1, 1 có event kiểu unit enter region 2, tức là 2 cái này chạy độc lập, giả sử khi unit đi vào region 1, bạn move nó sang region 2, như vậy có nghĩa là unit lại enter region 2, nó lại bị move về region 1, mà khi enter về region 1, unit lại bị move sang region 2.......................................cho tới khi bạn thoát được game. Vậy phải giải quyết bằng cách nào? cái này tùy vào bạn >:D<.
    2. Ai lại dùng trigger gán ability cho item bao giờ, vào object editor gán không nhanh gấp tỉ lần à?


    Bạn biết sao nó bị lỗi không ?
    Tại vì spell của bạn chưa MUI đấy.
     
    Chỉnh sửa cuối: 3/7/11
  9. ZhengHe

    ZhengHe T.E.T.Я.I.S

    Tham gia ngày:
    4/1/09
    Bài viết:
    623
    @Hieu: Cái tên scope của bạn có khoảng cách nên nó ko hiểu thôi, chỉ cần đổi tên scope lại thành
    Mã:
    scope EmpoweringHaste initializer Init
    Tiện thể mình hỏi một câu: initializer trong scope dùng làm gì?? có thì được gì, ko có thì đc gì?
     
  10. DragonKai

    DragonKai Mr & Ms Pac-Man

    Tham gia ngày:
    10/2/11
    Bài viết:
    222
    Gui cũng làm được mà bạn à

    Trigger 1
    Mã:
     Event
                Every - Time 0.01 seconds ( thời gian ngựa ra)
              Action
                Creat Con ngựa to Player 12 trên region A
                Oder - Last creat unit group ( nếu creat nhiều con ) hoặc last creat unit ( nếu creat 1 con ) to region B
    Trigger 2
    Mã:
       Event
                  Unit- A unit enter region B
                Condistion
                  Unit type owen triggering equal to Con ngựa
                Action
                  Remove triggering from the game
    Trigger 3
    Mã:
      Event
                 A - unit die
               Condistion
                 Unit type of dying unit equal to Con ngựa
               Action
                  Item - Creat random item in level 1 ( level tùy nhớ chỉnh mấy item khác ở level đó về level khác ko trùng ráng chịu) 
     
  11. nhannhan027

    nhannhan027 Youtube Master Race

    Tham gia ngày:
    27/6/11
    Bài viết:
    16
    Cho mình hỏi làm thế nào để tạo một spell dạng như thế này :
    thằng unit đó tạo một quả cầu trên đầu để tấn công đối phương
    nếu unit chết thì quả cầu sẽ rơi xuong xuống và nổ
     
  12. nhims2heo

    nhims2heo Youtube Master Race

    Tham gia ngày:
    24/2/11
    Bài viết:
    63
    Ai làm đc cái duel giống nư trong map thiên kiếm của anh rex thì chỉ mình với.
    Đến giờ move tất cảc các hero lên đấu trường.
    Phân tích thắng bại = cách bên nào con hero sống sót cuối cùng.
    Hero sống sót sẽ đc move về vị trí cũ trước khị bị move lên duel.
    Hero chết sẽ trở về Region HeroRivve.
     
  13. Zaivato

    Zaivato Youtube Master Race

    Tham gia ngày:
    27/6/11
    Bài viết:
    13
    Mình nghĩ có khi nếu mà nó hiện cái chữ dummy unit như vầy :| thì mình nghĩ tốt nhất là thêm cái Triggering Change name của Player thành "Playername + (HeroName)" :D sau khi người chơi pick hero. Rồi trong cái Triggering hiện Text khi kill thì đổi lại là chỉ hiện tên Player thôi :)

    ---------- Post added at 10:35 ---------- Previous post was at 10:33 ----------

    quên ko quote
    @zzchaolegionzz:
     
  14. FlameDrake

    FlameDrake Dragon Quest

    Tham gia ngày:
    1/12/10
    Bài viết:
    1,298
    Nơi ở:
    Quận 10 HCM
    Pro nào xem dùm 3 cái LEAK ở đây, đặt đúng vị trí không, có " chừa lại " cái gì trong bộ nhớ ko dùm cái
    Mã:
    BX Trigger 1
        Events
            Unit - A unit Starts the effect of an ability
        Conditions
            (Ability being cast) Equal to BX_Spell
        Actions
            Set BX_Caster = (Casting unit)
            Set BX_Point[1] = (Position of BX_Caster)
            Set BX_Target = (Target point of ability being cast)
            Set BX_Angle = (Angle from BX_Point[1] to BX_Target)
            Set BX_Distance = 24.00
            Set BX_Dame = (((Real((Level of BX_Spell for BX_Caster))) x 30.00) + (2.00 x (Real((Agility of BX_Caster (Include bonuses))))))
            Animation - Play BX_Caster's Attack Walk Stand Spin animation
            Unit - Turn collision for BX_Caster Off
            Trigger - Turn on BX Trigger 2 <gen>
    

    Mã:
    BX Trigger 2
        Events
            Time - Every 0.02 seconds of game time
        Conditions
        Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    (Distance between BX_Point[1] and BX_Target) Greater than or equal to (BX_Distance / 2.00)
                Then - Actions
                    Set BX_Point[2] = (BX_Point[1] offset by BX_Distance towards BX_Angle degrees)
                    Unit - Move BX_Caster instantly to BX_Point[2]
                    Set BX_Point[1] = BX_Point[2]
                    Set BX_Group = (Units within 200.00 of (Position of BX_Caster) matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner of BX_Caster)) Equal to True) and (((Matching unit
                    Unit Group - Pick every unit in BX_Group and do (Actions)
                        Loop - Actions
                            Unit - Cause BX_Caster to damage (Picked unit), dealing BX_Dame damage of attack type Chaos and damage type Universal
                            Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
                            Special Effect - Destroy (Last created special effect)
                            Unit Group - Add (Picked unit) to BX_Group2
                            Custom script:   call DestroyGroup(udg_BX_Group)
                Else - Actions
                    Trigger - Turn off BX Trigger 2 <gen>
                    Unit - Turn collision for BX_Caster On
                    Animation - Reset BX_Caster's animation
                    Unit Group - Remove all units from BX_Group2
                    [I][COLOR="#FF0000"]Custom script:   call RemoveLocation(udg_BX_Target)
                    Custom script:   call RemoveLocation(udg_BX_Point[1])
                    Custom script:   call RemoveLocation(udg_BX_Point[2])[/COLOR][/I]
    
     
  15. Ryanpzo9

    Ryanpzo9 Donkey Kong

    Tham gia ngày:
    20/10/08
    Bài viết:
    326
    Mình nghĩ bạn đọc 2 cái code của mình còn chưa hiểu ý chứ :| Cái spell ấy mình đang cố làm theo kiểu MUI đấy nên nó mới lằng nhằng thế chứ ==! Chứ ko MUI thì cái búa thứ 1 nó còn chả move nổi sau khi cái thứ 2 đc cast cùng lúc ý :| Vấn đề là nó gặp tí rắc rối ở cái biến nào đấy mà khi đẩy dần giá trị index đi thì cái biến của index cũ hình như ko được nhận nữa :|

    ---------- Post added at 12:35 ---------- Previous post was at 12:33 ----------

    Cứ 0.02s nếu điều kiện đúng thì lại leak 2 phát thì phải :| 1s là đc 50 phát 8-}
     
  16. hieu2525

    hieu2525 Mr & Ms Pac-Man

    Tham gia ngày:
    23/3/09
    Bài viết:
    111
    Nơi ở:
    HN
    @ZhengHe: mình đang mò mẫm Jass nên ko biết gì hết trơn, sau khi mình sửa tên thì nó báo tiếp lỗi này
    Mã:
    Line 5781: Undeclared function PreloadAbil
        call PreloadAbil(EmpoweringHaste___DumAbilId)
    
    Trigger thì vẫn ở như trên, nhưng sao nó khó quá vậy T.T
     
  17. Ryanpzo9

    Ryanpzo9 Donkey Kong

    Tham gia ngày:
    20/10/08
    Bài viết:
    326
    @raigor: Cái Grand Storm Bolt của mình mình đã thử bỏ vài cái trigger đẩy index đi và kết quả là MUI hoạt động rất tốt. Nhưng hơi thắc mắc 1 tí là liệu bỏ cái đống đấy đi thì có để lại hậu quả gì trong tương lại ko...
    Mã:
    Grand Storm Bolt Move (Initially ON)
    
    Events
        Time - Every 0.01 seconds of game time
    Conditions
    Actions
        For each (Integer A) from 1 to GrandSBCurrentIndex, do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        GrandSBDistance[(Integer A)] Greater than 40.00
                    Then - Actions
                        Set GrandSBDummyLoc = (Position of GrandSBDummy[(Integer A)])
                        Set GrandSBDummyLoc2 = (GrandSBDummyLoc offset by 10.00 towards (Facing of GrandSBDummy[(Integer A)]) degrees)
                        Set GrandSBDistance[(Integer A)] = (GrandSBDistance[(Integer A)] - 10.00)
                        Unit - Move GrandSBDummy[(Integer A)] instantly to GrandSBDummyLoc2
                        Custom script:   call RemoveLocation(udg_GrandSBDummyLoc)
                        Custom script:   call RemoveLocation(udg_GrandSBDummyLoc2)
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                GrandSBDistance[(Integer A)] Less than or equal to 40.00
                            Then - Actions
                                Set GrandSBDummyLoc = (Position of GrandSBDummy[(Integer A)])
                                Unit - Kill GrandSBDummy[(Integer A)]
                                Unit - Remove GrandSBDummy[(Integer A)] from the game
                                Special Effect - Create a special effect at GrandSBDummyLoc using Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
                                Special Effect - Destroy (Last created special effect)
                                Set GrandSBGroup[(Integer A)] = (Units within 250.00 of GrandSBDummyLoc matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) is Magic Immune) Not equal to True) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Own
                                Unit Group - Pick every unit in GrandSBGroup[(Integer A)] and do (Actions)
                                    Loop - Actions
                                        Set GrandSBGroupLoc = (Position of (Picked unit))
                                        Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\Bolt\BoltImpact.mdl
                                        Special Effect - Destroy (Last created special effect)
                                        Unit - Create 1 Grand Storm Bolt Cast Spell for (Owner of GrandSBDummy[(Integer A)]) at GrandSBDummyLoc facing Default building facing degrees
                                        Unit - Add a 0.10 second Generic expiration timer to (Last created unit)
                                        Unit - Set level of Grand Storm Bolt Dummy  for (Last created unit) to (Level of Grand Storm Bolt  for GrandSBCaster[(Integer A)])
                                        Unit - Set level of Grand Storm Bolt Dummy  for (Last created unit) to (Level of Dispel Magic (Neutral Hostile) (Neutral Hostile) for GrandSBCaster[(Integer A)])
                                        Unit - Order (Last created unit) to Neutral - Firebolt (Picked unit)
                                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                            If - Conditions
                                                ((Picked unit) has an item of type |cff00ff00Emblem of Grass|r) Equal to True
                                            Then - Actions
                                                Unit - Cause GrandSBCaster[(Integer A)] to damage (Picked unit), dealing 150.00 damage of attack type Spells and damage type Lightning
                                                Floating Text - Create floating text that reads (|cffc0c0c0+150!|r + <Empty String>) above (Picked unit) with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
                                                Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                                                Floating Text - Change (Last created floating text): Disable permanence
                                                Floating Text - Change the lifespan of (Last created floating text) to 3.00 seconds
                                                Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
                                            Else - Actions
                                Custom script:   call DestroyGroup(udg_GrandSBGroup[GetForLoopIndexA()])
                                Custom script:   call RemoveLocation(udg_GrandSBDummyLoc)
                               [COLOR="#FF0000"] For each (Integer B) from (Integer A) to (GrandSBCurrentIndex - 1), do (Actions)
                                    Loop - Actions
                                        Set GrandSBCaster[(Integer A)] = GrandSBCaster[((Integer A) + 1)]
                                        Set GrandSBCasterLoc[(Integer A)] = GrandSBCasterLoc[((Integer A) + 1)]
                                        Set GrandSBDistance[(Integer A)] = GrandSBDistance[((Integer A) + 1)]
                                        Set GrandSBDummy[(Integer A)] = GrandSBDummy[((Integer A) + 1)]
                                        Set GrandSBGroup[(Integer A)] = GrandSBGroup[((Integer A) + 1)]
                                Set GrandSBCurrentIndex = (GrandSBCurrentIndex - 1)[/COLOR]                        Else - Actions
                    Else - Actions[COLOR="Silver"]
    
    [SIZE=1]---------- Post added at 12:49 ---------- Previous post was at 12:47 ----------[/SIZE]
    
    [/COLOR]Chết rồi viết thiếu 
    ... Ai sửa bài dùm em với...
     
  18. ZhengHe

    ZhengHe T.E.T.Я.I.S

    Tham gia ngày:
    4/1/09
    Bài viết:
    623
    @hieu: bạn chắc là đã import thêm mấy cái system mà spell cần ko??
    có thể map của bạn chưa có system nào đấy có hàm PreloadAbil() nên Jasshelper báo là hàm đó chưa được khai báo trước nên không thể xài.

    Ai hướng dẫn giúp cách xài TimerUtil, ví dụ = 1 spell dạng damage over timer hoặc slide gì đấy. Trong GUI thì xài timer khá đơn giản còn Jass thì phải dính với struct nên phức tạp hơn. Hỏi thêm về cái vụ method, static method trong jass luôn, 2 cái này có công dụng gì?
     
    Chỉnh sửa cuối: 3/7/11
  19. FlameDrake

    FlameDrake Dragon Quest

    Tham gia ngày:
    1/12/10
    Bài viết:
    1,298
    Nơi ở:
    Quận 10 HCM
    Vậy sửa thế nào, bạn đặt cho đúng vị trí, to đỏ giúp mình
     
  20. nhannhan027

    nhannhan027 Youtube Master Race

    Tham gia ngày:
    27/6/11
    Bài viết:
    16
    Cho mình hỏi làm sao để làm creeps xuất hiện kiểu như map tổng hợp đc không
     
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này