Bots Home
|
Create an App
SM2.0.5
Author:
like69xxx
Description
Source Code
Launch Bot
Current Users
Created by:
Like69xxx
/** * Bot: Slot Machine Bot V.2.0.5 * Version: 2.0.5 * Original Bot: zingknaat * Author: like69x * Date: 02.14.18 * New objects: :sm2_cb, :sm2_crown, :sm2_nora, :sm2_seven, sm2_lush, :sm2_rainbow, :sm2_whip, :sm2_mod, :sm2_xxx, :sm2_kiss, :sm2_hug, :sm2_condom, :sm2_flashy, :sm2_cherry, :sm2_follow, :sm2_sat, :sm2_running, :sm2_69, :sm2_heart */ cb.settings_choices = [ {name: 'tokens', type: 'int', label: 'Cost per spin (in tokens)', defaultValue: 3}, {name: 'notice_wait_time', type: 'choice', label: 'Notification Time (in minutes)', choice1: 1, choice2: 2, choice3: 3, choice4: 4, choice5: 5, choice6: 10, choice7: 15, choice8: 20, choice9: 25, choice10: 30, choice11: 45, choice12: 60, defaultValue: 3}, {name: 'jackpot_minimum', type:'int', label:'Minimum number tokens before jackpot', defaultValue:5000}, {name: 'prize_1', type: 'str', label: 'Jackpot prize (3 cb_logos)', defaultValue:'cum.. after jackpot_minimum reached'}, {name: 'prize_2', type: 'str', label: '2nd place prize (3 crowns)'}, {name: 'prize_3', type: 'str', label: '3rd place prize (3 lush)'}, {name: 'prize_4', type: 'str', label: '4th place prize (3 sevens)'}, {name: 'prize_5', type: 'str', label: '5th place prize (3 noras)'}, {name: 'prize_6', type: 'str', label: '6th place prize (3 rainbows)'}, {name: 'prize_7', type: 'str', label: '7th place prize (3 whips)'}, {name: 'prize_8', type: 'str', label: '8th place prize (3 mods)', defaultValue:'be mod for a day..'}, {name: 'prize_9', type: 'str', label: '9th place prize (3 xxx)'}, {name: 'prize_10', type: 'str', label: '10th place prize (3 kisses)', defaultValue:'blow kiss..'}, {name: 'prize_11', type: 'str', label: '11th place prize (3 hugs)', defaultValue:'hug me..'}, {name: 'prize_12', type: 'str', label: '12th place prize (any object and 2 cherries)'}, {name: 'prize_13', type: 'str', label: '13th place prize (any combination of condom/flashy)', defaultValue:'flash boobs..'}, {name: 'prize_14', type: 'str', label: '14th place prize (any combination and 1 cherry)'} ]; var langTokens = (cb.settings.tokens > 1) ? 'tokens' : 'token'; var lastPlayer = '--'; var lastPrizeWon = '--'; var spinCounter = 0; var tipCounter = 0; var prizesWon = Array(); var cb_logo = ' :sm2_cb '; var crown = ' :sm2_crown '; var lush = ' :sm2_lush '; var seven = ' :sm2_seven '; var nora = ' :sm2_nora '; var rainbow = ' :sm2_rainbow '; var whip = ' :sm2_whip '; var mod = ' :sm2_mod '; var xxx = ' :sm2_xxx '; var kiss = ' :sm2_kiss '; var hug = ' :sm2_hug '; var condom = ' :sm_condom '; var flashy = ' :sm2_flashy '; var cherry = ' :sm2_cherry '; var follow = ' :sm2_follow '; var sat = ' :sm2_sat '; var running = ' :sm2_running '; var sixtynine = ' :sm2_69 '; var heart = ' :sm2_heart '; var slotPieces = Array(cb_logo, crown, lush, seven, nora, rainbow, whip, mod, xxx, kiss, hug, condom, flashy, cherry, follow, sat, running, sixtynine, heart); cb.onTip(function (tip) { tipCounter += parseInt(tip['amount']); if (parseInt(tip['amount']) >= cb.settings.tokens) { var numberOfSpins = Math.floor(parseInt(tip['amount'])/cb.settings.tokens); for(var i=1;i<=numberOfSpins;i++) { cb.setTimeout(function() { spin(tip['from_user']); }, 400*i); } } }); cb.onEnter(function (user) { var notices = "Welcome to my room, " + user['user'] + ". We are playing the slot machine.\n"; notices += 'Tip ' + cb.settings.tokens + ' ' + langTokens + ' to spin the reels.\n'; notices += 'Only the highest prize wins, if there is more than one prize.\n'; notices += 'Type "/p" to see the 14 possible prizes.\n'; notices += 'Type "/w" to see a list of the last 99 winners.'; cb.sendNotice(notices, user['user'], '', '#FF6600', 'bold'); }); cb.onMessage(function(msg) { if(msg['m'].match(/\/w/i)) { msg['X-Spam'] = true; showPrizesWon(msg['user']); } else if(msg['m'].match(/\/p/i)) { msg['X-Spam'] = true; showPrizes(msg['user']); } return msg; }); function getSlotPiece() { var piece = slotPieces[Math.floor(Math.random() * slotPieces.length)]; if((piece == cb_logo) && (spinCounter%2 != 0)) { return cherry; } return piece; } function getRow() { var row = getSlotPiece() + ' ' + getSlotPiece() + ' ' + getSlotPiece(); var cb_logoMatches = row.match(/cb_logo/g); if(cb_logoMatches != null) { var numberOfCb_logos = cb_logoMatches.length; } if((numberOfCb_logos == 3) && (cb.settings.jackpot_minimum > tipCounter)) { getRow(); } return row; } function spin(username) { spinCounter++; var prize = '--'; var row1 = getRow(); var row2 = getRow(); var row3 = getRow(); var cb_logoMatches = row2.match(/cb_logo/g); if(cb_logoMatches != null) { var numberOfCb_logos = cb_logoMatches.length; } var crownMatches = row2.match(/crown/g); if(crownMatches != null) { var numberOfCrowns = crownMatches.length; } var lushMatches = row2.match(/lush/g); if (lushMatches != null) { var numberOfLushs = lushMatches.length; } var sevenMatches = row2.match(/seven/g); if(sevenMatches != null) { var numberOfSevens = sevenMatches.length; } var noraMatches = row2.match(/nora/g); if(noraMatches != null) { var numberOfNoras = noraMatches.length; } var rainbowMatches = row2.match(/rainbow/g); if (rainbowMatches != null) { var numberOfRainbows = rainbowMatches.length; } var whipMatches = row2.match(/whip/g); if (whipMatches != null) { var numberOfWhips = whipMatches.length; } var modMatches = row2.match(/mod/g); if (modMatches != null) { var numberOfMods = modMatches.length; } var xxxMatches = row2.match(/xxx/g); if (xxxMatches != null) { var numberOfXxxs = xxxMatches.length; } var kissMatches = row2.match(/kiss/g); if (kissMatches != null) { var numberOfKisses = kissMatches.length; } var hugMatches = row2.match(/hug/g); if (hugMatches != null) { var numberOfHugs = hugMatches.length; } var condomMatches = row2.match(/condom/g); if (condomMatches != null) { var numberOfCondoms = condomMatches.length; } var flashyMatches = row2.match(/flashy/g); if (flashyMatches != null) { var numberOfFlashys = flashyMatches.length; } var cherryMatches = row2.match(/cherry/g); if (cherryMatches != null) { var numberOfCherries = cherryMatches.length; } var notices = row1 + "\n"; notices += row2 + " <-- pay line \n"; notices += row3; cb.sendNotice(notices); if (numberOfCb_logos == 3) { prize = cb.settings.prize_1; } else if (numberOfCrowns == 3) { prize = cb.settings.prize_2; } else if (numberOfLushs == 3) { prize = cb.settings.prize_3; } else if (numberOfSevens == 3) { prize = cb.settings.prize_4; } else if (numberOfNoras == 3) { prize = cb.settings.prize_5; } else if (numberOfRainbows == 3) { prize = cb.settings.prize_6; } else if (numberOfWhips == 3) { prize = cb.settings.prize_7; } else if (numberOfMods == 3) { prize = cb.settings.prize_8; } else if (numberOfXxxs == 3) { prize = cb.settings.prize_9; } else if (numberOfKisses == 3) { prize = cb.settings.prize_10; } else if (numberOfHugs == 3) { prize = cb.settings.prize_11; } else if ((numberOfCherries == 2) || (numberOfCherries == 3)) { prize = cb.settings.prize_12; } else if ((numberOfCondoms == 1 && numberOfFlashys == 2) || (numberOfCondoms == 2 && numberOfFlashy == 1)) { prize = cb.settings.prize_13; } else if (numberOfCherries == 1) { prize = cb.settings.prize_14; } lastPlayer = username; if(prize != '--') { lastPlayer = username; lastPrizeWon = prize; prizesWon.push(prize + ' - ' + username); cb.sendNotice(username + ' won a prize! Prize: ' + prize, '', '#99FF99', '', 'bold'); } else { cb.sendNotice(username + ' did not win anything. :cry', '', '', '#996633', 'bold'); } return prize; } function showPrizes(username) { var notices = '**** Possible Prizes ****\n'; notices += '1st) 3 cb_logos (jackpot) = ' + cb.settings.prize_1 + '\n'; notices += '2nd) 3 crowns = ' + cb.settings.prize_2 + '\n'; notices += '3rd) 3 lush = ' + cb.settings.prize_3 + '\n'; notices += '4th) 3 sevens = ' + cb.settings.prize_4 + '\n'; notices += '5th) 3 noras = ' + cb.settings.prize_5 + '\n'; notices += '6th) 3 rainbow = ' + cb.settings.prize_6 + '\n'; notices += '7th) 3 whips = ' + cb.settings.prize_7 + '\n'; notices += '8th) 3 mods = ' + cb.settings.prize_8 + '\n'; notices += '9th) 3 xxx = ' + cb.settings.prize_9 + '\n'; notices += '10th) 3 kisses = ' + cb.settings.prize_10 + '\n'; notices += '11th) 3 hugs = ' + cb.settings.prize_11 + '\n'; notices += '12th) Any piece + 2 cherries = ' + cb.settings.prize_12 + '\n'; notices += '13th) Any combination of condom/flashys = ' + cb.settings.prize_13 + '\n'; notices += '14th) Any combination + 1 cherry = ' + cb.settings.prize_14; cb.sendNotice(notices, username, '#D1F0FF', '', 'bold'); } function showPrizesWon(username) { prizesWon.reverse(); if(prizesWon.length == 0) { cb.sendNotice('No one has won anything yet. Play the slot machine to win a prize!', username, '', '#CC0000', 'bold'); } else { prizesWon.slice(0,99); var notices = "**** Last 99 Winners ****"; var prizeNum = 1; var totalWon = prizesWon.length; if(prizesWon.length >= 99) totalWon = 99; for(var i=0; i<totalWon;i++) { notices += "\n" + prizeNum + ") " + prizesWon[i]; prizeNum++; } cb.sendNotice(notices, username, '#EBFFEB', '', 'bold'); } } function SM2advertise() { var notices = "Slot Machine V.2.0.5 by like69x\n"; notices += 'Tip ' + cb.settings.tokens + ' ' + langTokens + ' to spin the reels.\n'; notices += 'Only the highest prize wins, if there is more than one prize.\n'; notices += 'Type "/p" to see the 14 possible prizes.\n'; notices += 'Type "/w" to see a list of the last 99 winners.'; cb.sendNotice(notices, '', '', '#FF6600', 'bold'); cb.setTimeout(SM2advertise, cb.settings.notice_wait_time * 60000); } function SM2init() { SM2advertise(); } SM2init();
© Copyright Chaturbate 2011- 2025. All Rights Reserved.