Topic hỏi đáp cho anh em (Về cách làm map)

Status
Không mở trả lời sau này.
Jass thì phải rõ ràng trong sáng vào mới giúp được...chứ loạn giang hồ thế này thì,,,
Không khác convert từ GUI sàn là bao, sao tận dụng được sức mạnh của nó.

function Trig_TimeStop_Copy_Conditions takes nothing returns boolean
if ( not ( GetSpellAbilityId() == 'A01D' ) ) then
return false
endif
return true
endfunction

Thay bằng:

private function condition takes nothing returns boolean
return GetSpellAbilityId() == 'A01D'
endfunction

Hạn chế dùng các lệnh có hậu tố BJ...BJ sẽ gọi 1 function khác để thực thi nó..**** chỉ dành cho GUI.
ForGroup(g, function)

PauseUnit(unit, boolean)

Các spell dạng như này rất ko nên dùng PolledWait or Sleep...Hãy dùng timer...Hoặc ko thì khả năng crash là rất lớn.

Các function c1-4 hoàn toàn làm cho code thêm rối rắm.
Group destroy xong phải null
 
Thế lắp cái cooldownTimer ở đâu?, con` cái c1 -4 tính sao?
 
A` mà sao copy cái private vao` no bao lỗi dậy?(cosntant\private\public function co khác ji` nhau???)
 
À quên...bạn ko dùng vjass thì bỏ cái private đi...
 
Cho mình hỏi muốn làm cho bọn quái đi thành cửa như DDay thì phải làm thế nào?
 
cho mình hỏi, làm thế nào tạo được cái trigger như vậy:
MaxExcalibur.jpg
 
cho em hoi làm thế nào tạo skill cho cây mọc thành vòng tròn quanh 1 điểm kiểu để nhốt người í::)
 
Mã:
function Trig_Sprout_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'A073'        
endfunction

function Trig_Sprout_Actions takes nothing returns nothing
    local destructable array D
    local integer i = 1
    local location l = GetUnitLoc(GetTriggerUnit())    
    call CreateFogModifierRadiusLoc( GetOwningPlayer(GetTriggerUnit()), FOG_OF_WAR_VISIBLE, l, 1000.00,true, true )
    call RemoveLocation(l)
    set l = GetUnitLoc(GetSpellTargetUnit())
    loop
        exitwhen i > 8
        call CreateDestructableLoc( 'LTlt', PolarProjectionBJ(l, 130.00, ( i * 45.00 )), GetRandomDirectionDeg(), 1, 0 )
        set D[i] = GetLastCreatedDestructable()
        set i = i + 1
    endloop
    call TriggerSleepAction( ( 2.00 + I2R(GetUnitAbilityLevelSwapped('A073', GetTriggerUnit())) ) )    
    set i = 1
    loop
        exitwhen i > bj_forLoopAIndexEnd
        call KillDestructable( D[i] )
        set i = i + 1
    endloop
    call DestroyFogModifier( GetLastCreatedFogModifier() )
    call TriggerSleepAction( 3.00 )
    set i = 1    
    loop
        exitwhen i > 8
        call RemoveDestructable( D[i] )
        set D[i] =null
        set i = i + 1
    endloop
    call RemoveLocation(l)
    set l = null
endfunction

//===========================================================================
function InitTrig_Sprout takes nothing returns nothing
    set gg_trg_Sprout = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_Sprout, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_Sprout, Condition( function Trig_Sprout_Conditions ) )
    call TriggerAddAction( gg_trg_Sprout, function Trig_Sprout_Actions )
endfunction
trong đó A073 là skill trói base từ channel hoặc cái gì đó target 1 mục tiêu nhưng xóa hết affect damage... đi
 
Làm ơn ghi rõ nguồn bạn ới.....::)
 
Các anh cho em hỏi làm sao để làm 1 Trigger để khi đối phương đánh miss thì trên đầu đối tượng bị đánh miss hiện ra chữ "Evade" hay "Dodge" ? Và cho em hỏi trong mục Ability, những ability item nào không hiện ra icon ? Em chỉ biết có 2 cái là Item Armor Bonus và Item Damage Bonus. Cám ơn các anh nhiều.
 
:D Các bác có thể giúp em chuyện này một chút không: Làm sao để sửa Icon map bên ngoài và lúc loading screen,cách chỉnh sửa màu của chữ ? và trong cái '' Create a special effect attached to th overhead of (Triggering unit) using...... '', ngoài overhead thì còn chỗ nào khác nữa ( chỉ mới tìm được foot với head thôi :D ) và nếu đc thì các bác chỉ em cách tự tao icon cho unit và cách Import icon đó vào nhé. :D :D
 
cheat(thân),origin( dưới chân),hand(tay) [right,left],weapon
 
Thế chom mình hỏi làm thế nào khi đánh địch thì số lượng damage gây ra cho địch bị hiện trên đầu địch như map tổng hợp vậy?
 
làm 3 trigger :
Event:
Time - 0.1 s
Cond : null
Action:
bạn tạo 1 varible type group rồi set group đó = tất cả unit trên map

trigger 2 :
Event: A Unit Enter Playable Map Area ( chắc vậy)
Cond : nếu hok phải unit trong cai group kia == true
Action :
add trigger unit to [group]
add event to trigger 3 ( loai event 1 unit bi dam)

trigger 3 :
Event : null
Cond : null
Action :
.... thực hiện những điều với bạn cần

ở trigger 3 tương đương với cái action của even Genic Unit Damage , còn muốn hiện dam thì bạn cho cái TextTag là xong

varible group type group
trigger unit = thằng bị damage
DamageSco.... = thằng thực hiền dam

ps : nguồn từ Mod
 
Cài đặt WarcraftIIIArtTools1.01 có cần gì nữa không mà sao em cài không được??? :-/ Help me!
 
Cài đặt WarcraftIIIArtTools1.01 có cần gì nữa không mà sao em cài không được??? :-/ Help me!

Cần 3ds Max 5.
Tool ấy chỉ dành cho dân chuyên về đồ họa 3 D.. chưa biết gì thì gắng làm mấy cái đơn giản trước đi.
 
cho mình hỏi, làm thế nào tạo được cái trigger như vậy:
MaxExcalibur.jpg

Excalibur của saber :)), cái này cần dùng 1 dummy có model level up, rồi xoay ngang nó ra :D. Lúc nào cast thì cho phép shockwave bt vào, rồi ném con dummy này vào lấy gfx.
 
lượng damage gây ra hiện lên đầu làm dễ lắm nhưng có 1 vấn đề là nếu khi hero địch đánh nhau với nature creep chẳng hạn thì vẫn hiện số ===> biết vị trí của nó rồi ww vào kill nó như chơi, trong map Blade Vs Demon của tôi đã thử và ngay lập tức phải xóa đi ...
 
Zek update lại cái link EWA đi kìa...tiện đây hỏi anh mod có được hem..map hay vầy mà để chìm uổng quá :D
 
Cho em hỏi làm sao để làm trigger mà khi cast spell thì nó kéo unit từ xa lại gần mình. :-/ ( hy vọng trigger đừng phức tạp quá :D )
 
Status
Không mở trả lời sau này.
Back
Top