mansuriamaan803/SANJEEVFFSTORE_botPublic · Bot Template

AIThis bot is a commerce platform for selling digital products, primarily focused on FreeFire accounts and related services. It provides admin tools for managing products, categories, stock, reseller roles, and a balance system for user payments. Users can browse products, apply coupons, and check their balance through an interactive interface with premium emojis and inline keyboards.

Commercecommercestoreproductsresellerbalancecoupon
ProfileTelegram
102 commands0 envUpdated 12d agoCreated Aug 26, 2026
Back to folder

commands/_ludospin.js

javascript · 117 lines

Raw
1/**#command2name: /ludospin3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12try {13  var userId = user.telegramid;14  var chatId = chat.chatid;15  16  // 🕒 24-HOUR COOLDOWN SYSTEM CORE17  var lastSpinTime = User.getProperty("last_ludo_spin_time"); 18  var currentTime = new Date().getTime(); 19  var cooldownMs = 24 * 60 * 60 * 1000; 20 21  if (lastSpinTime) {22    var timePassed = currentTime - Number(lastSpinTime);23    24    if (timePassed < cooldownMs) {25      // Kitna time bacha hai calculate karein26      var timeLeftMs = cooldownMs - timePassed;27      var totalSeconds = Math.floor(timeLeftMs / 1000);28      var hours = Math.floor(totalSeconds / 3600);29      var minutes = Math.floor((totalSeconds % 3600) / 60);30      var seconds = totalSeconds % 60;31 32      // 🛑 COOLDOWN ALERT WITH YOUR NEW PREMIUM EMOJIS33      var cooldownText = "<blockquote>" +34                         "<tg-emoji emoji-id='5893163582194978381'>❌</tg-emoji> <b>ACCESS DENIED!</b>\n" +35                         "━━━━━━━━━━━━━━━━━━━━━\n\n" +36                         "👋 Hello <b>" + user.first_name + "</b>, aap aaj ka spin pehle hi use kar chuke hain!\n\n" +37                         "<tg-emoji emoji-id='5260450573768990626'>➡️</tg-emoji> <b>Next Spin Available In:</b>\n" +38                         "<code>" + hours + " Hours, " + minutes + " Minutes, " + seconds + " Seconds</code>\n\n" +39                         "━━━━━━━━━━━━━━━━━━━━━\n" +40                         "<tg-emoji emoji-id='6194911182499881916'>🗣</tg-emoji> <i>Har user ko 24 ghante me sirf 1 spin milta hai.</i>" +41                         "</blockquote>";42 43      var cooldownButtons = [[44        { text: "Back to Menu", callback_data: "/back", style: "danger", icon_custom_emoji_id: "5893163582194978381" }45      ]];46 47      if (request && request.message && request.message.message_id) {48        Api.editMessageText({49          chat_id: String(chatId),50          message_id: Number(request.message.message_id),51          text: cooldownText,52          parse_mode: "HTML",53          reply_markup: JSON.stringify({ inline_keyboard: cooldownButtons })54        });55      } else {56        Api.sendMessage({57          chat_id: String(chatId),58          text: cooldownText,59          parse_mode: "HTML",60          reply_markup: JSON.stringify({ inline_keyboard: cooldownButtons })61        });62      }63      return; // Execution stops here64    }65  }66 67  // 🎲 RANDOM REWARD GENERATOR (0.1 se 0.6)68  var randomReward = (Math.random() * (0.6 - 0.1) + 0.1).toFixed(2);69  var rewardAmount = Number(randomReward);70 71  // 💰 ADD REWARD TO USER WALLET72  Libs.ResourcesLib.userRes("balance").add(rewardAmount);73  74  // 💾 SAVE CURRENT TIME TO PREVENT NEXT SPIN75  User.setProperty("last_ludo_spin_time", currentTime, "number");76  77  // New balance state check78  var updatedBal = Libs.ResourcesLib.userRes("balance").value().toFixed(2);79 80  // 💎 MULTI-PREMIUM INTERFACE LAYOUT (Success Screen)81  var spinText = "<blockquote>" +82                 "<tg-emoji emoji-id='6192822213486321961'>🎲</tg-emoji> <b>LUDO SPIN RESULTS</b>\n" +83                 "━━━━━━━━━━━━━━━━━━━━━\n\n" +84                 "<tg-emoji emoji-id='6298298582982199311'>🎰</tg-emoji> <i>The dice is rolling... and stopped!</i>\n\n" +85                 "<tg-emoji emoji-id='6194922667242429131'>🎉</tg-emoji> <b>Congratulations " + user.first_name + "!</b>\n" +86                 "<tg-emoji emoji-id='6064514463564831610'>💟</tg-emoji> <b>You Won:</b> <code>Ref. ₹" + rewardAmount.toFixed(2) + "</code>\n\n" +87                 "━━━━━ <tg-emoji emoji-id='5346024644635804737'>🔰</tg-emoji> <b>WALLET UPDATE</b> ━━━━━\n" +88                 "<tg-emoji emoji-id='6064138396228392033'>💵</tg-emoji> <b>New Wallet Balance:</b> ₹" + updatedBal + "\n\n" +89                 "<tg-emoji emoji-id='6194911182499881916'>🗣</tg-emoji> <i>Come back again to test your luck!</i>\n" +90                 "<tg-emoji emoji-id='6143299028655280273'>☠</tg-emoji> <tg-emoji emoji-id='6039605143601680423'>📞</tg-emoji> <b>Support Available 24/7</b>" +91                 "</blockquote>";92 93  var inlineButtons = [[94    { text: "Back to Menu", callback_data: "/back", style: "danger", icon_custom_emoji_id: "5893163582194978381" }95  ]];96 97  // Spin feedback send/edit handler98  if (request && request.message && request.message.message_id) {99    Api.editMessageText({100      chat_id: String(chatId),101      message_id: Number(request.message.message_id),102      text: spinText,103      parse_mode: "HTML",104      reply_markup: JSON.stringify({ inline_keyboard: inlineButtons })105    });106  } else {107    Api.sendMessage({108      chat_id: String(chatId),109      text: spinText,110      parse_mode: "HTML",111      reply_markup: JSON.stringify({ inline_keyboard: inlineButtons })112    });113  }114 115} catch (err) {116  Bot.sendMessage("⚠️ <b>Spin System Error:</b> <code>" + err.message + "</code>", { parse_mode: "HTML" });117}