function gui:drawR() if love.mouse.isDown("l")==false and love.mouse.isDown("m")==false and love.mouse.isDown("r")==false then _GuiPro.DragItem={} _GuiPro.hasDrag=false end if self.Visible==true and self.VIS==true then local b=true for i,v in pairs(_GuiPro.Clips) do if self:isDescendant(v)==true then b=false end end if b==true then love.graphics.setStencilTest() love.graphics.setScissor() end self.x=(self.Parent.width*self.scale.pos.x)+self.offset.pos.x+self.Parent.x self.y=(self.Parent.height*self.scale.pos.y)+self.offset.pos.y+self.Parent.y self.width=(self.Parent.width*self.scale.size.x)+self.offset.size.x self.height=(self.Parent.height*self.scale.size.y)+self.offset.size.y if self.DrawRulesB then for dr=1,#self.DrawRulesB do self.DrawRulesB[dr](self) end end if (love.mouse.getX() > self.x and love.mouse.getX() < self.x+self.width and love.mouse.getY() > self.y and love.mouse.getY() < self.y+self.height and self:Clickable() and self:eventable()) or self:touchable("r") and self.Active==true then self.hovering=true if love.mouse.isDown("l") or self:touchable("r") and _GuiPro.hasDrag==false then if string.find(self.Type, "Button") then love.graphics.setColor(self.Color[1]-10, self.Color[2]-10, self.Color[3]-10,self.Visibility) else love.graphics.setColor(self.Color[1],self.Color[2],self.Color[3],self.Visibility) end self.lclicked=true elseif love.mouse.isDown("r") or self:touchable("r") and _GuiPro.hasDrag==false then if string.find(self.Type, "Button") then love.graphics.setColor(self.Color[1]-10, self.Color[2]-10, self.Color[3]-10,self.Visibility) else love.graphics.setColor(self.Color[1],self.Color[2],self.Color[3],self.Visibility) end self.rclicked=true elseif love.mouse.isDown("m") or self:touchable("r") and _GuiPro.hasDrag==false then if string.find(self.Type, "Button") then love.graphics.setColor(self.Color[1]-10, self.Color[2]-10, self.Color[3]-10,self.Visibility) else love.graphics.setColor(self.Color[1],self.Color[2],self.Color[3],self.Visibility) end self.mclicked=true else if string.find(self.Type, "Button") or self:touchable("r") and _GuiPro.hasDrag==false then love.graphics.setColor(self.Color[1]-5, self.Color[2]-5, self.Color[3]-5,self.Visibility) else love.graphics.setColor(self.Color[1],self.Color[2],self.Color[3],self.Visibility) end self.rclicked=false self.lclicked=false self.mclicked=false end else love.graphics.setColor(self.Color[1],self.Color[2],self.Color[3],self.Visibility) self.hovering=false self.rclicked=false self.lclicked=false self.mclicked=false end if self.ClipDescendants==true then _GuiPro.Clips[tostring(self)]=self love.graphics.setScissor(self.x, self.y, self.width, self.height) end if self:hasRoundness() then love.graphics.stencil(self.stfunc, "replace", 1) love.graphics.setStencilTest("greater", 0) end love.graphics.rectangle("fill", self.x, self.y, self.width, self.height,(self.rx or 1)*self.DPI,(self.ry or 1)*self.DPI,(self.segments or 1)*self.DPI) if string.find(self.Type, "Image") then self:ImageRule() end if self.Type=="Video" then self:VideoRule() end if self:hasRoundness() then love.graphics.setStencilTest() end love.graphics.setColor(self.BorderColor[1], self.BorderColor[2], self.BorderColor[3],self.Visibility) for b=0,self.BorderSize-1 do love.graphics.rectangle("line", self.x-(b/2), self.y-(b/2), self.width+b, self.height+b,(self.rx or 1)*self.DPI,(self.ry or 1)*self.DPI,(self.segments or 1)*self.DPI) end if string.find(self.Type, "Text") then if self.text~=nil then if self.AutoScaleText then self.FontSize=math.floor(self.height/1.45833) end love.graphics.setColor(self.TextColor[1],self.TextColor[2],self.TextColor[3],self.TextVisibility) if self.Font==_defaultfont then love.graphics.setFont(self.Font) love.graphics.printf( self.text, (self.x+2+(self.marginL or 0) or self.XTween)*self.DPI, (self.y+math.floor((self.FontHeight-self.FontSize)/2)+self.Tween)*self.DPI, (self.width+(0 or (self.marginR or 0)))*self.DPI, self.TextFormat, self.TextRotation) else if type(self.Font)=="string" then self.Font=love.graphics.newFont(self.Font,self.FontSize) self.FontHeight=self.Font:getHeight() else love.graphics.setFont(self.Font) end if type(self.FontSize)=="string" then self.FontSize=tonumber(self.FontSize) love.graphics.setNewFont(self.FontSize) end love.graphics.printf( self.text, (self.x+2+(self.marginL or 0) or self.XTween)*self.DPI, (self.y+math.floor((self.FontHeight-self.FontSize)/2)+self.Tween)*self.DPI, (self.width+(0 or (self.marginR or 0)))*self.DPI, self.TextFormat, self.TextRotation) end end end if self.DrawRulesE then for dr=1,#self.DrawRulesE do self.DrawRulesE[dr](self) end end end end