Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- include("config.lua")
- surface.CreateFont("Pal24",{
- font = "Roboto",
- size = 24,
- weight = 300
- })
- surface.CreateFont("Pal18",{
- font = "Roboto",
- size = 20,
- weight = 200
- })
- function OpenCharCreateMenu()
- local blur = Material("pp/blurscreen")
- local function DrawBlur(panel, amount)
- local x, y = Dpenel:LocalToScreen(0, 0)
- local scrW, scrH = ScrW(), ScrH()
- surface.SetDrawColor(255, 255, 255)
- surface.SetMaterial(blur)
- for i = 1, 3 do
- blur:SetFloat("$blur", (i / 3) * (amount or 6))
- blur:Recompute()
- render.UpdateScreenEffectTexture()
- surface.DrawTexturedRect(x * -1, y * -1, scrW, scrH)
- end
- end
- Dpenel = vgui.Create("DFrame")
- Dpenel:SetSize(ScrW(), ScrH())
- Dpenel:Center()
- Dpenel:SetTitle("")
- Dpenel:SetDraggable(false)
- Dpenel:ShowCloseButton(false)
- Dpenel:MakePopup()
- Dpenel:GetBackgroundBlur()
- Dpenel.Paint = function()
- draw.RoundedBox(0, 0, 0, ScrW(), ScrH(), Color(0, 0, 0, 190))
- DrawBlur(self, 10)
- end
- Dpenel.lblTitle.UpdateColours = function(label)
- label:SetTextStyleColor(color_white)
- end
- local Frame = vgui.Create("DFrame",Dpenel)
- Frame:SetSize(600,500)
- Frame:Center()
- Frame:SetVisible(true)
- Frame:SetDraggable(false)
- Frame:SetTitle("Создание гражданина")
- Frame:ShowCloseButton(false)
- Frame:MakePopup()
- local FirstTextInput = vgui.Create("DTextEntry", Frame)
- FirstTextInput:SetSize(200,26)
- FirstTextInput:SetPos(250,57)
- local FirstName = vgui.Create("DLabel", Frame)
- FirstName:SetSize(200,26)
- FirstName:SetPos(250,29)
- FirstName:SetText("Имя")
- FirstName:SetTextColor(Color(255,255,255,255))
- FirstName:SetFont("Pal18")
- local LastNameText = vgui.Create("DTextEntry", Frame)
- LastNameText:SetSize(200,26)
- LastNameText:SetPos(250,110)
- local LastName = vgui.Create("DLabel", Frame)
- LastName:SetSize(200,26)
- LastName:SetPos(250,80)
- LastName:SetText("Фамилия")
- LastName:SetTextColor(Color(255,255,255,255))
- LastName:SetFont("Pal18")
- local Info = vgui.Create("DLabel", Frame)
- Info:SetSize(2000,26)
- Info:SetPos(250,135)
- Info:SetText("Описание внешности")
- Info:SetTextColor(Color(255,255,255,255))
- Info:SetFont("Pal18")
- local InfoText = vgui.Create("DTextEntry", Frame)
- InfoText:SetSize(200,26)
- InfoText:SetPos(250,165)
- local Gender = vgui.Create("DLabel", Frame)
- Gender:SetSize(200,26)
- Gender:SetPos(250,193)
- Gender:SetText("Пол")
- Gender:SetTextColor(Color(255,255,255,255))
- Gender:SetFont("Pal18")
- local GenderText = vgui.Create("DComboBox", Frame)
- GenderText:SetSize(200,26)
- GenderText:SetPos(250,223)
- GenderText:SetValue("Выбор пола")
- GenderText:AddChoice("Мужской", "icon16/user.png")
- GenderText:AddChoice("Женский", "icon16/user.png")
- GenderText.OnSelect = function(_, _, value)
- if (value == "Мужской") then
- LocalPlayer():SetNWInt("gende", "1")
- else if (value == "Женский") then
- LocalPlayer():SetNWInt("gende", "2")
- end
- end
- local gende = LocalPlayer():GetNWInt("gende")
- local selectedModel = "models/player/Group01/male_01.mdl"
- local ModelDisplay = vgui.Create("DModelPanel", Frame)
- ModelDisplay:SetSize(200,500)
- ModelDisplay:SetPos(25,-140)
- ModelDisplay:SetModel(selectedModel)
- ModelDisplay:SetCamPos( Vector( 90, 0, 35 ) )
- ModelDisplay:SetLookAt(Vector(0,0,55))
- ModelDisplay:SetFOV(31)
- local ModelPick = vgui.Create("DScrollPanel", Frame)
- ModelPick:SetSize(520,80)
- --250,240
- ModelPick:SetPos(250,240)
- local gende = LocalPlayer():GetNWInt("gende")
- local MButton = vgui.Create("DComboBox", Frame)
- MButton:SetText("models/player/Group01/male_01.mdl")
- MButton:SetSize(200,26)
- MButton:SetPos(250,278)
- for k, v in pairs(RP_MODEL_LIST) do
- if (v[2] != tonumber(gende)) then continue end
- MButton:AddChoice(v[1])
- end
- MButton:SetTextColor(Color(0,0,0,255))
- --MButton:DockMargin(0, 0, 0, 2)
- MButton.OnSelect = function(_, _, value)
- selectedModel = value
- ModelDisplay:SetModel(value)
- end
- end
- local ModelTextLabel = vgui.Create("DLabel", Frame)
- ModelTextLabel:SetSize(200,26)
- ModelTextLabel:SetPos(250,250)
- ModelTextLabel:SetText("Внешний вид")
- ModelTextLabel:SetTextColor(Color(255,255,255,255))
- ModelTextLabel:SetFont("Pal18")
- local CreateButton = vgui.Create("DButton", Frame)
- CreateButton:SetSize(100,35)
- CreateButton:SetPos(480,450)
- CreateButton:SetText("Создать")
- CreateButton:SetFont("Pal24")
- CreateButton.DoClick = function()
- local selectedModel = ""
- net.Start("RPCreateCharNET")
- net.WriteString(FirstTextInput:GetValue() .. " ")
- net.WriteString(LastNameText:GetValue() .. " ")
- net.WriteString(selectedModel)
- net.SendToServer()
- Dpenel:Close()
- end
- local Close = vgui.Create("DButton", Frame)
- Close:SetSize(100,35)
- Close:SetPos(20,450)
- Close:SetText("Закрыть")
- Close:SetFont("Pal24")
- Close.DoClick = function()
- Dpenel:Close()
- end
- end
- net.Receive("OpenRPCreateNET", function(len,ply)
- timer.Simple(5, function()
- OpenCharCreateMenu()
- end)
- end)
- concommand.Add("openname", function(ply,cmd,args)
- OpenCharCreateMenu()
- end)
- concommand.Add("showstats", function(ply,cmd,args)
- print(ply:GetPData("RP_NAME"))
- print(ply:GetPData("RP_MODEL"))
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement