+ Reply to Thread
Page 3 of 49 FirstFirst 1234513 ... LastLast
Results 21 to 30 of 484
  1. #21
    Celizus

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Meet Hook ทำเองครับ รู้สึกว่าเคยลงที่บอร์ดไปแล้วครั้งนึง :013:

  2. #22
    konlhon

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Quote Originally Posted by Celizus
    Meet Hook ทำเองครับ รู้สึกว่าเคยลงที่บอร์ดไปแล้วครั้งนึง :013:
    ออนเอ็มหน่อยก็ดีนะ

    คุณ 9 ด้วย

  3. #23
    Celizus

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Quote Originally Posted by konlhoN
    ออนเอ็มหน่อยก็ดีนะ

    คุณ 9 ด้วย
    ผมหนีแฟนเพื่อนอยู่ครับ ถามอย่างนึงหน่อยนะครับ เวลาเล่น MSN แล้ว Block อีกฝั่งจะเห็นเราว่า Block ปะอ่ะ ไม่กล้า Block เด๋วโดนเชือดคอ ปกติก็ออนแบบ Offline หน่ะครับ โทดที :012: :012:

    Best's edit : เห็นครับถ้าเค้าใช้โปรแกรม ถ้าไม่ใช่เด็กคอม ก็คงไม่เป็นไร

  4. #24
    Celizus

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Skill Black Hole (Enigma in DotA)
    Difficulty : Hard
    Dummy Skill : AOE Target


    Variables

    Caster - Unit
    CastPoint - Point
    Countdown - Real (Value = 4.00)
    MovePoint - Point
    TempGroup - Unit Group
    UnitPoint - Point


    Untitled Trigger 001
    Events
    Unit - A unit Spawns a summoned unit
    Conditions
    (Unit-type of (Summoned unit)) Equal to Black Hole
    Actions
    Set Caster = (Summoning unit)
    Set CastPoint = (Position of (Summoned unit))
    Trigger - Turn on Untitled Trigger 002 <gen>

    Untitled Trigger 002
    Events
    Time - Every 0.03 seconds of game time
    Conditions
    Actions
    Set TempGroup = (Units within 400.00 of CastPoint matching (((Owner of (Matching unit)) is an enemy of (Owner of Caster)) Equal to True))
    Unit Group - Pick every unit in TempGroup and do (Actions)
    Loop - Actions
    Set UnitPoint = (Position of (Picked unit))
    Set MovePoint = (UnitPoint offset by 1.00 towards (Angle from UnitPoint to CastPoint) degrees)
    Unit - Move (Picked unit) instantly to MovePoint
    Custom script: call RemoveLocation(udg_MovePoint)
    Custom script: call RemoveLocation(udg_UnitPoint)

    Untitled Trigger 003
    Events
    Unit - A unit Stops casting an ability
    Conditions
    (Ability being cast) Equal to Black Hole
    Actions
    Unit Group - Pick every unit in TempGroup and do (Actions)
    Loop - Actions
    Unit - Cause Caster to damage (Picked unit), dealing (20.00 + (40.00 x (Real((Level of Black Hole for Caster))))) damage of attack type Spells and damage type Normal
    Custom script: call RemoveLocation(udg_MovePoint)
    Set Caster = No unit
    Custom script: call DestroyGroup(udg_TempGroup)
    Trigger - Turn off Untitled Trigger 002 <gen>

  5. #25
    konlhon

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Quote Originally Posted by Celizus
    ผมหนีแฟนเพื่อนอยู่ครับ ถามอย่างนึงหน่อยนะครับ เวลาเล่น MSN แล้ว Block อีกฝั่งจะเห็นเราว่า Block ปะอ่ะ ไม่กล้า Block เด๋วโดนเชือดคอ ปกติก็ออนแบบ Offline หน่ะครับ โทดที :012: :012:

    Best's edit : เห็นครับถ้าเค้าใช้โปรแกรม ถ้าไม่ใช่เด็กคอม ก็คงไม่เป็นไร
    เห่อๆ สมัครเมล์ใหม่ ไม่ก็ใช้ อีกโปรแกรมที่คล้ายๆ เอ็มเอสเอ็นอ่ะ

  6. #26
    blacklight

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Let me show burrow strike.
    Difficulty : Quite Easy
    Events
    - Unit - A unit Starts the effect of an ability

    Conditions
    - [Ability being cast] Equal to Burrow Strike

    Actions
    - Set caster = [Casting unit]
    - Set castingPoint = [Target point of ability being cast]
    - Wait [[Distance between [Position of caster] and castingPoint] / 3000]seconds
    - Unit - Move caster instantly to castingPoint
    - Set caster = No unit

    ที่ทำให้Waitยุ่งยากเพื่อทำให้Waveไม่ไกลเกินจากจุดที่เราเลือกยิงWaveมากนักไม่งั้นมันจะมุดไปนิดเดียวแต่Waveยาวเป็นงูเลย

  7. #27
    Divinity[Best]

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    This topic is pinned.

  8. #28
    zergevil

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    หุหุ ดีครับดี
    แมฟที่ทำอยู่ ติดปัญหานิดนึง คือ เขียน ทริกเกอร์ให้แสดงพลังโจมตี(สกิลคำนวณ) แล้วมันก็ขึ้นอ่ะครับ (+875!) แบบนี้ ขึ้นที่หัวเป้าหมาย แต่...

    มันไม่หายอ่ะ ลอยอยู่อย่างนั้น ยิงใหม่ก็ลอยอยู่ เดินไป เจอ +875! 3-4 อันลอยอยู่อ่ะ ไม่ยอมหาย ขอวิธีแก้หน่อยจิ

  9. #29
    Divinity[Best]

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Blink Strike หายไปแหะ จะเอาลงก็เอาลงครับ ผมขี้เกียจทำใหม่

  10. #30
    Aries_tae

    Re: ### Warcraft Spell Book ### รวมวิธีการเขียน Skill ต่างๆ

    Chronosphere แบบ JASS ไม่ใช้ Global Variable

    Code:
    //=====Start Constant===============================================================
    //Here you can adjust this trigger to match your skill by change these cons function
    //==================================================================================
    
    constant function AbID_Chronosphere takes nothing returns integer
      return 'A001' //====change ability ID here
    endfunction
    
    constant function UnID_Dummy_Chronosphere takes nothing returns integer
      return 'h000' //====change Dummy Unit ID here
    endfunction
    
    constant function Real_Duration_Chronosphere takes nothing returns real
      return 5.30 //====change Spell Duration Here
    endfunction
    
    //=====End Constant=====
    
    //=====Unstop Unit Function=====
    function Trig_Chronosphere_UnStop_Func001B takes nothing returns boolean
      return ( GetFilterUnit() != GetTriggerUnit() )
    endfunction
    
    function Trig_Chronosphere_UnStop_Func001A takes nothing returns nothing
      call SetUnitTimeScalePercent( GetEnumUnit(), 100.00 )
      call PauseUnit( GetEnumUnit(), false )
    endfunction
    
    function Trig_Chronosphere_UnStop_Actions takes unit udp_Caster_Chronosphere, unit udp_Dummy_Chronosphere returns nothing
      call ForGroup( GetUnitsInRangeOfLocMatching(500.00, GetUnitLoc(udp_Dummy_Chronosphere), Condition(function Trig_Chronosphere_UnStop_Func001B)), function Trig_Chronosphere_UnStop_Func001A)
      set udp_Caster_Chronosphere = null
    endfunction
    
    //==============================
    
    //=====Stop Unit Function=====
    
    function Trig_Chronosphere_Stop_Func001Func001001003001 takes nothing returns boolean
      return ( GetFilterUnit() != GetTriggerUnit() )
    endfunction
    
    function Trig_Chronosphere_Stop_Func001Func001001003002 takes nothing returns boolean
      return ( GetUnitTypeId(GetFilterUnit()) != UnID_Dummy_Chronosphere() )
    endfunction
    
    function Trig_Chronosphere_Stop_Func001Func001001003 takes nothing returns boolean
      return GetBooleanAnd( Trig_Chronosphere_Stop_Func001Func001001003001(), Trig_Chronosphere_Stop_Func001Func001001003002() )
    endfunction
    
    function Trig_Chronosphere_Stop_Func001Func001A takes nothing returns nothing
      call SetUnitTimeScalePercent( GetEnumUnit(), 0.00 )
      call PauseUnit( GetEnumUnit(), true )
    endfunction
    
    function Trig_Chronosphere_Stop_Action takes unit udp_Caster_Chronosphere, unit udp_Dummy_Chronosphere returns nothing
      call ForGroup( GetUnitsInRangeOfLocMatching(500.00, GetUnitLoc(udp_Dummy_Chronosphere), Condition(function Trig_Chronosphere_Stop_Func001Func001001003)), function Trig_Chronosphere_Stop_Func001Func001A)
      set udp_Caster_Chronosphere = null
    endfunction
    
    //===========================
    
    //=====Main Actions Function=====
    function Trig_Chronosphere_Conditions takes nothing returns boolean
      if ( not ( GetSpellAbilityId() == AbID_Chronosphere() ) ) then
        return false
      endif
      return true
    endfunction
    
    function Trig_Chronosphere_Actions takes nothing returns nothing
      local unit udp_Caster_Chronosphere = GetTriggerUnit()
      local unit udp_Dummy_Chronosphere = CreateUnitAtLoc( GetOwningPlayer(udp_Caster_Chronosphere), UnID_Dummy_Chronosphere(), GetSpellTargetLoc(), bj_UNIT_FACING )
      call UnitApplyTimedLife( udp_Dummy_Chronosphere, 'BTLF', Real_Duration_Chronosphere() )
      call TriggerSleepAction( 0.30 )
      call SetUnitTimeScale( udp_Dummy_Chronosphere, 0.00 )
      loop
        if ( IsUnitDeadBJ(udp_Dummy_Chronosphere) == true ) then
          call Trig_Chronosphere_UnStop_Actions( udp_Caster_Chronosphere, udp_Dummy_Chronosphere)
          exitwhen true
        endif
        call Trig_Chronosphere_Stop_Action( udp_Caster_Chronosphere, udp_Dummy_Chronosphere)
        call TriggerSleepAction(0.15)
      endloop
      set udp_Caster_Chronosphere = null
      set udp_Dummy_Chronosphere = null
    endfunction
    
    //===========================================================================
    function InitTrig_Chronosphere takes nothing returns nothing
      set gg_trg_Chronosphere = CreateTrigger( )
      call TriggerRegisterAnyUnitEventBJ( gg_trg_Chronosphere, EVENT_PLAYER_UNIT_SPELL_EFFECT )
      call TriggerAddCondition( gg_trg_Chronosphere, Condition( function Trig_Chronosphere_Conditions ) )
      call TriggerAddAction( gg_trg_Chronosphere, function Trig_Chronosphere_Actions )
    endfunction
    Edit: แก้ไขไม่ให้ leak

Facebook Comments


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •