마법술 훈련 > 라죠 매크로

본문 바로가기

사이트 내 전체검색

뒤로가기 라죠 매크로

 

Enhanced Razor 마법술 훈련

페이지 정보

작성자 LastEnvoy 작성일 24-02-14 22:13 조회 46 댓글 1

본문

# 캐스팅 사이에 추가적인 지연 시간을 밀리초 단위로 입력하세요

additionalShardCooldown = 900


###################################

mageryTimerMilliseconds = 6500

meditationTimerMilliseconds = 8200


class SpellInfo:

    name = ''

    circle = 0

    reagents = []

    manaCost = 0.0

    minSkill = 0

    delayInS = 0.0

    delayInMs = 0


    def __init__ ( self, name, circle, manaCost, minSkill, delayInS, delayInMs ):

        self.name = name

        self.circle = circle

        self.manaCost = manaCost

        self.minSkill = minSkill

        self.delayInS = delayInS

        self.delayInMs = delayInMs


spells = {

    # First Circle

    'Clumsy': SpellInfo( 'Clumsy', 1, 4, 0.0, 0.5, 500 ),

    'Create Food': SpellInfo( 'Create Food', 1, 4, 0.0, 0.5, 500 ),

    'Feeblemind': SpellInfo( 'Feeblemind', 1, 4, 0.0, 0.5, 500 ),

    'Heal': SpellInfo( 'Heal', 1, 4, 0.0, 0.5, 500 ),

    'Magic Arrow': SpellInfo( 'Magic Arrow', 1, 4, 0.0, 0.5, 500 ),

    'Night Sight': SpellInfo( 'Night Sight', 1, 4, 0.0, 0.5, 500 ),

    'Reactive Armor': SpellInfo( 'Reactive Armor', 1, 4, 0.0, 0.5, 500 ),

    'Weaken': SpellInfo( 'Weaken', 1, 4, 0.0, 0.5, 500 ),


    # Second Circle

    'Agility': SpellInfo( 'Agility', 2, 6, 0.0, 0.75, 750 ),

    'Cunning': SpellInfo( 'Cunning', 2, 6, 0.0, 0.75, 750 ),

    'Cure': SpellInfo( 'Cure', 2, 6, 0.0, 0.75, 750 ),

    'Harm': SpellInfo( 'Harm', 2, 6, 0.0, 0.75, 750 ),

    'Magic Trap': SpellInfo( 'Magic Trap', 2, 6, 0.0, 0.75, 750 ),

    'Magic Untrap': SpellInfo( 'Magic Untrap', 2, 6, 0.0, 0.75, 750 ),

    'Protection': SpellInfo( 'Protection', 2, 6, 0.0, 0.75, 750 ),

    'Strength': SpellInfo( 'Strength', 2, 6, 0.0, 0.75, 750 ),


    # Third Circle

    'Bless': SpellInfo( 'Bless', 3, 9, 9.0, 1.0, 1000 ),

    'Fireball': SpellInfo( 'Fireball', 3, 9, 9.0, 1.0, 1000 ),

    'Magic Lock': SpellInfo( 'Magic Lock', 3, 9, 9.0, 1.0, 1000 ),

    'Poison': SpellInfo( 'Poison', 3, 9, 9.0, 1.0, 1000 ),

    'Telekinesis': SpellInfo( 'Telekinesis', 3, 9, 9.0, 1.0, 1000 ),

    'Teleport': SpellInfo( 'Teleport', 3, 9, 9.0, 1.0, 1000 ),

    'Unlock': SpellInfo( 'Unlock', 3, 9, 9.0, 1.0, 1000 ),

    'Wall of Stone': SpellInfo( 'Wall of Stone', 3, 9, 9.0, 1.0, 1000 ),


    # Fourth Circle

    'Arch Cure': SpellInfo( 'Arch Cure', 4, 11, 24.0, 1.25, 1250 ),

    'Arch Protection': SpellInfo( 'Arch Protection', 4, 11, 24.0, 1.25, 1250 ),

    'Curse': SpellInfo( 'Curse', 4, 11, 24.0, 1.25, 1250 ),

    'Fire Field': SpellInfo( 'Fire Field', 4, 11, 24.0, 1.25, 1250 ),

    'Greater Heal': SpellInfo( 'Greater Heal', 4, 11, 24.0, 1.25, 1250 ),

    'Lightning': SpellInfo( 'Lightning', 4, 11, 24.0, 1.25, 1250 ),

    'Mana Drain': SpellInfo( 'Mana Drain', 4, 11, 24.0, 1.25, 1250 ),

    'Recall': SpellInfo( 'Recall', 4, 11, 24.0, 1.25, 1250 ),


    # Fifth Circle

    'Blade Spirits': SpellInfo( 'Blade Spirits', 5, 14, 38.0, 6.0, 6000 ),

    'Dispel Field': SpellInfo( 'Dispel Field', 5, 14, 38.0, 1.5, 1500 ),

    'Incognito': SpellInfo( 'Incognito', 5, 14, 38.0, 1.5, 1500 ),

    'Magic Reflection': SpellInfo( 'Magic Reflection', 5, 14, 38.0, 1.5, 1500 ),

    'Mind Blast': SpellInfo( 'Mind Blast', 5, 14, 38.0, 1.5, 1500 ),

    'Paralyze': SpellInfo( 'Paralyze', 5, 14, 38.0, 1.5, 1500 ),

    'Poison Field': SpellInfo( 'Poison Field', 5, 14, 38.0, 1.5, 1500 ),

    'Summon Creature': SpellInfo( 'Summon Creature', 5, 14, 38.0, 6.0, 6000 ),


    # Sixth Circle

    'Dispel': SpellInfo( 'Dispel', 6, 20, 52.0, 1.75, 1750 ),

    'Energy Bolt': SpellInfo( 'Energy Bolt', 6, 20, 52.0, 1.75, 1750 ),

    'Explosion': SpellInfo( 'Explosion', 6, 20, 52.0, 1.75, 1750 ),

    'Invisibility': SpellInfo( 'Invisibility', 6, 20, 52.0, 1.75, 1750 ),

    'Mark': SpellInfo( 'Mark', 6, 20, 52.0, 1.75, 1750 ),

    'Mass Curse': SpellInfo( 'Mass Curse', 6, 20, 52.0, 1.75, 1750 ),

    'Paralyze Field': SpellInfo( 'Paralyze Field', 6, 20, 52.0, 1.75, 1750 ),

    'Reveal': SpellInfo( 'Reveal', 6, 20, 52.0, 1.75, 1750 ),


    # Seventh Circle

    'Chain Lightning': SpellInfo( 'Chain Lightning', 7, 40, 67.0, 2.0, 2000 ),

    'Energy Field': SpellInfo( 'Energy Field', 7, 40, 67.0, 2.0, 2000 ),

    'Flamestrike': SpellInfo( 'Flamestrike', 7, 40, 67.0, 2.0, 2000 ),

    'Gate Travel': SpellInfo( 'Gate Travel', 7, 40, 67.0, 2.0, 2000 ),

    'Mana Vampire': SpellInfo( 'Mana Vampire', 7, 40, 67.0, 2.0, 2000 ),

    'Mass Dispel': SpellInfo( 'Mass Dispel', 7, 40, 67.0, 2.0, 2000 ),

    'Meteor Swarm': SpellInfo( 'Meteor Swarm', 7, 40, 67.0, 2.0, 2000 ),

    'Polymorph': SpellInfo( 'Polymorph', 7, 40, 67.0, 2.0, 2000 ),


    # Eighth Circle

    'Earthquake': SpellInfo( 'Earthquake', 8, 50, 81.0, 2.25, 2250 ),

    'Energy Vortex': SpellInfo( 'Energy Vortex', 8, 50, 81.0, 2.25, 2250 ),

    'Resurrection': SpellInfo( 'Resurrection', 8, 50, 81.0, 2.25, 2250 ),

    'Summon Air Elemental': SpellInfo( 'Summon Air Elemental', 8, 50, 81.0, 2.25, 2250 ),

    'Summon Daemon': SpellInfo( 'Summon Daemon', 8, 50, 81.0, 2.25, 2250 ),

    'Summon Earth Elemental': SpellInfo( 'Summon Earth Elemental', 8, 50, 81.0, 2.25, 2250 ),

    'Summon Fire Elemental': SpellInfo( 'Summon Fire Elemental', 8, 50, 81.0, 2.25, 2250 ),

    'Summon Water Elemental': SpellInfo( 'Summon Water Elemental', 8, 50, 81.0, 2.25, 2250 )

}


def TrainMagery():


    global mageryTimerMilliseconds

    global meditationTimerMilliseconds


    Timer.Create( 'mageryTimer', 1 )


    while not Player.IsGhost and Player.GetRealSkillValue( 'Magery' ) < Player.GetSkillCap( 'Magery' ):

        if not Timer.Check( 'mageryTimer' ):

            if Player.GetSkillValue( 'Magery' ) < 62.8:

                spell = spells[ 'Mana Drain' ]

            elif Player.GetSkillValue( 'Magery' ) < 75.5:

                spell = spells[ 'Invisibility' ]

            else:

                spell = spells[ 'Mana Vampire' ]


            if Player.Mana > spell.manaCost:

                Spells.CastMagery( spell.name )

                

                # Wait an extra 100 ms in case of latency

                Timer.Create( 'mageryTimer', spell.delayInMs + additionalShardCooldown )


                # Target the cast spell on the player

                Target.WaitForTarget( 2000, True )

                Target.TargetExecute( Player.Serial )

            else:

                Player.UseSkill( 'Meditation' )

                Timer.Create( 'meditationTimer', meditationTimerMilliseconds )

                Misc.Pause( 200 )

                while Player.Mana < spell.manaCost + 1:

                    if not Player.BuffsExist( 'Meditation' ) and not Timer.Check( 'meditationTimer' ):

                        Player.UseSkill( 'Meditation' )

                        Timer.Create( 'meditationTimer', meditationTimerMilliseconds )

                    Misc.Pause( 200 )


# 훈련을 시작합니다

TrainMagery()

댓글목록 1

마스터골드님의 댓글

마스터골드 작성일

감사합니다!

전체 94건 3 페이지
게시물 검색

 

회사소개 개인정보처리방침 서비스이용약관

사이트 정보

회사명 : 회사명 / 대표 : 대표자명
주소 : OO도 OO시 OO구 OO동 123-45
사업자 등록번호 : 123-45-67890
전화 : 02-123-4567 팩스 : 02-123-4568
통신판매업신고번호 : 제 OO구 - 123호
개인정보관리책임자 : 정보책임자명

Copyright © 소유하신 도메인. All rights reserved.
PC 버전으로 보기