Ativa o menu
Toggle preferences menu
Alternar menu pessoal
Não autenticado(a)
Your IP address will be publicly visible if you make any edits.
Revisão de 19h23min de 25 de fevereiro de 2025 por Matthews (discussão | contribs)


# Shard: Imperial Shard

# Macro: Pede trabalho ao NPC escolhido e aguarda o tempo correto.

  ####    ##   ##  #####    ######   #####     ####      ##     ##
   ##     ### ###  ##  ##   ##       ##  ##     ##      ####    ##
   ##     #######  ##  ##   ##       ##  ##     ##     ##  ##   ##
   ##     ## # ##  #####    ####     #####      ##     ######   ##
   ##     ##   ##  ##       ##       ####       ##     ##  ##   ##
   ##     ##   ##  ##       ##       ## ##      ##     ##  ##   ##
  ####    ##   ##  ##       ######   ##  ##    ####    ##  ##   ######
  
   ##      ####    ######
  ####    ##  ##   ##
 ##  ##   ##       ##
 ######   ## ###   ####
 ##  ##   ##  ##   ##
 ##  ##   ##  ##   ##
 ##  ##    ####    ######
 
  ####    ##  ##     ##     #####    ####
 ##  ##   ##  ##    ####    ##  ##   ## ##
 ##       ##  ##   ##  ##   ##  ##   ##  ##
  ####    ######   ######   #####    ##  ##
     ##   ##  ##   ##  ##   ####     ##  ##
 ##  ##   ##  ##   ##  ##   ## ##    ## ##
  ####    ##  ##   ##  ##   ##  ##   #### 
 
 
 
 # Instruções para uso do macro de mineração:
 
# 1. Inicie o macro e selecione o npc quando pedir 'temp'.
# 2. O macro calculará quanto tempo exato falta pro próximo trabalho.

import clr
import System
clr.AddReference('System.Core')
clr.ImportExtensions(System.Linq)
from Assistant import Engine


def Check(serial):
    # procura no journal
    journalEntryBuffer = Engine.Journal.GetBuffer().Where(lambda je: je.Text.Contains("Terei trabalho em ") and je.Serial == serial)
    
    # achei uma mensagem
    if journalEntryBuffer.Any():
        # pego a primeira mensagem dita pelos amigos
        return journalEntryBuffer.First()
    
    return None


# MAIN
PromptMacroAlias('temp')
serial = GetAlias('temp')

SysMessage("Seguindo {} [{}]".format(Name('temp'), hex(serial)), 64)

while True:
    while Distance(serial) > 1:
        Pathfind(serial)
        Pause(1000)
    ClearJournal()
    Pause(500)
    Msg("trabalho")
    Pause(1500)
    WaitForGump(0x9bade6ea, 5000)
    ReplyGump(0x9bade6ea, 1)
    j = Check(serial)
    if j == None:
        Pause(10000)
    else:
        mins = int(j.Text[18:20].strip())
        if mins > 0:
            while mins > 0:
                SysMessage("Esperando {} minutos".format(mins), 84)
                Pause(60000)
                mins -= 1
        else:
            SysMessage("Esperando 10 segundos", 64)
            Pause(10000)