Apps Home
|
Create an App
First App Test
Author:
x3nekochanx3
Description
Source Code
Launch App
Current Users
Created by:
X3nekochanx3
//COMMON VARIABLE var FreeVote=[]; //List of choices for free vote in the format [number,title] var FreeVoteResult=[]; //List of results for free vote in the format [user,choice,value] var UpgradeVote=[]; //List of choices for upgrade vote in the format [letter,title,totalvalue,goalvalue] var UpgradeVotePoints=[]; //List of points for upgrade vote in the format [user,points] var QuickVoteQuestion=""; //Question for quick vote var QuickVote=[]; //List of choices for quick vote in the format [letternumber,title] var QuickVoteResult=[]; //List of results for quick vote in the format [user,choice] var ActivityTime=0; //Time of an activity var WaitTime=0; //Time between two free votes //APP STARTING VARIABLE cb.settings_choices= [ //List of free vote in the format Title1|Title2|Title3|Title4... { label:'Free votes', name:'StartFreeVote', required:false, type:'str', minLength:0, maxLength:1023, defaultValue:"" }, //List of upgrade vote in the format Title1|TotalValue1|GoalValue1|Title2|TotalValue2|GoalValue2... { label: 'Upgrade vote', name: 'StartUpgradeVote', required:false, type: 'str', minLength: 0, maxLength: 1023, defaultValue:"" }, //List of upgrade points log User1|Points1|User2|Points2|User3|Points3... { label: 'Upgrade log', name: 'StartUpgradeVotePoints', required:false, type: 'str', minLength: 0, maxLength: 1023, defaultValue:"" }, //Time of an activity { label: 'Activity duration', name: 'StartActivityTime', required:true, type:'int', minValue:1, maxValue:1440, defaultValue:20 }, //Time between two free votes { label: 'Time limit between free vote', name: 'StartWaitTime', required:true, type:'int', minValue:1, maxValue:1440, defaultValue:10 } ]; //RUNNING APP init(cb.settings.StartFreeVote,FreeVote,cb.settings.StartUpgradeVote,UpgradeVote,cb.settings.StartUpgradeVotePoints,UpgradeVotePoints); //Start to do something every minute (see in functions' section) oneMinute(); //Welcoming message on enter cb.onEnter ( function (user) { cb.sendNotice('Welcome home '+user['user']+'!','','','#006600'); cb.sendNotice('Don\'t forget to check the description below.',user['user'],'','#006600'); } ); //Checking message for interraction cb.onMessage ( function (message) { if (message['user']==cb.room_slug) { if (message['m'].toLowerCase()=='/test') { cb.sendNotice(test(),message['user'],'','#AC0000'); } } else { if (message['m'].toLowerCase().split(' ')[0]=='/vote') { if (message['m'].toLowerCase().split(' ').length==1) { cb.sendNotice(presentVote(FreeVote,UpgradeVote,QuickVoteQuestion,QuickVote),message['user'],'','#9900CC'); message['X-Spam']=true; } else if (message['m'].toLowerCase().split(' ').length==2) { message['X-Spam']=true; cb.sendNotice(message['user']+' has voted.','','','#000066'); } else if (message['m'].toLowerCase().split(' ').length==3) { message['X-Spam']=true; cb.sendNotice(message['user']+' has voted.','','','#000066'); } } } } ); //FUNCTIONS function init(StartFreeVoteTab,FreeVoteTab,StartUpgradeVoteTab,UpgradeVoteTab,StartUpgradeVotePointsTab,UpgradeVotePointsTab) { var tempTab=[]; StartFreeVoteTab = typeof StartFreeVoteTab !== 'undefined' ? StartFreeVoteTab : ""; StartUpgradeVoteTab = typeof StartUpgradeVoteTab !== 'undefined' ? StartUpgradeVoteTab : ""; StartUpgradeVotePointsTab = typeof StartUpgradeVotePointsTab !== 'undefined' ? StartUpgradeVotePointsTab : ""; if (StartFreeVoteTab!=="") { tempTab=StartFreeVoteTab.split('|'); for (i=0;i<tempTab.length;i++) { if (tempTab[i]=="") { tempTab[i]='Error'; } FreeVoteTab.push([i+1,tempTab[i]]); } } if (StartUpgradeVoteTab!=="") { tempTab=StartUpgradeVoteTab.split('|'); for(i=0;tempTab.length%3!==0;i=i) { tempTab.push('Error'); } for (i=0;i<tempTab.length;i=i+3) { if (tempTab[i]=="") { tempTab[i]='Error'; } if (isNaN(parseInt(tempTab[i+1]))) { tempTab[i+1]='0'; } if (isNaN(parseInt(tempTab[i+2]))) { tempTab[i+2]='0'; } UpgradeVoteTab.push([String.fromCharCode(i/3+65),tempTab[i],tempTab[i+1],tempTab[i+2]]); } } if (StartUpgradeVotePointsTab!=="") { tempTab=StartUpgradeVotePointsTab.split('|'); for(i=0;tempTab.length%2!==0;i=i) { tempTab.push('Error'); } for (i=0;i<tempTab.length;i=i+2) { if (tempTab[i]=="") { tempTab[i]='Error'; } if (isNaN(parseInt(tempTab[i+1]))) { tempTab[i+1]='0'; } UpgradeVotePointsTab.push([tempTab[i],tempTab[i+1]]); } } } function oneMinute() { cb.setTimeout(oneMinute, 60000); } function presentVote(FreeTab,UpgradeTab,QuickQuestion,QuickTab) { return presentFreeVote(FreeTab)+'\n'+'\n'+presentUpgradeVote(UpgradeTab)+'\n'+'\n'+presentQuickVote(QuickQuestion,QuickTab); } function presentFreeVote(FreeTab) { var sentMessage='Current free vote:'; if (FreeTab.length==0) { sentMessage=sentMessage+'\nNo free vote'; } else { for (i=0;i<FreeTab.length;i++) { sentMessage=sentMessage+'\n'+FreeTab[i][0]+':'+FreeTab[i][1]; } } return sentMessage; } function presentUpgradeVote(UpgradeTab) { var sentMessage='Current upgrade vote:'; if (UpgradeTab.length==0) { sentMessage=sentMessage+'\nNo upgrade vote'; } else { for (i=0;i<UpgradeTab.length;i++) { sentMessage=sentMessage+'\n'+UpgradeTab[i][0]+':'+UpgradeTab[i][1]+' '+UpgradeTab[i][2]+'/'+UpgradeTab[i][3]; } } return sentMessage; } function presentQuickVote(QuickQuestion,QuickTab) { var sentMessage='Current quick vote:'; if (QuickTab.length==0) { sentMessage=sentMessage+'\nNo quick vote'; } else { sentMessage=sentMessage+'\n'+QuickQuestion; for (i=0;i<QuickTab.length;i++) { sentMessage=sentMessage+'\n'+QuickTab[i][0]+":"+QuickTab[i][1]; } } return sentMessage; } function test() { cb.settings.StartFreeVote='Vote 1|Vote 2|Vote 3|'; return cb.settings.StartFreeVote.split('|'); }
© Copyright Chaturbate 2011- 2025. All Rights Reserved.