Mấy anh ơi em rất muốn tạo 1 spell có thể nói là hơi mới 1 chút(lạ mắt). Nhưng không biết rõ lắm về cách tạo cũng không biết nhiều về phần mềm World Editer. Các anh có thể hướng dẫn thật cụ thể cho em được không ạ. Nếu được thì em biết ơn mấy anh nhiều lắm. (càng cụ thể càng tôt mấy anh nhé) À còn vụ này nữa, em thấy mấy anh ghi cái gì đó như thế này nè: function Trig_mega_crushing_wave_Conditions takes nothing returns boolean if ( not ( GetSpellAbilityId() == 'sk07' ) ) then return false endif return true endfunction function casmega takes nothing returns nothing local timer t = GetExpiredTimer() local unit dum = GHUnit( t, "dummy") local unit cas = GHUnit( t, "caster") call SetUnitPositionLocFacingBJ( dum, GetRandomLocInRect(RectFromCenterSizeBJ(GetUnitLoc (cas), 250.00, 250.00)), GetUnitFacing(cas) ) call IssuePointOrderLocBJ( dum, "carrionswarm", PolarProjectionBJ(GetUnitLoc(dum), 256, GetUnitFacing(cas)) ) endfunction function Trig_mega_crushing_wave_Actions takes nothing returns nothing local unit dum local timer t local unit cas local location loc local location casloc = GetUnitLoc(GetSpellAbilityUnit()) set t = CreateTimer() set cas = GetSpellAbilityUnit() call SHHandle(t , "caster" , cas ) set loc = GetSpellTargetLoc() call CreateNUnitsAtLoc( 1, 'hgyr', GetOwningPlayer(cas), GetUnitLoc(cas), DistanceBetweenPoints(GetUnitLoc(cas), loc) ) set dum = GetLastCreatedUnit() call SHHandle(t , "dummy" , dum ) call UnitAddAbilityBJ( 'ACc3', dum ) call SetUnitVertexColorBJ( dum, 100, 100, 100, 100.00 ) call TimerStart(t , 0.03 , true , function casmega ) call TriggerSleepAction(1.3) call FHL(t) set cas = null set t = null set casloc = null set loc = null call RemoveUnit( dum ) set dum = null call RemoveLocation( loc ) call RemoveLocation( casloc ) call DestroyTimer( t ) endfunction //================================================== ========================= function InitTrig_mega_crushing_wave takes nothing returns nothing set gg_trg_mega_crushing_wave = CreateTrigger( ) call TriggerRegisterAnyUnitEventBJ( gg_trg_mega_crushing_wave, EVENT_PLAYER_UNIT_SPELL_EFFECT ) call TriggerAddCondition( gg_trg_mega_crushing_wave, Condition( function Trig_mega_crushing_wave_Conditions ) ) call TriggerAddAction( gg_trg_mega_crushing_wave, function Trig_mega_crushing_wave_Actions ) endfunction Cái ngôn ngư đó dùng để lam gì và có thể chèn vào đau ạ.Ví dụ như mún tạo 1 spell như thế này thì phai làm j` ạ . Đây nữa ạ Càng cụ thể cang tốt nha mấy anh :'>:'>
Cái Mà Bạn Nói Tụi Mình Hay Viết Đó Là "Jass". Mà Muốn Hiểu Được Jass Trước Hết Bạn Hãy Làm Quen Với Trigger Cái Đã. Trigger Là Cái Phần F4 Trong World Editor Ấy.
Nếu mình nhìn không lầm, spell ấy trên hive có và nó được làm bằng GUI. Theo bản thân mình (mình thui à nha), thì nên biết cách làm spell = GUI trước rùi hẵng học cách làm spell = Jass
Thế thì anh ơi, anh hướng dẫn thật cụ thể cách làm 1 spell = GUI di (spell đơn giản cũng được nhưng lạ mắt chút hen) .Càng cụ thể càng tốt mấy anh nhá
thế chú em bik trigger là gì chưa? và Variable là gì chưa? và bik sử dụng Event, Conditon, Action trong Trigger chưa ?
Mình up cái map với mấy cái spell lặc vặt mình làm = GUI hết (lạ hay ko thì tùy bạn). bạn cố gắn mò mẫm suy ngẫm nhé (vì đa phần nhưng người đam mê làm map thì họ luôn luôn mò, tìm kiếm từ nhưng spell, map của người khác. Theo mình thì bạn nên: 1. Tìm hiểu phần Object Editor (hãy thử làm vài spell đơn giản bằng cách create custom spell và thêm thắt các hiệu ứng mới) 2. Học cách import các lại thứ khác nhau (Model, Icon, Skin và nhất là spell) 3. Bắc đầu tím hiểu Trigger (hay còn gọi là GUI). Đọc và hỉu các lệnh khác nhau từ event, Condition -> Action Làm xong 3 bước này thì bạn sẽ dễ dàng làm spell hơn (nhất là hiểu các lệnh) 4. học Jass (mình have no idea với cái này) Cái map mình import dưới đây, tự mà tìm hiểu nhé
Down xong giai nen roi vut vao folder map trong warcraft. Mở warcraft ra test các skill trong map đó rồi mở World Editor (WE) ra. Xem coi cách làm các skill đó trong trigger. Các dummy, báe spell, dummy spell. Đơn giản vậy thôi