Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

[Python] Stack module

Only working scripts
Post Reply
Xor
Neophyte
Neophyte
Posts: 21
Joined: 03.09.2012 7:07

[Python] Stack module

Post by Xor »

Модуль складывает все вещи указанного типа (и, по желанию, цвета) из бэкпака в стопки по 60к.
В зависимости от параметров может кидать или под ноги, или стакать в определенной точке.

файл модуля stack.py

Code: Select all

# -*- coding: mbcs -*-  
from stealth import *
from time import sleep

def Stack(obj_type,x=0,y=0,color=-1):
	if not x:
		x = GetX(Self())
	if not y:
		y = GetY(Self())

	if not FindTypeEx(obj_type,color,Backpack(),False):
		return 0

	item_to_drop = FindItem()
	amt = FindQuantity()
	if amt == 60000:
		Drop(item_to_drop,amt,x,y,0)
		CheckLag(100000)
		Stack(obj_type,x,y,color)
		return 1
	else:
		while 1:
			if FindTypeEx(obj_type,color,Ground(),False):
				if FindQuantity() == 60000:
					Ignore(FindItem())
				elif GetX(FindItem()) != x or GetY(FindItem()) != y:
					Ignore(FindItem())					
				else:
					if amt <= (60000-FindQuantity()):
						MoveItem(item_to_drop,0,FindItem(),0,0,0)
						CheckLag(100000)
						Stack(obj_type,x,y,color)
						return 1
					else:
						diff = 60000 - FindQuantity()
						MoveItem(item_to_drop,diff,FindItem(),0,0,0)
						CheckLag(100000)
						Stack(obj_type,x,y,color)
						return 1
			else:
				Drop(item_to_drop,amt,x,y,0)
				CheckLag(100000)
				Stack(obj_type,x,y,color)
				return 1


print("Loading: UO.Stack        [ok]")
Подключаем:
from stack import Stack
Используем:
Stack(0x0eed) # выбросит все золото из бэкпака себе под ноги, сложив по 60к
Stack(0x0eed,253,1255) # выбросит все золото из бэкпака в координату x = 253, y = 1255, сложив по 60к
Stack(0x0eed,y=1255,x=253) # выбросит все золото из бэкпака в координату x = 253, y = 1255, сложив по 60к
Stack(0x0eed,253,1255,0xFFFF) # выбросит все итемы типа 0x0eed, цвета 0xFFFF из бэкпака в координату x = 253, y = 1255, сложив по 60к
Stack(0x0eed,color=0xFFFF) # выбросит все итемы типа 0x0eed, цвета 0xFFFF из бэкпака себе под ноги, сложив по 60к

Stack(ObjType[,x,y,Color])
ObjType - тип итема
x - X координата, по умолчанию позиция чара
y - Y координата, по умолчанию позиция чара
Color - цвет итема, опционально, по умолчанию любой цвет
Post Reply