Исходник Клан система для дискорд сервера

Начинающий
Статус
Оффлайн
Регистрация
20 Май 2020
Сообщения
84
Реакции[?]
3
Поинты[?]
0
Клан система которая включает в себя создание клановых рум считает общий онлайн клана в войсах, ну чтобы создать клан вам нужно написать код коинов чтобы создать клан потому что для создание клана требуется 10000 монеток если
Python:
import disnake
from datetime import datetime, timedelta
from disnake.ext import commands
from disnake import Embed
import sqlite3

intents = disnake.Intents.default()
intents.members = True

conn = sqlite3.connect('shop.db')
c = conn.cursor()

c.execute('''CREATE TABLE IF NOT EXISTS balances
             (user_id INTEGER PRIMARY KEY, coins INTEGER)''')

try:
    c.execute('''ALTER TABLE balances
    ADD COLUMN next_time DATE''')
except sqlite3.OperationalError:
    pass
conn.commit()


class Balance(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        self.db = sqlite3.connect('shop.db')
        print("finance load")

    async def get_coins(self, user_id: int):
        c = self.db.cursor()
        c.execute("SELECT coins FROM balances WHERE user_id=?", (user_id,))
        result = c.fetchone()
        if result:
            return result[0]
        return None

    async def deduct_coins(self, user_id: int, amount: int):
        c.execute("SELECT coins FROM balances WHERE user_id=?", (user_id,))
        result = c.fetchone()

        if result:
            current_coins = result[0]
            new_coins = max(0, current_coins - amount)
            c.execute("UPDATE balances SET coins=? WHERE user_id=?", (new_coins, user_id))
            conn.commit()
            return new_coins
        return None

    @commands.slash_command(name="balance", description="Проверить баланс")
    async def _balance(self, ctx):
        user_id = ctx.author.id
        c.execute("SELECT coins FROM balances WHERE user_id=?", (user_id,))
        result = c.fetchone()
        if result:
            coins = result[0]
            embed = Embed(
                title="Баланс",
                description=f"{ctx.author.mention}, ваш баланс: {coins} :pound:",
                color=0xFF5733
            )
            embed.set_author(name=ctx.author.display_name, icon_url=ctx.author.display_avatar.url)
            await ctx.send(embed=embed)
        else:
            embed = Embed(
                title="Баланс",
                description=f"{ctx.author.mention}, у вас еще нет :pound:!",
                color=0xFF5733
            )
            await ctx.send(embed=embed)
еще можно много чего доделать на самом деле
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Сверху Снизу