en
Feedback
DRIFT FREE SOURCE CODE

DRIFT FREE SOURCE CODE

Open in Telegram

Show more
The country is not specifiedThe category is not specified
1 888
Subscribers
+1224 hours
+337 days
+16030 days
Posts Archive
4 MORE ❤️🌹

🎲 Gᴜʏss, Lᴜᴅᴏ Vᴀʟᴀ 30+ Vᴏᴛᴇ Cᴏᴍᴘʟᴇᴛᴇ Hᴏ Gᴀʏᴀ! 🚀 📂 Aᴀᴊ Sʀᴄ Cᴏᴅᴇ Uᴘʟᴏᴀᴅ Kᴀʀ Dᴜɴɢᴀ 🔥 ❤️🌹 Aʙ 15+ Rᴇᴀᴄᴛɪᴏɴ Dᴇ Dᴏ! ⚡ Sᴜᴘᴘᴏʀᴛ Dɪᴋʜᴀᴏ Gᴜʏss ❤️ 🚀 Uᴘʟᴏᴀᴅ Cᴏᴍɪɴɢ Sᴏᴏɴ!

⚡ 𝐓𝐡𝐚𝐧𝐤𝐬 𝐄𝐯𝐞𝐫𝐲𝐨𝐧𝐞 𝐅𝐨𝐫 𝐘𝐨𝐮𝐫 𝐋𝐨𝐯𝐞 & 𝐒𝐮𝐩𝐩𝐨𝐫𝐭
🚀 𝐖𝐞 𝐇𝐢𝐭 𝟏𝟎𝟎𝟎 𝐌𝐞𝐦𝐛𝐞𝐫𝐬 𝐒𝐮𝐜𝐜𝐞𝐬𝐬𝐟𝐮𝐥𝐥𝐲 🔥
💎 𝐌𝐨𝐫𝐞 𝐁𝐢𝐠 𝐔𝐩𝐝𝐚𝐭𝐞𝐬 & 𝐆𝐢𝐯𝐞𝐚𝐰𝐚𝐲𝐬 𝐂𝐨𝐦𝐢𝐧𝐠 𝐒𝐨𝐨𝐧
❤️ 𝐋𝐨𝐯𝐞 𝐘𝐨𝐮 𝐀𝐥𝐥 𝐆𝐮𝐲𝐬

Bas 9 reaction 🙂

😂 Gᴜʏss, Kᴀʜɪ Mᴀɪ Sᴀᴘɴᴀ Tᴏ Nʜɪ Dᴇᴋʜ Rᴀʜᴀ? 😭 ⚡ Bᴏᴛ Sᴘᴇᴇᴅ ➜ 0.6687s ⚙️ Cᴘᴜ ➜ 2.6 Gʜᴢ 💾 Rᴀᴍ ➜ 33,826,901.37 Gʙ 🤯 🟢 Fʀᴇᴇ ➜ 2
😂 Gᴜʏss, Kᴀʜɪ Mᴀɪ Sᴀᴘɴᴀ Tᴏ Nʜɪ Dᴇᴋʜ Rᴀʜᴀ? 😭 ⚡ Bᴏᴛ Sᴘᴇᴇᴅ ➜ 0.6687s ⚙️ Cᴘᴜ ➜ 2.6 Gʜᴢ 💾 Rᴀᴍ ➜ 33,826,901.37 Gʙ 🤯 🟢 Fʀᴇᴇ ➜ 21,395,506.99 Gʙ 🚀 😂 Iᴛɴɪ Rᴀᴍ Tᴏ Dᴀᴛᴀ Cᴇɴᴛᴇʀ Mᴇ Bʜɪ Nᴀ Hᴏ! 👤 Lᴇᴠᴇʟ ➜ 👑 Oᴡɴᴇʀ 🚦 Sᴛᴀᴛᴜs ➜ 🔓 Uɴʟᴏᴄᴋᴇᴅ 💀 Lᴀɢᴛᴀ Hᴀɪ Bᴏᴛ Nᴇ Nᴀsᴀ Kᴀ Sᴇʀᴠᴇʀ Hᴏsᴛ Kᴀʀ Lɪʏᴀ! 🚀🌕 🤖 Bᴏᴛ Lɪɴᴋ ➜ @DRIFT_HOSTING_REBOT

❤️ Gᴜʏss, 30+ Rᴇᴀᴄᴛɪᴏɴ Dᴇ Dᴏ! 🌐 Dʀɪғᴛ Aʙᴏᴜᴛ Wᴇʙsɪᴛᴇ Kᴀ Sᴏᴜʀᴄᴇ Cᴏᴅᴇ Dᴜɴɢᴀ 🚀 ❤️ Oɴʟʏ Hᴇᴀʀᴛ Rᴇᴀᴄᴛɪᴏɴ Dᴇɴᴀ 🔥 30+ ❤️ Hᴏᴛᴇ Hɪ Sᴏᴜʀᴄᴇ Cᴏᴅᴇ Uᴘʟᴏᴀᴅ Kɪʏᴀ Jᴀʏᴇɢᴀ!

🚀 Gᴜʏss, Dʀɪғᴛ Aʙᴏᴜᴛ Wᴇʙsɪᴛᴇ Lᴀᴜɴᴄʜᴇᴅ! 🌐 Wᴇʙsɪᴛᴇ ➜ https://drift-about.onrender.com 🔑 Aᴄᴄᴇss Cᴏᴅᴇ ➜ Dʀɪғᴛ 📂 Sᴏᴜʀᴄᴇ Cᴏᴅᴇ Pᴜʙʟɪᴄ Kᴀʀ Dɪʏᴀ Hᴀɪ. 🤔 Cʜᴀʜɪʏᴇ Kʏᴀ Gᴜʏss? ❤️ Yᴇs 🙅 Nᴏ

😂 Gᴜʏss, Bᴀʜᴜᴛ Sᴀʀᴇ Bᴀɴᴅᴇ Bᴏʟ Rᴀʜᴇ Tʜᴇ... 🔒 "Bʜᴀɪ Fɪʟᴇ Pʀᴏᴛᴇᴄᴛ Kᴀʀ Dᴏ" 😭 🚀 Aʙ Kʜᴜᴅ Hɪ Kᴀʀ Lᴏ! 🤖 Bᴏᴛ Lɪɴᴋ ➜ @FILE_SECURITY_ROBOT 🛡️ Sᴇɴᴅ Yᴏᴜʀ Fɪʟᴇ ⚡ Gᴇᴛ Iᴛ Pʀᴏᴛᴇᴄᴛᴇᴅ 🔐 Fᴀsᴛ & Eᴀsʏ ❤️ Nᴏ Mᴏʀᴇ Dᴍs Fᴏʀ Fɪʟᴇ Pʀᴏᴛᴇᴄᴛɪᴏɴ 😆

⏹️ Pᴏʟʟ Sᴛᴏᴘ Hᴏ Jᴀʏᴇɢᴀ Jᴀɪsᴇ Hɪ 30+ Vᴏᴛᴇs Cᴏᴍᴘʟᴇᴛᴇ Hᴏɴɢᴇ.

🎲 Gᴜʏss, Lᴜᴅᴏ Gᴀᴍᴇ Bᴏᴛ Sʀᴄ Cᴏᴅᴇ Cʜᴀʜɪʏᴇ Kʏᴀ? 🚀
Anonymous voting

🎮 Gᴜʏss, Sᴀʙ Gᴜɪʟᴅ Jᴏɪɴ Kᴀʀ Lᴏ! 🚀 🆔 Gᴜɪʟᴅ Iᴅ ➜ 3051823151 📜 Rᴇǫᴜɪʀᴇᴍᴇɴᴛs 🤝 Rᴇsᴘᴇᴄᴛ Aʟʟ Mᴇᴍʙᴇʀs 🫂 Pʟᴀʏ Wɪᴛʜ Fʀɪᴇɴᴅs 👥 A
🎮 Gᴜʏss, Sᴀʙ Gᴜɪʟᴅ Jᴏɪɴ Kᴀʀ Lᴏ! 🚀 🆔 Gᴜɪʟᴅ Iᴅ ➜ 3051823151 📜 Rᴇǫᴜɪʀᴇᴍᴇɴᴛs 🤝 Rᴇsᴘᴇᴄᴛ Aʟʟ Mᴇᴍʙᴇʀs 🫂 Pʟᴀʏ Wɪᴛʜ Fʀɪᴇɴᴅs 👥 Aᴘɴᴇ Fʀɪᴇɴᴅs Kᴏ Bʜɪ Gᴜɪʟᴅ Mᴇ Aᴅᴅ Kᴀʀ Sᴀᴋᴛᴇ Hᴏ 🔥 Jᴀʟᴅɪ Sᴇ Jᴏɪɴ Kᴀʀᴏ Aᴜʀ Gᴜɪʟᴅ Kᴏ Gʀᴏᴡ Kᴀʀᴏ! 🚀

🤔 Gᴜʏss, Mᴀɪ Aᴘɴᴀ Gᴜɪʟᴅ Bɴᴀᴜ Kʏᴀ? 🚀 ⚡ Jɪsᴍᴇ Rᴀʜᴇɢᴀ: 🤖 Tᴄᴘ Bᴏᴛ 📈 Lᴇᴠᴇʟ Uᴘ Bᴏᴛ 🎮 Gᴀᴍᴇ Bᴏᴛs 🔥 Aᴜʀ Bʜɪ Bᴏʜᴏᴛ Kᴜᴄʜ 💬 Kʏᴀ Tᴜᴍ Sᴀʙ Jᴏɪɴ Kʀᴏɢᴇ? ❤️ Yᴇs 🙅 Nᴏ 🔥 Cᴏᴍᴍᴇɴᴛ Kʀᴏ Aᴜʀ Aᴘɴɪ Rᴀʏ Dᴏ!

😂 Cʜᴜᴘ Hᴏ Jᴀᴏ Sᴀʙ! 🏃 Cʀᴇᴅɪᴛ Cʜʜᴏʀ Cʜᴀʟᴀ Gᴀʏᴀ 😭 🎵 Yᴇ Lᴏ — Aʟʟ Dᴇᴠɪᴄᴇ Wᴏʀᴋɪɴɢ Vᴄ Mᴜsɪᴄ Bᴏᴛ Sʀᴄ 🚀 🔥 Aʙ Rᴇᴀᴄᴛɪᴏɴ Dᴇ Dᴏ Gᴜʏss ❤️ ⚡ Mᴀx Rᴇᴀᴄᴛɪᴏɴs Nᴇᴇᴅᴇᴅ! ❤️ Sᴜᴘᴘᴏʀᴛ Kᴀʀᴏ Aᴜʀ Eɴᴊᴏʏ Kᴀʀᴏ 🚀 📩 Nᴇᴇᴅ Sᴜᴘᴘᴏʀᴛ ➜ @DGDRIFT 📢 Cʜᴀɴɴᴇʟ ➜ @DRIFTARMYFF

🔑 Pᴀssᴡᴏʀᴅ Rᴇᴠᴇᴀʟᴇᴅ! 🚀 🔓 Pᴀssᴡᴏʀᴅ ➜ passwordchahiye ❤️ Tʜᴀɴᴋ Yᴏᴜ Fᴏʀ Tʜᴇ Aᴍᴀᴢɪɴɢ Sᴜᴘᴘᴏʀᴛ Aɴᴅ Rᴇᴀᴄᴛɪᴏɴs! 👨‍💻 Mᴀᴅᴇ Bʏ ➜ @DG_DRIFT 📢 Lᴇᴀᴋᴇᴅ Bʏ ➜ @DGDRIFT

🎵 Gᴜʏss, Vᴄ Mᴜsɪᴄ Bᴏᴛ Sᴏᴜʀᴄᴇ Cᴏᴅᴇ Lᴇᴀᴋᴇᴅ 🚀 🔥 15+ Rᴇᴀᴄᴛɪᴏɴs Rᴇǫᴜɪʀᴇᴅ! 🔑 15+ Rᴇᴀᴄᴛɪᴏɴs Pᴜʀᴇ Hᴏᴛᴇ Hɪ Pᴀssᴡᴏʀᴅ Mɪʟᴇɢᴀ 🔓 👨‍💻 Mᴀᴅᴇ Bʏ ➜ @DG_DRIFT 📢 Lᴇᴀᴋᴇᴅ Bʏ ➜ @DGDRIFT 🖥️ Hᴏsᴛɪɴɢ Gᴜɪᴅᴇ ➜ VPS Cʀᴇᴅɪᴛ ➜ 🦄

🎲 Jᴀᴋᴇ Sᴀʙ Lᴜᴅᴏ Kʜᴇʟᴏ Lᴜᴅᴏ 😂 🎮 Fʀᴇᴇ Fɪʀᴇ Kʜᴇʟɴᴀ Tᴜᴍʜᴀʀᴇ Bᴀs Kɪ Nʜɪ Hᴀɪ 😆 🤖 Bᴏᴛ Lɪɴᴋ ➜ @DRIFT_LUDO_GamE_BoT 🔥 Aᴀᴏ Aᴜʀ Dᴏsᴛᴏɴ Kᴇ Sᴀᴀᴛʜ Lᴜᴅᴏ Kʜᴇʟᴏ! 🎲

Repost from DrIfT ARMY
matchmaking.py
from telegram.ext import ContextTypes
from bot.services.queue_manager import QueueManager, create_game
from bot.database.models import get_user
from bot.utils.keyboards import lobby_keyboard, invite_keyboard, accept_reject_keyboard, main_menu_keyboard

async def play_with_friends_callback(update: Update, context: ContextTypes.DEFAULT_TYPE):
    query = update.callback_query
    await query.answer()
    user_id = query.from_user.id
    await QueueManager.add_to_friends_lobby(user_id)
    await show_friends_lobby(query, user_id)

async def show_friends_lobby(query, user_id):
    users = await QueueManager.get_friends_lobby_users()
    text = "👥 *Friends Lobby* - Waiting players:\n\n"
    keyboard = []
    for u in users:
        if u['user_id'] != user_id:
            user_data = await get_user(u['user_id'])
            name = user_data['display_name'] if user_data else "Unknown"
            keyboard.append([InlineKeyboardButton(f"🔹 {name}", callback_data=f"invite_{u['user_id']}")])
    keyboard.append([InlineKeyboardButton("🔄 Refresh", callback_data="friends_lobby")])
    keyboard.append([InlineKeyboardButton("❌ Cancel", callback_data="cancel_friends_queue")])
    
    await query.edit_message_text(
        text + "Send challenge to a player by clicking their name.",
        reply_markup=InlineKeyboardMarkup(keyboard),
        parse_mode="Markdown"
    )

async def send_invite_callback(update: Update, context: ContextTypes.DEFAULT_TYPE):
    query = update.callback_query
    await query.answer()
    inviter_id = query.from_user.id
    invitee_id = int(query.data.split("_")[1])
    
    success = await QueueManager.send_invite(inviter_id, invitee_id)
    if success:
        # Notify invitee
        inviter_name = query.from_user.first_name
        await context.bot.send_message(
            invitee_id,
            f"🎮 {inviter_name} challenged you to a Ludo game!",
            reply_markup=accept_reject_keyboard(inviter_id)
        )
        await query.edit_message_text("✅ Invitation sent!")
    else:
        await query.edit_message_text("❌ Player not available or already invited.")
    
    # Return to lobby after 2 sec
    context.application.create_task(delayed_lobby_return(query, inviter_id))

async def delayed_lobby_return(query, inviter_id):
    import asyncio
    await asyncio.sleep(2)
    await show_friends_lobby(query, inviter_id)

async def respond_invite_callback(update: Update, context: ContextTypes.DEFAULT_TYPE):
    query = update.callback_query
    await query.answer()
    parts = query.data.split("_")
    action = parts[2]
    inviter_id = int(parts[3])
    invitee_id = query.from_user.id
    
    if action == "accept":
        opponent_id = await QueueManager.accept_invite(invitee_id)
        if opponent_id == inviter_id:
            game_id = await create_game(inviter_id, invitee_id, is_auto=False)
            await start_game_players(context, inviter_id, invitee_id, game_id)
            await query.edit_message_text("🎲 Game starting! Use /game to see board.")
        else:
            await query.edit_message_text("❌ Invitation expired.")
    else:
        await QueueManager.remove_from_friends_lobby(invitee_id)
        await query.edit_message_text("❌ Invitation rejected.")
        await context.bot.send_message(inviter_id, "Your invitation was rejected.")

async def auto_match_callback(update: Update, context: ContextTypes.DEFAULT_TYPE):
    query = update.callback_query
    await query.answer()
    user_id = query.from_user.id
    await QueueManager.add_to_auto_queue(user_id)
    
    text = "🤖 Searching for opponent... You'll be notified when a match is found.\nClick Cancel to stop."
    keyboard = [[InlineKeyboardButton("❌ Cancel", callback_data="cancel_auto_queue")]]
    await query.edit_message_text(text, reply_markup=InlineKeyboardMarkup(keyboard))

🚨 Gᴜʏss, Mʏ Pʀᴏᴊᴇᴄᴛ Rᴇᴠᴇᴀʟᴇᴅ! 🚀 ❤️ Sᴜᴘᴘᴏʀᴛ Mᴇ ➜ @DGDRIFT 📢 Cʜᴀɴɴᴇʟ ➜ @DRIFTARMYFF 🔥 Mᴏʀᴇ Uᴘᴅᴀᴛᴇs Cᴏᴍɪɴɢ Sᴏᴏɴ... Tʜᴀɴᴋs Fᴏʀ Aʟʟ Tʜᴇ Sᴜᴘᴘᴏʀᴛ ❤️

🎵 Gᴜʏss, Vᴄ Mᴜsɪᴄ Bᴏᴛ Sʀᴄ Cᴏᴅᴇ Cʜᴀʜɪʏᴇ Kʏᴀ? 🚀 💬 Sᴜᴘᴘᴏʀᴛ ➜ @DGDRIFT 📢 Mᴀɪɴ Cʜᴀɴɴᴇʟ 📣 Sᴇᴄᴏɴᴅ Cʜᴀɴɴᴇʟ 📂 Sᴏᴜʀᴄᴇ Cᴏᴅᴇ Cʜᴀɴɴᴇʟ 🔥 30+ Rᴇᴀᴄᴛɪᴏɴs Rᴇǫᴜɪʀᴇᴅ! ✅ 30+ Rᴇᴀᴄᴛɪᴏɴs Pᴜʀᴇ Hᴏᴛᴇ Hɪ Sʀᴄ Cᴏᴅᴇ Uᴘʟᴏᴀᴅ Kɪʏᴀ Jᴀʏᴇɢᴀ 🚀