refactoring
bug fix equip multi
This commit is contained in:
103
equipment.py
103
equipment.py
@@ -21,16 +21,15 @@ HSV_DEFAULT = HsvFilter(0, 0, 0, 179, 255, 255, 0, 0, 0, 0)
|
||||
|
||||
|
||||
class Equipment(GameBase):
|
||||
needles = []
|
||||
hsvs = []
|
||||
tresholds = []
|
||||
masks = []
|
||||
emitters = []
|
||||
|
||||
def __init__(self, overlay):
|
||||
super().__init__(overlay)
|
||||
|
||||
self.needles = []
|
||||
self.hsvs = []
|
||||
self.tresholds = []
|
||||
self.masks = []
|
||||
self.emitters = []
|
||||
|
||||
# initialize the StunWindowCapture class
|
||||
self.capture_window = WindowCapture(None, "equip", self.config)
|
||||
|
||||
@@ -38,49 +37,7 @@ class Equipment(GameBase):
|
||||
self.SPAWN_COUNT = int(overlay.spawn_use.get())
|
||||
self.ENERGY_TO_USE = int(overlay.energy_use.get())
|
||||
|
||||
if self.EMITTER_TO_USE == EMITTER_MULTI:
|
||||
self.emitters.append(EMITTER_RING)
|
||||
self.emitters.append(EMITTER_WAND)
|
||||
self.emitters.append(EMITTER_SWORD)
|
||||
self.emitters.append(EMITTER_AMU)
|
||||
self.emitters.append(EMITTER_STAFF)
|
||||
else:
|
||||
self.emitters.append(self.EMITTER_TO_USE)
|
||||
|
||||
for emitter in self.emitters:
|
||||
if emitter == EMITTER_MUSH:
|
||||
self.include_books()
|
||||
self.include_mushs()
|
||||
self.include_pots()
|
||||
self.include_bags()
|
||||
elif emitter == EMITTER_AMU:
|
||||
self.include_books()
|
||||
self.include_amus()
|
||||
self.include_bags()
|
||||
elif emitter == EMITTER_MAIN:
|
||||
self.include_books()
|
||||
self.include_chests()
|
||||
self.include_keys()
|
||||
self.include_pots()
|
||||
self.include_bags()
|
||||
self.include_coins()
|
||||
self.include_runes()
|
||||
elif emitter == EMITTER_SWORD:
|
||||
self.include_books()
|
||||
self.include_swords()
|
||||
self.include_bags()
|
||||
elif emitter == EMITTER_STAFF:
|
||||
self.include_books()
|
||||
self.include_staffs()
|
||||
self.include_bags()
|
||||
elif emitter == EMITTER_RING:
|
||||
self.include_books()
|
||||
self.include_rings()
|
||||
self.include_bags()
|
||||
elif emitter == EMITTER_WAND:
|
||||
self.include_books()
|
||||
self.include_wands()
|
||||
self.include_bags()
|
||||
self.init_emitters_to_use()
|
||||
|
||||
self.c_needle = cv.imread("equip/chests/chest_4_32.jpg", cv.IMREAD_UNCHANGED)
|
||||
self.c_mask = cv.imread("equip/chests/chest_4_32-mask.png", cv.IMREAD_COLOR)
|
||||
@@ -90,14 +47,55 @@ class Equipment(GameBase):
|
||||
|
||||
self.energy_counter = 0
|
||||
|
||||
def init_emitters_to_use(self):
|
||||
self.emitters.clear()
|
||||
if self.EMITTER_TO_USE == EMITTER_MULTI:
|
||||
self.emitters.append(EMITTER_RING)
|
||||
self.emitters.append(EMITTER_WAND)
|
||||
self.emitters.append(EMITTER_SWORD)
|
||||
self.emitters.append(EMITTER_AMU)
|
||||
self.emitters.append(EMITTER_STAFF)
|
||||
else:
|
||||
self.emitters.append(self.EMITTER_TO_USE)
|
||||
|
||||
def init_needles_for_emitter_to_use(self, emitter):
|
||||
self.needles.clear()
|
||||
self.hsvs.clear()
|
||||
self.tresholds.clear()
|
||||
self.masks.clear()
|
||||
|
||||
self.include_books()
|
||||
self.include_bags()
|
||||
|
||||
if emitter == EMITTER_MUSH:
|
||||
self.include_mushs()
|
||||
self.include_pots()
|
||||
elif emitter == EMITTER_AMU:
|
||||
self.include_amus()
|
||||
elif emitter == EMITTER_MAIN:
|
||||
self.include_chests()
|
||||
self.include_keys()
|
||||
self.include_pots()
|
||||
self.include_coins()
|
||||
self.include_runes()
|
||||
elif emitter == EMITTER_SWORD:
|
||||
self.include_swords()
|
||||
elif emitter == EMITTER_STAFF:
|
||||
self.include_staffs()
|
||||
elif emitter == EMITTER_RING:
|
||||
self.include_rings()
|
||||
elif emitter == EMITTER_WAND:
|
||||
self.include_wands()
|
||||
|
||||
def execute_main_loop(self):
|
||||
start_time = time()
|
||||
breaks = self.init_breaks()
|
||||
for emitter in self.emitters:
|
||||
self.init_needles_for_emitter_to_use(emitter)
|
||||
while True:
|
||||
self.check_breaks(start_time, breaks)
|
||||
if self.overlay.run_mode == 'paused':
|
||||
cv.waitKey(1)
|
||||
cv.waitKey(10)
|
||||
continue
|
||||
elif self.overlay.run_mode == 'stopped':
|
||||
break
|
||||
@@ -124,11 +122,8 @@ class Equipment(GameBase):
|
||||
else:
|
||||
spawn_0 = self.find_emitter(emitter, screenshot, 0)
|
||||
points = self.vision_stun.get_click_points(spawn_0)
|
||||
for point in points:
|
||||
if len(points) >= 1:
|
||||
self.click_point(points[0][0], points[0][1])
|
||||
|
||||
if self.overlay.run_mode == 'stopped' or self.overlay.run_mode == 'paused':
|
||||
break
|
||||
continue
|
||||
|
||||
cv.waitKey(500)
|
||||
|
||||
Reference in New Issue
Block a user