Apps Home
|
My Uploads
|
Create an App
roulette-test
Author:
roulette
Description
Source Code
Launch App
Current Users
Created by:
Roulette
App Images
let settings = []; settings.push({name:'spinprice', type:'int', minValue:1, maxValue:2000, default:25, label:"Wheelspin price"}); cb.log("Setting price"); settings.push({name: "prize0", type: 'str', minLength: 1, maxLength: 255, label: "Top Prize!"}); let requiredPrizes = 12; let optionalPrizes = 24; for(let i = 1 ; i <= requiredPrizes; i++) { let fieldName = "prize" + i; let description = "Required Prize " + i + " text" settings.push({name: fieldName, type: 'str', minLength: 1, maxLength: 255, label: description}); } for(let i = 1; i <= optionalPrizes; i++) { let overallPrizeNum = (requiredPrizes + i); let fieldName = "prize" + overallPrizeNum; let description = "Optional Prize " + overallPrizeNum + " text" settings.push({name: fieldName, type: 'str', minLength: 1, maxLength: 255, default: "", label: description, required:false}); } cb.settings_choices = settings; cb.log("Settings set"); let lastwinner = "No winners yet!"; let lastprize = "no prizes yet!"; let lastwin = "No winners yet!"; cb.onDrawPanel(leaderboardPanelDraw); cb.drawPanel(); cb.log("First draw end"); cb.onTip(tipfunc); function tipfunc(tip){ cb.log("Tip received"); // tips > cb.settings.spinprice trigger new animation if(tip['amount'] >= cb.settings.spinprice) { //draw image cb.log("Spin threshold met!"); cb.onDrawPanel(drawSpinner); cb.drawPanel(); /*let totalPrizes = 0; for(let i = 0; i < requiredPrizes + optionalPrizes + 1; i++) { let prizeID = "prize" + i; if (cb.settings[prizeID] != "") { totalPrizes++; } } cb.log("totalPrizes:" + totalPrizes); */ //random number generator let randomWheelValue = Math.ceil(Math.random() * (requiredPrizes + optionalPrizes)); let prizewon = "prize" + randomWheelValue; lastprize = cb.settings[prizewon]; lastwin = randomWheelValue; if(lastprize === "") { cb.log("Empty prize at number " + randomWheelValue); randomWheelValue = Math.ceil(Math.random() * (requiredPrizes)); prizewon = "prize" + randomWheelValue; lastprize = cb.settings[prizewon]; } lastwinner = tip['from_user']; //delay cb.setTimeout(notifyWinner, 7500); } } function notifyWinner() { cb.sendNotice("User " + lastwinner + " won " + lastprize) cb.onDrawPanel(leaderboardPanelDraw); cb.drawPanel(); } /* Layout is roughly {row1_label}: {row1_value} {row2_label}: {row2_value} {row3_label}: {row3_value} */ let imgId = "eed5c9d3-103f-4fbc-8b05-fcd10b881511" function drawSpinner(user) { return { "template": "image_template", "layers": [ {'type': 'image', 'fileID': imgId} ] }; } function leaderboardPanelDraw( user ){ return { 'template': '3_rows_of_labels', 'row1_label': 'Last winner:', 'row1_value': lastwinner, 'row2_label': 'Prize won:', 'row2_value': lastprize, 'row3_label': 'Winning Number:', 'row3_value': lastwin }; }
© Copyright Chaturbate 2011- 2025. All Rights Reserved.