def test_skill_skill_manager_live_skill_monitor(): window_grabber.refresh_image() image = window_grabber.image player_config = PlayerConfig() player_config.get_player_config() player = player_config.player_list[0] skill_gen = SkillGenerator.generate_skills(player.skills, player.premium, player.special) skills = SkillMonitor.update_skills(image, skill_gen) for skill in skills: skill.print_skill()
def delete_character(self, event): name = UI.cb.GetValue() message = "WARNING: Are you sure you want to delete {}?".format(name) dial = wx.MessageDialog(None, message, "Character Delete", wx.YES_NO) if dial.ShowModal() == wx.ID_YES: rewrite_player_file(name) config = PlayerConfig() config.get_player_config() Settings.Player_List = config.player_list UI.cb.Clear() if len(Settings.Player_List) > 0: print len(Settings.Player_List) for player in Settings.Player_List: if not name == player.name: UI.cb.Append(player.name) UI.cb.Append("new") UI.cb.SetSelection(0)
def __init__(self, mode=0, arena_start=1, arena_end=24): self.window_grabber = find_window.ScreenGrabber.get_window() Settings.box = self.window_grabber.window_dimensions self.p_watcher = pony_watcher.PonyWatcher() self.player_monitor = player_monitor.PlayerMonitor() self.enemy_monitor = enemy_monitor.EnemyMonitor() self.player = PlayerConfig.get_player_0() self.item_master = item_manager.ItemManager(self.player.items) skill_list = skill_manager.SkillGenerator.generate_skills(self.player.skills, self.player.premium, self.player.special) self.skill_master = skill_manager.SkillMaster(skill_list) self.status_monitor = status_monitor.StatusMonitor() self.attack_manager = attack_manager.AttackManager(self.player.style) self.mode = mode #image_initialize.get_images() self.item_master.get_items() self.pause = False self.arena_start = arena_start self.arena_end = arena_end
__author__ = 'Matt' import os import logging import Image from skill.attack_manager import AttackManager from player.player_config import PlayerConfig from skill.skill_manager import SkillGenerator from window_finder import find_window from Settings import Settings PLAYER = PlayerConfig.get_player_0() SKILL_LIST = SkillGenerator.generate_skills(PLAYER.skills, PLAYER.premium, PLAYER.special) TEST_IMAGE = Image.open(os.path.join(os.path.dirname(os.path.abspath(__file__)), "data", "test_full_window.png")).convert('RGB') WINDOW = find_window.ScreenGrabber.get_window_test(TEST_IMAGE) def test_skill_attack_manager_init(): AttackManager(0) def test_skill_attack_manager_get_style(): attack_manager = AttackManager(0) assert(attack_manager.get_style(3).overcharge == 80)
def save(self, event): print "saving" print "looking for {}".format(self.current_player) fpath = os.getcwd() + "\\" + "Player.txt" if os.path.isfile("Player.txt"): with open(fpath, 'r+') as f: lines = f.readlines() f.seek(0) f.truncate() name_found = False for line in lines: line_split = line.split(':') if (line_split[0] == "name" and line_split[1].rstrip("\n") == self.current_player) or name_found: name_found = True if line_split[0] == "name": line = "name:{}{}".format(self.name.GetValue(), "\n") elif line_split[0] == "style": line = "style:{}{}".format(self.get_player_style(), "\n") elif line_split[0] == "items": line = "items:{}{}".format(self.get_converted_items(), "\n") elif line_split[0] == "special": line = "special:{}{}".format(self.get_player_special(), "\n") elif line_split[0] == "premium": line = "premium:{}{}".format(self.get_player_premium(), "\n") elif line_split[0] == "skills": line = "skills:{}{}".format(self.get_player_skills(), "\n") elif line_split[0] == "spirit": line = "spirit:{}{}".format(self.spirit_checkbox.GetValue(), "\n") elif line_split[0] == "min_sleep": line = "min_sleep:{}{}".format(self.sleep_min.GetValue(), "\n") elif line_split[0] == "max_sleep": line = "max_sleep:{}{}".format(self.sleep_max.GetValue(), "\n") f.write(line) if not name_found: print "name not found, " line = "name:{}".format(self.name.GetValue()) f.write(line + "\n") line = "style:{}".format(self.get_player_style()) f.write(line + "\n") line = "items:{}".format(Window2.config_player.items) f.write(line + "\n") line = "special:{}".format(self.get_player_special()) f.write(line + "\n") line = "premium:{}".format(self.get_player_premium()) f.write(line + "\n") line = "skills:{}".format(self.get_player_skills()) f.write(line + "\n") line = "spirit:{}".format(self.spirit_checkbox.GetValue()) f.write(line + "\n") line = "min_sleep:{}".format(self.sleep_min.GetValue()) f.write(line + "\n") line = "max_sleep:{}".format(self.sleep_max.GetValue()) f.write(line) else: with open(fpath, 'wb') as f: print "file not found!" line = "name:{}".format(self.name.GetValue()) f.write("%s\n" % line) line = "style:{}".format(self.get_player_style()) f.write("%s\n" % line) line = "items:{}".format(Window2.config_player.items) f.write("%s\n" % line) line = "special:{}".format(self.get_player_special()) f.write("%s\n" % line) line = "premium:{}".format(self.get_player_premium()) f.write("%s\n" % line) line = "skills:{}".format(self.get_player_skills()) f.write("%s\n" % line) line = "spirit:{}".format(self.spirit_checkbox.GetValue()) f.write("%s\n" % line) line = "min_sleep:{}".format(self.sleep_min.GetValue()) f.write("%s\n" % line) line = "max_sleep:{}".format(self.sleep_max.GetValue()) f.write("%s\n" % line) config = PlayerConfig() config.get_player_config() Settings.Player_List = config.player_list UI.cb.Clear() if len(Settings.Player_List) > 0: for player in Settings.Player_List: UI.cb.Append(player.name) UI.cb.Append("new") UI.cb.SetSelection(0) self.Destroy()
import wx from Settings import Settings from user_interface import UI from player.player_config import PlayerConfig def get_arena_values(): if os.path.isfile("Arenas.txt"): arena_file = open("Arenas.txt") for line in arena_file: Settings.Arenas.append(line.rstrip("\n")) else: logging.critical("arena file Could not be Found") dial = wx.MessageDialog(None, "Critical Error: arena file could not be found. Please Contact Support.", "Info", wx.OK) dial.ShowModal() if __name__ == '__main__': logfile = os.path.join('logs', 'logging_file.log') print logfile if not os.path.isdir('logs'): os.makedirs('logs') logging.config.fileConfig('logging.conf', defaults={'logfile': logfile}) logging.debug("Starting main") player_config = PlayerConfig() player_config.get_player_config() Settings.Player_List = player_config.player_list get_arena_values() app = wx.App() UI.UI(None, title='Grind Buster') app.MainLoop()