Advertisement
taka_qiao

Untitled

Jul 17th, 2019
262
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 32.31 KB | None | 0 0
  1. local CommunityName = "巅峰对决DarkRP服务器" // Change this to your Community name, it will say "Welcome to [your community name here]"
  2.  
  3. local Skin = 1 // You can chose different skins: 1 - Default, 2 - Poly Blur, 3 - Flat Blur
  4.  
  5.  
  6. include("sh_rpnamemenu.lua")
  7. //properties
  8. properties.Add("forcename",
  9. {
  10.     MenuLabel   =   RPNameLang("force_name"),
  11.     Order       =   1,
  12.     MenuIcon    =   "icon16/comment_edit.png",
  13.    
  14.     Filter      =   function( self, ent, ply )
  15.                
  16.                         if ( !IsValid( ent ) || !IsValid( ply ) ) then return false end
  17.                         if ( !ent:IsPlayer() ) then return false end
  18.                         if ( !ply:IsAdmin() ) then return false end
  19.                        
  20.                         return true
  21.  
  22.                     end,
  23.                    
  24.     Action      =   function( self, ent )
  25.    
  26.                         self:MsgStart()
  27.                             net.WriteEntity( ent )
  28.                         self:MsgEnd()
  29.                        
  30.                     end,
  31.                    
  32.     Receive     =   function( self, length, player )
  33.                    
  34.                         local ent = net.ReadEntity()
  35.                        
  36.                         DarkRP.notify(ent, 1, 10, RPNameLang("name_violates_rules"))
  37.                         ent.ForcedNameChange = true
  38.                         umsg.Start("openRPNameMenu", ent)
  39.                         umsg.End()
  40.  
  41.                         DarkRP.notify(player, 1, 10, RPNameLang("forced"))
  42.                        
  43.                     end
  44.  
  45. })
  46. if SERVER then AddCSLuaFile() return end
  47.  
  48. local rt_Store  = render.GetScreenEffectTexture(1)
  49. local mat_Copy  = Material("pp/copy")
  50. local blur = Material("pp/blurscreen")
  51. local function renderBlur(x, y, w, h, screenX, screenY, self)
  52.    
  53.     local rt_Scene = render.GetRenderTarget()
  54.     render.CopyRenderTargetToTexture(rt_Store)
  55.  
  56.     local layers = 10
  57.     local density = 5
  58.     surface.SetMaterial(blur)  
  59.     surface.SetDrawColor(255, 255, 255, 255)   
  60.     for i = 1, layers do
  61.         blur:SetFloat("$blur", (i / layers) * density)
  62.         blur:Recompute()
  63.         render.UpdateScreenEffectTexture()
  64.         surface.DrawTexturedRect(screenX, screenY, ScrW(), ScrH())
  65.     end
  66.    
  67.     if Skin == 2 then // some pre-blur drawing
  68.         surface.SetDrawColor(0, 0, 0, 165)
  69.         surface.DrawRect(0, 0, w, 35)
  70.        
  71.         surface.SetDrawColor(0, 0, 0, 105)
  72.         surface.DrawRect(0, h-35, w, 35)
  73.     elseif Skin == 3 then
  74.         surface.SetDrawColor(0, 0, 0, 125)
  75.         surface.DrawRect(0, 0, w, h)
  76.     end
  77.    
  78.     if self then
  79.         for k, v in pairs(self:GetChildren()) do
  80.             v:SetPaintedManually(false)
  81.             v:PaintManual()
  82.             v:SetPaintedManually(true)
  83.         end
  84.     end
  85.    
  86.     render.ClearStencil()
  87.     render.SetStencilEnable(true)
  88.     render.SetStencilTestMask(1)
  89.     render.SetStencilWriteMask(1)
  90.     render.SetStencilReferenceValue(1)
  91.     render.SetStencilCompareFunction(STENCIL_NEVER)
  92.     render.SetStencilPassOperation(STENCIL_KEEP)
  93.     render.SetStencilFailOperation(STENCIL_REPLACE)
  94.  
  95.     // draw mask here
  96.     draw.NoTexture()
  97.    
  98.     if Skin == 2 then
  99.         local triangle1 = {{ x = 0, y = 20}, {x = 30, y = 0}, {x = w-30, y = 0}}
  100.         surface.DrawPoly(triangle1)
  101.         local triangle2 = {{ x = w-30, y = 0}, {x = w, y = 20}, {x = 0, y = 20}}
  102.         surface.DrawPoly(triangle2)
  103.  
  104.         surface.DrawRect(0, 20, w, h-40)
  105.        
  106.         local triangle3 = {{x = 30, y = h},{ x = 0, y = h-20}, {x = w-30, y = h}}
  107.         surface.DrawPoly(triangle3)
  108.         local triangle4 = {{x = w-30, y = h}, { x = 0, y = h-20}, {x = w, y = h-20}}
  109.         surface.DrawPoly(triangle4)
  110.        
  111.     elseif Skin == 3 then
  112.         surface.DrawRect(0, 0, w, h)
  113.     end
  114.    
  115.    
  116.     // draw screen back with a cutout from the mask
  117.     render.SetStencilCompareFunction(STENCIL_NOTEQUAL)
  118.     render.SetStencilPassOperation(STENCIL_KEEP)
  119.     render.SetStencilFailOperation(STENCIL_REPLACE)
  120.    
  121.     render.SetRenderTarget(rt_Scene)
  122.     mat_Copy:SetTexture("$basetexture", rt_Store)
  123.     render.SetMaterial(mat_Copy)
  124.     render.DrawScreenQuad()
  125.    
  126.     // need to reset settings
  127.     render.SetStencilEnable(false)
  128.     render.SetStencilTestMask(0)
  129.     render.SetStencilWriteMask(0)
  130.     render.SetStencilReferenceValue(0)
  131. end
  132.  
  133. local function ButtonPaint(self)
  134.     if Skin == 1 then
  135.         draw.RoundedBox(4, 0, 0, self:GetWide(), self:GetTall(), self.MouseOver and Color(200, 200, 200, 255) or Color(100, 100, 100, 255))
  136.         draw.RoundedBox(4, 1, 1,self:GetWide()-2, self:GetTall()-2, !self:GetDisabled() and Color(30, 180, 0, 255) or Color(120, 120, 120, 255))
  137.     elseif Skin == 2 or Skin == 3 then
  138.         surface.SetDrawColor(!self:GetDisabled() and Color(30, 180, 0, 150) or Color(120, 120, 120, 150))
  139.         surface.DrawRect(0, 0, self:GetWide(), self:GetTall())
  140.         surface.SetDrawColor((!self:GetDisabled() and !self.MouseOver) and Color(0, 0, 0, 150) or Color(150, 150, 150, 150))
  141.         surface.DrawOutlinedRect(0, 0, self:GetWide(), self:GetTall())
  142.     end
  143. end
  144.  
  145.  
  146. local IconCorrect, IconIncorrect = Material("icon16/accept.png"), Material("icon16/cross.png")
  147. local NameMenu
  148. local function OpenRPNameMenu(um)
  149.     local ChangeCost, CanChange = um:ReadShort(), um:ReadBool()
  150.    
  151.     local DTextEntry1, DTextEntry2, DButton1
  152.     if NameMenu and NameMenu:IsValid() then NameMenu:Remove() end
  153.     NameMenu = vgui.Create("DFrame")
  154.     NameMenu:SetSize(550, 300)
  155.     NameMenu:SetTitle("")
  156.     NameMenu:Center()
  157.     NameMenu:ShowCloseButton(false)
  158.     NameMenu:MakePopup()
  159.     NameMenu.Paint = function(self)
  160.         local offsetY = 0
  161.         if Skin == 1 then
  162.             draw.RoundedBox(8, 0, 0, self:GetWide(), self:GetTall(), Color(50, 50, 50, 255))
  163.             draw.RoundedBox(8, 3, 3, self:GetWide()-6, self:GetTall()-6, Color(20, 20, 20, 255))
  164.         elseif Skin == 2 or Skin == 3 then
  165.             local x, y = self:LocalToScreen(0, 0)
  166.             DisableClipping(true)
  167.             renderBlur(0, 0, self:GetWide(), self:GetTall(), -x, -y, self)
  168.             DisableClipping(false)
  169.             offsetY = -20
  170.             if Skin == 3 then
  171.                 surface.SetDrawColor(0, 0, 0, 255)
  172.                 surface.DrawOutlinedRect(0, 0, self:GetWide(), self:GetTall())
  173.             end
  174.         end
  175.        
  176.         local txt = RPNameLang("welcome_to", CommunityName)
  177.         surface.SetFont("TargetID")
  178.         local x2, y2 = surface.GetTextSize(txt)
  179.         if Skin == 1 then
  180.             draw.RoundedBox(8, self:GetWide()*0.5-x2*0.5-4, 5, x2+8, y2, Color(49, 78, 85, 255))
  181.         end
  182.         draw.SimpleText(txt, "TargetID", self:GetWide()*0.5, 5, Color(255, 255, 255, 255), TEXT_ALIGN_CENTER)
  183.        
  184.         if CanChange then
  185.             draw.SimpleText(RPNameLang("change_cost", ChangeCost), "TargetIDSmall", self:GetWide()*0.5, 72+offsetY, Color(255, 255, 255, 255), TEXT_ALIGN_CENTER)
  186.         end
  187.        
  188.         draw.SimpleText(RPNameLang("enter_rpname"), "TargetIDSmall", self:GetWide()*0.5, 90+offsetY, Color(255, 255, 255, 255), TEXT_ALIGN_CENTER)
  189.        
  190.         local x, y = DTextEntry1:GetPos()
  191.         draw.SimpleText(RPNameLang("first_name"), "TargetIDSmall", NameMenu:GetWide()*0.5, y-18, Color(255, 255, 255, 255), TEXT_ALIGN_CENTER)
  192.         draw.SimpleText(RPNameLang("last_name"), "TargetIDSmall", NameMenu:GetWide()*0.5, y+32, Color(255, 255, 255, 255), TEXT_ALIGN_CENTER)
  193.        
  194.         surface.SetDrawColor(255, 255, 255, 255)
  195.         if DTextEntry1.Correct then
  196.             surface.SetMaterial(IconCorrect)
  197.             surface.DrawTexturedRect(333, y+2, 16, 16)
  198.         else
  199.             surface.SetMaterial(IconIncorrect)
  200.             surface.DrawTexturedRect(333, y+2, 16, 16)
  201.         end
  202.         if DTextEntry2.Correct then
  203.             surface.SetMaterial(IconCorrect)
  204.             surface.DrawTexturedRect(333, y+52, 16, 16)
  205.         else
  206.             surface.SetMaterial(IconIncorrect)
  207.             surface.DrawTexturedRect(333, y+52, 16, 16)
  208.         end
  209.        
  210.         if Skin == 1 then
  211.             surface.SetDrawColor(175, 175, 175, 255)
  212.             surface.DrawRect(self:GetWide()*0.5-56, 154, 112, 22)
  213.             surface.DrawRect(self:GetWide()*0.5-56, 204, 112, 22)
  214.         end
  215.        
  216.     end
  217.  
  218.     local allowed, correct = {"q", "w", "e", "r", "t", "y", "u", "i", "o", "p", "a", "s", "d", "f", "g", "h", "j", "k", "l", "z", "x", "c", "v", "b", "n", "m", " ","一","乙","二","十","丁","厂","七","卜","人","入","八","九","几","儿","了","力","乃","刀","又","三","于","干","亏","士","工","土","才","寸","下","大","丈","与","万","上","小","口","巾","山","千","乞","川","亿","个","勺","久","凡","及","夕","丸","么","广","亡","门","义","之","尸","弓","己","已","子","卫","也","女","飞","刃","习","叉","马","乡","丰","王","井","开","夫","天","无","元","专","云","扎","艺","木","五","支","厅","不","太","犬","区","历","尤","友","匹","车","巨","牙","屯","比","互","切","瓦","止","少","日","中","冈","贝","内","水","见","午","牛","手","毛","气","升","长","仁","什","片","仆","化","仇","币","仍","仅","斤","爪","反","介","父","从","今","凶","分","乏","公","仓","月","氏","勿","欠","风","丹","匀","乌","凤","勾","文","六","方","火","为","斗","忆","订","计","户","认","心","尺","引","丑","巴","孔","队","办","以","允","予","劝","双","书","幻","玉","刊","示","末","未","击","打","巧","正","扑","扒","功","扔","去","甘","世","古","节","本","术","可","丙","左","厉","右","石","布","龙","平","灭","轧","东","卡","北","占","业","旧","帅","归","且","旦","目","叶","甲","申","叮","电","号","田","由","史","只","央","兄","叼","叫","另","叨","叹","四","生","失","禾","丘","付","仗","代","仙","们","仪","白","仔","他","斥","瓜","乎","丛","令","用","甩","印","乐","句","匆","册","犯","外","处","冬","鸟","务","包","饥","主","市","立","闪","兰","半","汁","汇","头","汉","宁","穴","它","讨","写","让","礼","训","必","议","讯","记","永","司","尼","民","出","辽","奶","奴","加","召","皮","边","发","孕","圣","对","台","矛","纠","母","幼","丝","式","刑","动","扛","寺","吉","扣","考","托","老","执","巩","圾","扩","扫","地","扬","场","耳","共","芒","亚","芝","朽","朴","机","权","过","臣","再","协","西","压","厌","在","有","百","存","而","页","匠","夸","夺","灰","达","列","死","成","夹","轨","邪","划","迈","毕","至","此","贞","师","尘","尖","劣","光","当","早","吐","吓","虫","曲","团","同","吊","吃","因","吸","吗","屿","帆","岁","回","岂","刚","则","肉","网","年","朱","先","丢","舌","竹","迁","乔","伟","传","乒","乓","休","伍","伏","优","伐","延","件","任","伤","价","份","华","仰","仿","伙","伪","自","血","向","似","后","行","舟","全","会","杀","合","兆","企","众","爷","伞","创","肌","朵","杂","危","旬","旨","负","各","名","多","争","色","壮","冲","冰","庄","庆","亦","刘","齐","交","次","衣","产","决","充","妄","闭","问","闯","羊","并","关","米","灯","州","汗","污","江","池","汤","忙","兴","宇","守","宅","字","安","讲","军","许","论","农","讽","设","访","寻","那","迅","尽","导","异","孙","阵","阳","收","阶","阴","防","奸","如","妇","好","她","妈","戏","羽","观","欢","买","红","纤","级","约","纪","驰","巡","寿","弄","麦","形","进","戒","吞","远","违","运","扶","抚","坛","技","坏","扰","拒","找","批","扯","址","走","抄","坝","贡","攻","赤","折","抓","扮","抢","孝","均","抛","投","坟","抗","坑","坊","抖","护","壳","志","扭","块","声","把","报","却","劫","芽","花","芹","芬","苍","芳","严","芦","劳","克","苏","杆","杠","杜","材","村","杏","极","李","杨","求","更","束","豆","两","丽","医","辰","励","否","还","歼","来","连","步","坚","旱","盯","呈","时","吴","助","县","里","呆","园","旷","围","呀","吨","足","邮","男","困","吵","串","员","听","吩","吹","呜","吧","吼","别","岗","帐","财","针","钉","告","我","乱","利","秃","秀","私","每","兵","估","体","何","但","伸","作","伯","伶","佣","低","你","住","位","伴","身","皂","佛","近","彻","役","返","余","希","坐","谷","妥","含","邻","岔","肝","肚","肠","龟","免","狂","犹","角","删","条","卵","岛","迎","饭","饮","系","言","冻","状","亩","况","床","库","疗","应","冷","这","序","辛","弃","冶","忘","闲","间","闷","判","灶","灿","弟","汪","沙","汽","沃","泛","沟","没","沈","沉","怀","忧","快","完","宋","宏","牢","究","穷","灾","良","证","启","评","补","初","社","识","诉","诊","词","译","君","灵","即","层","尿","尾","迟","局","改","张","忌","际","陆","阿","陈","阻","附","妙","妖","妨","努","忍","劲","鸡","驱","纯","纱","纳","纲","驳","纵","纷","纸","纹","纺","驴","纽","奉","玩","环","武","青","责","现","表","规","抹","拢","拔","拣","担","坦","押","抽","拐","拖","拍","者","顶","拆","拥","抵","拘","势","抱","垃","拉","拦","拌","幸","招","坡","披","拨","择","抬","其","取","苦","若","茂","苹","苗","英","范","直","茄","茎","茅","林","枝","杯","柜","析","板","松","枪","构","杰","述","枕","丧","或","画","卧","事","刺","枣","雨","卖","矿","码","厕","奔","奇","奋","态","欧","垄","妻","轰","顷","转","斩","轮","软","到","非","叔","肯","齿","些","虎","虏","肾","贤","尚","旺","具","果","味","昆","国","昌","畅","明","易","昂","典","固","忠","咐","呼","鸣","咏","呢","岸","岩","帖","罗","帜","岭","凯","败","贩","购","图","钓","制","知","垂","牧","物","乖","刮","秆","和","季","委","佳","侍","供","使","例","版","侄","侦","侧","凭","侨","佩","货","依","的","迫","质","欣","征","往","爬","彼","径","所","舍","金","命","斧","爸","采","受","乳","贪","念","贫","肤","肺","肢","肿","胀","朋","股","肥","服","胁","周","昏","鱼","兔","狐","忽","狗","备","饰","饱","饲","变","京","享","店","夜","庙","府","底","剂","郊","废","净","盲","放","刻","育","闸","闹","郑","券","卷","单","炒","炊","炕","炎","炉","沫","浅","法","泄","河","沾","泪","油","泊","沿","泡","注","泻","泳","泥","沸","波","泼","泽","治","怖","性","怕","怜","怪","学","宝","宗","定","宜","审","宙","官","空","帘","实","试","郎","诗","肩","房","诚","衬","衫","视","话","诞","询","该","详","建","肃","录","隶","居","届","刷","屈","弦","承","孟","孤","陕","降","限","妹","姑","姐","姓","始","驾","参","艰","线","练","组","细","驶","织","终","驻","驼","绍","经","贯","奏","春","帮","珍","玻","毒","型","挂","封","持","项","垮","挎","城","挠","政","赴","赵","挡","挺","括","拴","拾","挑","指","垫","挣","挤","拼","挖","按","挥","挪","某","甚","革","荐","巷","带","草","茧","茶","荒","茫","荡","荣","故","胡","南","药","标","枯","柄","栋","相","查","柏","柳","柱","柿","栏","树","要","咸","威","歪","研","砖","厘","厚","砌","砍","面","耐","耍","牵","残","殃","轻","鸦","皆","背","战","点","临","览","竖","省","削","尝","是","盼","眨","哄","显","哑","冒","映","星","昨","畏","趴","胃","贵","界","虹","虾","蚁","思","蚂","虽","品","咽","骂","哗","咱","响","哈","咬","咳","哪","炭","峡","罚","贱","贴","骨","钞","钟","钢","钥","钩","卸","缸","拜","看","矩","怎","牲","选","适","秒","香","种","秋","科","重","复","竿","段","便","俩","贷","顺","修","保","促","侮","俭","俗","俘","信","皇","泉","鬼","侵","追","俊","盾","待","律","很","须","叙","剑","逃","食","盆","胆","胜","胞","胖","脉","勉","狭","狮","独","狡","狱","狠","贸","怨","急","饶","蚀","饺","饼","弯","将","奖","哀","亭","亮","度","迹","庭","疮","疯","疫","疤","姿","亲","音","帝","施","闻","阀","阁","差","养","美","姜","叛","送","类","迷","前","首","逆","总","炼","炸","炮","烂","剃","洁","洪","洒","浇","浊","洞","测","洗","活","派","洽","染","济","洋","洲","浑","浓","津","恒","恢","恰","恼","恨","举","觉","宣","室","宫","宪","突","穿","窃","客","冠","语","扁","袄","祖","神","祝","误","诱","说","诵","垦","退","既","屋","昼","费","陡","眉","孩","除","险","院","娃","姥","姨","姻","娇","怒","架","贺","盈","勇","怠","柔","垒","绑","绒","结","绕","骄","绘","给","络","骆","绝","绞","统","耕","耗","艳","泰","珠","班","素","蚕","顽","盏","匪","捞","栽","捕","振","载","赶","起","盐","捎","捏","埋","捉","捆","捐","损","都","哲","逝","捡","换","挽","热","恐","壶","挨","耻","耽","恭","莲","莫","荷","获","晋","恶","真","框","桂","档","桐","株","桥","桃","格","校","核","样","根","索","哥","速","逗","栗","配","翅","辱","唇","夏","础","破","原","套","逐","烈","殊","顾","轿","较","顿","毙","致","柴","桌","虑","监","紧","党","晒","眠","晓","鸭","晃","晌","晕","蚊","哨","哭","恩","唤","啊","唉","罢","峰","圆","贼","贿","钱","钳","钻","铁","铃","铅","缺","氧","特","牺","造","乘","敌","秤","租","积","秧","秩","称","秘","透","笔","笑","笋","债","借","值","倚","倾","倒","倘","俱","倡","候","俯","倍","倦","健","臭","射","躬","息","徒","徐","舰","舱","般","航","途","拿","爹","爱","颂","翁","脆","脂","胸","胳","脏","胶","脑","狸","狼","逢","留","皱","饿","恋","桨","浆","衰","高","席","准","座","脊","症","病","疾","疼","疲","效","离","唐","资","凉","站","剖","竞","部","旁","旅","畜","阅","羞","瓶","拳","粉","料","益","兼","烤","烘","烦","烧","烛","烟","递","涛","浙","涝","酒","涉","消","浩","海","涂","浴","浮","流","润","浪","浸","涨","烫","涌","悟","悄","悔","悦","害","宽","家","宵","宴","宾","窄","容","宰","案","请","朗","诸","读","扇","袜","袖","袍","被","祥","课","谁","调","冤","谅","谈","谊","剥","恳","展","剧","屑","弱","陵","陶","陷","陪","娱","娘","通","能","难","预","桑","绢","绣","验","继","球","理","捧","堵","描","域","掩","捷","排","掉","堆","推","掀","授","教","掏","掠","培","接","控","探","据","掘","职","基","著","勒","黄","萌","萝","菌","菜","萄","菊","萍","菠","营","械","梦","梢","梅","检","梳","梯","桶","救","副","票","戚","爽","聋","袭","盛","雪","辅","辆","虚","雀","堂","常","匙","晨","睁","眯","眼","悬","野","啦","晚","啄","距","跃","略","蛇","累","唱","患","唯","崖","崭","崇","圈","铜","铲","银","甜","梨","犁","移","笨","笼","笛","符","第","敏","做","袋","悠","偿","偶","偷","您","售","停","偏","假","得","衔","盘","船","斜","盒","鸽","悉","欲","彩","领","脚","脖","脸","脱","象","够","猜","猪","猎","猫","猛","馅","馆","凑","减","毫","麻","痒","痕","廊","康","庸","鹿","盗","章","竟","商","族","旋","望","率","着","盖","粘","粗","粒","断","剪","兽","清","添","淋","淹","渠","渐","混","渔","淘","液","淡","深","婆","梁","渗","情","惜","惭","悼","惧","惕","惊","惨","惯","寇","寄","宿","窑","密","谋","谎","祸","谜","逮","敢","屠","弹","随","蛋","隆","隐","婚","婶","颈","绩","绪","续","骑","绳","维","绵","绸","绿","琴","斑","替","款","堪","搭","塔","越","趁","趋","超","提","堤","博","揭","喜","插","揪","搜","煮","援","裁","搁","搂","搅","握","揉","斯","期","欺","联","散","惹","葬","葛","董","葡","敬","葱","落","朝","辜","葵","棒","棋","植","森","椅","椒","棵","棍","棉","棚","棕","惠","惑","逼","厨","厦","硬","确","雁","殖","裂","雄","暂","雅","辈","悲","紫","辉","敞","赏","掌","晴","暑","最","量","喷","晶","喇","遇","喊","景","践","跌","跑","遗","蛙","蛛","蜓","喝","喂","喘","喉","幅","帽","赌","赔","黑","铸","铺","链","销","锁","锄","锅","锈","锋","锐","短","智","毯","鹅","剩","稍","程","稀","税","筐","等","筑","策","筛","筒","答","筋","筝","傲","傅","牌","堡","集","焦","傍","储","奥","街","惩","御","循","艇","舒","番","释","禽","腊","脾","腔","鲁","猾","猴","然","馋","装","蛮","就","痛","童","阔","善","羡","普","粪","尊","道","曾","焰","港","湖","渣","湿","温","渴","滑","湾","渡","游","滋","溉","愤","慌","惰","愧","愉","慨","割","寒","富","窜","窝","窗","遍","裕","裤","裙","谢","谣","谦","属","屡","强","粥","疏","隔","隙","絮","嫂","登","缎","缓","编","骗","缘","瑞","魂","肆","摄","摸","填","搏","塌","鼓","摆","携","搬","摇","搞","塘","摊","蒜","勤","鹊","蓝","墓","幕","蓬","蓄","蒙","蒸","献","禁","楚","想","槐","榆","楼","概","赖","酬","感","碍","碑","碎","碰","碗","碌","雷","零","雾","雹","输","督","龄","鉴","睛","睡","睬","鄙","愚","暖","盟","歇","暗","照","跨","跳","跪","路","跟","遣","蛾","蜂","嗓","置","罪","罩","错","锡","锣","锤","锦","键","锯","矮","辞","稠","愁","筹","签","简","毁","舅","鼠","催","傻","像","躲","微","愈","遥","腰","腥","腹","腾","腿","触","解","酱","痰","廉","新","韵","意","粮","数","煎","塑","慈","煤","煌","满","漠","源","滤","滥","滔","溪","溜","滚","滨","粱","滩","慎","誉","塞","谨","福","群","殿","辟","障","嫌","嫁","叠","缝","缠","静","碧","璃","墙","撇","嘉","摧","截","誓","境","摘","摔","聚","蔽","慕","暮","蔑","模","榴","榜","榨","歌","遭","酷","酿","酸","磁","愿","需","弊","裳","颗","嗽","蜻","蜡","蝇","蜘","赚","锹","锻","舞","稳","算","箩","管","僚","鼻","魄","貌","膜","膊","膀","鲜","疑","馒","裹","敲","豪","膏","遮","腐","瘦","辣","竭","端","旗","精","歉","熄","熔","漆","漂","漫","滴","演","漏","慢","寨","赛","察","蜜","谱","嫩","翠","熊","凳","骡","缩","慧","撕","撒","趣","趟","撑","播","撞","撤","增","聪","鞋","蕉","蔬","横","槽","樱","橡","飘","醋","醉","震","霉","瞒","题","暴","瞎","影","踢","踏","踩","踪","蝶","蝴","嘱","墨","镇","靠","稻","黎","稿","稼","箱","箭","篇","僵","躺","僻","德","艘","膝","膛","熟","摩","颜","毅","糊","遵","潜","潮","懂","额","慰","劈","操","燕","薯","薪","薄","颠","橘","整","融","醒","餐","嘴","蹄","器","赠","默","镜","赞","篮","邀","衡","膨","雕","磨","凝","辨","辩","糖","糕","燃","澡","激","懒","壁","避","缴","戴","擦","鞠","藏","霜","霞","瞧","蹈","螺","穗","繁","辫","赢","糟","糠","燥","臂","翼","骤","鞭","覆","蹦","镰","翻","鹰","警","攀","蹲","颤","瓣","爆","疆","壤","耀","躁","嚼","嚷","籍","魔","灌","蠢","霸","露","囊","罐","匕","刁","丐","歹","戈","夭","仑","讥","冗","邓","艾","夯","凸","卢","叭","叽","皿","凹","囚","矢","乍","尔","冯","玄","邦","迂","邢","芋","芍","吏","夷","吁","吕","吆","屹","廷","迄","臼","仲","伦","伊","肋","旭","匈","凫","妆","亥","汛","讳","讶","讹","讼","诀","弛","阱","驮","驯","纫","玖","玛","韧","抠","扼","汞","扳","抡","坎","坞","抑","拟","抒","芙","芜","苇","芥","芯","芭","杖","杉","巫","杈","甫","匣","轩","卤","肖","吱","吠","呕","呐","吟","呛","吻","吭","邑","囤","吮","岖","牡","佑","佃","伺","囱","肛","肘","甸","狈","鸠","彤","灸","刨","庇","吝","庐","闰","兑","灼","沐","沛","汰","沥","沦","汹","沧","沪","忱","诅","诈","罕","屁","坠","妓","姊","妒","纬","玫","卦","坷","坯","拓","坪","坤","拄","拧","拂","拙","拇","拗","茉","昔","苛","苫","苟","苞","茁","苔","枉","枢","枚","枫","杭","郁","矾","奈","奄","殴","歧","卓","昙","哎","咕","呵","咙","呻","咒","咆","咖","帕","账","贬","贮","氛","秉","岳","侠","侥","侣","侈","卑","刽","刹","肴","觅","忿","瓮","肮","肪","狞","庞","疟","疙","疚","卒","氓","炬","沽","沮","泣","泞","泌","沼","怔","怯","宠","宛","衩","祈","诡","帚","屉","弧","弥","陋","陌","函","姆","虱","叁","绅","驹","绊","绎","契","贰","玷","玲","珊","拭","拷","拱","挟","垢","垛","拯","荆","茸","茬","荚","茵","茴","荞","荠","荤","荧","荔","栈","柑","栅","柠","枷","勃","柬","砂","泵","砚","鸥","轴","韭","虐","昧","盹","咧","昵","昭","盅","勋","哆","咪","哟","幽","钙","钝","钠","钦","钧","钮","毡","氢","秕","俏","俄","俐","侯","徊","衍","胚","胧","胎","狰","饵","峦","奕","咨","飒","闺","闽","籽","娄","烁","炫","洼","柒","涎","洛","恃","恍","恬","恤","宦","诫","诬","祠","诲","屏","屎","逊","陨","姚","娜","蚤","骇","耘","耙","秦","匿","埂","捂","捍","袁","捌","挫","挚","捣","捅","埃","耿","聂","荸","莽","莱","莉","莹","莺","梆","栖","桦","栓","桅","桩","贾","酌","砸","砰","砾","殉","逞","哮","唠","哺","剔","蚌","蚜","畔","蚣","蚪","蚓","哩","圃","鸯","唁","哼","唆","峭","唧","峻","赂","赃","钾","铆","氨","秫","笆","俺","赁","倔","殷","耸","舀","豺","豹","颁","胯","胰","脐","脓","逛","卿","鸵","鸳","馁","凌","凄","衷","郭","斋","疹","紊","瓷","羔","烙","浦","涡","涣","涤","涧","涕","涩","悍","悯","窍","诺","诽","袒","谆","祟","恕","娩","骏","琐","麸","琉","琅","措","捺","捶","赦","埠","捻","掐","掂","掖","掷","掸","掺","勘","聊","娶","菱","菲","萎","菩","萤","乾","萧","萨","菇","彬","梗","梧","梭","曹","酝","酗","厢","硅","硕","奢","盔","匾","颅","彪","眶","晤","曼","晦","冕","啡","畦","趾","啃","蛆","蚯","蛉","蛀","唬","唾","啤","啥","啸","崎","逻","崔","崩","婴","赊","铐","铛","铝","铡","铣","铭","矫","秸","秽","笙","笤","偎","傀","躯","兜","衅","徘","徙","舶","舷","舵","敛","翎","脯","逸","凰","猖","祭","烹","庶","庵","痊","阎","阐","眷","焊","焕","鸿","涯","淑","淌","淮","淆","渊","淫","淳","淤","淀","涮","涵","惦","悴","惋","寂","窒","谍","谐","裆","袱","祷","谒","谓","谚","尉","堕","隅","婉","颇","绰","绷","综","绽","缀","巢","琳","琢","琼","揍","堰","揩","揽","揖","彭","揣","搀","搓","壹","搔","葫","募","蒋","蒂","韩","棱","椰","焚","椎","棺","榔","椭","粟","棘","酣","酥","硝","硫","颊","雳","翘","凿","棠","晰","鼎","喳","遏","晾","畴","跋","跛","蛔","蜒","蛤","鹃","喻","啼","喧","嵌","赋","赎","赐","锉","锌","甥","掰","氮","氯","黍","筏","牍","粤","逾","腌","腋","腕","猩","猬","惫","敦","痘","痢","痪","竣","翔","奠","遂","焙","滞","湘","渤","渺","溃","溅","湃","愕","惶","寓","窖","窘","雇","谤","犀","隘","媒","媚","婿","缅","缆","缔","缕","骚","瑟","鹉","瑰","搪","聘","斟","靴","靶","蓖","蒿","蒲","蓉","楔","椿","楷","榄","楞","楣","酪","碘","硼","碉","辐","辑","频","睹","睦","瞄","嗜","嗦","暇","畸","跷","跺","蜈","蜗","蜕","蛹","嗅","嗡","嗤","署","蜀","幌","锚","锥","锨","锭","锰","稚","颓","筷","魁","衙","腻","腮","腺","鹏","肄","猿","颖","煞","雏","馍","馏","禀","痹","廓","痴","靖","誊","漓","溢","溯","溶","滓","溺","寞","窥","窟","寝","褂","裸","谬","媳","嫉","缚","缤","剿","赘","熬","赫","蔫","摹","蔓","蔗","蔼","熙","蔚","兢","榛","榕","酵","碟","碴","碱","碳","辕","辖","雌","墅","嘁","踊","蝉","嘀","幔","镀","舔","熏","箍","箕","箫","舆","僧","孵","瘩","瘟","彰","粹","漱","漩","漾","慷","寡","寥","谭","褐","褪","隧","嫡","缨","撵","撩","撮","撬","擒","墩","撰","鞍","蕊","蕴","樊","樟","橄","敷","豌","醇","磕","磅","碾","憋","嘶","嘲","嘹","蝠","蝎","蝌","蝗","蝙","嘿","幢","镊","镐","稽","篓","膘","鲤","鲫","褒","瘪","瘤","瘫","凛","澎","潭","潦","澳","潘","澈","澜","澄","憔","懊","憎","翩","褥","谴","鹤","憨","履","嬉","豫","缭","撼","擂","擅","蕾","薛","薇","擎","翰","噩","橱","橙","瓢","蟥","霍","霎","辙","冀","踱","蹂","蟆","螃","螟","噪","鹦","黔","穆","篡","篷","篙","篱","儒","膳","鲸","瘾","瘸","糙","燎","濒","憾","懈","窿","缰","壕","藐","檬","檐","檩","檀","礁","磷","了","瞬","瞳","瞪","曙","蹋","蟋","蟀","嚎","赡","镣","魏","簇","儡","徽","爵","朦","臊","鳄","糜","癌","懦","豁","臀","藕","藤","瞻","嚣","鳍","癞","瀑","襟","璧","戳","攒","孽","蘑","藻","鳖","蹭","蹬","簸","簿","蟹","靡","癣","羹","鬓","攘","蠕","巍","鳞","糯","譬","霹","躏","髓","蘸","镶","瓤","矗"}
  219.  
  220.     DTextEntry1 = vgui.Create("DTextEntry", NameMenu)
  221.     DTextEntry1:SetSize(110, 20)
  222.     DTextEntry1:SetPos(NameMenu:GetWide()*0.5-55, 155)
  223.     DTextEntry1.Think = function(self)
  224.         local text = self:GetValue()
  225.  
  226.         correct = true
  227.         if text:len() < 3 then correct = false end
  228.         for k in string.gmatch(text, ".") do
  229.             if not table.HasValue(allowed, string.lower(k)) then
  230.  
  231.                 correct = false
  232.                 break
  233.             end
  234.         end
  235.         self.Correct = (text != " " and text != "") and correct or false
  236.     end
  237.  
  238.     DTextEntry2 = vgui.Create("DTextEntry", NameMenu)
  239.     DTextEntry2:SetSize(110, 20)
  240.     DTextEntry2:SetPos(NameMenu:GetWide()*0.5-55, 205)
  241.     DTextEntry2.Think = DTextEntry1.Think
  242.    
  243.     if CanChange then
  244.         DButton1 = vgui.Create("DButton", NameMenu)
  245.         DButton1:SetSize(80, 25)
  246.         DButton1:SetPos(NameMenu:GetWide()*0.5-DButton1:GetWide()-5, NameMenu:GetTall()*0.85)
  247.         DButton1:SetText("")
  248.         DButton1.Paint = function(self)
  249.             ButtonPaint(self)
  250.             draw.SimpleTextOutlined(RPNameLang("done"), "TargetIDSmall", self:GetWide()*0.5, 2.5, !self:GetDisabled() and Color(255, 255, 255, 255) or Color(180, 180, 180, 255), TEXT_ALIGN_CENTER, nil, 1.1, Color(0, 0, 0, 255))
  251.         end
  252.         DButton1.DoClick = function(self)
  253.             if !DTextEntry1.Correct or !DTextEntry2.Correct then return end
  254.             local first, last = DTextEntry1:GetValue(), DTextEntry2:GetValue()
  255.             RunConsoleCommand("b_rpname", table.concat({first[1]:upper(), first:sub(2), " ", last[1]:upper(), last:sub(2)}, ""))
  256.             NameMenu:Remove()
  257.         end
  258.         DButton1.Think = function(self)
  259.             local textlower = string.lower(DTextEntry1:GetValue().." "..DTextEntry2:GetValue())
  260.             if textlower:len() > 30 or !DTextEntry1.Correct or !DTextEntry2.Correct or string.match(textlower, "nigger") or string.match(textlower, "fag") or string.match(textlower, "brony") or string.match(textlower, "owner") or string.match(textlower, "admin") or string.match(textlower, "ben dover") or string.match(textlower, "bend over") then
  261.                 self:SetDisabled(true)
  262.                 return
  263.             else
  264.                 self:SetDisabled(false)
  265.             end
  266.         end
  267.         DButton1.OnCursorEntered = function(self)
  268.             self.MouseOver = true
  269.         end
  270.         DButton1.OnCursorExited = function(self)
  271.             self.MouseOver = false
  272.         end
  273.        
  274.         local DButton2 = vgui.Create("DButton", NameMenu)
  275.         DButton2:SetSize(80, 25)
  276.         DButton2:SetPos(NameMenu:GetWide()*0.5+5, NameMenu:GetTall()*0.85)
  277.         DButton2:SetText("")
  278.         DButton2.Paint = function(self)
  279.             ButtonPaint(self)
  280.             draw.SimpleTextOutlined(RPNameLang("cancel"), "TargetIDSmall", self:GetWide()*0.5, 2.5, !self:GetDisabled() and Color(255, 255, 255, 255) or Color(180, 180, 180, 255), TEXT_ALIGN_CENTER, nil, 1.1, Color(0, 0, 0, 255))
  281.         end
  282.         DButton2.DoClick = function(self)
  283.             NameMenu:Remove()
  284.         end
  285.         DButton2.OnCursorEntered = function(self)
  286.             self.MouseOver = true
  287.         end
  288.         DButton2.OnCursorExited = function(self)
  289.             self.MouseOver = false
  290.         end
  291.        
  292.     else
  293.         DButton1 = vgui.Create("DButton", NameMenu)
  294.         DButton1:SetSize(80, 25)
  295.         DButton1:SetPos(NameMenu:GetWide()*0.5-DButton1:GetWide()*0.5, NameMenu:GetTall()*0.85)
  296.         DButton1:SetText("")
  297.         DButton1.Paint = function(self)
  298.             ButtonPaint(self)
  299.             draw.SimpleTextOutlined(RPNameLang("done"), "TargetIDSmall", self:GetWide()*0.5, 2.5, !self:GetDisabled() and Color(255, 255, 255, 255) or Color(180, 180, 180, 255), TEXT_ALIGN_CENTER, nil, 1.1, Color(0, 0, 0, 255))
  300.         end
  301.         DButton1.DoClick = function(self)
  302.             if !DTextEntry1.Correct or !DTextEntry2.Correct then return end
  303.             local first, last = DTextEntry1:GetValue(), DTextEntry2:GetValue()
  304.             RunConsoleCommand("c_rpname", table.concat({first[1]:upper(), first:sub(2), " ", last[1]:upper(), last:sub(2)}, ""))
  305.             NameMenu:Remove()
  306.         end
  307.         DButton1.Think = function(self)
  308.             local textlower = string.lower(DTextEntry1:GetValue().." "..DTextEntry2:GetValue())
  309.             if textlower:len() > 30 or !DTextEntry1.Correct or !DTextEntry2.Correct or string.match(textlower, "nigger") or string.match(textlower, "fag") or string.match(textlower, "brony") or string.match(textlower, "owner") or string.match(textlower, "admin") or string.match(textlower, "ben dover") or string.match(textlower, "bend over") then
  310.                 self:SetDisabled(true)
  311.                 return
  312.             else
  313.                 self:SetDisabled(false)
  314.             end
  315.         end
  316.         DButton1.OnCursorEntered = function(self)
  317.             self.MouseOver = true
  318.         end
  319.         DButton1.OnCursorExited = function(self)
  320.             self.MouseOver = false
  321.         end
  322.     end
  323.    
  324.     if Skin == 2 then
  325.         for k, v in pairs(NameMenu:GetChildren()) do
  326.             local x, y = v:GetPos()
  327.             v:SetPos(x, y - 25)
  328.         end
  329.     end
  330.    
  331. end
  332. usermessage.Hook("openRPNameMenu", OpenRPNameMenu)
  333. //by 7ebbc7ed4412d2e9d5fd66396c71942c711931032ee3fe3ee74970ab5b42d57c
  334. //�Tomasas 2013-2016
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement