Skip to content

h #5

@argess722

Description

@argess722

from telegram import Update
from telegram.ext import ApplicationBuilder, CommandHandler, ContextTypes
import random, time

Kullanıcı bakiyeleri ve isimlerini saklamak için sözlükler

users = {} # {user_id: bakiye}
user_names = {} # {user_id: isim}
bonus_times = {} # {user_id: son bonus zamanı}

Kullanıcı bakiyesini al

def get_balance(user_id):
return users.get(user_id, 0)

Bakiyeye ekle

def add_balance(user_id, amount):
users[user_id] = get_balance(user_id) + amount

Bakiyeden düş

def reduce_balance(user_id, amount):
if get_balance(user_id) >= amount:
users[user_id] -= amount
return True
return False

Yetersiz bakiye durumunda otomatik bonus ekle

def check_bonus(user_id):
if get_balance(user_id) <= 0:
users[user_id] = 5000
return True
return False

Kayıp mesajı ve bonus kontrolü

def loss_message(user_id, lost_amount):
if check_bonus(user_id):
return f"💀 Tüm paranı kaybettin ama 🎁 5.000 coin bonus eklendi! Yeni bakiyen: {get_balance(user_id)}"
return f"❌ Kaybettin... -{lost_amount}\nÜzülme, bir dahaki sefere şans seninle! 💪\n💳 Yeni bakiyen: {get_balance(user_id)}"

/start komutu

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_name = update.effective_user.first_name or "Anonim"
user_names[user_id] = user_name

if user_id not in users:
    users[user_id] = 20000
    await update.message.reply_text(
        f"🎉 Şans Arenasına Hoş Geldin, {user_name}!\n🎁 20.000 coin hesabına eklendi!\n"
        "🎲 /slot [miktar]\n🎯 /rulet [kırmızı/siyah] [miktar]\n⚡ /risk [miktar]\n🪙 /yazitura [miktar]\n"
        "🎁 /gunlukbonus\n💳 /bakiye\n📖 /yardim\n💰 /zenginlik\n🆔 /id\n💸 /paragonder [ID] [miktar]"
    )
else:
    await update.message.reply_text(f"Hoş geldin tekrar, {user_name}! 🎰")

/bakiye komutu

async def bakiye(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"
await update.message.reply_text(f"💳 Bakiyen: {get_balance(user_id)}")

/slot komutu

async def slot(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"

if len(context.args) != 1 or not context.args[0].isdigit():
    await update.message.reply_text("Kullanım: /slot [miktar]")
    return

miktar = int(context.args[0])
if get_balance(user_id) < miktar:
    add_balance(user_id, 5000)
    await update.message.reply_text(f"⚠️ Yetersiz bakiye! 🎁 5.000 coin eklendi. Yeni bakiyen: {get_balance(user_id)}")
    return

if random.random() < 0.7:
    add_balance(user_id, miktar)
    await update.message.reply_text(f"🎉 Şans senden yana! +{miktar}\n💳 Yeni bakiyen: {get_balance(user_id)}")
else:
    reduce_balance(user_id, miktar)
    await update.message.reply_text(loss_message(user_id, miktar))

/rulet komutu

async def rulet(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"

if len(context.args) != 2:
    await update.message.reply_text("Kullanım: /rulet [kırmızı/siyah] [miktar]")
    return

renk = context.args[0].lower()
miktar = int(context.args[1]) if context.args[1].isdigit() else 0
if get_balance(user_id) < miktar:
    add_balance(user_id, 5000)
    await update.message.reply_text(f"⚠️ Yetersiz bakiye! 🎁 5.000 coin eklendi. Yeni bakiyen: {get_balance(user_id)}")
    return

if renk not in ["kırmızı", "siyah"] or miktar <= 0:
    await update.message.reply_text("Geçerli bir renk ve miktar gir!")
    return

secilen = random.choice(["kırmızı", "siyah"])
if random.random() < 0.7:
    add_balance(user_id, miktar)
    await update.message.reply_text(f"🎯 Tebrikler! {secilen} geldi, +{miktar}\n💳 Yeni bakiyen: {get_balance(user_id)}")
else:
    reduce_balance(user_id, miktar)
    await update.message.reply_text(loss_message(user_id, miktar))

/risk komutu

async def risk(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"

if len(context.args) != 1 or not context.args[0].isdigit():
    await update.message.reply_text("Kullanım: /risk [miktar]")
    return

miktar = int(context.args[0])
if get_balance(user_id) < miktar:
    add_balance(user_id, 5000)
    await update.message.reply_text(f"⚠️ Yetersiz bakiye! 🎁 5.000 coin eklendi. Yeni bakiyen: {get_balance(user_id)}")
    return

if random.random() < 0.7:
    add_balance(user_id, miktar*2)
    await update.message.reply_text(f"⚡ Risk işe yaradı! {miktar*2} kazandın!\n💳 Yeni bakiyen: {get_balance(user_id)}")
else:
    reduce_balance(user_id, miktar)
    await update.message.reply_text(loss_message(user_id, miktar))

🪙 /yazitura komutu

async def yazitura(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"

if len(context.args) != 1 or not context.args[0].isdigit():
    await update.message.reply_text("Kullanım: /yazitura [miktar]")
    return

miktar = int(context.args[0])
if get_balance(user_id) < miktar:
    add_balance(user_id, 5000)
    await update.message.reply_text(f"⚠️ Yetersiz bakiye! 🎁 5.000 coin eklendi. Yeni bakiyen: {get_balance(user_id)}")
    return

sonuc = random.choice(["yazı", "tura"])
if random.random() < 0.7:
    kazanc = int(miktar * 1.5)
    add_balance(user_id, kazanc)
    await update.message.reply_text(f"🪙 {sonuc.upper()} geldi! +{kazanc} 💰\n💳 Yeni bakiyen: {get_balance(user_id)}")
else:
    reduce_balance(user_id, miktar)
    await update.message.reply_text(loss_message(user_id, miktar))

🎁 /gunlukbonus komutu

async def gunlukbonus(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"
now = time.time()

if user_id in bonus_times and now - bonus_times[user_id] < 86400:
    kalan = int(86400 - (now - bonus_times[user_id]))
    saat = kalan // 3600
    dakika = (kalan % 3600) // 60
    await update.message.reply_text(f"🕒 Günlük bonusunu zaten aldın!\nTekrar alabilmek için {saat} saat {dakika} dakika bekle.")
    return

miktar = random.randint(1000, 5000)
add_balance(user_id, miktar)
bonus_times[user_id] = now
await update.message.reply_text(f"🎁 Günlük bonus: +{miktar} coin!\n💳 Yeni bakiyen: {get_balance(user_id)}")

/yardim komutu

async def yardim(update: Update, context: ContextTypes.DEFAULT_TYPE):
await update.message.reply_text(
"🎰 Komut Listesi:\n"
"💰 /bakiye — Bakiyeni gösterir.\n"
"🎲 /slot [miktar] — Slot çevir.\n"
"🎯 /rulet [kırmızı/siyah] [miktar] — Renk seç.\n"
"⚡ /risk [miktar] — Risk al ve katla.\n"
"🪙 /yazitura [miktar] — Yazı tura oyna.\n"
"🎁 /gunlukbonus — Günlük rastgele bonus al.\n"
"💰 /zenginlik — En zengin 10 kişiyi gösterir.\n"
"🆔 /id — Kendi ID’ni gösterir.\n"
"💸 /paragonder [ID] [miktar] — Başkasına para gönder."
)

/zenginlik komutu

async def zenginlik(update: Update, context: ContextTypes.DEFAULT_TYPE):
if not users:
await update.message.reply_text("💸 Henüz hiç kimse yok!")
return

sorted_users = sorted(users.items(), key=lambda x: x[1], reverse=True)[:10]
mesaj = "🏆 En Zengin 10 Kişi:\n"
for i, (uid, bakiye) in enumerate(sorted_users, 1):
    user_name = user_names.get(uid, "Anonim")
    mesaj += f"{i}. {user_name} — {bakiye} coin\n"
await update.message.reply_text(mesaj)

/id komutu

async def id(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"
await update.message.reply_text(f"🆔 ID’n: {user_id}")

/paragonder komutu

async def paragonder(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_id = update.effective_user.id
user_names[user_id] = update.effective_user.first_name or "Anonim"

if len(context.args) != 2 or not context.args[1].isdigit():
    await update.message.reply_text("Kullanım: /paragonder [ID] [miktar]")
    return

hedef_id = int(context.args[0])
miktar = int(context.args[1])

if get_balance(user_id) < miktar:
    add_balance(user_id, 5000)
    await update.message.reply_text(f"⚠️ Yetersiz bakiye! 🎁 5.000 coin eklendi. Yeni bakiyen: {get_balance(user_id)}")
    return

if hedef_id not in users:
    users[hedef_id] = 0

reduce_balance(user_id, miktar)
add_balance(hedef_id, miktar)
await update.message.reply_text(f"💸 {miktar} coin gönderildi! 💳 Yeni bakiyen: {get_balance(user_id)}")

Bot tokenini buraya yaz

TOKEN = "7894184329:AAHLGKqvuc20obdB2AFvZRcoHmmWEJCZZC8"

Botu başlat

app = ApplicationBuilder().token(TOKEN).build()
app.add_handler(CommandHandler("start", start))
app.add_handler(CommandHandler("bakiye", bakiye))
app.add_handler(CommandHandler("slot", slot))
app.add_handler(CommandHandler("rulet", rulet))
app.add_handler(CommandHandler("risk", risk))
app.add_handler(CommandHandler("yazitura", yazitura))
app.add_handler(CommandHandler("gunlukbonus", gunlukbonus))
app.add_handler(CommandHandler("yardim", yardim))
app.add_handler(CommandHandler("zenginlik", zenginlik))
app.add_handler(CommandHandler("id", id))
app.add_handler(CommandHandler("paragonder", paragonder))

print("🤖 Bot çalışıyor...")
app.run_polling(poll_interval=1, stop_signals=[])

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions