pylint and twelve
This commit is contained in:
parent
c92fbf3979
commit
3b54e1cc87
|
@ -19,6 +19,7 @@ class CommandTree:
|
||||||
print('Command {0}: Allready added'.format(path))
|
print('Command {0}: Allready added'.format(path))
|
||||||
return self
|
return self
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def checkOption(data, param, path):
|
def checkOption(data, param, path):
|
||||||
if not param is None:
|
if not param is None:
|
||||||
name = param.get('name', '')
|
name = param.get('name', '')
|
||||||
|
@ -38,7 +39,7 @@ class CommandTree:
|
||||||
if type(ptype) is type:
|
if type(ptype) is type:
|
||||||
try:
|
try:
|
||||||
data = ptype(data)
|
data = ptype(data)
|
||||||
except (TypeError, ValueError) as e:
|
except (TypeError, ValueError):
|
||||||
print('Wrong type in "{0}", {1}"{2}" must be an {3}.'.
|
print('Wrong type in "{0}", {1}"{2}" must be an {3}.'.
|
||||||
format(path, name, data, ptype.__name__))
|
format(path, name, data, ptype.__name__))
|
||||||
return False
|
return False
|
||||||
|
|
94
LeekBots.py
94
LeekBots.py
|
@ -7,6 +7,7 @@ import random
|
||||||
import time
|
import time
|
||||||
import os.path
|
import os.path
|
||||||
import json
|
import json
|
||||||
|
import itertools
|
||||||
import APILeekwars as API
|
import APILeekwars as API
|
||||||
from CommandTree import CommandTree
|
from CommandTree import CommandTree
|
||||||
|
|
||||||
|
@ -71,6 +72,8 @@ class Settings:
|
||||||
|
|
||||||
class Items:
|
class Items:
|
||||||
weapons = None
|
weapons = None
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def getWeapons():
|
def getWeapons():
|
||||||
if Items.weapons == None:
|
if Items.weapons == None:
|
||||||
Items.weapons = {}
|
Items.weapons = {}
|
||||||
|
@ -80,6 +83,8 @@ class Items:
|
||||||
return Items.weapons
|
return Items.weapons
|
||||||
|
|
||||||
chips = None
|
chips = None
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def getChips():
|
def getChips():
|
||||||
if Items.chips == None:
|
if Items.chips == None:
|
||||||
Items.chips = {}
|
Items.chips = {}
|
||||||
|
@ -89,6 +94,8 @@ class Items:
|
||||||
return Items.chips
|
return Items.chips
|
||||||
|
|
||||||
potions = None
|
potions = None
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def getPotions():
|
def getPotions():
|
||||||
if Items.potions == None:
|
if Items.potions == None:
|
||||||
Items.potions = {}
|
Items.potions = {}
|
||||||
|
@ -97,18 +104,22 @@ class Items:
|
||||||
Items.potions[int(potion)] = potions[potion]['name']
|
Items.potions[int(potion)] = potions[potion]['name']
|
||||||
return Items.potions
|
return Items.potions
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def getAll():
|
def getAll():
|
||||||
return {**Items.getWeapons(), **Items.getChips(), **Items.getPotions()}
|
return {**Items.getWeapons(), **Items.getChips(), **Items.getPotions()}
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def getName(id):
|
def getName(id):
|
||||||
return Items.getAll().get(id, '?')
|
return Items.getAll().get(id, '?')
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def keyForValue(items, key):
|
def keyForValue(items, key):
|
||||||
try:
|
try:
|
||||||
return list(items.keys())[list(items.values()).index(key)]
|
return list(items.keys())[list(items.values()).index(key)]
|
||||||
except:
|
except:
|
||||||
raise ValueError('Unknown item "{0}"'.format(key))
|
raise ValueError('Unknown item "{0}"'.format(key))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def toID(items, key):
|
def toID(items, key):
|
||||||
if key.isdigit():
|
if key.isdigit():
|
||||||
key = int(key)
|
key = int(key)
|
||||||
|
@ -120,18 +131,21 @@ class Items:
|
||||||
|
|
||||||
|
|
||||||
class Farmers:
|
class Farmers:
|
||||||
|
@staticmethod
|
||||||
def login(login, password):
|
def login(login, password):
|
||||||
r = lwapi.farmer.login_token(login, password)
|
r = lwapi.farmer.login_token(login, password)
|
||||||
if not r.get('success', False):
|
if not r.get('success', False):
|
||||||
raise ValueError('{0}: {1}'.format(login, r.get('error', 'Fail')))
|
raise ValueError('{0}: {1}'.format(login, r.get('error', 'Fail')))
|
||||||
return Farmer(r)
|
return Farmer(r)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def farmer(settings, id):
|
def farmer(settings, id):
|
||||||
login = settings.getFarmers().get(id)
|
login = settings.getFarmers().get(id)
|
||||||
if login is None:
|
if login is None:
|
||||||
raise ValueError('Can\'t find Farmer "{0}"'.format(id))
|
raise ValueError('Can\'t find Farmer "{0}"'.format(id))
|
||||||
return Farmers.login(login['login'], login['password'])
|
return Farmers.login(login['login'], login['password'])
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def farmerIn(settings, ids):
|
def farmerIn(settings, ids):
|
||||||
for id in ids:
|
for id in ids:
|
||||||
login = settings.getFarmers().get(id)
|
login = settings.getFarmers().get(id)
|
||||||
|
@ -139,6 +153,7 @@ class Farmers:
|
||||||
return Farmers.login(login['login'], login['password'])
|
return Farmers.login(login['login'], login['password'])
|
||||||
raise ValueError('Can\'t find any farmer')
|
raise ValueError('Can\'t find any farmer')
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def parse(options):
|
def parse(options):
|
||||||
farmer = options.get('farmer')
|
farmer = options.get('farmer')
|
||||||
if farmer is None:
|
if farmer is None:
|
||||||
|
@ -146,6 +161,7 @@ class Farmers:
|
||||||
print('Using "{0}" farmer'.format(farmer))
|
print('Using "{0}" farmer'.format(farmer))
|
||||||
return farmer
|
return farmer
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def get(settings):
|
def get(settings):
|
||||||
farmers = []
|
farmers = []
|
||||||
logins = settings.getFarmers()
|
logins = settings.getFarmers()
|
||||||
|
@ -157,6 +173,7 @@ class Farmers:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
return farmers
|
return farmers
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def list(params, options):
|
def list(params, options):
|
||||||
mode = params[0]
|
mode = params[0]
|
||||||
if mode is None:
|
if mode is None:
|
||||||
|
@ -183,6 +200,7 @@ class Farmers:
|
||||||
farmer.leeks[id]['level'],
|
farmer.leeks[id]['level'],
|
||||||
farmer.leeks[id]['talent']))
|
farmer.leeks[id]['talent']))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def stats(params, options):
|
def stats(params, options):
|
||||||
print('Deprecated: use "pool stats"')
|
print('Deprecated: use "pool stats"')
|
||||||
mode = params[0]
|
mode = params[0]
|
||||||
|
@ -197,6 +215,7 @@ class Farmers:
|
||||||
fields[field]), int(sum(fields[field]) / len(fields[field])),
|
fields[field]), int(sum(fields[field]) / len(fields[field])),
|
||||||
max(fields[field])))
|
max(fields[field])))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def register(params, options):
|
def register(params, options):
|
||||||
login = params[0]
|
login = params[0]
|
||||||
password = params[1]
|
password = params[1]
|
||||||
|
@ -207,6 +226,7 @@ class Farmers:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def buy(params, options):
|
def buy(params, options):
|
||||||
item = params[0]
|
item = params[0]
|
||||||
for farmer in Farmers.get(Settings(options)):
|
for farmer in Farmers.get(Settings(options)):
|
||||||
|
@ -220,6 +240,7 @@ class Farmers:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def sell(params, options):
|
def sell(params, options):
|
||||||
item = params[0]
|
item = params[0]
|
||||||
for farmer in Farmers.get(Settings(options)):
|
for farmer in Farmers.get(Settings(options)):
|
||||||
|
@ -229,6 +250,7 @@ class Farmers:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def tournament(params, options):
|
def tournament(params, options):
|
||||||
try:
|
try:
|
||||||
farmer = Farmers.farmer(Settings(options), Farmers.parse(options))
|
farmer = Farmers.farmer(Settings(options), Farmers.parse(options))
|
||||||
|
@ -237,6 +259,7 @@ class Farmers:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def fight(params, options):
|
def fight(params, options):
|
||||||
try:
|
try:
|
||||||
random.seed()
|
random.seed()
|
||||||
|
@ -245,7 +268,7 @@ class Farmers:
|
||||||
if type(params[0]) is int else 20):
|
if type(params[0]) is int else 20):
|
||||||
opponents = farmer.getOpponents()
|
opponents = farmer.getOpponents()
|
||||||
if len(opponents) < 1:
|
if len(opponents) < 1:
|
||||||
leek.raiseError('Probably, no more farmer fights')
|
farmer.raiseError('Probably, no more farmer fights')
|
||||||
|
|
||||||
if options['selection-mode'] == 'random':
|
if options['selection-mode'] == 'random':
|
||||||
opid = random.choice(opponents)['id']
|
opid = random.choice(opponents)['id']
|
||||||
|
@ -273,6 +296,7 @@ class Farmers:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def createLeek(params, options):
|
def createLeek(params, options):
|
||||||
name = params[0]
|
name = params[0]
|
||||||
try:
|
try:
|
||||||
|
@ -282,19 +306,50 @@ class Farmers:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def twelve(params, options):
|
||||||
|
try:
|
||||||
|
farmer = Farmers.farmer(Settings(options), Farmers.parse(options))
|
||||||
|
buys = {}
|
||||||
|
for item in farmer.market().values():
|
||||||
|
buys['buy ' + item['name']] = -item['price_habs']
|
||||||
|
|
||||||
|
targetHabs = 121212 - farmer.habs
|
||||||
|
|
||||||
|
itemsCount = 0
|
||||||
|
haveTooMuch = True
|
||||||
|
while haveTooMuch:
|
||||||
|
print('With '+str(itemsCount)+' items')
|
||||||
|
haveTooMuch = False
|
||||||
|
for combination in itertools.combinations_with_replacement(buys, itemsCount):
|
||||||
|
currentHabs = sum(buys[op] for op in combination)
|
||||||
|
if currentHabs == targetHabs:
|
||||||
|
print(combination)
|
||||||
|
return
|
||||||
|
elif currentHabs > targetHabs:
|
||||||
|
haveTooMuch = True
|
||||||
|
itemsCount+=1
|
||||||
|
|
||||||
|
farmer.raiseError('OK') #Ugly
|
||||||
|
except ValueError as err:
|
||||||
|
print(format(err))
|
||||||
|
|
||||||
|
|
||||||
class Pools:
|
class Pools:
|
||||||
|
@staticmethod
|
||||||
def list(params, options):
|
def list(params, options):
|
||||||
print('TODO add params (leeks, ...)')
|
print('TODO add params (leeks, ...)')
|
||||||
print(', '.join(Settings(options).getPools()))
|
print(', '.join(Settings(options).getPools()))
|
||||||
|
|
||||||
|
|
||||||
class Pool:
|
class Pool:
|
||||||
|
@staticmethod
|
||||||
def parse(options):
|
def parse(options):
|
||||||
pool = options.get('pool', 'main')
|
pool = options.get('pool', 'main')
|
||||||
print('Using "{0}" pool'.format(pool))
|
print('Using "{0}" pool'.format(pool))
|
||||||
return pool
|
return pool
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def get(settings, pid):
|
def get(settings, pid):
|
||||||
pool = settings.getPools().get(pid)
|
pool = settings.getPools().get(pid)
|
||||||
farmers = settings.getFarmers()
|
farmers = settings.getFarmers()
|
||||||
|
@ -311,12 +366,14 @@ class Pool:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
return leeks
|
return leeks
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def create(params, options):
|
def create(params, options):
|
||||||
try:
|
try:
|
||||||
Settings(options).addPool(Pool.parse(options))
|
Settings(options).addPool(Pool.parse(options))
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def register(params, options):
|
def register(params, options):
|
||||||
try:
|
try:
|
||||||
pool = Pool.parse(options)
|
pool = Pool.parse(options)
|
||||||
|
@ -333,6 +390,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def list(params, options):
|
def list(params, options):
|
||||||
try:
|
try:
|
||||||
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
||||||
|
@ -358,6 +416,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def stats(params, options):
|
def stats(params, options):
|
||||||
mode = params[0]
|
mode = params[0]
|
||||||
if mode == 'infos':
|
if mode == 'infos':
|
||||||
|
@ -391,6 +450,7 @@ class Pool:
|
||||||
fields[field]), int(sum(fields[field]) / len(fields[field])),
|
fields[field]), int(sum(fields[field]) / len(fields[field])),
|
||||||
max(fields[field])))
|
max(fields[field])))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def items(params, options):
|
def items(params, options):
|
||||||
mode = params[0]
|
mode = params[0]
|
||||||
items = {}
|
items = {}
|
||||||
|
@ -420,6 +480,7 @@ class Pool:
|
||||||
items[field]), int(sum(items[field]) / len(items[field])),
|
items[field]), int(sum(items[field]) / len(items[field])),
|
||||||
max(items[field])))
|
max(items[field])))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def fight(params, options):
|
def fight(params, options):
|
||||||
try:
|
try:
|
||||||
random.seed()
|
random.seed()
|
||||||
|
@ -478,6 +539,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def setupAI(params, options):
|
def setupAI(params, options):
|
||||||
try:
|
try:
|
||||||
pool = Pool.parse(options)
|
pool = Pool.parse(options)
|
||||||
|
@ -521,6 +583,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def tournament(params, options):
|
def tournament(params, options):
|
||||||
try:
|
try:
|
||||||
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
||||||
|
@ -532,6 +595,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def equipWeapon(params, options):
|
def equipWeapon(params, options):
|
||||||
try:
|
try:
|
||||||
template = Items.toID(Items.getWeapons(), params[0])
|
template = Items.toID(Items.getWeapons(), params[0])
|
||||||
|
@ -553,6 +617,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def unequipWeapon(params, options):
|
def unequipWeapon(params, options):
|
||||||
try:
|
try:
|
||||||
template = Items.toID(Items.getWeapons(), params[0])
|
template = Items.toID(Items.getWeapons(), params[0])
|
||||||
|
@ -574,6 +639,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def equipChip(params, options):
|
def equipChip(params, options):
|
||||||
try:
|
try:
|
||||||
template = Items.toID(Items.getChips(), params[0])
|
template = Items.toID(Items.getChips(), params[0])
|
||||||
|
@ -595,6 +661,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def unequipChip(params, options):
|
def unequipChip(params, options):
|
||||||
try:
|
try:
|
||||||
template = Items.toID(Items.getChips(), params[0])
|
template = Items.toID(Items.getChips(), params[0])
|
||||||
|
@ -616,6 +683,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def usePotion(params, options):
|
def usePotion(params, options):
|
||||||
try:
|
try:
|
||||||
template = Items.toID(Items.getPotions(), params[0])
|
template = Items.toID(Items.getPotions(), params[0])
|
||||||
|
@ -637,6 +705,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def buy(params, options):
|
def buy(params, options):
|
||||||
try:
|
try:
|
||||||
item = Items.toID(Items.getAll(), params[0])
|
item = Items.toID(Items.getAll(), params[0])
|
||||||
|
@ -653,6 +722,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def sell(params, options):
|
def sell(params, options):
|
||||||
try:
|
try:
|
||||||
item = Items.toID(Items.getAll(), params[0])
|
item = Items.toID(Items.getAll(), params[0])
|
||||||
|
@ -665,6 +735,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def characteristics(params, options):
|
def characteristics(params, options):
|
||||||
bonuses = {
|
bonuses = {
|
||||||
'life': 0,
|
'life': 0,
|
||||||
|
@ -689,6 +760,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def teamJoin(params, options):
|
def teamJoin(params, options):
|
||||||
team = params[0]
|
team = params[0]
|
||||||
try:
|
try:
|
||||||
|
@ -708,6 +780,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def teamComposition(params, options):
|
def teamComposition(params, options):
|
||||||
try:
|
try:
|
||||||
leeks = Pool.get(Settings(options), Pool.parse(options))
|
leeks = Pool.get(Settings(options), Pool.parse(options))
|
||||||
|
@ -726,6 +799,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def teamTournament(params, options):
|
def teamTournament(params, options):
|
||||||
try:
|
try:
|
||||||
leek = Pool.get(Settings(options), Pool.parse(options))[0]
|
leek = Pool.get(Settings(options), Pool.parse(options))[0]
|
||||||
|
@ -740,6 +814,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def teamEmblem(params, options):
|
def teamEmblem(params, options):
|
||||||
try:
|
try:
|
||||||
leek = Pool.get(Settings(options), Pool.parse(options))[0]
|
leek = Pool.get(Settings(options), Pool.parse(options))[0]
|
||||||
|
@ -749,6 +824,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def teamFight(params, options):
|
def teamFight(params, options):
|
||||||
try:
|
try:
|
||||||
random.seed()
|
random.seed()
|
||||||
|
@ -791,6 +867,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def auto(params, options):
|
def auto(params, options):
|
||||||
Pool.fight([None, None], options)
|
Pool.fight([None, None], options)
|
||||||
Pool.fight([None, 'force'], options)
|
Pool.fight([None, 'force'], options)
|
||||||
|
@ -799,6 +876,7 @@ class Pool:
|
||||||
Pool.tournament([], options)
|
Pool.tournament([], options)
|
||||||
Pool.teamTournament([], options)
|
Pool.teamTournament([], options)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def farmersTournament(params, options):
|
def farmersTournament(params, options):
|
||||||
try:
|
try:
|
||||||
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
||||||
|
@ -810,6 +888,7 @@ class Pool:
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def farmersAvatar(params, options):
|
def farmersAvatar(params, options):
|
||||||
try:
|
try:
|
||||||
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
for leek in Pool.get(Settings(options), Pool.parse(options)):
|
||||||
|
@ -823,15 +902,17 @@ class Pool:
|
||||||
|
|
||||||
|
|
||||||
class Team:
|
class Team:
|
||||||
|
@staticmethod
|
||||||
def create(params, options):
|
def create(params, options):
|
||||||
name = params[0]
|
name = params[0]
|
||||||
try:
|
try:
|
||||||
farmer = Farmers.farmer(params[1])
|
farmer = Farmers.farmer(Settings(options), Farmers.parse(options))
|
||||||
farmer.createTeam(name)
|
farmer.createTeam(name)
|
||||||
farmer.raiseError('OK') #Ugly
|
farmer.raiseError('OK') #Ugly
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
print(format(err))
|
print(format(err))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def get(team):
|
def get(team):
|
||||||
req = lwapi.team.get(team)
|
req = lwapi.team.get(team)
|
||||||
if not req.get('success', False):
|
if not req.get('success', False):
|
||||||
|
@ -839,12 +920,14 @@ class Team:
|
||||||
req.get('error', 'Fail')))
|
req.get('error', 'Fail')))
|
||||||
return req['team']
|
return req['team']
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def getOwner(team):
|
def getOwner(team):
|
||||||
for member in Team.get(team)['members']:
|
for member in Team.get(team)['members']:
|
||||||
if member['grade'] == 'owner':
|
if member['grade'] == 'owner':
|
||||||
return str(member['id'])
|
return str(member['id'])
|
||||||
raise ValueError('Team {0} : Can\'t find owner'.format(team))
|
raise ValueError('Team {0} : Can\'t find owner'.format(team))
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
def getCaptains(team):
|
def getCaptains(team):
|
||||||
captains = []
|
captains = []
|
||||||
for member in Team.get(team)['members']:
|
for member in Team.get(team)['members']:
|
||||||
|
@ -860,6 +943,7 @@ class Farmer:
|
||||||
|
|
||||||
self.id = self.data['id']
|
self.id = self.data['id']
|
||||||
self.name = self.data['name']
|
self.name = self.data['name']
|
||||||
|
self.habs = self.data['habs']
|
||||||
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.potions = self.data['potions']
|
||||||
|
@ -880,6 +964,9 @@ class Farmer:
|
||||||
def sell(self, item):
|
def sell(self, item):
|
||||||
self.checkRequest(lwapi.market.sell_habs(item, self.token))
|
self.checkRequest(lwapi.market.sell_habs(item, self.token))
|
||||||
|
|
||||||
|
def market(self):
|
||||||
|
return self.checkRequest(lwapi.market.get_item_templates(self.token))['items']
|
||||||
|
|
||||||
def getLeek(self, leek):
|
def getLeek(self, leek):
|
||||||
return Leek(
|
return Leek(
|
||||||
self.checkRequest(lwapi.leek.get_private(leek, self.token)), self)
|
self.checkRequest(lwapi.leek.get_private(leek, self.token)), self)
|
||||||
|
@ -1035,6 +1122,7 @@ if __name__ == "__main__":
|
||||||
.addCommand('farmer fight', 'run farmer fights', Farmers.fight, [{'name': 'count', 'optional': True, 'type': int, 'min': 1, 'max': 20}])\
|
.addCommand('farmer fight', 'run farmer fights', Farmers.fight, [{'name': 'count', 'optional': True, 'type': int, 'min': 1, 'max': 20}])\
|
||||||
.addCommand('farmer tournament', 'register farmer to tournament', Farmers.tournament, [])\
|
.addCommand('farmer tournament', 'register farmer to tournament', Farmers.tournament, [])\
|
||||||
.addCommand('farmer create leek', 'create a new leek for farmer', Farmers.createLeek, [{'name': 'name'}])\
|
.addCommand('farmer create leek', 'create a new leek for farmer', Farmers.createLeek, [{'name': 'name'}])\
|
||||||
|
.addCommand('farmer twelve', 'helper', Farmers.twelve, [])\
|
||||||
.addCommand('pools list', 'list all pools',Pools.list, [])\
|
.addCommand('pools list', 'list all pools',Pools.list, [])\
|
||||||
.addCommand('pool create', 'create a new pool',Pool.create, [])\
|
.addCommand('pool create', 'create a new pool',Pool.create, [])\
|
||||||
.addCommand('pool register', 'add a leek to a pool',Pool.register, [{'name': 'leek'}])\
|
.addCommand('pool register', 'add a leek to a pool',Pool.register, [{'name': 'leek'}])\
|
||||||
|
|
Reference in New Issue