Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @name Dice
- @inputs EGP:wirelink User:entity
- @persist Under Over Number Number2 Spin Prize Fail Chance U O T S Chose Chose1 Rolls MaxWinning Uses Winners
- @outputs OBS
- @persist Player:array Final:string
- OBS = ops()
- function number wirelink:egpButton(Idx:number,Ply:entity){
- TL = This:egpPos(Idx) - This:egpSize(Idx) / 2 * (0 ? 0 : 1)
- BR = This:egpPos(Idx) + This:egpSize(Idx) / (0 ? 1 : 2)
- Cur = This:egpCursor(Ply) return inrange(Cur, TL, BR) exit()}
- if(first()){
- Under = 1
- #Config
- Prize = 10 # Start Winning reward.
- Fail = 6 # Whenever someone fails this will be added too Winning reward.
- Chance = 5 # What % chace of winning - if you type 3 they have to either hit under 3 or over 96.
- MaxWinning = 1000 # How high the reward can get.
- Rolls = 3 # Amount of times a number rolls - DO NOT PUT BELOW 2
- function void drawBaseDesign()
- {
- EGP:egpClear()
- EGP:egpBox(1, vec2(255, 255), vec2(555, 555))
- EGP:egpMaterial(1,"console/background04")
- EGP:egpColor(1,255,90,0,255)
- EGP:egpBox(2, vec2(255, 255), vec2(555, 555))
- EGP:egpColor(2,10,20,60,125)
- EGP:egpBox(3, vec2(255, 275), vec2(420, 180))
- EGP:egpColor(3, vec4(35,42,46,190))
- EGP:egpBoxOutline(4, vec2(255, 275), vec2(420, 180))
- EGP:egpBox(5, vec2(255, 135), vec2(420, 75))
- EGP:egpColor(5, vec4(35,42,46,190))
- EGP:egpBoxOutline(6, vec2(255, 135), vec2(420, 75))
- EGP:egpBox(7, vec2(255, 275), vec2(400, 150))
- EGP:egpColor(7, vec(128, 128, 128))
- EGP:egpBox(8, vec2(130, 460), vec2(150, 75))
- EGP:egpColor(8, vec4(0, 0,0,225))
- EGP:egpBox(9, vec2(380, 460), vec2(150, 75))
- EGP:egpColor(9, vec4(0, 0,0,225))
- EGP:egpBox(10, vec2(255, 460), vec2(80, 80))
- EGP:egpColor(10, vec4(90,10,10,190))
- EGP:egpBox(11, vec2(255, 390), vec2(420, 30))
- EGP:egpColor(11, vec4(35,42,46,190))
- EGP:egpBoxOutline(12, vec2(255, 390), vec2(420, 30))
- }
- function baseTxt()
- {
- EGP:egpText(13, "---------------------------------------------", vec2(255, 122))
- EGP:egpAlign(13, 1)
- EGP:egpSize(13, 25)
- EGP:egpText(14, "Last number: ~~", vec2(255, 140))
- EGP:egpAlign(14, 1)
- EGP:egpSize(14, 25)
- EGP:egpText(15, "Under", vec2(130, 425))
- EGP:egpAlign(15, 1)
- EGP:egpSize(15, 35)
- EGP:egpText(16, "Over", vec2(380, 425))
- EGP:egpAlign(16, 1)
- EGP:egpSize(16, 35)
- EGP:egpText(17, "Spin", vec2(255, 440))
- EGP:egpAlign(17, 1)
- EGP:egpSize(17, 35)
- O = 99-Chance
- EGP:egpText(18, "Over: "+O:toString(), vec2(380, 465))
- EGP:egpAlign(18, 1)
- EGP:egpSize(18, 20)
- U = 0+Chance
- EGP:egpText(19, "Under: "+U:toString(), vec2(125, 465))
- EGP:egpAlign(19, 1)
- EGP:egpSize(19, 20)
- EGP:egpText(20, "Potential winning: "+Prize+"Kr", vec2(255, 99))
- EGP:egpAlign(20, 1)
- EGP:egpSize(20, 30)
- EGP:egpText(21, "Dice Game", vec2(255, 20))
- EGP:egpAlign(21, 1)
- EGP:egpSize(21, 50)
- EGP:egpText(22, "Current player: ", vec2(255, 378))
- EGP:egpAlign(22, 1)
- EGP:egpSize(22, 20)
- EGP:egpText(23,"0",vec2(220, 275))
- EGP:egpAlign(23, 1,1)
- EGP:egpSize(23, 100)
- EGP:egpText(24,"0",vec2(290, 275))
- EGP:egpAlign(24, 1,1)
- EGP:egpSize(24, 100)
- EGP:egpText(25, "Numbers rolled: 0 Winners: 0", vec2(255, 349))
- EGP:egpAlign(25, 1)
- EGP:egpSize(25, 15)
- }
- timer("Load",500)
- }
- if(Spin == 0)
- {
- if(clk("Load"))
- {
- drawBaseDesign()
- timer("Load2",500)
- }
- if(clk("Load2"))
- {
- baseTxt()
- }
- if(Over == 0 & EGP:egpButton(9, User))
- {
- Under = 0 Over = 1
- }
- if(Over == 1)
- {
- EGP:egpColor(9, vec4(69, 69 ,69, 100))
- }
- else
- {
- EGP:egpColor(9, vec(0, 0, 0))
- }
- if(Under == 0 & EGP:egpButton(8, User))
- {
- Under = 1 Over = 0
- }
- if(Under == 1)
- {
- EGP:egpColor(8, vec4(69, 69 ,69, 100))
- }
- else
- {
- EGP:egpColor(8, vec(0, 0, 0))
- }
- if(EGP:egpButton(10, User))
- {
- Player:pushEntity(User)
- Spin = 1
- Number = round(random(9))
- Uses += 1
- EGP:egpSetText(22, "Current player: "+Player[1, entity]:name())
- EGP:egpSetText(25, "Numbers rolled: "+Uses+" Winners: "+Winners)
- timer("Number",1000)
- }
- }
- if(Spin == 1)
- {
- if(clk("Number"))
- {
- Number = round(random(9))
- EGP:egpSetText(23,""+Number)
- Chose +=1
- if(Chose !=Rolls)
- {
- timer("Number",500)
- }
- }
- if(Chose == Rolls)
- {
- timer("Number2",500)
- }
- if(clk("Number2"))
- {
- Chose = 0
- Number2 = round(random(9))
- EGP:egpSetText(24,""+Number2)
- Chose1 +=1
- if(Chose1 !=Rolls)
- {
- timer("Number2",500)
- }
- }
- if(Chose1 == Rolls)
- {
- Chose1 = 0
- if(Number == 0)
- {Final = ""+Number2}
- else{Final = Number+""+Number2}
- EGP:egpSetText(14, "Last number: "+Final)
- T = 1
- S = 1
- }
- }
- if(T == 1)
- {
- if(Final:toNumber() < U & Under == 1 & S == 1| Final:toNumber() > O & Over == 1 & S == 1)
- {
- moneyGive(Player[1,entity],Prize)
- EGP:egpSetText(20, "Potential winning: "+Prize+"Kr")
- print("Round numbere: "+Final:toNumber()+" Player: "+Player[1,entity]:name())
- concmd("say /pm "+ Player[1,entity]:steamID()+" Cograts you won!: "+Prize+"Kr")
- Winners += 1
- EGP:egpSetText(25, "Numbers rolled: "+Uses+" Winners: "+Winners)
- timer("R",250)
- S = 0
- }
- if(Final:toNumber() <= O & Over == 1 | Final:toNumber() >= U & Under == 1)
- {
- timer("R",1000)
- timer("Prize+",1000)
- }
- if(clk("Prize+"))
- {
- Prize = Prize + Fail
- EGP:egpSetText(20, "Potential winning: "+Prize+"Kr")
- }
- if(Prize > MaxWinning)
- {
- Prize = MaxWinning
- EGP:egpSetText(20, "Potential winning: "+Prize+"Kr")
- }
- if(clk("R"))
- {
- Player = array()
- T = 0 Spin = 0
- EGP:egpSetText(22, "Current player: "+Player[1, entity]:name())
- EGP:egpSetText(23, "0")
- EGP:egpSetText(24, "0")
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement