Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @name Lottery E2 V.2
- @inputs EGP:wirelink
- @persist [CurrentAmount,PricePerTicket,Tickets,PercentProfit,Closed]:number [Players,NewArray]:array [Version,Changelog,Winner,Advert,AdvertPrint]:string
- if(first()) {
- #Here are variables you may change to your liking! :)
- PercentProfit=8
- PricePerTicket=1000
- }
- #------------------------------------------------------------------------------------------------------------------------------------------
- if(first()) {
- #Here are variables you MAY NOT change! :)
- Version="V.2"
- Changelog="-Updated so that the E2 is fully automatic! No more writing down on a sheet of paper!\n-Added Tax!"
- CurrentAmount=0
- Tickets=0
- Closed=0
- }
- if(first()) {
- printColor(vec(100,100,100),"---------------------")
- printColor(vec(33,255,33)," LOTTERY E2 "+Version+"!")
- printColor(vec(100,100,100),"---------------------")
- printColor(vec(33,255,33),"Changelog: ")
- printColor(vec(255,255,33),Changelog)
- }
- function loadScreen() {
- EGP:egpClear()
- EGP:egpRoundedBox(1,vec2(256,256),vec2(400,200))
- EGP:egpColor(1,vec(33,255,33))
- EGP:egpAlign(1,1,1)
- EGP:egpRoundedBox(2,vec2(256,256),vec2(395,195))
- EGP:egpColor(2,vec(125,125,125))
- EGP:egpAlign(2,1,1)
- EGP:egpRoundedBox(3,vec2(256,185),vec2(395,50))
- EGP:egpColor(3,vec(33,255,33))
- EGP:egpAlign(3,1,1)
- EGP:egpRoundedBox(4,vec2(256,195),vec2(105,55))
- EGP:egpColor(4,vec(33,255,33))
- EGP:egpAlign(4,1,1)
- EGP:egpRoundedBox(5,vec2(256,195),vec2(100,50))
- EGP:egpColor(5,vec(100,100,100))
- EGP:egpAlign(5,1,1)
- EGP:egpRoundedBox(6,vec2(256,183),vec2(395,50))
- EGP:egpColor(6,vec(100,100,100))
- EGP:egpAlign(6,1,1)
- EGP:egpText(7,"$ $ $ $ LOTTERY $ $ $ $",vec2(256,183))
- EGP:egpFont(7,"Arial",35)
- EGP:egpColor(7,vec(33,255,33))
- EGP:egpAlign(7,1,1)
- EGP:egpText(8,"Jackpot: $"+round(CurrentAmount),vec2(256,235))
- EGP:egpFont(8,"Arial",28)
- EGP:egpColor(8,vec(33,255,33))
- EGP:egpAlign(8,1,1)
- EGP:egpText(9,"Amount of Tickets: "+Tickets,vec2(256,256))
- EGP:egpFont(9,"Arial",20)
- EGP:egpColor(9,vec(33,255,33))
- EGP:egpAlign(9,1,1)
- EGP:egpBox(10,vec2(256,270),vec2(395,3))
- EGP:egpColor(10,vec(33,255,33))
- EGP:egpAlign(10,1,1)
- EGP:egpText(11,"Chances of winning with...",vec2(256,280))
- EGP:egpColor(11,vec(200,200,200))
- EGP:egpAlign(11,1,1)
- if(Tickets <= 0) {
- EGP:egpText(12,"1 ticket: 100%",vec2(256,302))
- } elseif(Tickets > 0) {EGP:egpText(12,"1 ticket: "+round((1/Tickets)*100,3)+"%",vec2(256,302))}
- if(Tickets <= 5) {
- EGP:egpText(13,"5 tickets: 100%",vec2(256,317))
- } else {EGP:egpText(13,"5 tickets: "+round((5/Tickets)*100,3)+"%",vec2(256,317))}
- if(Tickets <=10) {
- EGP:egpText(14,"10 tickets: 100%",vec2(256,332))
- } else {EGP:egpText(14,"10 tickets: "+round((10/Tickets)*100,3)+"%",vec2(256,332))}
- EGP:egpAlign(12,1,1),EGP:egpAlign(13,1,1),EGP:egpAlign(14,1,1)
- Taxed=CurrentAmount-(CurrentAmount/100*PercentProfit)
- EGP:egpText(15,"Tax: "+PercentProfit+"%",vec2(415,234))
- EGP:egpAlign(15,1,1)
- EGP:egpColor(15,vec(150,50,150))
- EGP:egpRoundedBox(25,vec2(256,256),vec2(400,200))
- EGP:egpColor(25,vec(50,50,50))
- EGP:egpAlign(25,1,1)
- EGP:egpRoundedBox(26,vec2(256,256),vec2(395,195))
- EGP:egpAlign(26,1,1)
- EGP:egpColor(26,vec(255,75,75))
- EGP:egpText(27,"CLOSED",vec2(256,256))
- EGP:egpFont(27,"Arial",45)
- EGP:egpColor(27,vec(50,50,50))
- EGP:egpAlign(27,1,1)
- EGP:egpAlpha(25,Closed*255),EGP:egpAlpha(26,Closed*255),EGP:egpAlpha(27,Closed*255)
- }
- if(first()){loadScreen()}
- runOnChat(1)
- if(chatClk(owner())) {
- LS=owner():lastSaid():explode(" ")
- if(LS[1,string]=="-addt"|LS[1,string]=="-addtickets") {
- hideChat(1)
- if(LS[2,string]!="" & LS[3,string]!="" & LS[4,string]=="") {
- if(LS[2,string]:toNumber() < 1) {
- printColor(vec(255,75,75),"Cannot add less than 1 ticket!")
- } else {
- if(LS[2,string]:toNumber() <= 100) {
- if(findPlayerByName(LS[3,string])) {
- Player=findPlayerByName(LS[3,string]):name()
- if(LS[2,string]:toNumber()>Tickets) {
- for(I=Tickets,LS[2,string]:toNumber(),1) {
- if(I!=Tickets) {
- Players[I,string]=Player
- }
- }
- } elseif(LS[2,string]:toNumber()<=Tickets) {
- for(I=Tickets,LS[2,string]:toNumber()+Tickets,1) {
- if(I!=Tickets) {
- Players[I,string]=Player
- }
- }
- }
- Tickets=Tickets+LS[2,string]:toNumber()
- CurrentAmount=CurrentAmount+(PricePerTicket*LS[2,string]:toNumber())
- printColor(vec(0,150,255),"Added "+LS[2,string]+" tickets to the lottery under the name of ",vec(255,255,33),Player)
- printColor(vec(0,150,255),"Current amount of tickets: "+Tickets)
- loadScreen()
- } else {
- printColor(vec(255,75,75),"Error: "+LS[3,string]+" is not a player online!")
- }
- } else {
- printColor(vec(255,75,75),"Cannot add more than 100 tickets (Tick quota will be reached if so!)")
- }
- }
- } else {
- printColor(vec(255,75,75),"Correct Usage: -addt [number of tickets] [player name]")
- }
- }
- elseif(LS[1,string]=="-clear") {
- hideChat(1)
- printColor(vec(33,255,33),"Cleared the lottery.")
- Players=NewArray
- Tickets=0
- CurrentAmount=0
- loadScreen()
- }
- elseif(LS[1,string]=="-pick") {
- hideChat(1)
- if(LS[2,string]=="") {
- LuckyNumber=ceil(random(1,Tickets))
- printColor(vec(33,255,33),"The lottery results are in! The lucky number was... ",vec(255,255,33),LuckyNumber+"!")
- Profit=CurrentAmount/100*PercentProfit
- printColor(vec(33,255,33),"You get a profit of $"+Profit+" Give them $"+(CurrentAmount-Profit):toString())
- Winner=Players[LuckyNumber,string]
- printColor(vec(200,33,255),"THE WINNER IS... ",vec(255,255,33),Winner)
- timer("WINNER",1000)
- Players=NewArray
- Tickets=0
- CurrentAmount=0
- loadScreen()
- } else {
- printColor(vec(255,33,33),"Correct Usage: -pick")
- }
- }
- elseif(LS[1,string]=="-setjackpot"|LS[1,string]=="-setj") {
- hideChat(1)
- if(LS[2,string]!=""&LS[3,string]=="") {
- CurrentAmount=LS[2,string]:toNumber()
- printColor(vec(0,150,255),"You set the jackpot to $"+LS[2,string]:toNumber())
- loadScreen()
- } else {
- printColor(vec(255,33,33),"Corrent Usage: -setj [amount]")
- }
- }
- elseif(LS[1,string]=="-setadvert"|LS[1,string]=="-seta") {
- hideChat(1)
- Advert=LS:concat(" ",2,LS:count())
- if(Advert:find("[CURRENT_AMOUNT]")) {
- AdvertPrint=Advert:replace("[CURRENT_AMOUNT]",CurrentAmount:toString())
- }
- printColor(vec(33,255,33),"Set advert to: ",vec(255,255,33),AdvertPrint)
- printColor(vec(33,255,33),"Type -advert or -ad to say your advert!")
- }
- elseif(LS[1,string]=="-advert"|LS[1,string]=="-ad") {
- hideChat(1)
- if(LS[2,string]=="") {
- if(Advert !="") {
- timer("advert",1000)
- } else {
- printColor(vec(255,75,75),"You haven't set your advert yet! Use -setadvert to do so!")
- }
- } else {
- printColor(vec(255,75,75),"Correct Usage: -ad")
- }
- }
- elseif(LS[1,string]=="-power") {
- hideChat(1)
- if(Closed==0) {
- Closed=1
- printColor(vec(255,255,33),"The lottery has been closed!")
- } elseif(Closed==1) {
- Closed=0
- printColor(vec(255,255,33),"The lottery has been opened!")
- }
- loadScreen()
- }
- }
- if(clk("WINNER")) {
- stoptimer("WINNER")
- hideChat(0)
- concmd("say \"/advert [AUTOMATED MESSAGE] THE WINNER IS... "+Winner+"!\"")
- }
- if(clk("advert")) {
- stoptimer("advert")
- hideChat(0)
- if(Advert:find("[CURRENT_AMOUNT]")) {
- AdvertPrint=Advert:replace("[CURRENT_AMOUNT]",CurrentAmount:toString())
- }
- concmd("say \"/advert "+AdvertPrint+"\"")
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement