I wish they would have used 22/7 for pi and 7 for the radius or height
- 0 Posts
- 2 Comments
Joined 2 years ago
Cake day: July 2nd, 2023
You are not logged in. If you use a Fediverse account that is able to follow users, you can follow this user.
I wish they would have used 22/7 for pi and 7 for the radius or height
I worked with chatgpt since I’m not a python dev, and this is what I came up with
from time import time class PlaySession: def __init__(self, data: dict): self.guild_id = int(data['guild_id']) self.user_id = int(data['user_id']) self.timestamp = data['time'] def is_longer_than_half_hour(self) -> bool: return self.timestamp + 1800 < time() async def resolve_member(self, bot) -> "discord.Member | None": guild = bot.get_guild(self.guild_id) return guild.get_member(self.user_id) if guild else None @staticmethod def is_playing_league(member) -> bool: activity = getattr(member, 'activity', None) name = getattr(activity, 'name', None) return name and name.lower() == "league of legends" async def ban_for_league(member): await member.send("The 30 minutes has elapsed and you are still playing league, get banned.") await member.ban(delete_message_days=0, reason="playing league") async def process_entries(bot, entry_dicts): sessions = [PlaySession(d) for d in entry_dicts if PlaySession(d).is_longer_than_half_hour()] for session in sessions: member = await session.resolve_member(bot) if member and PlaySession.is_playing_league(member): await ban_for_league(member)