Merge branch 'master' of https://github.com/sheychen290/LeekBots
This commit is contained in:
commit
f18d29f501
|
@ -160,7 +160,7 @@ class APIFarmer:
|
||||||
|
|
||||||
def set_avatar(self, avatar, token):
|
def set_avatar(self, avatar, token):
|
||||||
url = self.url + "/set-avatar/"
|
url = self.url + "/set-avatar/"
|
||||||
return self.session.post(url, data={"avatar" : avatar, "token" : token}).json()
|
return self.session.post(url, data={"token" : token}, files={'avatar': ('avatar', avatar, 'image/png', {'Expires': '0'})}).json()
|
||||||
|
|
||||||
def set_github(self, github, token):
|
def set_github(self, github, token):
|
||||||
url = self.url + "/set-github/"
|
url = self.url + "/set-github/"
|
||||||
|
@ -622,7 +622,7 @@ class APITeam:
|
||||||
|
|
||||||
def set_emblem(self, team_id, emblem, token):
|
def set_emblem(self, team_id, emblem, token):
|
||||||
url = self.url + "/set-emblem/"
|
url = self.url + "/set-emblem/"
|
||||||
return self.session.post(url, data={"team_id" : team_id, "emblem" : emblem, "token" : token}).json()
|
return self.session.post(url, data={"team_id" : team_id, "token" : token}, files={'emblem': ('emblem', emblem, 'image/png', {'Expires': '0'})}).json()
|
||||||
|
|
||||||
def set_opened(self, opened, token):
|
def set_opened(self, opened, token):
|
||||||
url = self.url + "/set-opened/"
|
url = self.url + "/set-opened/"
|
||||||
|
|
44
LeekBots.py
44
LeekBots.py
|
@ -530,10 +530,19 @@ class Pool:
|
||||||
|
|
||||||
def usePotion(params, options):
|
def usePotion(params, options):
|
||||||
try:
|
try:
|
||||||
potion = params[0]
|
template = params[0]
|
||||||
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
||||||
try:
|
try:
|
||||||
leek.usePotion(potion)
|
pid = None
|
||||||
|
for potion in leek.farmer.potions:
|
||||||
|
if (potion['template'] == template):
|
||||||
|
pid = potion['id']
|
||||||
|
|
||||||
|
if pid is None:
|
||||||
|
leek.farmer.raiseError(
|
||||||
|
'Have any {0} available'.format(template))
|
||||||
|
|
||||||
|
leek.usePotion(pid)
|
||||||
leek.raiseError('OK') #Ugly
|
leek.raiseError('OK') #Ugly
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
@ -643,6 +652,15 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
def teamEmblem(params, options):
|
||||||
|
try:
|
||||||
|
leek = Pool.get(Settings(options), Pool.parse(options))[0]
|
||||||
|
team = leek.farmer.data['team']['id']
|
||||||
|
owner = Farmers.farmerIn(Settings(options), Team.getCaptains(team))
|
||||||
|
owner.teamEmblem(team, open(params[0], 'rb'))
|
||||||
|
except ValueError as err:
|
||||||
|
print(format(err))
|
||||||
|
|
||||||
def teamFight(params, options):
|
def teamFight(params, options):
|
||||||
try:
|
try:
|
||||||
random.seed()
|
random.seed()
|
||||||
|
@ -704,6 +722,17 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
def farmersAvatar(params, options):
|
||||||
|
try:
|
||||||
|
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
||||||
|
try:
|
||||||
|
leek.farmer.avatar(open(params[0], 'rb'))
|
||||||
|
leek.farmer.raiseError('OK') #Ugly
|
||||||
|
except ValueError as err:
|
||||||
|
print(format(err))
|
||||||
|
except ValueError as err:
|
||||||
|
print(format(err))
|
||||||
|
|
||||||
|
|
||||||
class Team:
|
class Team:
|
||||||
def create(params, options):
|
def create(params, options):
|
||||||
|
@ -745,6 +774,7 @@ class Farmer:
|
||||||
self.name = self.data['name']
|
self.name = self.data['name']
|
||||||
self.weapons = self.data['weapons']
|
self.weapons = self.data['weapons']
|
||||||
self.chips = self.data['chips']
|
self.chips = self.data['chips']
|
||||||
|
self.potions = self.data['potions']
|
||||||
self.leeks = self.data['leeks']
|
self.leeks = self.data['leeks']
|
||||||
self.fights = self.data['fights']
|
self.fights = self.data['fights']
|
||||||
|
|
||||||
|
@ -820,6 +850,12 @@ class Farmer:
|
||||||
def fight(self, target):
|
def fight(self, target):
|
||||||
return self.checkRequest(lwapi.garden.start_farmer_fight(target, self.token))
|
return self.checkRequest(lwapi.garden.start_farmer_fight(target, self.token))
|
||||||
|
|
||||||
|
def avatar(self, avatar):
|
||||||
|
return self.checkRequest(lwapi.farmer.set_avatar(avatar, self.token))
|
||||||
|
|
||||||
|
def teamEmblem(self, team, emblem):
|
||||||
|
return self.checkRequest(lwapi.team.set_emblem(team, emblem, self.token))
|
||||||
|
|
||||||
def getFirstLeekId(self):
|
def getFirstLeekId(self):
|
||||||
#NOTE: Deprecated
|
#NOTE: Deprecated
|
||||||
return next(iter(self.leeks))
|
return next(iter(self.leeks))
|
||||||
|
@ -874,7 +910,7 @@ class Leek:
|
||||||
self.checkRequest(lwapi.leek.remove_chip(wid, self.farmer.token))
|
self.checkRequest(lwapi.leek.remove_chip(wid, self.farmer.token))
|
||||||
|
|
||||||
def usePotion(self, pid):
|
def usePotion(self, pid):
|
||||||
self.checkRequest(lwapi.leek.use_potion(pid, self.farmer.token))
|
self.checkRequest(lwapi.leek.use_potion(self.id, pid, self.farmer.token))
|
||||||
|
|
||||||
def characteristics(self, bonuses):
|
def characteristics(self, bonuses):
|
||||||
self.checkRequest(
|
self.checkRequest(
|
||||||
|
@ -927,6 +963,8 @@ if __name__ == "__main__":
|
||||||
.addCommand('pool team composition', 'create a composition. a captain must be register', Pool.teamComposition, [{'name': 'composition'}])\
|
.addCommand('pool team composition', 'create a composition. a captain must be register', Pool.teamComposition, [{'name': 'composition'}])\
|
||||||
.addCommand('pool team tournament', 'register composition for team tournament. based on first farmer team', Pool.teamTournament, [])\
|
.addCommand('pool team tournament', 'register composition for team tournament. based on first farmer team', Pool.teamTournament, [])\
|
||||||
.addCommand('pool team fight', 'run team fights', Pool.teamFight, [{'name': 'count', 'optional': True, 'type': int, 'min': 1, 'max': 20}])\
|
.addCommand('pool team fight', 'run team fights', Pool.teamFight, [{'name': 'count', 'optional': True, 'type': int, 'min': 1, 'max': 20}])\
|
||||||
|
.addCommand('pool team emblem', 'set emblem', Pool.teamEmblem, [{'name': 'file'}])\
|
||||||
|
.addCommand('pool farmers avatar', 'set avatar for each farmer', Pool.farmersAvatar, [{'name': 'file'}])\
|
||||||
.addCommand('pool farmers tournament', 'register each farmer to tournament', Pool.farmersTournament, [])\
|
.addCommand('pool farmers tournament', 'register each farmer to tournament', Pool.farmersTournament, [])\
|
||||||
.addCommand('pool auto', 'run "fight, fight force, team fight, tournament, team tournament"', Pool.auto, [])\
|
.addCommand('pool auto', 'run "fight, fight force, team fight, tournament, team tournament"', Pool.auto, [])\
|
||||||
.addCommand('team create', 'create a team', Team.create, [{'name': 'name'}, {'name': 'owner'}])\
|
.addCommand('team create', 'create a team', Team.create, [{'name': 'name'}, {'name': 'owner'}])\
|
||||||
|
|
Reference in New Issue