millswelbeck148/SireimadeBotPublic · Bot Template
AISireImade appears to be a Telegram automation bot. Commands include /start, /about, /support, /id, /admin, /ban, /unban, /x. Observed in code: messaging, keyboards, games.
Utilityutility
112 commands3 envUpdated 1h agoCreated Aug 27, 2026
commands/_reset_x_o.js
javascript · 152 lines
1/**#command2name: /reset_x_o3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12// ==========================================================13// 🎮 GIFT AI — /RESET14// X & O GAME RESET15// PLAYER X / PLAYER O ONLY16// FAST • RESPONSIVE • ERROR-SAFE • ENGAGING17// DIRECT REPLY18// ==========================================================19 20// ----------------------------------------------------------21// 📌 BASIC DATA22// ----------------------------------------------------------23 24var userId = "";25var chatId = "";26 27try {28 userId = String(request.from.id);29 chatId = String(request.chat.id);30} catch (e) {31 32 Bot.sendMessage({33 text:34 "⚠️ <b>Something went wrong.</b>\n\n" +35 "Please try <b>/reset</b> again.",36 37 parse_mode: "HTML"38 });39 40 return;41}42 43// ----------------------------------------------------------44// 🔑 GAME KEYS45// ----------------------------------------------------------46 47var keyX = "XO_X_" + chatId;48var keyO = "XO_O_" + chatId;49var keyBoard = "XO_BOARD_" + chatId;50var keyTurn = "XO_TURN_" + chatId;51 52// ----------------------------------------------------------53// 📦 LOAD CURRENT GAME54// ----------------------------------------------------------55 56var playerX = Bot.getProperty(keyX);57var playerO = Bot.getProperty(keyO);58 59if (playerX) playerX = String(playerX);60if (playerO) playerO = String(playerO);61 62// ----------------------------------------------------------63// 🚫 NO ACTIVE GAME64// ----------------------------------------------------------65 66if (!playerX) {67 68 Bot.sendMessage({69 text:70 "🎮 <b>NO ACTIVE GAME</b>\n\n" +71 "There isn't an X & O game running right now.\n\n" +72 "👉 Start one with <b>/x</b>.",73 74 parse_mode: "HTML",75 reply_to_message_id:76 request && request.message_id77 ? request.message_id78 : undefined79 });80 81 return;82}83 84// ----------------------------------------------------------85// 🛡️ CHECK PLAYER PERMISSION86// ----------------------------------------------------------87 88var isPlayerX = userId === playerX;89var isPlayerO = playerO && userId === playerO;90 91if (!isPlayerX && !isPlayerO) {92 93 Bot.sendMessage({94 text:95 "⛔ <b>YOU'RE NOT IN THIS GAME</b>\n\n" +96 "Only the current Player X or Player O can reset this game.\n\n" +97 "❌ Player X: " +98 '<a href="tg://user?id=' + playerX + '">Player X</a>' +99 "\n" +100 "⭕ Player O: " +101 (102 playerO103 ? '<a href="tg://user?id=' + playerO + '">Player O</a>'104 : "⏳ Waiting for Player O..."105 ),106 107 parse_mode: "HTML",108 reply_to_message_id:109 request && request.message_id110 ? request.message_id111 : undefined112 });113 114 return;115}116 117// ----------------------------------------------------------118// 🧹 RESET GAME119// ----------------------------------------------------------120 121Bot.setProperty(keyX, null);122Bot.setProperty(keyO, null);123Bot.setProperty(keyBoard, null);124Bot.setProperty(keyTurn, null);125 126// ----------------------------------------------------------127// 👤 RESETTER128// ----------------------------------------------------------129 130var resetRole = isPlayerX ? "❌ Player X" : "⭕ Player O";131 132// ----------------------------------------------------------133// 🔄 RESET CONFIRMATION134// ----------------------------------------------------------135 136Bot.sendMessage({137 text:138 "🔄 <b>GAME RESET!</b>\n\n" +139 140 resetRole + " reset the X & O game.\n\n" +141 142 "🧹 The previous game has been cleared.\n" +143 "🎮 The board is ready for a fresh match.\n\n" +144 145 "👉 Anyone can start a new game with <b>/x</b>.",146 147 parse_mode: "HTML",148 reply_to_message_id:149 request && request.message_id150 ? request.message_id151 : undefined152});