Ecco a voi lo script per consegnare i bolt:
Con i parametri all'inizio dello script potete configurare lo script stesso come quali talismani tenere (potenza dei bonus)
	
							
						
					Con i parametri all'inizio dello script potete configurare lo script stesso come quali talismani tenere (potenza dei bonus)
codice:
	
	## Parametri     ##
QuestGiverSerial = 0x00006AC1
ContextQuestToggleID = 5
BoldID = 0x1BFB
TrashCan = Items.FindBySerial(0x4013FA9E)
TimeoutOnWaitAction = 4000
TrashDelay = 600
DragDelay = 1500
ScanQuestDelay = 55 ## Dipende dalla potenza del vosto pc
CheckTali = True
MinNormalBonus = 22
MinExBonus = 20
## Script ##
loop = 1
bolt = 0
def CheckTalismani( tal ):
    Misc.SendMessage("--> Verifica Talismano", 99) 
    Items.WaitForProps(tal, TimeoutOnWaitAction)
    if Items.GetPropValue(tal.Serial, "Tinkering Exceptional Bonus") >= MinExBonus and Items.GetPropValue(tal.Serial, "Tinkering Bonus") >= MinNormalBonus:
        Misc.SendMessage("--> Talismano nel range trovato", 99) 
        Items.Move(tal, Player.Backpack, 0)
        Misc.Pause(DragDelay)   
    elif Items.GetPropValue(tal.Serial, "Fletching Exceptional Bonus") >= MinExBonus and Items.GetPropValue(tal.Serial, "Fletching Bonus") >= MinNormalBonus:
        Misc.SendMessage("--> Talismano nel range trovato", 99) 
        Items.Move(tal, Player.Backpack, 0)
        Misc.Pause(DragDelay)           
    elif Items.GetPropValue(tal.Serial, "Tailoring Exceptional Bonus") >= MinExBonus and Items.GetPropValue(tal.Serial, "Tailoring Bonus") >= MinNormalBonus:
        Misc.SendMessage("--> Talismano nel range trovato", 99) 
        Items.Move(tal, Player.Backpack, 0)
        Misc.Pause(DragDelay)       
    elif Items.GetPropValue(tal.Serial, "Blacksmith Exceptional Bonus") >= MinExBonus and Items.GetPropValue(tal.Serial, "Blacksmith Bonus") >= MinNormalBonus:
        Misc.SendMessage("--> Talismano nel range trovato", 99) 
        Items.Move(tal, Player.Backpack, 0)
        Misc.Pause(DragDelay)           
    elif Items.GetPropValue(tal.Serial, "Inscription Exceptional Bonus") >= MinExBonus and Items.GetPropValue(tal.Serial, "Inscription Bonus") >= MinNormalBonus:
        Misc.SendMessage("--> Talismano nel range trovato", 99) 
        Items.Move(tal, Player.Backpack, 0)
        Misc.Pause(DragDelay)      
    elif Items.GetPropValue(tal.Serial, "Cooking Exceptional Bonus") >= MinExBonus and Items.GetPropValue(tal.Serial, "Cooking Bonus") >= MinNormalBonus:
        Misc.SendMessage("--> Talismano nel range trovato", 99) 
        Items.Move(tal, Player.Backpack, 0)
        Misc.Pause(DragDelay)         
    elif Items.GetPropValue(tal.Serial, "Alchemy Exceptional Bonus") >= MinExBonus and Items.GetPropValue(tal.Serial, "Alchemy Bonus") >= MinNormalBonus:
        Misc.SendMessage("--> Talismano nel range trovato", 99) 
        Items.Move(tal, Player.Backpack, 0)
        Misc.Pause(DragDelay)                 
    else:
        Misc.NoOperation()
    return;            
while loop == 1:
    Misc.Pause(ScanQuestDelay)
    if Items.BackpackCount(BoldID, 0) < 9:
        Misc.SendMessage("--> Fine Frecce", 33)
        loop = 0
    else:
        Gumps.ResetGump()
        Mobiles.UseMobile(QuestGiverSerial)
        Gumps.WaitForGump(2770237747, TimeoutOnWaitAction)
        if Gumps.LastGumpTextExist("Lethal Darts"):
            Misc.SendMessage("--> Quest OK", 99)
            Gumps.SendAction(2770237747, 1)
            Misc.SendMessage("--> Quest Accettata", 99)    
            Misc.WaitForContext(Player.Serial, TimeoutOnWaitAction)
            Misc.ContextReply(Player.Serial, ContextQuestToggleID)
            Target.WaitForTarget(TimeoutOnWaitAction)
            
            for itemcontenuti in Player.Backpack.Contains:
                if itemcontenuti.ItemID == BoldID:
                    bolt = itemcontenuti.Serial
                else:
                    Misc.NoOperation()
                    
            Target.TargetExecute(bolt)
            Misc.SendMessage("--> Bolt Selezionati", 99)    
            Target.WaitForTarget(TimeoutOnWaitAction)
            Target.Cancel()
            Mobiles.UseMobile(QuestGiverSerial)
            Gumps.WaitForGump(323772612, TimeoutOnWaitAction)
            Gumps.SendAction(323772612, 1)
            
            Misc.SendMessage("--> Scansione Rewards", 99)    
            for itemcontenuti in Player.Backpack.Contains:
                if itemcontenuti.ItemID == 0x0E75:
                    Items.WaitForContents(itemcontenuti, TimeoutOnWaitAction)
                    for rewcontain in itemcontenuti.Contains:
                        if rewcontain.ItemID == 0x1022:
                            Misc.SendMessage("--> Toolkit trovato", 99) 
                            Items.Move(rewcontain, Player.Backpack, 0)
                            Misc.Pause(DragDelay)
                        elif rewcontain.ItemID == 0x2f5a or rewcontain.ItemID == 0x2f5b or rewcontain.ItemID == 0x2f59 or rewcontain.ItemID == 0x2f58:
                            if CheckTali:
                                CheckTalismani(rewcontain)
                            else:
                                Misc.NoOperation()
                        else:
                            Misc.NoOperation()
                    Misc.SendMessage("--> Trash box rewards", 99) 
                    Items.Move(itemcontenuti, TrashCan, 0) 
                    Misc.Pause(TrashDelay)
                else:
                    Misc.NoOperation()
                    
            
        else:
            Misc.NoOperation()




 
							
						





Commenta