annuncio

Comprimi
Ancora nessun annuncio.

[Razor Enhanced] Spellweaving Macro 0-Cap

Comprimi
X
 
  • Filtro
  • Ora
  • Visualizza
Elimina tutto
nuovi messaggi

  • [Razor Enhanced] Spellweaving Macro 0-Cap

    Razor Enhanced è un ottimo programma, è un peccato che gli script per la community siano così pochi, per cui, visto che alcuni trovano il train di spellweaving un vero inferno (e da 0 a 10 lo è davvero, ma poi diventa accettabile) ho deciso di scrivere e postare questo script:
    codice:
    ##====== Spellweaving Macro ======##
    ## Piattaforma: Razor Enhanced
    ## Autore: Malicious Otter
    ## Versione: 1.2.1
    ## Shard: UODreams
    ##================================##
    ## Serve:
    ## - una barca
    ##================================##
    ## Variabili
    ##================================##
    ManaPause = 500
    WaitTarget = 8000
    HealDelay = 500
    BoatDirection = 0
    MinHits = 80
    layers = ["RightHand", "LeftHand", "Shoes", "Pants", "Shirt", "Head", "Gloves", "Ring", "Neck", "Waist", "InnerTorso", "Bracelet", "MiddleTorso", "Earrings", "Arms", "Cloak", "OuterTorso", "OuterLegs", "InnerLegs", "Unused x9"]
    swlayersfcr = 0
    swlayerslmc = 0
    ##================================##
    ## Filter
    ##================================##
    fil = Mobiles.Filter()
    fil.Enabled = True
    fil.RangeMax = 5
    ##================================##
    ## Funzioni
    ##================================##
    
    def ValutaLMCMR( ):
        global swlayersfcr, swlayerslmc
        for layer in layers:
            if Player.CheckLayer(layer) != False:
                litem = Player.GetItemOnLayer(layer)
                Items.WaitForProps(litem, 5000)
                swlayersfcr = swlayersfcr + Items.GetPropValue(litem, "Faster Cast Recovery")
                swlayerslmc = swlayerslmc + Items.GetPropValue(litem, "Lower Mana Cost")
                
        if swlayersfcr > 6:
            swlayersfcr = 6
        
        swmsg = "LMC: %d  FCR: %d" % (swlayerslmc, swlayersfcr)
        Misc.SendMessage(swmsg, 89)
        return;
    
    def ChangeDir( ):  
        global BoatDirection 
        if BoatDirection > 0:
            Player.ChatSay(89, "forward")
            BoatDirection = 0
        else:
            Player.ChatSay(89, "back")
            BoatDirection = 1
        return;
    
    def FCRDelay( nofcr ):
        fcr = nofcr - ( swlayersfcr * 250 )
        if fcr < 500:
            fcr = 500         
        return fcr;
        
    def ChkHits( ):
        while Player.Hits < MinHits:
            WaitForMana(MinMana('2'))
            if Player.GetSkillValue("Chivalry") < Player.GetSkillValue("Magery"):
                Spells.CastMagery("Heal")
            else:
                Spells.CastChivalry("Close Wounds")  
    
            Target.WaitForTarget(WaitTarget)
            Target.TargetExecute(Player.Serial)
            Misc.Pause(HealDelay)
        return;
        
    def MinMana( val ):
        return {
            '0': 24,
            '1': 32,
            '2': 10,
            '3': 50,
            '4': 50,
            }.get(val, 0);
            
    def WaitForMana( mana ): 
        rmana = (mana * ( 1.00 - (swlayerslmc / 100.0))) + 1
        while (Player.Mana < rmana):
            Misc.Pause(ManaPause)        
        return;
    
    def Casta( sval ):
        if sval >= 82:
            ChkHits()
            WaitForMana(MinMana('4'))
            Spells.CastSpellweaving("Word Of Death")
            Target.WaitForTarget(WaitTarget)
            Target.TargetExecute(Player.Serial)
            Misc.Pause(FCRDelay(3500))
        elif sval >= 75 and sval < 82:
            WaitForMana(MinMana('3'))
            Spells.CastSpellweaving("Wildfire")
            Target.WaitForTarget(WaitTarget)
            Target.TargetExecute(Player.Serial)
            Misc.Pause(FCRDelay(2500))
        elif sval >= 44 and sval < 75:
            if Player.Followers < Player.FollowersMax:
                WaitForMana(MinMana('2'))
                Spells.CastSpellweaving("Summon Fey")
                Misc.Pause(FCRDelay(2000))
            else:
                bmobiles = Mobiles.ApplyFilter(fil)
                Player.ChatSay(89, "all follow me")
                Misc.Pause(1500)
                for bmobile in bmobiles:
                    if bmobile.Body == 0x80:
                        msg = bmobile.Name + " release"
                        Player.ChatSay(89, msg)
                        Misc.Pause(500)    
        elif sval >= 10 and sval < 44:
            WaitForMana(MinMana('1'))
            Spells.CastSpellweaving("Thunderstorm")
            Misc.Pause(FCRDelay(1500))
        else:
            WaitForMana(MinMana('0'))
            Spells.CastSpellweaving("Attunement")
            Misc.Pause(FCRDelay(1000))         
        return;
    
    ##================================##    
    ## Main Loop 
    ##================================##
    ValutaLMCMR()
    while Player.GetSkillValue("Spell Weaving") < Player.GetSkillCap("Spell Weaving"):
        ChangeDir()
        Casta(Player.GetSkillValue("Spell Weaving"))
    Ultima modifica di maliciousotter; 06-06-2016, 16:37. Motivo: Typo in Wildfire, python è CS
    "C'era un nano che si chiamava Andvari", disse Reginn,
    "e stava sempre in una cascata che si chiamava Andvarafors, sotto le sembianze di luccio
    e si procurava da mangiare perché c'era abbondanza di pesci in quella cascata.
    Otr, mio fratello, andava sempre in quella cascata e prendeva i pesci con la bocca
    e li poggiava di volta in volta sulla riva".

  • #2
    (Se posso fare un doppio post di aggiornamento) Avevo un typo nello script che lo faceva bloccare, l'ho modificato come scritto nel motivo dell'edit ^^.
    "C'era un nano che si chiamava Andvari", disse Reginn,
    "e stava sempre in una cascata che si chiamava Andvarafors, sotto le sembianze di luccio
    e si procurava da mangiare perché c'era abbondanza di pesci in quella cascata.
    Otr, mio fratello, andava sempre in quella cascata e prendeva i pesci con la bocca
    e li poggiava di volta in volta sulla riva".

    Commenta

    Sto operando...
    X