added league ownership commands
This commit is contained in:
parent
b2b790b3c9
commit
bac252b0be
|
@ -806,14 +806,18 @@ Plays a league with a given name, provided that league has been saved on the web
|
||||||
if active_league.name == league.name:
|
if active_league.name == league.name:
|
||||||
await msg.channel.send("That league is already running, boss. Patience is a virtue, you know.")
|
await msg.channel.send("That league is already running, boss. Patience is a virtue, you know.")
|
||||||
return
|
return
|
||||||
league.autoplay = autoplay
|
if (league.owner is not None and msg.author.id in league.owner) or msg.author.id in config()["owners"]:
|
||||||
league.games_per_hour = gph
|
league.autoplay = autoplay
|
||||||
if str(league.day_to_series_num(league.day)) not in league.schedule.keys():
|
league.games_per_hour = gph
|
||||||
await league_postseason(msg.channel, league)
|
if str(league.day_to_series_num(league.day)) not in league.schedule.keys():
|
||||||
elif league.day % league.series_length == 1:
|
await league_postseason(msg.channel, league)
|
||||||
await start_league_day(msg.channel, league)
|
elif league.day % league.series_length == 1:
|
||||||
|
await start_league_day(msg.channel, league)
|
||||||
|
else:
|
||||||
|
await start_league_day(msg.channel, league, partial = True)
|
||||||
else:
|
else:
|
||||||
await start_league_day(msg.channel, league, partial = True)
|
await msg.channel.send("You don't have permission to manage that league.")
|
||||||
|
return
|
||||||
else:
|
else:
|
||||||
await msg.channel.send("Couldn't find that league, boss. Did you save it on the website?")
|
await msg.channel.send("Couldn't find that league, boss. Did you save it on the website?")
|
||||||
|
|
||||||
|
@ -853,9 +857,53 @@ class LeaguePauseCommand(Command):
|
||||||
league_name = command.strip()
|
league_name = command.strip()
|
||||||
for active_league in active_leagues:
|
for active_league in active_leagues:
|
||||||
if active_league.name == league_name:
|
if active_league.name == league_name:
|
||||||
active_league.autoplay = 0
|
if (active_league.owner is not None and msg.author.id in active_league.owner) or msg.author.id in config()["owners"]:
|
||||||
await msg.channel.send(f"Loud and clear, chief. {league_name} will stop after this series is over.")
|
active_league.autoplay = 0
|
||||||
|
await msg.channel.send(f"Loud and clear, chief. {league_name} will stop after this series is over.")
|
||||||
|
return
|
||||||
|
else:
|
||||||
|
await msg.channel.send("You don't have permission to manage that league.")
|
||||||
|
return
|
||||||
|
await msg.channel.send("That league either doesn't exist or isn't running.")
|
||||||
|
|
||||||
|
class LeagueClaimCommand(Command):
|
||||||
|
name = "claimleague"
|
||||||
|
template = "m;claimleague [league name]"
|
||||||
|
description = "Claims an unclaimed league. Do this as soon as possible after creating the league, or it will remain unclaimed."
|
||||||
|
|
||||||
|
async def execute(self, msg, command):
|
||||||
|
league_name = command.strip()
|
||||||
|
if league_exists(league_name):
|
||||||
|
league = leagues.load_league_file(league_name)
|
||||||
|
if league.owner is None:
|
||||||
|
league.owner = [msg.author.id]
|
||||||
|
leagues.save_league(league)
|
||||||
|
await msg.channel.send(f"The {league} commissioner is doing a great job. That's you, by the way.")
|
||||||
|
else:
|
||||||
|
await msg.channel.send("That league has already been claimed!")
|
||||||
|
await msg.channel.send("Can't find that league, boss.")
|
||||||
|
|
||||||
|
class LeagueAddOwnersCommand(Command):
|
||||||
|
name = "addleagueowner"
|
||||||
|
template = "m;addleagueowner [league name]\n[user mentions]"
|
||||||
|
description = "Adds additional owners to a league."
|
||||||
|
|
||||||
|
async def execute(self, msg, command):
|
||||||
|
league_name = command.split("\n")[0].strip()
|
||||||
|
if league_exists(league_name):
|
||||||
|
league = leagues.load_league_file(league_name)
|
||||||
|
if league.owner is not None and (msg.author.id in league.owner or msg.author.id in config()["owners"]):
|
||||||
|
for user in msg.mentions:
|
||||||
|
if user.id not in league.owner:
|
||||||
|
league.owner.append(user.id)
|
||||||
|
await msg.channel.send(f"The new {league} front office is now up and running.")
|
||||||
|
return
|
||||||
|
else:
|
||||||
|
await msg.channel.send(f"That league hasn't been claimed yet. Try m;claimleague first.")
|
||||||
|
return
|
||||||
|
else:
|
||||||
|
await msg.channel.send("Can't find that league, boss.")
|
||||||
|
|
||||||
class LeagueScheduleCommand(Command):
|
class LeagueScheduleCommand(Command):
|
||||||
name = "leagueschedule"
|
name = "leagueschedule"
|
||||||
template = "m;leagueschedule [league name]"
|
template = "m;leagueschedule [league name]"
|
||||||
|
@ -901,13 +949,15 @@ commands = [
|
||||||
ShowAllTeamsCommand(),
|
ShowAllTeamsCommand(),
|
||||||
SearchTeamsCommand(),
|
SearchTeamsCommand(),
|
||||||
StartGameCommand(),
|
StartGameCommand(),
|
||||||
|
StartRandomGameCommand(),
|
||||||
StartTournamentCommand(),
|
StartTournamentCommand(),
|
||||||
|
LeagueClaimCommand(),
|
||||||
|
LeagueAddOwnersCommand(),
|
||||||
StartLeagueCommand(),
|
StartLeagueCommand(),
|
||||||
LeaguePauseCommand(),
|
LeaguePauseCommand(),
|
||||||
LeagueDisplayCommand(),
|
LeagueDisplayCommand(),
|
||||||
LeagueWildcardCommand(),
|
LeagueWildcardCommand(),
|
||||||
LeagueScheduleCommand(),
|
LeagueScheduleCommand(),
|
||||||
StartRandomGameCommand(),
|
|
||||||
CreditCommand(),
|
CreditCommand(),
|
||||||
RomanCommand(),
|
RomanCommand(),
|
||||||
HelpCommand(),
|
HelpCommand(),
|
||||||
|
|
Loading…
Reference in New Issue
Block a user