/*------------------------------
Hauptebene wo der Rest drauf aufgebaut wird
------------------------------*/
local DermaPanel = vgui.Create( "DFrame" ) // Erstellt unsere Ebene
DermaPanel:SetPos( 50, 50 ) // Position auf dem Bildschirm des Spielers
DermaPanel:SetSize( ScrW()/2 + 100, ScrH()/2 )// Größe der Ebene
DermaPanel:SetTitle( "Test Ebene!" ) // Überschrift der Ebene
DermaPanel:SetVisible( true ) // Soll die Ebene ein- oder ausgeblendet werden?
DermaPanel:SetDraggable( true ) // Erlaubt es dem Spieler das Fenster zu verschieben
DermaPanel:ShowCloseButton( true ) // Soll der Spieler das "X" ( den Schließen-Knopf ) sehen?
DermaPanel:MakePopup() // Zeigt die Ebene auf dem Bildschirm an
/*------------------------------
Ein weiterer Button/Knopf,
er macht genau das selbe wie der DButton,
nur das man hier noch die Möglichkeit hat
zwischen 3 vorgefertigten Skins
für den Button wählen kann
------------------------------*/
local types = { "close", "up", "down" }
for i=1, 3 do // wir wollen 3 Buttons haben!
local DermaSysButton = vgui.Create( "DSysButton" ) // Erstellt unseren erweiteren Button
DermaSysButton:SetParent( DermaPanel ) // Hiermit haften wir den Button an die Hauptebene ran, so dass er sich mit ihr bewegt
DermaSysButton:SetPos( 50, 100 + ( 100 * i/2 ) )// Postition des Buttons auf dem Bildschirm
DermaSysButton:SetSize( 100, 50 ) // Die größe des Buttons/Knopfs
DermaSysButton:SetType( types[i] ) // Typ/Skin des Buttons ( close, up, down )
DermaSysButton.DoClick = function() // Was passieren soll wenn man mit Linksklick draufklickt
LocalPlayer():ChatPrint( "YOU PRESSED "..string.upper( types[i] ).." !" )
end
DermaSysButton.DoRightClick = function() // Was passieren soll wenn man mit Rechtsklick draufklickt
LocalPlayer():ChatPrint( "You lam0r just rightclicked on: "..string.upper( types[i] ).." !" )
end
end
/*------------------------------
Nun kommen wir zu einer sogenannten "Checkbox"!
------------------------------*/
local texts = { "GOD MODE!", "NOCLIP!" }
local convars = { "sbox_godmode", "sbox_noclip" }
for i=1, table.Count( texts ) do // so viele Checkboxes erstellen, wie Einträge im Table zu finden sind!
local DermaCheckBox = vgui.Create( "DCheckBoxLabel" ) // Erstellt unsere Checkbox
DermaCheckBox:SetParent( DermaPanel ) // Hiermit haften wir die Checkbox an die Hauptebene ran, so dass sie sich mit ihr bewegt
DermaCheckBox:SetPos( 200, 50 + ( 50 * i/2 ) ) // Postition der Checkbox auf dem Bildschirm
DermaCheckBox:SetText( texts[i] ) // Was neben der Checkbox stehen soll
DermaCheckBox:SetConVar( convars[i] ) // Der Command der "getoggeld" werden soll ( der command muss durch 1 [an] und 0[ aus] geschaltet werden können )
DermaCheckBox:SetValue( 1 ) // Soll der Command zu Anfang an oder aus sein?
DermaCheckBox:SizeToContents() // Pass es dem Rest der Frames an ( so das SetText ausgeschrieben da steht )
end