@name  
@inputs EGP:wirelink  A Amax Aname:string B Bmax Bname:string C Cmax Cname:string 
@outputs  
@persist Space I 
@trigger  
interval(200) 
##Blank screen if no values are wired 
if(Amax==0 & Bmax==0 & Cmax==0 & I<=50 | first()) 
{ 
    while(I<=50){ 
        EGP:egpRemove(I) 
        I++ 
        Space=50 
    } 
} 
if(Amax!=0) 
{ 
    if(Aname==""){Aname="Value A"} 
    PCA=round((100/Amax)*A,3) 
    ColorA=hsv2rgb(vec((120/100)*PCA,1,1)) 
    EGP:egpBoxoutline(1,vec2(100,100),vec2(400,70),vec4(255,255,255,255)) 
    EGP:egpText(2,toString(PCA)+"%",vec2(8,112),ColorA,255) 
    EGP:egpText(3,Aname,vec2(100,80),vec4(255,255,255,255)) 
    EGP:egpBox(4,vec2(101,101),vec2((398/Amax)*A,68),ColorA,255) 
} 
if(Bmax!=0) 
{ 
    if(Bname==""){Bname="Value B"} 
    PCB=round((100/Bmax)*B,3) 
    ColorB=hsv2rgb(vec((120/100)*PCB,1,1)) 
    EGP:egpBoxoutline(5,vec2(100,200+Space),vec2(400,70),vec4(255,255,255,255)) 
    EGP:egpText(6,toString(PCB)+"%",vec2(8,222+Space),ColorB,255) 
    EGP:egpText(7,Bname,vec2(100,180+Space),vec4(255,255,255,255)) 
    EGP:egpBox(8,vec2(101,201+Space),vec2((398/Bmax)*B,68),ColorB,255) 
} 
if(Cmax!=0) 
{ 
    if(Cname==""){Cname="Value C"} 
    PCC=round((100/Cmax)*C,3) 
    ColorC=hsv2rgb(vec((120/100)*PCC,1,1)) 
    EGP:egpBoxoutline(9,vec2(100,300+Space*2),vec2(400,70),vec4(255,255,255,255)) 
    EGP:egpText(10,toString(PCC)+"%",vec2(8,332+Space*2),ColorC,255) 
    EGP:egpText(11,Cname,vec2(100,280+Space*2),vec4(255,255,255,255)) 
    EGP:egpBox(12,vec2(100,301+Space*2),vec2((398/Cmax)*C,68),ColorC,255) 
} 



EGP:egpText(40,"EGP percent bars made by: Jacoby6000",20,0,0,255,0,255) 
EGP:egpDraw() 
