def CheckSymbol(symbolid): items = Inventory.GetItems(1) symbolCount = 0 for item in items: if item.id == symbolid: symbolCount += 1 return symbolCount
def Reveal(): for item in Inventory.GetItems(1): if item.grade > 0 and item.option1 == 0 and GameState.IsInGame(): oPacket = Packet.COutPacket(revealHeader) oPacket.Encode4(int(time.monotonic() * 1000)) #time oPacket.Encode2(0x007F) oPacket.Encode2(item.pos) Packet.SendPacket(oPacket) time.sleep(1)
def extract_item(): pensalir_mage_cape = 1102719 pensalir_mage_helmet = 1004230 pensalir_mage_gloves = 1082609 pensalir_mage_shoes = 1072968 pensalir_mage_overall = 1052800 utgard_fan = 1552102 pensalir_equips = [ pensalir_mage_cape, pensalir_mage_gloves, pensalir_mage_helmet, pensalir_mage_shoes, pensalir_mage_overall, utgard_fan ] ardentmill = 910001000 ardentmill_x = 302 ardentmill_y = 530 if Field.GetID() != ardentmill: rush_to_ardentmill() elif Character.GetPos.x != ardentmill_x: time.sleep(1) Character.Teleport(ardentmill_x, ardentmill_y) else: items = Inventory.GetItems(1) for item in items: if item.id in pensalir_equips: id = '{:06x}'.format(item.id) first_byte = id[4:6] second_byte = id[2:4] third_byte = id[0:2] sn = hex(item.sn) byte8 = sn[2:4] byte7 = sn[4:6] byte6 = sn[6:8] byte5 = sn[8:10] byte4 = sn[10:12] byte3 = sn[12:14] byte2 = sn[14:16] byte1 = sn[16:18] oPacket1 = Packet.COutPacket(crafting_header) oPacket1.EncodeBuffer("01 00 00 00") oPacket1.EncodeBuffer("00 00 00 00") oPacket1.EncodeBuffer("01 00 00 00") oPacket1.EncodeBuffer( "60 3C 7C 05") #format is item id 00 item sn oPacket1.EncodeBuffer("{} {} {} 00".format( first_byte, second_byte, third_byte)) oPacket1.EncodeBuffer("{} {} {} {}".format( byte1, byte2, byte3, byte4)) oPacket1.EncodeBuffer("{} {} {} {}".format( byte5, byte6, byte7, byte8)) oPacket1.EncodeBuffer("01 00 00 00") oPacket1.EncodeBuffer("{} 00 00 00".format( hex(item.pos).split('x')[1].zfill(2))) #slot Packet.SendPacket(oPacket1) time.sleep(0.5)
def main(): if GameState.IsInGame(): if aIStar: items = Inventory.GetItems(1) for item in items: starItem(item.pos, item.currentStar, item.maxStar, starTo, item.id) elif fIStar: # star first item in inventory item = Inventory.GetItem(1, 1) if item.valid: starItem(1, item.currentStar, item.maxStar, starTo, item.id) if eStar: for x in range(-100, 0): item = Inventory.GetItem(1, x) if item.valid: starItem(x, item.currentStar, item.maxStar, starTo, item.id)
def FarmedEnoughAccessories(): eye = 0 face = 0 earring = 0 necklace = 0 ring = 0 items = Inventory.GetItems(1) for item in items: if item.id in EQUIP_ID.necklace_list and item.grade > 0: necklace = 1 elif item.id in EQUIP_ID.ring_list and item.grade > 0: ring += 1 elif item.id in EQUIP_ID.eye_list and item.grade > 0: eye = 1 elif item.id in EQUIP_ID.face_list and item.grade > 0: face = 1 elif item.id in EQUIP_ID.earring_list and item.grade > 0: earring = 1 if Inventory.GetItem(1, EQUIP_SLOTS.necklace_slot ).id in EQUIP_ID.necklace_list and item.grade > 0: necklace = 1 elif Inventory.GetItem( 1, EQUIP_SLOTS.eye_slot).id in EQUIP_ID.eye_list and item.grade > 0: eye = 1 elif Inventory.GetItem( 1, EQUIP_SLOTS.face_slot).id in EQUIP_ID.face_list and item.grade > 0: face = 1 elif Inventory.GetItem(1, EQUIP_SLOTS.earring_slot ).id in EQUIP_ID.earring_list and item.grade > 0: earring = 1 for ring_slot in EQUIP_SLOTS.ring_slots: if Inventory.GetItem( 1, ring_slot).id in EQUIP_ID.ring_list and item.grade > 0: ring += 1 return (eye + face + earring + necklace + ring) >= 5
def Stamp(upToSlot): silverStamp = 2049501 if stampEverything: upToSlot = Inventory.GetItemSlotCount(1) currentSlot = 0 for item in Inventory.GetItems(1): stamp = Inventory.FindItemByID(silverStamp) currentSlot += 1 if currentSlot > upToSlot: break while item.grade > 0 and item.option1 > 0 and item.option3==0 \ and stamp.valid and GameState.IsInGame(): item = Inventory.GetItem(1, item.pos) stamp = Inventory.FindItemByID(silverStamp) if stamp.valid: oPacket = Packet.COutPacket(stampHeader) oPacket.Encode4(int(time.monotonic() * 1000)) #time oPacket.Encode2(stamp.pos) oPacket.Encode2(item.pos) Packet.SendPacket(oPacket) time.sleep(1)
def GetItemCount(itemid): count = 0 for item in Inventory.GetItems(1): if item.id == itemid: count += 1 return count