Cách tạo 1 Spell Nova

  • Thread starter Thread starter rongdoVN
  • Ngày gửi Ngày gửi

rongdoVN

Space Marine Doomguy
Lão Làng GVN
Tham gia ngày
6/9/05
Bài viết
5,732
Reaction score
162,707
Mã:
Untitled Trigger 002
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Twisting Slash (Hero) 
    Actions
        Set Caster = (Triggering unit)
        Set CasLoc = (Position of (Triggering unit))
        Set Real = 0.00
        For each (Integer A) from 1 to 8, do (Actions)
            Loop - Actions
                Unit - Create 1 Dummy for (Owner of Caster) at CasLoc facing Default building facing degrees
                Unit - Turn collision for (Last created unit) Off
                Unit - Add Bladestorm to (Last created unit)
                Animation - Change (Last created unit)'s vertex coloring to (50.00%, 50.00%, 50.00%) with 50.00% transparency
                Unit - Order (Last created unit) to Orc Blademaster - Bladestorm
                Set LocOffset[(Integer A)] = (CasLoc offset by 700.00 towards Real degrees)
                Unit - Order (Last created unit) to Move To LocOffset[(Integer A)]
                Unit - Add a 6.00 second Generic expiration timer to (Last created unit)
                Unit - Cause Caster to damage circular area after 0.00 seconds of radius 300.00 at LocOffset[(Integer A)], dealing 300.00 damage of attack type Spells and damage type Normal
                Set Real = (Real + (360.00 / 8.00))
                Custom script:   call RemoveLocation (udg_LocOffset[bj_forLoopAIndex])
        Custom script:   call RemoveLocation (udg_CasLoc)

Đây là spell tạo 8 dummy samurai và lệnh cho dummy đó xài bladestorm thành 1 vòng tròn
vật liệu cần có :
dummy unit có abilities : locus, invulnerability . model samurai và ko attack
spell Twisting Slash (Hero) base từ spell bladestorm
các biến cần có : Caster(Unit);CasLoc(Point);Real(Real) ko có array
LocOffset(Point) có 1 array
nếu ko hiểu thì vào map demo có attach ở dưới mở ra mà xem
 
tiếp sau đây xin phép post skill mình vừa cải tiến ở cái trigger trên nha :D
mọi người xem đc thì dùng và có thể tự cái tiến thêm để trở thành spell của bạn đừng làm giống mình hơi bị gà đó :D
các biến : vẫn như cũ ko có gì mới chỉ việc cải tiến thôi
map có attach ở dưới mở ra xem và cái Dummy unit thì dùng chung ko sao hết à mà cái biến LocOffset có thể bỏ array cũng đc ko sao cả nếu bỏ array thì ngay chỗ LocOffset bỏ Integer A đi và sửa ở dòng
Custom Script: call RemoveLocatio(udg_LocOffset) là xong
Mã:
Two Wave
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Two Wave >>> base từ spell Fan of Knives
    Actions
        Set Caster = (Triggering unit) >>> casting unit cũng đc
        Set CasLoc = (Position of (Triggering unit))
        Set Real = 0.00
        For each (Integer A) from 1 to 8, do (Actions)
            Loop - Actions
                Unit - Create 1 Dummy for (Owner of Caster) at CasLoc facing Default building facing degrees
                Unit - Turn collision for (Last created unit) Off >>> để unit ko bị cản bởi các doodas hoặc các thứ khác
                Unit - Add Carrion Swarm to (Last created unit)
                Animation - Change (Last created unit)'s vertex coloring to (50.00%, 50.00%, 50.00%) with 50.00% transparency
                Set LocOffset[(Integer A)] = (CasLoc offset by 700.00 towards Real degrees)
                Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm LocOffset[(Integer A)]
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit) >>> sau 1s LastCreatedUnit sẽ mất
                Unit - Cause Caster to damage circular area after 0.00 seconds of radius 300.00 at LocOffset[(Integer A)], dealing 300.00 damage of attack type Spells and damage type Normal
                Set Real = (Real + (360.00 / 8.00))
                Custom script:   call RemoveLocation (udg_LocOffset[bj_forLoopAIndex])
        Custom script:   call RemoveLocation (udg_CasLoc)
        Wait 1.00 seconds
        Set Caster = (Triggering unit)
        Set CasLoc = (Position of (Triggering unit))
        Set Real = 0.00
        For each (Integer A) from 1 to 8, do (Actions)
            Loop - Actions
                Unit - Create 1 Dummy for (Owner of Caster) at CasLoc facing Default building facing degrees
                Unit - Turn collision for (Last created unit) Off
                Unit - Add Carrion Swarm to (Last created unit)
                Animation - Change (Last created unit)'s vertex coloring to (50.00%, 50.00%, 50.00%) with 50.00% transparency
                Set LocOffset[(Integer A)] = (CasLoc offset by 700.00 towards Real degrees)
                Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm LocOffset[(Integer A)]
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Cause Caster to damage circular area after 0.00 seconds of radius 300.00 at LocOffset[(Integer A)], dealing 300.00 damage of attack type Spells and damage type Normal
                Set Real = (Real + (360.00 / 8.00))
                Custom script:   call RemoveLocation (udg_LocOffset[bj_forLoopAIndex])
        Custom script:   call RemoveLocation (udg_CasLoc)
 
thanks và sẽ tiếp tục up spell mới trong ngày mai giờ về ngủ cái :;)
 
Ravage
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Ravage
Actions
Set unitVnb1 = (Triggering unit)
Set PointVnb1 = (Position of unitVnb1)
For each (Integer A) from 1 to 8, do (Actions)
Loop - Actions
Set PointVnb2 = (PointVnb1 offset by 300 towards ((Real((Integer A))) x 45.00)) degrees)
Unit - Create 1 Converse Dummy for (Owner of unitVnb1) at PointVnb1 facing Default building facing degrees
Set unitVnb11 = (Last created unit)
Unit - Add a 3.00 second Generic expiration timer to unitVnb11
Unit - Add Impale Dummy to unitVnb11
Unit - Set level of Impale Dummy for unitVnb11 to (Level of Ravage for unitVnb1)
Unit - Order unitVnb11 to Undead Crypt Lord - Impale PointVnb2

Custom script: call RemoveLocation( udg_PointVnb1 )
Custom script: call RemoveLocation( udg_PointVnb2 )

SPELL RAVAGE của tidehunter trong dota, biệt danh" "ngàn kim đâm đít"


Ravage
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Orb of Death
Actions
Set UnitSpecial1 = (Triggering unit)
Set UnitSpecial2 = (Target unit of abilities cast)
Set PointVnb1 = (Position of unitspec2)
For each (Integer A) from 1 to 2, do (Actions)
Loop - Actions
For each (Integer A) from 1 to 8, do (Actions)
Loop - Actions
Wait 0.50 second
Set PointVnb2 = (PointVnb1 offset by 300 towards ((Real((Integer A))) x 45.00)) degrees)
Unit - Create 1 Converse Dummy for (Owner of unitSpecial1) at PointVnb1 facing Default building facing degrees
Set unitVnb11 = (Last created unit)
Unit - Add a 3.00 second Generic expiration timer to unitVnb11
Unit - Add ShockWave Dummy to unitVnb11
Unit - Set level of ShockWave Dummy for unitVnb11 to (Level of orb of Death for unitSpec1)
Unit - Order unitVnb11 to Orc Tauren Chieftain - Shockwave PointVnb2
----------------------
Wait 3.00 Seconds

Custom script: call RemoveLocation( udg_PointVnb1 )
Custom script: call RemoveLocation( udg_PointVnb2 )

Ulti của Nightmare - NightKiller trong DDay , base Spell la storm BOlt
 
Nightmare hình như cast được cả xuống đất mà,base on carrion swarm đi.
 
hehehe xin post spell mới lên tự nghĩ ra ko chôm đâu :))
có map demo ở dưới mở ra mà xem
Mã:
Two Samurai Wave
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Two Samurai Wave 
    Actions
        Set TempUnit = (Triggering unit)
        Set TempLoc = (Position of (Triggering unit))
        Set TempLoc2 = (Target point of ability being cast)
        Unit - Hide TempUnit
        Unit - Create 1 Dummy for (Owner of TempUnit) at (TempLoc offset by 300.00 towards 180.00 degrees) facing 0.00 degrees >>> khoảng cách của thằng cast
        Set Dummy[1] = (Last created unit)
        Unit - Add Carrion Swarm to Dummy[1]
        Animation - Play Dummy[1]'s attack slam animation
        Unit - Order Dummy[1] to Undead Dreadlord - Carrion Swarm TempLoc2
        Unit - Cause TempUnit to damage circular area after 0.00 seconds of radius 300.00 at (Position of Dummy[1]), dealing 300.00 damage of attack type Spells and damage type Normal
        Wait 0.50 seconds
        Unit - Create 1 Dummy 1 for (Owner of TempUnit) at (TempLoc offset by 400.00 towards 0.00 degrees) facing 0.00 degrees
        Set Dummy[2] = (Last created unit)
        Unit - Add Carrion Swarm to Dummy[2]
        Animation - Play Dummy[2]'s attack slam animation
        Unit - Order Dummy[2] to Undead Dreadlord - Carrion Swarm TempLoc2
        Unit - Cause TempUnit to damage circular area after 0.00 seconds of radius 300.00 at (Position of Dummy[2]), dealing 300.00 damage of attack type Spells and damage type Normal
        Wait 1.00 seconds
        Unit - Unhide TempUnit
        Unit - Remove Dummy[1] from the game >>> hủy dummy unit sau khi dùng
        Unit - Remove Dummy[2] from the game>>>hủy dummy unit sau khi dùng
        Custom script:   call RemoveLocation (udg_TempLoc) >>> chống leak
        Custom script:   call RemoveLocation (udg_TempLoc2)>>> chống leak
 
1 spellmới nữa xuất hiện
tuy ko remove unit nhưng thôi kệ chả sao chủ yếu để mấy bạn xem thôi
xem đc thì +rep nhé :;)
Mã:
z36 Wave
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to 36 wave 
    Actions
        Set TempUnit = (Triggering unit)
        Set TempLoc = (Position of (Triggering unit))
        Set TempUnit2 = (Target unit of ability being cast)
        Set TempLoc2 = (Position of TempUnit2)
        Set Real = 0.00
        Unit - Hide TempUnit
        Unit - Move (Target unit of ability being cast) instantly to (TempLoc offset by 100.00 towards 0.00 degrees)
        For each (Integer A) from 1 to 36, do (Actions)
            Loop - Actions
                Unit - Create 1 Dummy for (Owner of TempUnit) at (TempLoc offset by 600.00 towards Real degrees) facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to Dummy[(Integer A)]
                Set Real = (Real + (360.00 / 36.00))
                Set Dummy[(Integer A)] = (Last created unit)
                Unit - Add Shockwave to Dummy[(Integer A)]
                Animation - Play Dummy[(Integer A)]'s attack slam animation
                Unit - Order Dummy[(Integer A)] to Orc Tauren Chieftain - Shockwave TempLoc2
        Wait 0.75 seconds
        Unit - Unhide TempUnit
        Custom script:   call RemoveLocation (udg_TempLoc)
        Custom script:   call RemoveLocation (udg_TempLoc2)
 
Thanks rồng nhìu nha :D
Hum wa mới hỏi spell nova xong :D
+ rep cho rồng nè :D
p/s: Ah mà hôm trước mình chơi map THiên thần và ác quỷ thấy có cái spell phóng ra đồng tiền như phi tinh cưu cung cũa đường môn trong võ lâm 1 ấy :D
Mà lạ là chơi ko tốn mana chỉ tốn tiền thôi =))
 
Pác Rồng Đỏ ơi , pác làm thế thì cho lun cái ảnh từng Spell đi , cho máy ngừoi gà như em từ từ học và nìhn cái nào đẹp chôm về . :(
 
Mã:
Untitled Trigger 002
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Twisting Slash (Hero) 
    Actions
        Set Caster = (Triggering unit)
        Set CasLoc = (Position of (Triggering unit))
        Set Real = 0.00
        For each (Integer A) from 1 to 8, do (Actions)
            Loop - Actions
                Unit - Create 1 Dummy for (Owner of Caster) at CasLoc facing Default building facing degrees
                Unit - Turn collision for (Last created unit) Off
                Unit - Add Bladestorm to (Last created unit)
                Animation - Change (Last created unit)'s vertex coloring to (50.00%, 50.00%, 50.00%) with 50.00% transparency
                Unit - Order (Last created unit) to Orc Blademaster - Bladestorm
                Set LocOffset[(Integer A)] = (CasLoc offset by 700.00 towards Real degrees)
                Unit - Order (Last created unit) to Move To LocOffset[(Integer A)]
                Unit - Add a 6.00 second Generic expiration timer to (Last created unit)
                Unit - Cause Caster to damage circular area after 0.00 seconds of radius 300.00 at LocOffset[(Integer A)], dealing 300.00 damage of attack type Spells and damage type Normal
                Set Real = (Real + (360.00 / 8.00))
                Custom script:   call RemoveLocation (udg_LocOffset[bj_forLoopAIndex])
        Custom script:   call RemoveLocation (udg_CasLoc)

Đây là spell tạo 8 dummy samurai và lệnh cho dummy đó xài bladestorm thành 1 vòng tròn
vật liệu cần có :
dummy unit có abilities : locus, invulnerability . model samurai và ko attack
spell Twisting Slash (Hero) base từ spell bladestorm
các biến cần có : Caster(Unit);CasLoc(Point);Real(Real) ko có array
LocOffset(Point) có 1 array
nếu ko hiểu thì vào map demo có attach ở dưới mở ra mà xem

nhận xét , sau khi cast xong ,nó để lại máy ku Dummy nằm vòng tròn :((
 
Remove dummy unit thì dùng add expired timer nha rong do ^^
 
anh rồng ơi ::) chỉ em cái spells như kiểu innujasa trong maptonghop ấy cái spell đầu tiên :o mà bắn ra chục cái shockway:o:;)
 
p/s: Ah mà hôm trước mình chơi map THiên thần và ác quỷ thấy có cái spell phóng ra đồng tiền như phi tinh cưu cung cũa đường môn trong võ lâm 1 ấy
Mà lạ là chơi ko tốn mana chỉ tốn tiền thôi
Mana cost = 0
Add [Gold < 0 ] cho [owner of triggering unit] khi unit cast phép
 
Back
Top