37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
from core.Config import Config
|
|
from core.Monitor import Monitor
|
|
from bots.battleground.battlegroundAgent import BattlegroundAgent
|
|
from bots.fishing.FishingAgent import FishingAgent
|
|
from bots.fighting.FightingAgent import FightingAgent
|
|
from bots.idling.IdlingAgent import IdlingAgent
|
|
from core.Player import Player, PLAYER_STATE
|
|
|
|
class MainAgent:
|
|
def __init__(self, configName = "config ") -> None:
|
|
self.config = Config(configName)
|
|
self.monitor = Monitor(self.config)
|
|
self.playerAgent = Player(self.monitor, self.config)
|
|
self.idlingBot = IdlingAgent(self.monitor, self.playerAgent)
|
|
self.fightingAgent = FightingAgent(self.monitor, self.playerAgent)
|
|
self.fishingBot = FishingAgent(self.monitor, self.playerAgent)
|
|
self.bgFarming = BattlegroundAgent(self.monitor, self.playerAgent)
|
|
self.monitor.startScreenCaptureThread()
|
|
# Start idling agent at the construction of the mainAgent for now
|
|
self.idlingBot.run()
|
|
|
|
def startFishBot(self):
|
|
self.playerAgent.changeState(PLAYER_STATE.FISHING)
|
|
self.fishingBot.run()
|
|
|
|
def startBgBot(self):
|
|
self.playerAgent.changeState(PLAYER_STATE.BG_FARMING)
|
|
self.bgFarming.run()
|
|
|
|
def toggleFightingAgent(self):
|
|
if (self.fightingAgent is True):
|
|
self.fightingAgent.stopFighting()
|
|
else:
|
|
self.fightingAgent.run()
|
|
|
|
|