41 lines
1.2 KiB
Plaintext
41 lines
1.2 KiB
Plaintext
function gui:newConsole(x,y,w,h)
|
|
local c=self:newTextLabel("Console","Console",x,y,w,20,sx,sy,sw)
|
|
c.dragbut="l"
|
|
c.Draggable=true
|
|
c.Tween=-3
|
|
c.BG=c:newTextLabel("","",0,20,0,h,0,0,1,1)
|
|
c.BG.ClipDescendants=true
|
|
c.output=c.BG:newTextLabel("","",0,0,0,0,0,0,1,1)
|
|
c.output.Visibility=0
|
|
c.scroll=c.BG:newScrollBar()
|
|
c.scroll.output=c.output
|
|
c.output.Tween=-3
|
|
c.output.TextColor=Color.sexy_purple
|
|
c.input=c:newTextBox("> ","> ",0,h+20,-20,20,0,0,1)
|
|
c.input.Tween=-3
|
|
c.input.TextFormat="left"
|
|
c.output.TextFormat="left"
|
|
c.output.count=0
|
|
c:ApplyGradient({Color.Red,Color.Darken(Color.Red,.25)})
|
|
c.BG:ApplyGradient({Color.Black,Color.Lighten(Color.Black,.15)})
|
|
c.input:ApplyGradient({Color.Gray,Color.Darken(Color.Gray,.25)})
|
|
c.scroll:OnScroll(function(self,pos)
|
|
self.output:SetDualDim(0,0,0,0,0,-((pos/(h*8))*self.output.count))
|
|
end)
|
|
c.input:OnEnter(function(self,text)
|
|
self.Parent.output.text=self.Parent.output.text..text.."\n"
|
|
self.text="> "
|
|
self.Parent.output.count=self.Parent.output.count+1
|
|
end)
|
|
c.input:OnFocus(function(self)
|
|
self.text="> "
|
|
end)
|
|
function c:showConsole()
|
|
self.Parent.Visible=true
|
|
end
|
|
function c:hideConsole()
|
|
self.Parent.Visible=false
|
|
end
|
|
return c
|
|
end
|