Hop til indhold
Stavox

Sky-Bank


Trixx

Recommended Posts

Som i nok ved har  @br1zzle& @rotten<3 (DK) valgt at lække SkyBank... Istedet for at en gammel E2 bliver solgt mm. Har jeg valgt at uploade den her.

Spoiler

@name SkyBank - E2 v1.4
@inputs [Ctrl, S]:wirelink [CtrlUser, SU, Ranger]:entity
@outputs [Door, PrinterDoor]:normal
@persist [EGPMode, Start, Checked, Limit, Am, PrinterTax, PayCustomerIndx, NextPayCheck, L3, L4, HyredPayDay, SI, CtrlS, PrintersInSystem, PengeTjent, PengeSendt, CtrlHyredInx]:number 
@persist [B]:string 
@persist [Ranger, CurUser]:entity 
@persist [TempPayArray, StartPrint, NextSay]:array NNCMD
@persist [Guards, Settings, P]:table
@persist InfoIndex InfoEGP:table
if(first()){if(!concmd("say")){printColor(vec(255),"[",vec(35,120,255),"Sky-Bank",vec(255),vec(255),"] ",vec(200,35,35),"Comcmd er sl"+aa()+"et fra! Du skal skrive 'wire_expression2_concmd 1' i din console f"+oe()+"r E2'en kan bruges. Pr"+oe()+"ver igen om 10 sekunder!") Start=1 timer("tryAgain",10000)}}

if(clk("tryAgain")){reset()}

OPS = ops()
CPU=cpuUsage()*1000000
CLKNAME = clkName()
FileName = fileName()

if(first() &!Start){
    runOnChat(1)
    runOnFile(1)
    PrintersInSystem=0
    Door=1
    PrinterDoor=0
    EGPMode=1 #0.645
    timer("PayDay",10000)
    ###########################
    local A=toChar(226)+toChar(128)+toChar(148)
    local B=toChar(227)+toChar(128)+toChar(137)
    local D=toChar(227)+toChar(128)+toChar(136)
    setName(D+A+A+A+A+A+A+A+A+A+A+A+A+A+B+"
    ~  Sky - Bank  ~
    ~  af Toby og Trixx og Martus ~
    V.1.4.6
    "+D+A+A+A+A+A+A+A+A+A+A+A+A+A+B)

    ###########################
    #      Indstillinger      #
    
    Settings["Payday",number] = 8 #Hvor lang tid det tager per udbetaling (Minutter)
    
    Settings["Procent",number] = 60 #Hvor mange procent "Normale" brugere faar udbetalt
    
    Settings["ProcentVIP",number] = 80 #Hvor mange procent "Premium" brugere faar udbetalt
    
    #Ligning til at sende penge
    
    
    Settings["PrinterLimit",number] = 4 #"Normal Konto" Printer Limit
    
    Settings["PremiumPrinterLimit",number] = 8 #"Premium Konto" Printer Limit
    
    Settings["PremiumPrice",number] = 10000 #"Premium Opgraderings" pris.
    
    Settings["PayHyred",number] = 1
    
    Settings["T1", string] = "1. Vi har ret til at lukke din konto ved irritation."
    Settings["T2", string] = "2. Der er ikke mulighed for refusion ved nedlukning."
    Settings["T3", string] = "3. Vi modtager kun mobilepay betaling."
    Settings["T4", string] = "4. Det vil koste penge, hvis du vil have dine-"
    Settings["T4m", string] = "v"+ae()+"rdigenstande igen."
    Settings["T5", string] = "5. Vi tager ned til 5% af dine v"+ae()+"rdigenstande."
    Settings["T6", string] = "6. Alt data bliver krypteret med en sikker forbindelse."
    
    L3 = 215 #pr payday for lvl 3 printer
    L4 = 270 #pr payday for lvl 4 printer
    
    StartPrint = array("Velkommen til Sky-Bank!", "Husk at overholde vores TOS: www.ifabdaily.eu", "E2'en er lavet af Martus, Toby og Trixx") timer("startprint",5000)
    
    ###########################
    
    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()
    }
    
    function runSayConCmd(Str:string)
    {
        NextSay:pushString(Str)
    }
    
    function string returnTime(){
        MMin=time("min")
        HHour=time("hour")+2
        if(MMin<10){Min="0"+MMin}
        else{Min=""+MMin}
        if(HHour<10){Hour="0"+HHour}
        elseif(HHour==24){Hour="00"}
        elseif(HHour==25){Hour="01"}
        elseif(HHour==26){Hour="02"}
        elseif(HHour==27){Hour="03"}
        elseif(HHour==28){Hour="04"}
        elseif(HHour==29){Hour="05"}
        elseif(HHour==30){Hour="06"}
        else{Hour=""+HHour}
        Tid=Hour+":"+Min
    return Tid
    }   
    
    function string number:toYesNo()
    {
        return This ? "Ja" : "Nej"   
    }
    
    function string moneyFormat(M:number){ #Don't blame me for shit.
        ST=M:toString()
        switch(ST:length()){
            case 4,F=ST:sub(1,1) L=ST:sub(F:length()+1) return F+","+L,break
            case 5,F=ST:sub(1,2) L=ST:sub(F:length()+1) return F+","+L,break
            case 6,F=ST:sub(1,3) L=ST:sub(F:length()+1) return F+","+L,break
            case 7,F=ST:sub(1,4) L=ST:sub(F:length()+1) return F+","+L,break
            case 8,F=ST:sub(1,5) L=ST:sub(F:length()+1) return F+","+L,break
            case 9,F=ST:sub(1,6) L=ST:sub(F:length()+1) return F+","+L,break
            case 10,F=ST:sub(1,7) L=ST:sub(F:length()+1) return F+","+L,break
            default,return ST,break
        }
    }
    
    function m1(S:string){printColor(vec(255),"[",vec(35,120,255),"Sky-Bank",vec(255)," - ",vec(255),returnTime(),vec(255),"]: ",S)}
    function m2(S:string){printColor(vec(255),"[",vec(35,120,255),"Sky-Bank",vec(255),vec(255),"]: ",S)}
    function m3(S:string){printColor(vec(255),"[",vec(35,120,255),"Sky-Bank",vec(255),vec(255),"]: ",vec(200,35,35),S)}
    
    function entity:newCustomer(){
        if(!This:isGov()){
            P[This:steamID(),table]=table()
            P[This:steamID(),table]["printers",table]=table()
            P[This:steamID(),table]["valid",number]=1
            P[This:steamID(),table]["premium",number]=0
            P[This:steamID(),table]["pay",number]=0
            P[This:steamID(),table]["lastSend",number] = curtime()
            P[This:steamID(),table]["moneySend",number] = 0
            P[This:steamID(),table]["Ent", entity] = This
        }else{
            m1(This:name()+" er "+This:team():teamName()+" og kan derfor ikke tilf"+oe()+"jes")
        }
    }
    
    function number entity:getSend()
    {
        return round(P[This:steamID(),table]["moneySend",number])
    }
    
    function number entity:isCustomer(){
        if(P[This:steamID(),table]["valid",number]){
            if(!This:isGov()){
                return 1
            }else{
                P[This:steamID(),table]["valid",number]=0
                P[This:steamID(),table]["printers",table]:clear()
                return 0
            }
        }else{
            return 0
        }
    }
    
    function number entity:hasPremium(){
        return P[This:steamID(),table]["premium",number]
    }
    
    function number entity:regPrinter(O:entity){
        if(O:isPlayer()){
            if(!O:isGov()){
                if(This:isPrinter()){
                    if(This:printerLevel()>2){
                        for(I=1,P[O:steamID(),table]["printers",table]:count()){if(P[O:steamID(),table]["printers",table][I,entity] == This){return 0}}
                        P[O:steamID(),table]["printers",table]:pushEntity(This)
                        concmd("play buttons/bell1.wav")
                        m1(O:name()+" Har indsat en printer i level "+This:printerLevel())
                        PrintersInSystem++
                        return 1
                    }
                }
            }else{
                m1(This:name()+" er "+This:team():teamName()+" og kan derfor ikke tilf"+oe()+"jes")
                return 0
            }
        }
        return 0
    }
    
    function number entity:getPrinters(){
        if(This:isCustomer()){
            return P[This:steamID(),table]["printers",table]:count()
        }
    }
    
    function void entity:removeBrokenPrinters()
    {
        local Tbl = P[This:steamID(),table]["printers",table]
        local OldTbl = Tbl
        
        P[This:steamID(),table]["printers",table] = table()
        
        for(I=1,OldTbl:count())
        {
            if(OldTbl[I,entity]:isPrinter())
            {
                P[This:steamID(),table]["printers",table]:pushEntity(OldTbl[I,entity])
            }
        }
        local Mistet = OldTbl:count()-P[This:steamID(),table]["printers",table]:count()
        if(Mistet>=1){m1(This:name()+" - Har mistet "+Mistet+" printers!") PrintersInSystem-=Mistet}
    }
    
    
    function void entity:payCustomer()
    {
        if(This:isGov()){P:remove(This:steamID()) m2(This:name()+" er blevet fjernet fra systemet grund: Arbejder for staten") return}
        if(!This:isCustomer()) {return}
        if(This:getPrinters()>=1)
        {   
            Am = 0
            PlyTbl = P[This:steamID(),table]
            for(I=1,PlyTbl["printers",table]:count())
            {

                local LastSend = (curtime()/60) - (PlyTbl["lastSend",number] / 60)
                local Ent = PlyTbl["printers",table][I,entity]
                local Lvl = Ent:printerLevel()
                local Procentt = (This:hasPremium() ? Settings["ProcentVIP",number] : Settings["Procent",number])
                if(Ent:isPrinter())
                {
                    if(Lvl==3)
                    {
                        local Send = ((L3*LastSend)/100*Procentt)
                        local Total = L3*LastSend
                        Am+=Send
                        HyredPayDay+=Total-Send
                        PengeTjent+=Total-Send
                    }elseif(Lvl==4)
                    {
                        local Send = ((L4*LastSend)/100*Procentt)
                        local Total = L4*LastSend
                        Am+=Send
                        HyredPayDay+=Total-Send
                        PengeTjent+=Total-Send
                    }
                }
            }
            PlyTbl["lastSend",number] = curtime()
            if(PlyTbl["pay",number]==0){PlyTbl["pay",number]=1 return}
            PlyTbl["moneySend",number] = PlyTbl["moneySend",number] + Am
            m1("Betaler - "+This:name())
            hint("Betaler - "+This:name(),1500)
            moneyGive(This,Am)
            PengeSendt+=Am
            
            Am=0
            This:removeBrokenPrinters()
        }
    }
    
    function void payCustomers()
    {
        m1("Fors"+oe()+"ger at betale kunder!")
        PayCustomerIndx = 1
        TempPayArray = array()
        foreach(K, CCC:table = P)
        {
            local Ent = CCC["Ent", entity]
            
            if(Ent:steamID()==K)
            {
                TempPayArray:pushEntity(CCC["Ent", entity])
            }else
            {
                hint(K+" er disconnected og derfor blevet fjernet fra systemet!", 2500)
                P:remove(K)   
            }
            
            
        }
        timer("payCustumer",1500)
    }

    
    
    
    function number entity:getIndkomst()
    {
        local Amm = 0
        if(This:getPrinters()>=1)
        {   
            local PlyTbl = P[This:steamID(),table]
            for(I=1,PlyTbl["printers",table]:count())
            {
                
                local Ent = PlyTbl["printers",table][I,entity]
                local Lvl = Ent:printerLevel()
                local Procentt = (This:hasPremium() ? Settings["ProcentVIP",number] : Settings["Procent",number])
                if(Ent:isPrinter())
                {
                    if(Lvl==3)
                    {
                        Amm+=((L3*Settings["Payday",number]/100)*Procentt)
                    }elseif(Lvl==4)
                    {
                        Amm+=((L4*Settings["Payday",number]/100)*Procentt)
                    }
                }
            }
        }
        return Amm
    }
    
    
    
    function wirelink:addCursor(){
        This:egpRemove(300)
        This:egpPoly(300,array(vec2(0,0),vec2(0,15),vec2(3,12),vec2(5,15),vec2(7,15),vec2(6,11),vec2(10,10)))
        This:egpColor(300,0,0,0,200)
        This:egpParentToCursor(300)
    }

    function wirelink:firstPage(){
        PrinterDoor=0
        Door=1
        SI=0
        Y=50
        T=75
        #BG
        This:egpClear()
        This:egpBox(1, vec2(256,256), vec2(512,512)) This:egpMaterial(1, "skybox/militia_hdrup")
        This:egpBox(2, vec2(256,256), vec2(512,512)) This:egpColor(2, vec4(33, 33, 33, 225))
        This:egpBox(3, vec2(256,256), vec2(300,512)) This:egpColor(3, vec4(33, 33, 33, 145)) 
        This:egpBoxOutline(7, vec2(256,256), vec2(512,512)) This:egpColor(7, vec4(225, 225, 225, 255)) This:egpSize(7, 3)
        
        #Logo
        This:egpText(4, "SKY - BANK", vec2(256,256-T)) This:egpAlign(4, 1, 1) This:egpSize(4, 35) This:egpFont(4, "Courier New") This:egpColor(4, vec4(225, 225, 225, 255))
        This:egpRoundedBox(8, vec2(256,176-Y), vec2(190,35)) This:egpColor(8, vec4(225, 225, 225, 255))
        This:egpCircle(9, vec2(216,156-Y), vec2(35,25)) This:egpColor(9, vec4(225, 225, 225, 255))
        This:egpCircle(10, vec2(256,156-Y), vec2(35,25)) This:egpColor(10, vec4(225, 225, 225, 255))
        This:egpCircle(11, vec2(296,156-Y), vec2(35,25)) This:egpColor(11, vec4(225, 225, 225, 255))
        This:egpCircle(12, vec2(256,136-Y), vec2(35,25)) This:egpColor(12, vec4(225, 225, 225, 255))
        This:egpBox(6, vec2(258,270-T), vec2(195,2)) This:egpColor(6, vec4(225, 225, 225, 255))    
        
        #Login
        This:egpBox(13, vec2(256,320), vec2(200,30)) This:egpColor(13, vec4(33, 33, 33, 145))
        This:egpBox(14, vec2(256,320+16), vec2(200,3)) This:egpColor(14, vec4(225, 225, 225, 255))
        This:egpText(15, "LOGIN", vec2(256,320)) This:egpAlign(15, 1, 1) This:egpSize(15, 20) This:egpFont(15, "Courier New") This:egpColor(15, vec4(225, 225, 225, 255))
     
        This:addCursor()
    }
    function wirelink:secondPage(){
        PrinterDoor=0
        SI=1
        if(CurUser:hasPremium()){PremiumColor=vec4(75,200,75,255)}else{PremiumColor=vec4(255,255,255,255)}
        #BG
        This:egpClear()
        This:egpBox(1, vec2(256,256), vec2(512,512)) This:egpMaterial(1, "skybox/militia_hdrup")
        This:egpBox(2, vec2(256,256), vec2(512,512)) This:egpColor(2, vec4(33, 33, 33, 225))
        This:egpBox(3, vec2(256,256), vec2(300,512)) This:egpColor(3, vec4(33, 33, 33, 145)) 
        This:egpBoxOutline(7, vec2(256,256), vec2(512,512)) This:egpColor(7, vec4(225, 225, 225, 255)) This:egpSize(7, 3)
        This:egpBoxOutline(100, vec2(256,256), vec2(512,512)) This:egpColor(100, vec4(225, 225, 225, 255)) This:egpSize(100, 3)
    
        #Logo
        Y=85
        This:egpRoundedBox(8, vec2(256,176-Y), vec2(190,35)) This:egpColor(8, vec4(225, 225, 225, 255))
        This:egpCircle(9, vec2(216,156-Y), vec2(35,25)) This:egpColor(9, vec4(225, 225, 225, 255))
        This:egpCircle(10, vec2(256,156-Y), vec2(35,25)) This:egpColor(10, vec4(225, 225, 225, 255))
        This:egpCircle(11, vec2(296,156-Y), vec2(35,25)) This:egpColor(11, vec4(225, 225, 225, 255))
        This:egpCircle(12, vec2(256,136-Y), vec2(35,25)) This:egpColor(12, vec4(225, 225, 225, 255))
        This:egpText(4, "SKY - BANK", vec2(256,256-120)) This:egpAlign(4, 1, 1) This:egpSize(4, 35) This:egpFont(4, "Courier New")
        This:egpBox(6, vec2(258,270-120), vec2(195,2)) This:egpColor(6, vec4(225, 225, 225, 255))    
    
        #Bokse
        This:egpBox(13, vec2(256,200), vec2(200,30)) This:egpColor(13, vec4(33, 33, 33, 145))
        This:egpBox(14, vec2(256,200+16), vec2(200,3)) This:egpColor(14, vec4(225, 225, 225, 255))

    
        
        This:egpBox(16, vec2(256,200+40), vec2(200,30)) This:egpColor(16, vec4(33, 33, 33, 145))
        This:egpBox(17, vec2(256,200+16+40), vec2(200,3)) This:egpColor(17,PremiumColor)
        
    
        This:egpBox(19, vec2(256,200+80), vec2(200,30)) This:egpColor(19, vec4(33, 33, 33, 145))
        This:egpBox(20, vec2(256,200+16+80), vec2(200,3)) This:egpColor(20, vec4(225, 225, 225, 255))     
        
        #Tekst info
        
        #Logud
        This:egpBox(22, vec2(256,494), vec2(300,30)) This:egpColor(22, vec4(33, 33, 33, 145))
        timer("SecondPage2",350)
    }
    
    function wirelink:secondPageText()
    {
        local Indkomst = round(CurUser:getIndkomst())
        Limit= CurUser:hasPremium() ? Settings["PremiumPrinterLimit",number] : Settings["PrinterLimit",number]
        This:egpText(23, "- Logud -", vec2(256,494)) This:egpAlign(23,1,1) This:egpSize(23,20) This:egpFont(23, "Courier New")
        This:egpText(18, "K"+oeL()+"B ERHVERVSKONTO", vec2(256,200+40)) This:egpAlign(18, 1, 1) This:egpSize(18, 16) This:egpFont(18, "Courier New")
        This:egpText(15, "INDS"+aeL()+"T V"+aeL()+"RDIGENSTANDE", vec2(256,200)) This:egpAlign(15, 1, 1) This:egpSize(15, 16) This:egpFont(15, "Courier New")
        
        This:egpText(24, "V"+ae()+"rdigenstande indsat: "+CurUser:getPrinters()+"/"+Limit, vec2(120,340)) This:egpAlign(24,0,1) This:egpSize(24,15) This:egpFont(24, "Courier New") 
        This:egpText(25, "Inkomst per. udbetaling: "+moneyFormat(Indkomst)+"kr.", vec2(120,340+25)) This:egpAlign(25,0,1) This:egpSize(25,15) This:egpFont(25, "Courier New")
        This:egpText(26, "Erhvervskonto: "+CurUser:hasPremium():toYesNo(), vec2(120,340+25+25)) This:egpAlign(26,0,1) This:egpSize(26,15) This:egpFont(26, "Courier New")
        This:egpText(27, "N"+ae()+"ste udbetaling: "+(round((NextPayCheck-curtime())/60)*(P[CurUser:steamID(),table]["pay",number]==1 ? 1 : 2))+" minutter", vec2(120,340+25+25+25)) This:egpAlign(27,0,1) This:egpSize(27,15) This:egpFont(27, "Courier New")

        This:egpText(21, "SLET KONTO", vec2(256,200+80)) This:egpAlign(21, 1, 1) This:egpSize(21, 16) This:egpFont(21, "Courier New")    

        This:addCursor()
        timer("nextPayDay",60000)
        timer("autoLogout",3000)
    }
    
    function wirelink:tosPage(){
        SI=3
        #BG
        This:egpClear()
        This:egpBox(1, vec2(256,256), vec2(512,512)) This:egpMaterial(1, "skybox/militia_hdrup")
        This:egpBox(2, vec2(256,256), vec2(512,512)) This:egpColor(2, vec4(33, 33, 33, 225))
        This:egpBox(3, vec2(256,256), vec2(300,512)) This:egpColor(3, vec4(33, 33, 33, 145)) 
        This:egpBoxOutline(7, vec2(256,256), vec2(512,512)) This:egpColor(7, vec4(225, 225, 225, 255)) This:egpSize(7, 3)
        This:egpBoxOutline(100, vec2(256,256), vec2(512,512)) This:egpColor(100, vec4(225, 225, 225, 255)) This:egpSize(100, 3)
    
        #Logo
        Y=85
        This:egpRoundedBox(8, vec2(256,176-Y), vec2(190,35)) This:egpColor(8, vec4(225, 225, 225, 255))
        This:egpCircle(9, vec2(216,156-Y), vec2(35,25)) This:egpColor(9, vec4(225, 225, 225, 255))
        This:egpCircle(10, vec2(256,156-Y), vec2(35,25)) This:egpColor(10, vec4(225, 225, 225, 255))
        This:egpCircle(11, vec2(296,156-Y), vec2(35,25)) This:egpColor(11, vec4(225, 225, 225, 255))
        This:egpCircle(12, vec2(256,136-Y), vec2(35,25)) This:egpColor(12, vec4(225, 225, 225, 255))
        This:egpText(4, "SKY - BANK", vec2(256,256-120)) This:egpAlign(4, 1, 1) This:egpSize(4, 35) This:egpFont(4, "Courier New")
        This:egpBox(6, vec2(258,270-120), vec2(195,2)) This:egpColor(6, vec4(225, 225, 225, 255))    

        #This:egpBoxOutline(8, vec2(256,175), vec2(300,1))
        
        #Login ting
        NM=CurUser:name():explode(" ")
        This:egpText(39, "Fornavn: "+NM[1,string], vec2(128,200+10)) This:egpAlign(39,0,1) This:egpSize(39,20) This:egpFont(39, "Courier New")
        This:egpBoxOutline(34, vec2(285,200+10), vec2(150,25)) #This:egpColor(34, vec4(24, 24, 24, 100))
        
        This:egpText(33, "Kodeord: ********", vec2(128,235+10)) This:egpAlign(33,0,1) This:egpSize(33,20) This:egpFont(33, "Courier New")
        This:egpBoxOutline(35, vec2(285,235+10), vec2(150,25)) #This:egpColor(35, vec4(24, 24, 24, 100))
        
        #Check boks
        This:egpBoxOutline(37, vec2(126,275+185), vec2(25,25))
        This:egpText(38, "Jeg accepterer vilk"+aa()+"r og betingelser", vec2(145,275+185)) This:egpAlign(38,0,1) This:egpSize(38,15) This:egpFont(38, "Courier New")
        
        #Tekst info
        This:egpText(24, "Vilk"+aa()+"r og betingelser", vec2(256,280)) This:egpAlign(24,1,1) This:egpSize(24,20) This:egpFont(24, "Courier New")
        
        This:egpText(25, Settings["T1", string], vec2(121,350-40)) This:egpAlign(25,0,1) This:egpSize(25,12) This:egpFont(25, "Courier New")
        This:egpText(26, Settings["T2", string], vec2(121,350+20-40)) This:egpAlign(26,0,1) This:egpSize(26,12) This:egpFont(26, "Courier New")
        This:egpText(27, Settings["T3", string], vec2(121,350+20+20-40)) This:egpAlign(27,0,1) This:egpSize(27,12) This:egpFont(27, "Courier New")
        This:egpText(28, Settings["T4", string], vec2(121,350+20+20+20-40)) This:egpAlign(28,0,1) This:egpSize(28,12) This:egpFont(28, "Courier New")        
        This:egpText(32, Settings["T4m", string], vec2(121,350+20+20+40-40)) This:egpAlign(32,0,1) This:egpSize(32,12) This:egpFont(32, "Courier New")
        This:egpText(29, Settings["T5", string], vec2(121,350+40+20+20+20-40)) This:egpAlign(29,0,1) This:egpSize(29,12) This:egpFont(29, "Courier New")
        This:egpText(40, Settings["T6", string], vec2(121,350+40+40+40-40)) This:egpAlign(40,0,1) This:egpSize(40,12) This:egpFont(40, "Courier New")
        
        This:egpBoxOutline(31, vec2(256,390-20), vec2(285,145)) #This:egpColor(31, vec4(200,200,200,200))
        
        #Logud
        This:egpBox(22, vec2(256,494), vec2(300,30)) This:egpColor(22, vec4(33, 33, 33, 145))
        This:egpText(23, "- Forts"+ae()+"t -", vec2(256,494)) This:egpAlign(23,1,1) This:egpSize(23,20) This:egpFont(23, "Courier New")
        
        #OpretKonto
        This:egpBox(41, vec2(256,175), vec2(300,25)) This:egpColor(41, vec4(33, 33, 33, 145))
        This:egpText(42, "OPRET KONTO", vec2(256,175)) This:egpAlign(42, 1, 1) This:egpSize(42, 20) This:egpFont(42, "Courier New") This:egpColor(42, vec4(225, 225, 225, 255))
        
        This:addCursor()
        timer("autoLogout",3000)
    }
    function wirelink:regPage(){
        PrinterDoor=1
        SI=4
        #BG
        This:egpClear()
        This:egpBox(1, vec2(256,256), vec2(512,512)) This:egpMaterial(1, "skybox/militia_hdrup")
        This:egpBox(2, vec2(256,256), vec2(512,512)) This:egpColor(2, vec4(33, 33, 33, 225))
        This:egpBox(3, vec2(256,256), vec2(300,512)) This:egpColor(3, vec4(33, 33, 33, 145)) 
        This:egpBoxOutline(7, vec2(256,256), vec2(512,512)) This:egpColor(7, vec4(225, 225, 225, 255)) This:egpSize(7, 3)
        This:egpBoxOutline(100, vec2(256,256), vec2(512,512)) This:egpColor(100, vec4(225, 225, 225, 255)) This:egpSize(100, 3)
    
        #Logo
        Y=85
        This:egpRoundedBox(8, vec2(256,176-Y), vec2(190,35)) This:egpColor(8, vec4(225, 225, 225, 255))
        This:egpCircle(9, vec2(216,156-Y), vec2(35,25)) This:egpColor(9, vec4(225, 225, 225, 255))
        This:egpCircle(10, vec2(256,156-Y), vec2(35,25)) This:egpColor(10, vec4(225, 225, 225, 255))
        This:egpCircle(11, vec2(296,156-Y), vec2(35,25)) This:egpColor(11, vec4(225, 225, 225, 255))
        This:egpCircle(12, vec2(256,136-Y), vec2(35,25)) This:egpColor(12, vec4(225, 225, 225, 255))
        This:egpText(4, "SKY - BANK", vec2(256,256-120)) This:egpAlign(4, 1, 1) This:egpSize(4, 35) This:egpFont(4, "Courier New")
        This:egpBox(6, vec2(258,270-120), vec2(195,2)) This:egpColor(6, vec4(225, 225, 225, 255))    

        #Main
        This:egpBox(26, vec2(256,219), vec2(2,83))
        This:egpBox(27, vec2(256+17,260-18), vec2(2,50)) This:egpAngle(27,-45)
        This:egpBox(28, vec2(256-17,260-18), vec2(2,50)) This:egpAngle(28,45)
        
        This:egpBoxOutline(24, vec2(256,315), vec2(250,60))
        This:egpText(25, "Inds"+ae()+"t v"+ae()+"rdigenstande", vec2(256,315)) This:egpAlign(25,1,1) This:egpSize(25,20) This:egpFont(25, "Courier New")
        This:egpText(29, "V"+ae()+"rdigenstande indsat: "+CurUser:getPrinters()+"/"+Limit, vec2(256,380)) This:egpAlign(29,1,1) This:egpSize(29,15) This:egpFont(29, "Courier New")

        #Logud
        This:egpBox(22, vec2(256,494), vec2(300,30)) This:egpColor(22, vec4(33, 33, 33, 145))
        This:egpText(23, "- Tilbage -", vec2(256,494)) This:egpAlign(23,1,1) This:egpSize(23,20) This:egpFont(23, "Courier New")
        
        This:addCursor()
    }
    
    function void wirelink:drawLoading()
    {
        This:egpClear()
    
        This:egpBox(1, vec2(256,256), vec2(512,512))
        This:egpColor(1,33, 33, 33, 225)
        
        This:egpText(2,"INDL"+aeL()+"SER", vec2(256,256))
        This:egpFont(2, "Courier New")
        This:egpSize(2,32)
        This:egpAlign(2, 1, 1)
        
        This:egpText(3,"Vent Venligst", vec2(256,282))
        This:egpFont(3, "Courier New")
        This:egpSize(3,26)
        This:egpAlign(3, 1, 1)   
    }
    
    function logout(){
        PrinterDoor=0
        Door=1
        CurUser=noentity()
        S:firstPage()
    }
    
    Ctrl:drawLoading() S:drawLoading()
    timer("drawFirstPage", 6000)
    timer("drawCtrlMain", 2000)
    timer("NextSay", 2500)
}

if(~SU & SU & OPS<100 & opcounter()<1800){
    if(SI==0){
        if(S:egpButton(13,SU) & SU:isGov() == 0){
            SI=-1
            CurUser=SU
            Door=0
            S:egpRemove(13)
            S:egpRemove(14)
            S:egpRemove(15)
            S:egpBoxOutline(13, vec2(256,315), vec2(200,35))
            
            S:egpText(169, "INDL"+aeL()+"SER: 0%", vec2(256,346))
            S:egpAlign(169, 1, 1) 
            S:egpFont(169, "Courier New")
            S:egpRemove(300)
            timer("startLoading",500)
        }
    }
    if(CurUser==SU){
        #Kontrol panel side
        if(SI==1){
            if(S:egpButton(22,SU)){
                logout()
            }
            elseif(S:egpButton(16,SU)){
                if(!CurUser:hasPremium()){
                    SI=6
                    S:egpRemove(300)
                    ##moneyRequest(CurUser,Settings["PremiumPrice",number],"Erhvervskonto")
                    S:egpBox(109, vec2(256,256), vec2(512,512)) S:egpColor(109, vec4(35,35,35,220))
                    S:egpBox(101, vec2(256,256), vec2(504,45)) S:egpColor(101, vec4(20, 20, 20, 170))
                    S:egpText(102, "1. Du kan have op til 8 v"+ae()+"rdigenstande", vec2(256,248)) S:egpAlign(102, 1, 1) S:egpSize(102, 13) S:egpFont(102, "Courier New")
                    S:egpText(103, "2. Du vil modtage op til 90% af alle dine v"+ae()+"rdigenstandes indt"+ae()+"gter.", vec2(256,264)) S:egpAlign(103, 1, 1) S:egpSize(103, 13) S:egpFont(103, "Courier New")
                    
                    S:egpBox(104, vec2(193.5,286), vec2(125,15)) S:egpColor(104, vec(76, 175, 80))
                    S:egpBox(105, vec2(318.5,286), vec2(125,15)) S:egpColor(105, vec(150, 50, 61))
                    
                    S:egpText(106, "K"+oe()+"b", vec2(196,286)) S:egpAlign(106, 1, 1) S:egpSize(106, 17) S:egpFont(106, "Courier New")
                    S:egpText(107, "Annuller", vec2(318,286)) S:egpAlign(107, 1, 1) S:egpSize(107, 17) S:egpFont(107, "Courier New")
                    timer("addCursor",50)

                }
            }
            elseif(S:egpButton(13,SU)){
                if(CurUser:hasPremium()&CurUser:getPrinters()<Settings["PremiumPrinterLimit",number] ){
                    S:regPage()
                }elseif(CurUser:getPrinters()<4){
                    S:regPage()
                }
            }elseif(S:egpButton(19,SU))
            {
                SI = 5
                
                S:egpRemove(300)

                S:egpBox(104, vec2(256,256), vec2(512,512)) S:egpColor(104, vec4(35,35,35,220))
                
                S:egpBox(101, vec2(256,256), vec2(504,45)) S:egpColor(101, vec4(20, 20, 20, 170))
                
                S:egpBox(102, vec2(193.5,286), vec2(125,15)) S:egpColor(102, vec(76, 175, 80))
                S:egpBox(103, vec2(318.5,286), vec2(125,15)) S:egpColor(103, vec(150, 50, 61))
                
               # S:egpBox(102, vec2(196,286), vec2(103,15)) S:egpColor(102, vec(76, 175, 80))
              #  S:egpBox(103, vec2(318,286), vec2(103,15)) S:egpColor(103, vec(150, 50, 61))
                
                
                
                S:egpText(106, "Behold", vec2(196,286)) S:egpAlign(106, 1, 1) S:egpSize(106, 17) S:egpFont(106, "Courier New")
                S:egpText(107, "Slet", vec2(318,286)) S:egpAlign(107, 1, 1) S:egpSize(107, 17) S:egpFont(107, "Courier New")
                S:egpText(109, "Hvis du sletter din konto vil alle ting p"+aa()+" din konto", vec2(256,248)) S:egpAlign(109, 1, 1) S:egpSize(109, 13) S:egpFont(109, "Courier New")
                S:egpText(110, "blive slettet, og kan ikke f"+aa()+"s tilbage. Hav en god dag :)", vec2(256,264)) S:egpAlign(110, 1, 1) S:egpSize(110, 13) S:egpFont(110, "Courier New")
            
                timer("addCursor",50)
            }
        }elseif(SI==5)
        {
            if(S:egpButton(102,SU)) #Slet Konto
            {
                S:egpRemove(101) 
                S:egpRemove(102) 
                S:egpRemove(103) 
                S:egpRemove(104) 
                S:egpRemove(105) 
                S:egpRemove(106) 
                S:egpRemove(107) 
                S:egpRemove(108) 
                S:egpRemove(109) 
                S:egpRemove(110) 
                SI=1
            }elseif(S:egpButton(103,SU))
            {
                P:remove(CurUser:steamID())
                logout()   
            }   
        }elseif(SI==6)
        {
            if(S:egpButton(105,SU)) #Slet Konto
            {
                S:egpRemove(101) 
                S:egpRemove(102) 
                S:egpRemove(103) 
                S:egpRemove(104) 
                S:egpRemove(105) 
                S:egpRemove(106) 
                S:egpRemove(107) 
                S:egpRemove(108) 
                S:egpRemove(109) 
                
                SI=1
            }elseif(S:egpButton(104,SU))
            {
                moneyRequest(CurUser,Settings["PremiumPrice",number],"Erhvervskonto")
            }
        }
        #Tos page
        elseif(SI==3){
            if(S:egpButton(37,SU)){
                if(!Checked){
                    Checked=1
                    S:egpText(50, toChar(226)+toChar(156)+toChar(147), vec2(126,275+185)) S:egpAlign(50,1,1) S:egpSize(50,25)
            }else{Checked=0 S:egpRemove(50)}
            }
            if(S:egpButton(22,SU)&Checked==1){
                CurUser:newCustomer()
                S:secondPage()
                S:egpRemove(50)
                Checked=0
            }
        }
        #RegPrinter side
        elseif(SI==4){
            if(S:egpButton(22,SU)){
                S:secondPage()
            }
        }   
    }
}


if(moneyClk("Erhvervskonto")){

    PengeTjent+=Settings["PremiumPrice",number]
    P[moneyClkPlayer():steamID(),table]["premium",number] = 1
    if(SI==6)
    {
        S:egpRemove(101) 
        S:egpRemove(102) 
        S:egpRemove(103) 
        S:egpRemove(104) 
        S:egpRemove(105) 
        S:egpRemove(106) 
        S:egpRemove(107) 
        S:egpRemove(108) 
        S:egpRemove(109) 
        #S:egpRemove(110)   
        SI=1
    }
    if(SI==1)
    {
        S:egpSetText(26,"Erhvervskonto: Ja")
        S:egpSetText(24,"V"+ae()+"rdigenstande indsat: "+CurUser:getPrinters()+"/"+Settings["PremiumPrinterLimit",number] )
        S:egpColor(17,vec4(75,200,75,255))
        S:egpSetText(18, "HAR ERHVERVSKONTO")
        Limit=Settings["PremiumPrinterLimit",number]
    } 
}
if(moneyNoClk("Erhvervskonto") || moneyTimeout("Erhvervskonto"))
{
    S:egpRemove(101) 
    S:egpRemove(102) 
    S:egpRemove(103) 
    S:egpRemove(104) 
    S:egpRemove(105) 
    S:egpRemove(106) 
    S:egpRemove(107) 
    S:egpRemove(108) 
    S:egpRemove(109) 
    
    SI=1  
}

if(clk("startLoading")){S:egpBox(14, vec2(184,315), vec2(49,29)) timer("loading1",400) S:egpSetText(169, "INDL"+aeL()+"SER: 25%")}
if(clk("loading1")){S:egpBox(14, vec2(208,315), vec2(97,29)) timer("loading2",350) S:egpSetText(169, "INDL"+aeL()+"SER: 50%")}
if(clk("loading2")){S:egpBox(14, vec2(232,315), vec2(146,29)) timer("loading3",300) S:egpSetText(169, "INDL"+aeL()+"SER: 75%")}
if(clk("loading3")){S:egpBox(14, vec2(256,315), vec2(194,29)) S:egpSetText(169, "INDL"+aeL()+"SER: 100%") timer("loading4",300)}
if(clk("loading4")){if(CurUser:isCustomer()){S:secondPage()}else{S:tosPage()}}

#Reg printer
if(~Ranger & Ranger:isPrinter() & SI==4)
{
    if(CurUser!=noentity() & CurUser:getPrinters()<Limit)
    {
        if(Ranger:regPrinter(CurUser)==1)
        {
            S:egpSetText(25,"Godkendt!") S:egpColor(25, vec(70,205, 70))
            S:egpSetText(29, "V"+ae()+"rdigenstande indsat: "+CurUser:getPrinters()+"/"+Limit)
            timer("removeGodkendt",1500)
            if(CurUser:getPrinters()==Limit){stoptimer("removeGodkendt") stoptimer("secondPage") timer("secondPage",1000)}
        }
        
    }
}
if(chatClk(owner()))
{
    NNCMD = curtime()+1.1
    
    local LS = owner():lastSaid():lower():explode(" ")
    if(LS[1,string]=="!bank")
    {
        local Player = findPlayerByName(LS[3,string]) ?: findPlayerBySteamID(LS[3,string])
        hideChat(1)
        switch (LS[2,string])
        {
            case "addprinter",
                Ent = lastSpoke():eyeTrace():entity()
                if(!Player:isPlayer() | !Player:isCustomer()){m2("Spillern existere ikke i systemet!")}
                if(!Ent:isPrinter()){m2("Kig venligst p"+aa()+" en printer!")}
                if(Ent:regPrinter(Player)==1)
                {
                    
                }else{
                    m2("Printeren findes allerede i systemet!")
                }
            break,
            
            case "clearprinters",
            
                if(!Player:isPlayer() | !Player:isCustomer()){m2("Spillern existere ikke i systemet!") break}
                if(Player:getPrinters()<1){m2("Spillern har ingen printers i system!") break}
                
                PrintersInSystem-=Player:getPrinters()
                
                P[Player:steamID(),table]["printers",table]:clear()
                
                
                m2("Fjernede alle printers tilh"+oe()+"rerne "+Player:name()+".")
            break,
            
            case "setpremium",
                if(!Player:isPlayer() | !Player:isCustomer()){m2("Spillern existere ikke i systemet!") break}
                if(Player:hasPremium()){m2("Spilleren har allerede premium!") break}
                else
                {
                    P[Player:steamID(),table]["premium",number] = 1 
                    m2(Player:name()+"'s premium status sat til "+P[Player:steamID(),table]["premium",number])
                }
            break,
            
            case "forcepay",
                
                stoptimer("PayDay")
                timer("PayDay",50)
                m2("Betaler alle kunder! -Og genstarter betalings timer")
                
            break,
            
            case "forcelogout",
                logout()
                m2("Loggede canzer barn ud!")
            break,
            
            case "ans"+ae()+"t",
                if(!Player:isPlayer()){m2("Spillern existere ikke!") break}
                
                if(Guards[Player:steamID(),array][2,number] == 1){m2("Spilleren er allerede ansat!") break}
                
                Guards[Player:steamID(),array] = array(Player, 1, 0)
                
                m2(Player:name()+" er nu ansat.")
                
            break,
            
            case "fyr",
                if(!Player:isPlayer()){m2("Spillern existere ikke!") break}
                
                if(Guards[Player:steamID(),array][2,number] == 0){m2("Spilleren er ikke ansat!") break}
                
                Guards:remove(Player:steamID())
                
                m2(Player:name()+" er blevet fyret.")
                
            break,
            
            case "info",
                if(!Player:isPlayer() | !Player:isCustomer()){m2("Spillern existere ikke i systemet!") break}
                
                m1("Informationer om spilleren: "+Player:name()+". Premium: "+Player:hasPremium():toYesNo()+" - Printere: "+Player:getPrinters() + " - Pengesendt: "+moneyFormat(Player:getSend()))
                
            break,
            
            case "registeruser",
            
                Player:newCustomer()
                
                m1("Oprettede bruger : "+Player:name())
                
            break,
            
            case "announce",
            
            local AS = owner():lastSaid():sub(15)
            
            m1("Sender besked til alle spillere med aktive printere. : "+AS)
            
            if(AS==""){m2("brug !bank announce <Besked Til Kunder>") exit()}
            
            foreach(K, CURC:table = P)
            {
                if(CURC["printers",table]:count()>=1)
                {
                    runSayConCmd("say /pm "+K+" "+AS)   
                }
            }
                
            break,
            
            
            default,
            
            
            printColor(vec(255, 0, 0),"<<<<<<CHAT COMMANDS>>>>>>")
            
            printColor(vec(255),"addprinter <Navn> | Tilf"+oe()+"jer den printer du kigger p"+aa()+" til <Navn's> konto")
            printColor(vec(255),"clearprinters <Navn> | Fjerner alle printers fra <Navn's> konto")
            printColor(vec(255),"setpremium <Navn> | S"+ae()+"tter <Navn's> kontotype til premium")
            printColor(vec(255),"forcepay <Navn> | Betaler alle kunder")
            printColor(vec(255),"forcelogout | Dahh")
            printColor(vec(255),"ans"+ae()+"t <Navn> | Ans"+ae()+"tter <Navn> - Ansatte kan bruge Kontrol-Panelet, og vil modtage l"+oe()+"n")
            printColor(vec(255),"fyr <Navn> | Dahh")
            printColor(vec(255),"info <Navn> | Skriver informationer om <Navn's> konto")
            printColor(vec(255),"registeruser <Navn> | Duhh?")
            printColor(vec(255),"announce <Besked> | Skriver en besked til alle aktive kunder") 
            
            ,break
        }
    }
}

if((~S &S) || (~Ctrl &Ctrl))
{
    reset()
}


#---------------------------------------------------------------------------------------------------------------------------------------------#
#----------------------------------------------------------------KONTROL PANEL----------------------------------------------------------------#
#---------------------------------------------------------------------------------------------------------------------------------------------#


if(first()){ ##Create All Functions
    function void wirelink:drawCtrlInfo(Index, String:string, Type)
    {
        #Text = 30+Index
        #Minus = 200+Index
        #Plus = 220+Inde
        local Y = 144
        local Gang = 23
        local Pos = Y+(Index*Gang)
        switch (Type)
        {
            case 1,
                This:egpText(30+Index, String, vec2(132,Pos))     ## Text
            break,
            
            case 2, ##Plus - Minus
                local X = 152+ ( String:length() * 10 )
                
                This:egpText(30+Index, String, vec2(132,Pos))
                
                This:egpBoxOutline(200+Index, vec2(X,Pos), vec2(15,15)) This:egpColor(200+Index, vec4(225, 225, 225, 255))
                This:egpText(210+Index, "-", vec2(X,Pos-1)) This:egpAlign(210+Index, 1, 1) This:egpSize(210+Index, 18*EGPMode)
        
                This:egpBoxOutline(220+Index, vec2(X+15,Pos), vec2(15,15)) This:egpColor(220+Index, vec4(225, 225, 225, 255))
                This:egpText(230+Index, "+", vec2(X+15,Pos-1)) This:egpAlign(230+Index, 1, 1) This:egpSize(230+Index, 18*EGPMode)
            break,   
            
            case 3, ##Button
            
            break,
            
        }
    }
    
    function void drawAllHyredPlayers()
    {
        InfoIndex=1
        InfoEGP = table()
        
        foreach(Indx, IndxArr:array = Guards)
        {
            InfoEGP:pushString(IndxArr[1,entity]:name()+ " - "+moneyFormat(IndxArr[3,number])+"kr.")
        }
        timer("drawInfo", 500)
        
    }
    function void drawAllUsers()
    {
        InfoIndex=1
        InfoEGP = table()
        
        foreach(Indx, IndxTbl:table = P)
        {
            local Ply = findPlayerBySteamID(Indx)
            local Printers = IndxTbl["printers", table]:count()
            
            local Premium = IndxTbl["premium", number]:toYesNo()
            
            local Send = round(IndxTbl["moneySend", number])
            
            
            if(Printers>=1){
                InfoEGP:pushString(Ply:name():sub(0,11)+ " - "+Printers+" - "+Premium+" - "+moneyFormat(Send)+"kr ")
            }
        }
        timer("drawInfo", 500)
        
    }
    
    function void drawCtrlInfos()
    {
        Ctrl:drawCtrlInfo(1, "ANTAL KUNDER: "+P:count(), 1) 
        Ctrl:drawCtrlInfo(2, "ANTAL V"+aeL()+"RDIGENSTANDE: "+PrintersInSystem, 1)
        Ctrl:drawCtrlInfo(3, "PENGE TJENT: "+moneyFormat(round(PengeTjent)), 1)
        Ctrl:drawCtrlInfo(4, "PENGE SENDT: "+moneyFormat(round(PengeSendt)), 1)
        Ctrl:drawCtrlInfo(5, "VIPPROCENT: "+Settings["ProcentVIP",number]+"%", 2)
        Ctrl:drawCtrlInfo(6, "PROCENT: "+Settings["Procent",number]+"%", 2)
        Ctrl:drawCtrlInfo(7, "BETALINGS TID: "+Settings["Payday",number]+"M", 2)  
        for(I=30, 40){Ctrl:egpAlign(I, 0, 1) Ctrl:egpSize(I, 20*EGPMode) Ctrl:egpFont(I, "Courier New") Ctrl:egpColor(I, vec4(225, 225, 225, 255))} 
    }
    
    function void wirelink:drawCtrlMainPage()
    {   
        
        CtrlS=1
        Y=90
        T=125
        This:egpClear()
        if(EGPMode!=1){This:egpResolution(vec2(0,0),vec2(1024,1024))}
        This:egpBox(1, vec2(256,256), vec2(512,512)) This:egpMaterial(1, "skybox/militia_hdrup")
        This:egpBox(2, vec2(256,256), vec2(512,512)) This:egpColor(2, vec4(33, 33, 33, 225))
        This:egpBox(3, vec2(256,256), vec2(300,512)) This:egpColor(3, vec4(33, 33, 33, 145)) 
        This:egpBoxOutline(7, vec2(256,256), vec2(512,512)) This:egpColor(7, vec4(225, 225, 225, 255)) This:egpSize(7, 3)
        
        #Logo
        This:egpText(4, "SKY - BANK", vec2(256,256-T)) This:egpAlign(4, 1, 1) This:egpSize(4, 35*EGPMode) This:egpFont(4, "Courier New") This:egpColor(4, vec4(225, 225, 225, 255))
        This:egpRoundedBox(8, vec2(256,176-Y), vec2(190,35)) This:egpColor(8, vec4(225, 225, 225, 255))
        This:egpCircle(9, vec2(216,156-Y), vec2(35,25)) This:egpColor(9, vec4(225, 225, 225, 255))
        This:egpCircle(10, vec2(256,156-Y), vec2(35,25)) This:egpColor(10, vec4(225, 225, 225, 255))
        This:egpCircle(11, vec2(296,156-Y), vec2(35,25)) This:egpColor(11, vec4(225, 225, 225, 255))
        This:egpCircle(12, vec2(256,136-Y), vec2(35,25)) This:egpColor(12, vec4(225, 225, 225, 255))
        This:egpBox(6, vec2(258,270-T), vec2(190,2)) This:egpColor(6, vec4(225, 225, 225, 255))
        
        This:egpBox(44, vec2(256,426), vec2(300,30))
        This:egpColor(44, vec4(33, 33, 33, 105))
        This:egpText(45, "ANSATTE", vec2(256,426))
        This:egpAlign(45, 1, 1)
        This:egpSize(45, 25*EGPMode)
        This:egpFont(45, "Courier New")
        This:egpColor(45, vec4(225, 225, 225, 255))
        This:egpBox(46, vec2(256,466), vec2(300,30))
        This:egpColor(46, vec4(33, 33, 33, 105))
        This:egpText(47, "KUNDEINFO", vec2(256,466))
        This:egpAlign(47, 1, 1)
        This:egpSize(47, 25*EGPMode)
        This:egpFont(47, "Courier New")
        This:egpColor(47, vec4(225, 225, 225, 255))
        
       
        timer("UpdateCtrl", 60000)
        timer("DrawCtrlInfo", 400)
    }
    
    function void wirelink:drawCtrlHyredPage()
    {
        CtrlS=2
        Y=90
        T=125
        #BG
        This:egpClear()
        This:egpBox(1, vec2(256,256), vec2(512,512)) This:egpMaterial(1, "skybox/militia_hdrup")
        This:egpBox(2, vec2(256,256), vec2(512,512)) This:egpColor(2, vec4(33, 33, 33, 225))
        This:egpBox(3, vec2(256,256), vec2(300,512)) This:egpColor(3, vec4(33, 33, 33, 145)) 
        This:egpBoxOutline(7, vec2(256,256), vec2(512,512)) This:egpColor(7, vec4(225, 225, 225, 255)) This:egpSize(7, 3)
        
        #Logo
        This:egpText(4, "SKY - BANK", vec2(256,256-T)) This:egpAlign(4, 1, 1) This:egpSize(4, 35*EGPMode) This:egpFont(4, "Courier New") This:egpColor(4, vec4(225, 225, 225, 255))
        This:egpRoundedBox(8, vec2(256,176-Y), vec2(190,35)) This:egpColor(8, vec4(225, 225, 225, 255))
        This:egpCircle(9, vec2(216,156-Y), vec2(35,25)) This:egpColor(9, vec4(225, 225, 225, 255))
        This:egpCircle(10, vec2(256,156-Y), vec2(35,25)) This:egpColor(10, vec4(225, 225, 225, 255))
        This:egpCircle(11, vec2(296,156-Y), vec2(35,25)) This:egpColor(11, vec4(225, 225, 225, 255))
        This:egpCircle(12, vec2(256,136-Y), vec2(35,25)) This:egpColor(12, vec4(225, 225, 225, 255))
        This:egpBox(6, vec2(258,270-T), vec2(190,2)) This:egpColor(6, vec4(225, 225, 225, 255))
        
        #Ansatte
        This:egpBox(50, vec2(256,176), vec2(300,30))
        This:egpColor(50, vec4(33, 33, 33, 105))
        This:egpText(51, "ANSATTE", vec2(256,176))
        This:egpAlign(51, 1, 1)
        This:egpSize(51, 25*EGPMode)
        This:egpFont(51, "Courier New")
        This:egpColor(51, vec4(225, 225, 225, 255))
        
        This:egpText(60, "BETAL ANSATTE", vec2(256,465))
        This:egpAlign(60, 1, 1)
        This:egpSize(60, 25*EGPMode)
        This:egpFont(60, "Courier New")
        This:egpColor(60, vec4(225, 225, 225, 255))
        
        This:egpBoxOutline(61, vec2(146,465), vec2(20,20))
        This:egpColor(61, vec4(225, 225, 225, 255))
        
        This:egpText(65, Settings["PayHyred",number] ? toChar(226)+toChar(156)+toChar(147) : "", vec2(146,465))
        This:egpAlign(65, 1 ,1)
        This:egpSize(65,18*EGPMode)
        
        This:egpText(63, "TILBAGE", vec2(256,492))
        This:egpAlign(63, 1, 1)
        This:egpSize(63, 18*EGPMode)
        This:egpFont(63, "Courier New")
        This:egpColor(63, vec4(225, 225, 225, 255))
        
        This:egpBox(100, vec2(256,492),vec2(100,20)) This:egpAlpha(100,0)
        drawAllHyredPlayers()
    }
    
    function void wirelink:drawCtrlUserManagement()
    {
        CtrlS=3
        Y=90
        T=125
        #BG
        This:egpClear()
        This:egpBox(1, vec2(256,256), vec2(512,512)) This:egpMaterial(1, "skybox/militia_hdrup")
        This:egpBox(2, vec2(256,256), vec2(512,512)) This:egpColor(2, vec4(33, 33, 33, 225))
        This:egpBox(3, vec2(256,256), vec2(300,512)) This:egpColor(3, vec4(33, 33, 33, 145)) 
        This:egpBoxOutline(7, vec2(256,256), vec2(512,512)) This:egpColor(7, vec4(225, 225, 225, 255)) This:egpSize(7, 3)
        
        #Logo
        This:egpText(4, "SKY - BANK", vec2(256,256-T)) This:egpAlign(4, 1, 1) This:egpSize(4, 35*EGPMode) This:egpFont(4, "Courier New") This:egpColor(4, vec4(225, 225, 225, 255))
        This:egpRoundedBox(8, vec2(256,176-Y), vec2(190,35)) This:egpColor(8, vec4(225, 225, 225, 255))
        This:egpCircle(9, vec2(216,156-Y), vec2(35,25)) This:egpColor(9, vec4(225, 225, 225, 255))
        This:egpCircle(10, vec2(256,156-Y), vec2(35,25)) This:egpColor(10, vec4(225, 225, 225, 255))
        This:egpCircle(11, vec2(296,156-Y), vec2(35,25)) This:egpColor(11, vec4(225, 225, 225, 255))
        This:egpCircle(12, vec2(256,136-Y), vec2(35,25)) This:egpColor(12, vec4(225, 225, 225, 255))
        This:egpBox(6, vec2(258,270-T), vec2(190,2)) This:egpColor(6, vec4(225, 225, 225, 255))
        
        #KundeInfo
        This:egpBox(50, vec2(256,186), vec2(300,30))
        This:egpColor(50, vec4(33, 33, 33, 105))
        This:egpText(51, "KUNDEINFO", vec2(256,186))
        This:egpAlign(51, 1, 1)
        This:egpSize(51, 25*EGPMode)
        This:egpFont(51, "Courier New")
        This:egpColor(51, vec4(225, 225, 225, 255))    
        
        #Navn&Printere&Erhverkonto
        This:egpText(30, "Navn  Printere  Erhver  Tjent", vec2(256,213))
        This:egpAlign(30, 1, 1)
        This:egpSize(30, 20*EGPMode)
        This:egpFont(30, "Courier New")
        This:egpColor(30, vec4(225, 225, 225, 255))
        
        #Tilbage
        This:egpText(60, "TILBAGE", vec2(256,492))
        This:egpAlign(60, 1, 1)
        This:egpSize(60, 18*EGPMode)
        This:egpFont(60, "Courier New")
        This:egpColor(60, vec4(225, 225, 225, 255))
        
        This:egpBox(100, vec2(256,492),vec2(100,20)) This:egpAlpha(100,0)
        
        drawAllUsers()
    }
}

if(~CtrlUser &CtrlUser)
{
    if(opcounter()<1800 &OPS<200)
    {
        if(CtrlUser == owner() || Guards[CtrlUser:steamID(),array][2,number]==1) 
        {
            if(CtrlS==1){
                #VIP PROCENT#
                if(Ctrl:egpButton(225, CtrlUser))
                {
                    if(Settings["ProcentVIP",number]==100){exit()}
                    Settings["ProcentVIP",number] = Settings["ProcentVIP",number] + 2
                    Ctrl:egpSetText(35, "VIPPROCENT: "+Settings["ProcentVIP",number]+"%")
                }elseif(Ctrl:egpButton(205, CtrlUser))
                {
                    if(Settings["ProcentVIP",number]==0){exit()}
                    Settings["ProcentVIP",number] = Settings["ProcentVIP",number] - 2
                    Ctrl:egpSetText(35, "VIPPROCENT: "+Settings["ProcentVIP",number]+"%")
                }
                
                #PROCENT#
                elseif(Ctrl:egpButton(226, CtrlUser))
                {
                    if(Settings["Procent",number]==100){exit()}
                    Settings["Procent",number] = Settings["Procent",number] + 2
                    Ctrl:egpSetText(36, "PROCENT: "+Settings["Procent",number]+"%")
                }elseif(Ctrl:egpButton(206, CtrlUser))
                {
                    if(Settings["Procent",number]==0){exit()}
                    Settings["Procent",number] = Settings["Procent",number] - 2
                    Ctrl:egpSetText(36, "PROCENT: "+Settings["Procent",number]+"%")
                }
                
                #BETALINGS TID#
                
                elseif(Ctrl:egpButton(227, CtrlUser))
                {
                    Settings["Payday",number] = Settings["Payday",number] + 1
                    Ctrl:egpSetText(37, "BETALINGS TID: "+Settings["Payday",number]+"M")
                }elseif(Ctrl:egpButton(207, CtrlUser))
                {
                    if(Settings["Payday",number]==5){exit()}
                    Settings["Payday",number] = Settings["Payday",number] - 1
                    Ctrl:egpSetText(37, "BETALINGS TID: "+Settings["Payday",number]+"M")
                }    
                
                elseif(Ctrl:egpButton(44, CtrlUser))
                {
                    Ctrl:drawCtrlHyredPage()
                }elseif(Ctrl:egpButton(46, CtrlUser))
                {
                    Ctrl:drawCtrlUserManagement()   
                }
            }elseif(CtrlS==2)
            {
                if(Ctrl:egpButton(100, CtrlUser))
                {
                    Ctrl:drawCtrlMainPage()   
                }elseif(Ctrl:egpButton(61,CtrlUser) & CtrlUser==owner())
                {
                    Settings["PayHyred",number] = (Settings["PayHyred",number] ? 0 : 1)
                    Ctrl:egpSetText(65,Settings["PayHyred",number] ? toChar(226)+toChar(156)+toChar(147) : "")
                }
            }
            elseif(CtrlS==3)
            {
                if(Ctrl:egpButton(100, CtrlUser))
                {
                    Ctrl:drawCtrlMainPage()   
                }
            }
        }
    }
}

if(clk(CLKNAME)){
    if(OPS<250 & CPU<150){
        switch(CLKNAME){
            case "addCursor",
            S:addCursor()
            break,
            
            case "payCustumer",
                if(PayCustomerIndx > TempPayArray:count()){ timer("PayHyred",30000) break} 
                
                local Ply = TempPayArray[PayCustomerIndx, entity]
                if(Ply:isPlayer())
                {
                    Ply:payCustomer()
                }
                
                PayCustomerIndx++
                
                timer("payCustumer", 1000)
            break,
            
            case "PayHyred", 
                if(Settings["PayHyred",number]!=1){exit()}
                local PrPs = (HyredPayDay)/4/(Guards:count())
                foreach(K, Arr:array = Guards)
                {
                    if(Arr[2,number]==1){
                        if(Arr[1,entity]:isPlayer())
                        {
                            moneyGive(Arr[1,entity],PrPs)
                            Guards[K,array][3,number] = Guards[K,array][3,number] + PrPs
                        }
                    }
                } 
                HyredPayDay=0
            break,

            case "PayDay", 
            
                NextPayCheck=curtime()+(Settings["Payday",number]*60)
                payCustomers()
                timer("PayDay",Settings["Payday",number]*1000*60)
            
            break,
            
            case "autoLogout", 
                if(SI!=0){
                    Dist=CurUser:pos():distance(S:entity():pos())
                    if(Dist>160 &SI!= -1){logout() exit()}
                    timer("autoLogout",4000)
                }
            break,
            
            case "drawFirstPage", 
                S:firstPage()
            break,
            
            case "NextSay", 
                if(curtime()<NNCMD)
                {
                    concmd(NextSay[1,string])
                    NextSay:remove(1)   
                }
                timer("NextSay", 1050)
            break,
            
            case "SecondPage2",
                S:secondPageText()
            break,
            
            case "removeGodkendt",
                S:egpSetText(25,"Inds"+ae()+"t v"+ae()+"rdigenstande") S:egpColor(25, vec(255,255,255))
            break,
            
            case "startprint",
                m2(StartPrint[1,string])
                StartPrint:remove(1)
                if(StartPrint:count()>=1)
                {
                    timer("startprint", 750)
                }
            break,
            
            
            ##CTRL
            
            case "UpdateCtrl",
                if(CtrlS==1){
                    Ctrl:egpSetText(31, "ANTAL KUNDER: "+P:count()) 
                    Ctrl:egpSetText(32, "ANTAL V"+aeL()+"RDIGENSTANDE: "+PrintersInSystem)    
                    Ctrl:egpSetText(33, "PENGE TJENT: "+moneyFormat(round(PengeTjent)))
                    Ctrl:egpSetText(34, "PENGE SENDT: "+moneyFormat(round(PengeSendt))) 
                }
                timer("UpdateCtrl", 60000)
            break,
            
            case "drawCtrlMain",
                Ctrl:drawCtrlMainPage()
            break,
        
        
            case "DrawCtrlInfo",
                drawCtrlInfos()
            break,
            
            case "drawInfo",
                if(CtrlS==2 || CtrlS == 3){
                    local YP = CtrlS==3 ? 30 : 0
                    Ctrl:egpText(250+InfoIndex, InfoEGP[InfoIndex,string], vec2(256, 182+(20*InfoIndex) + YP)) 
                    Ctrl:egpAlign(250+InfoIndex, 1, 1)
                    Ctrl:egpSize(250+InfoIndex, 20)
                    Ctrl:egpFont(250+InfoIndex, "Courier New")
                    Ctrl:egpColor(250+InfoIndex, vec4(225, 225, 225, 255))
                        
                    InfoIndex++     
                    if(InfoIndex<=InfoEGP:count()){timer("drawInfo",200)}
                }
            break,
        }
    }
    else{
        hint("CLK "+CLKNAME+" 2s!", 2500)
        timer(CLKNAME,2500)
    }
}

 

Koden er gammel (1.5 år ca) 

https://c.auxera.net/s/8aoBa3ZLKMpjMTG THIS VIOLATES RULE 1.3 i think.. Lad venligst være med at gøre det samme. Hermione & Br1zzle valgte at bryde reglerne hele dagen, og var lidt pi

Link til kommentar

Arkiveret

Dette emne er nu arkiveret og er lukket for yderligere svar

×
×
  • Tilføj...

COOKIE- OG PRIVATLIVSPOLITIK PÅ STAVOX.DK

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privatlivspolitik - Vilkår for brug.