Skip to content
This repository was archived by the owner on Jul 1, 2022. It is now read-only.

Commit 6b7ae34

Browse files
authored
Bugfix: More related bugs for town and ui overhaul (#610)
* fix id logic, fix count reset, up to version 0.7.0, trim excess * attempt to fix loop at cain, etc. when return_to_play() is called * spell check, simplify * center mouse after opening NPC menu * fix messenger item count bug
1 parent 11ba15d commit 6b7ae34

File tree

3 files changed

+7
-8
lines changed

3 files changed

+7
-8
lines changed

src/bot.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ def on_maintenance(self):
292292
# Check inventory items
293293
if personal.inventory_has_items(img):
294294
Logger.debug("Inspecting inventory items")
295-
items = personal.inspect_items(img, close_window=False)
295+
items = personal.inspect_items(img, close_window=False, game_stats=self._game_stats)
296296
common.close()
297297
Logger.debug(f"Needs: {consumables.get_needs()}")
298298
if items:
@@ -303,7 +303,7 @@ def on_maintenance(self):
303303
if not self._curr_loc:
304304
return self.trigger_or_stop("end_game", failed=True)
305305
# recheck inventory
306-
items = personal.inspect_items()
306+
items = personal.inspect_items(game_stats=self._game_stats)
307307
keep_items = any([item.keep for item in items]) if items else None
308308
sell_items = any([item.sell for item in items]) if items else None
309309

src/inventory/personal.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import itertools
2+
from game_stats import GameStats
23
from item import ItemFinder, Item
34
from item.item_cropper import ItemText
45
from logger import Logger
@@ -15,13 +16,11 @@
1516
from inventory import stash, common, vendor
1617
from ui import view
1718
from ui_manager import detect_screen_object, wait_for_screen_object, ScreenObjects, center_mouse
18-
from game_stats import GameStats
1919
from item import ItemCropper
2020
from messages import Messenger
2121

2222
messenger = Messenger()
2323
item_finder = ItemFinder()
24-
game_stats = GameStats()
2524
nontradable_items = ["key of ", "essense of", "wirt's", "jade figurine"]
2625

2726
def inventory_has_items(img: np.ndarray = None, close_window = False) -> bool:
@@ -47,7 +46,7 @@ def stash_all_items(items: list = None):
4746
"""
4847
Stashing all items in inventory. Stash UI must be open when calling the function.
4948
"""
50-
global messenger, game_stats
49+
global messenger
5150
if items is None:
5251
Logger.debug("No items to stash, skip")
5352
return False
@@ -258,7 +257,7 @@ def open(img: np.ndarray = None) -> np.ndarray:
258257
img = grab()
259258
return img
260259

261-
def inspect_items(inp_img: np.ndarray = None, close_window: bool = True):
260+
def inspect_items(inp_img: np.ndarray = None, close_window: bool = True, game_stats: GameStats = None):
262261
"""
263262
Iterate over all picked items in inventory--ID items and decide which to stash
264263
:param img: Image in which the item is searched (item details should be visible)

src/npc_manager.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from template_finder import TemplateFinder
66
from config import Config
77
from screen import grab
8-
from ui_manager import detect_screen_object, ScreenObjects
8+
from ui_manager import detect_screen_object, ScreenObjects, center_mouse
99
from utils.misc import color_filter, wait
1010
from logger import Logger
1111
from utils.custom_mouse import mouse
@@ -301,7 +301,7 @@ def press_npc_btn(npc_key: Npc, action_btn_key: str):
301301
mouse.move(*res.center, randomize=3, delay_factor=[1.0, 1.5])
302302
wait(0.2, 0.4)
303303
mouse.click(button="left")
304-
wait(0.3, 0.4)
304+
center_mouse()
305305
else:
306306
Logger.error(f"Could not find {action_btn_key} btn. Should not happen! Continue...")
307307
keyboard.send("esc")

0 commit comments

Comments
 (0)