Python Discord Bot Status

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
AGW2021
User
Beiträge: 3
Registriert: Samstag 15. Mai 2021, 20:53

Hallo,

ich habe meinen Python Discord Bot einen Status geben, der sich alle 20 Sekunden ändert, nur wenn er beim letzten Status angekommen ist bleibt der für immer, aber ich möchte wenn er unten angekommen ist, dass es von oben wieder weiter macht, nur wie mache ich das?

Hier der Code:

Code: Alles auswählen

async def on_ready(self):
    print("Ich habe mich eingeloggt. Beep bop. bot.py")
    await client.change_presence(status=discord.Status.online)
    await client.change_presence(activity=discord.Game('/help'))
    await asyncio.sleep(20)
    await client.change_presence(activity=discord.Game('Beispiel'))
    await asyncio.sleep(20)
    await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name='Beispiel'))
    await asyncio.sleep(20)
    await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name='Beispiel'))
    await asyncio.sleep(20)
    await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name='Beispiel'))
    await asyncio.sleep(20)
    await client.change_presence(activity=discord.Game('Beispiel'))
    await asyncio.sleep(20)
    await client.change_presence(activity=discord.Game('Beispiel'))
    await asyncio.sleep(20)
Danke im Voraus.

Gruß
AGW2021
Benutzeravatar
sparrow
User
Beiträge: 4193
Registriert: Freitag 17. April 2009, 10:28

Wenn man etwas in der Programmierung wiederholen möchte, tut man das in der Regel mit Schleifen.
Benutzeravatar
__blackjack__
User
Beiträge: 13100
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Wobei da ja auch jetzt schon Codewiederholungen drin sind, die man durch eine Schleife ausdrücken könnte.

Code: Alles auswählen

    async def on_ready(self):
        print("Ich habe mich eingeloggt. Beep bop. bot.py")
        await client.change_presence(status=discord.Status.online)
        for activity in [
            discord.Game("/help"),
            discord.Game("Beispiel"),
            discord.Activity(
                type=discord.ActivityType.watching, name="Beispiel"
            ),
            discord.Activity(
                type=discord.ActivityType.watching, name="Beispiel"
            ),
            discord.Activity(
                type=discord.ActivityType.watching, name="Beispiel"
            ),
            discord.Game("Beispiel"),
            discord.Game("Beispiel"),
        ]:
            await client.change_presence(activity=activity)
            await asyncio.sleep(20)
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
AGW2021
User
Beiträge: 3
Registriert: Samstag 15. Mai 2021, 20:53

__blackjack__ hat geschrieben: Sonntag 16. Mai 2021, 15:09 Wobei da ja auch jetzt schon Codewiederholungen drin sind, die man durch eine Schleife ausdrücken könnte.

Code: Alles auswählen

    async def on_ready(self):
        print("Ich habe mich eingeloggt. Beep bop. bot.py")
        await client.change_presence(status=discord.Status.online)
        for activity in [
            discord.Game("/help"),
            discord.Game("Beispiel"),
            discord.Activity(
                type=discord.ActivityType.watching, name="Beispiel"
            ),
            discord.Activity(
                type=discord.ActivityType.watching, name="Beispiel"
            ),
            discord.Activity(
                type=discord.ActivityType.watching, name="Beispiel"
            ),
            discord.Game("Beispiel"),
            discord.Game("Beispiel"),
        ]:
            await client.change_presence(activity=activity)
            await asyncio.sleep(20)
Danke, aber beim letzten Beispiel bleibt er stehen und fängt nicht von oben wieder an.

Gruß
AGW2021
Benutzeravatar
__blackjack__
User
Beiträge: 13100
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Ja weiss ich. Das war ja jetzt auch nur der vorhandene Code mit einer Schleife.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
AGW2021
User
Beiträge: 3
Registriert: Samstag 15. Mai 2021, 20:53

__blackjack__ hat geschrieben: Sonntag 16. Mai 2021, 16:03 Ja weiss ich. Das war ja jetzt auch nur der vorhandene Code mit einer Schleife.
Achso
Antworten