Advertisement
Guest User

Untitled

a guest
Jul 7th, 2015
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 38.44 KB | None | 0 0
  1. --[[
  2. ######################################################################################################
  3. # ######## ####### ## ## ## ## ## ## ### ###### ## ## ## ## ####### #
  4. # ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
  5. # ## ## ## ## #### ## #### ## ## ## ## ## ## ## ## ## ## #
  6. # ######## ## ## ## ## ## ## ######### ## ## ## ##### ## ## ####### #
  7. # ## ## ## ## #### ## ## ## ######### ## ## ## ## ## ## #
  8. # ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## #
  9. # ## ####### ## ## ## ## ## ## ## ###### ## ## ### ####### #
  10. ######################################################################################################
  11. # by Kawaii Hafnium #
  12. ######################################################################################################
  13.  
  14.  
  15.  
  16. ######################################################################################################
  17. # #### ## ## ######## ####### ######## ## ## ### ######## #### ####### ## ## #
  18. # ## ### ## ## ## ## ## ## ### ### ## ## ## ## ## ## ### ## #
  19. # ## #### ## ## ## ## ## ## #### #### ## ## ## ## ## ## #### ## #
  20. # ## ## ## ## ###### ## ## ######## ## ### ## ## ## ## ## ## ## ## ## ## #
  21. # ## ## #### ## ## ## ## ## ## ## ######### ## ## ## ## ## #### #
  22. # ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### #
  23. # #### ## ## ## ####### ## ## ## ## ## ## ## #### ####### ## ## #
  24. ######################################################################################################
  25. # #
  26. # This version of PonyHack should correct most of the complaints I had in PonyHack v2, I havn't #
  27. # put much work in it, the reason the release was delayed a lot is because I never really found #
  28. # the time to work on it a lot with school and everything. The only time I worked on this was #
  29. # during the christmas break when I wasn't busy with other things. Though I had to motivation #
  30. # to continue working on this, I did anyways because I knew that many MPGH users were awaiting #
  31. # it's release. #
  32. # #
  33. # Here's a list of the changes done in PonyHack v3: #
  34. # - Redid the menu from scratch. (messy but less messy) #
  35. # - Removed all unused code. #
  36. # - Did some cleaning up and optimization, fixed up garbage code. #
  37. # - Added spread compensation to HL2 weapons. #
  38. # - Redid ESP, better looking, better esp. #
  39. # - Fixed movement compensation for silent aim. #
  40. # - Fixed a few errors with bhop and autofire restricting movement. #
  41. # - Stopped hack from running if spreadthebutter isn't installed correctly #
  42. # - And much more #
  43. # #
  44. ######################################################################################################
  45.  
  46. __________________________________________¦¦¦
  47. ______________________________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦__
  48. __________________________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦_
  49. ______________________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦__
  50. __________________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦_
  51. _________________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦_
  52. _____________________¦__¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦_
  53. __________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  54. ________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  55. _______________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  56. _____________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  57. ___________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦___________
  58. ___________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  59. __________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  60. _________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  61. ________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  62. ________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  63. _______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  64. _______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  65. __¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯¯¯¯¯¯¯¯
  66. _¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  67. _¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦_¦¦¦_¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  68. __¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯_¦¦¯__¯_____¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  69. __¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯__¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦_¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  70. __¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦__¦¦¦_¦¦¦¦¦¦¦¦¦¦¦¦¦____¯¦_¦¦¦¦¦¦¦¦¦¦ ¦¦¦¦
  71. ___¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯¦¦¦¦___¯¦¦¦¦¦¦¦¦¦¦¦_____¯ ¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  72. ____¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯¯¯¯¯¦¦¦¦_____¯¦¦¦¦¦¦¦¦¦¦¦_____¯ ¦¦¦¦¦¦¦¦¦¦¦¦
  73. _____¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦______¦¦¦¯¯¦¦¦¦¦¦¦______¯¦¦¦¦ ¯¦
  74. ______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦_____¦¦¦__¦¦¦¦¦¦¦¦____¦¦¦¦¦¦¦¦¦¦¦¦
  75. ______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯¦¦¦¦¦¦¦¦¦¦¦¦¦__¦¦¦¦¦¦¦¦¦¦¦¦¦
  76. ______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯¯¯¦¦¦¦¦¦¦¦_¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  77. _______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  78. _______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  79. _______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  80. _______¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  81. ________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  82. ________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  83. _________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  84. _________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  85. __________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  86. ___________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  87. ____________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  88. _____________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  89. ______________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  90. _______________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  91. ________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  92. _________________¯¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  93. __________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  94. ________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  95. ________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  96. ________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  97. _________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¯
  98. __________________¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
  99. ___________________¦¦¦¦¦¦¦¦¦¦¦¦¯
  100. ____________________¯¦¦¦¦¦¦¦¦¦¯
  101. ______________________¯¦¦¦¦¦¦¦
  102. ________________________¯¯¦¦¦
  103. ____________________________¯
  104.  
  105. #################################################################################################################################################################################
  106. # #### ######## ####### ## ## ######## ######## ## ## ######## ## ## ## ## ### ######## ###### ## ## ## ## ## ######## #
  107. # ## ## ## ## ## ### ## ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ### ### ## ## ## #
  108. # ## ## ## ## ## #### ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## #### #### ## ## ## #
  109. # ## ## ## ## ## ## ## ## ## ###### ## ## ###### ## ## ## ## ## ## ## ## ## ## ######### ## ### ## ## ######## #
  110. # ## ## ## ## ## ## #### ## ## ## ## ## ## #### ## ## ## ######### ## ## ## ## ## ## ## ## #
  111. # ## ## ## ## ## ## ### ## ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
  112. # #### ######## ####### ## ## ## ######## ### ######## ## ## ### ### ## ## ## ###### ## ## ## ## ######## ## #
  113. #################################################################################################################################################################################
  114. # I DON'T EVEN FUCKING WATCH THAT SHIT ANYMORE. #
  115. #################################################################################################################################################################################
  116. ]]--
  117.  
  118. if file.Find( "lua/bin/gmcl_spreadthebutter_win32.dll", "MOD" ) then
  119. require( "spreadthebutter" )
  120. else
  121. MsgC(Color(255,0,0,255), "gmcl_spreadthebutter wasn't installed correctly.")
  122. return
  123. end
  124.  
  125. -- Menu colors
  126. local fg = Color(0,150,250,255)
  127. local bg = Color(0,0,0,255)
  128.  
  129. -- Wallhack color
  130. local WhCol = Color(255,255,255,255)
  131.  
  132. local pony = {}
  133. local vars = {}
  134.  
  135. pony.cones = {}
  136. pony.name = "PonyHack"
  137. pony.version = "3.0.0"
  138. pony.author = " Kawai Senpai - I'mPopQwZz"
  139. pony.prefix = "[PonyHack]"
  140.  
  141. surface.CreateFont( "PonyFont", {
  142. font = "Arial",
  143. size = 15
  144. } )
  145.  
  146. surface.CreateFont( "PonyFont_n", {
  147. font = "Arial",
  148. size = 30
  149. } )
  150.  
  151. require("hook")
  152.  
  153. local LocalPlayer = LocalPlayer
  154. local math = math
  155. local draw = draw
  156. local player = player
  157. local render = render
  158. local pairs = pairs
  159. local cam = cam
  160. local table = table
  161. local RunConsoleCommand = RunConsoleCommand
  162. local ents = ents
  163. local ScrH = ScrH
  164. local ScrW = ScrW
  165. local tostring = tostring
  166. local Color = Color
  167. local Angle = Angle
  168. local IsValid = IsValid
  169. local Vector = Vector
  170. local MASK_SHOT = MASK_SHOT
  171. local IN_ATTACK = IN_ATTACK
  172. local KEY_SPACE = KEY_SPACE
  173. local KEY_E = KEY_E
  174. local _R = debug.getregistry()
  175. local me = LocalPlayer()
  176. local attacking = false
  177.  
  178. pony.cones["weapon_pistol"] = Vector(0.01,0.01,0)
  179. pony.cones["weapon_smg1"] = Vector(0.04362,0.04362,0)
  180. pony.cones["weapon_ar2"] = Vector(0.02618,0.02618,0)
  181.  
  182.  
  183. local tempr = table.Copy( _R )
  184. _R.Entity.FireBullets = function( ent, bullet )
  185. if not pony.cones[me:GetActiveWeapon():GetClass()] || pony.cones[me:GetActiveWeapon():GetClass()] != bullet.Spread then
  186. pony.cones[me:GetActiveWeapon():GetClass()] = bullet.Spread
  187. end
  188. return tempr.Entity.FireBullets( ent, bullet )
  189. end
  190.  
  191. function pony.print(txt)
  192. return MsgC( Color(255,0,0,255), pony.prefix, Color(255,255,255,255), " " .. txt .. "\n")
  193. end
  194.  
  195. function pony.drawtext(txt,x,y,col)
  196.  
  197. if !col then
  198. col = Color(255,255,255,255)
  199. end
  200.  
  201. draw.SimpleTextOutlined( txt, "PonyFont", x, y, col, TEXT_ALIGN_LEFT, TEXT_ALIGN_LEFT, 1, Color(0,0,0,255) )
  202. end
  203.  
  204.  
  205. function pony.distance(v1,v2)
  206.  
  207. v1 = v1:LengthSqr()
  208. v2 = v2:LengthSqr()
  209.  
  210. local distance = math.Round( v1 - v2 )
  211. distance = distance * 0.001
  212.  
  213. if distance < 0 then
  214. distance = -distance
  215. end
  216.  
  217. return distance
  218.  
  219. end
  220.  
  221. local old_angs = nil
  222. function pony.getfakeangle()
  223.  
  224. if old_angs != nil then
  225. return old_angs
  226. end
  227.  
  228. return Angle(me:EyeAngles().p,me:EyeAngles().y, me:EyeAngles().r)
  229.  
  230. end
  231.  
  232. function pony.isvisible(target)
  233.  
  234. local limb = vars["aimbot.limb"]
  235.  
  236. if vars["aimbot.bodyaim"] then
  237. limb = "chest"
  238. end
  239.  
  240. local target_head = target:LookupAttachment( limb )
  241. local headpos
  242.  
  243. if target_head and target:GetAttachment(target_head) then
  244. headpos = target:GetAttachment(target_head).Pos
  245. end
  246.  
  247. local StartPos = me:GetShootPos()
  248.  
  249. local tr = {}
  250. tr.start = StartPos
  251. tr.endpos = headpos or (target:GetPos() + Vector(0,0,16))
  252. tr.mask = MASK_SHOT
  253. tr.filter = function( ent )
  254. return !ent:IsPlayer()
  255. end
  256.  
  257. local trace = util.TraceLine( tr )
  258.  
  259. if trace.Hit then return false else return true end
  260.  
  261. end
  262.  
  263. function pony.addhook(name,name2,func)
  264. local hidden_name = util.CRC( name2 )
  265. hook.Add(name,hidden_name,func)
  266. end
  267.  
  268. function pony.dormant(ent)
  269.  
  270. if #player.GetAll() >= 15 then
  271. return ent:IsDormant()
  272. else
  273. return false
  274. end
  275.  
  276. end
  277.  
  278. function pony.closest(ents)
  279.  
  280. local ent_distances = {}
  281.  
  282. for i = 1, #ents do
  283.  
  284. v = ents[i]
  285. ent_distances[i] = pony.distance( me:GetPos(), v:GetPos() )
  286. i = i+1
  287.  
  288. end
  289.  
  290. local closest = math.min( unpack( ent_distances ) )
  291.  
  292. for i = 1, #ent_distances do
  293.  
  294. v = ent_distances[i]
  295.  
  296. if closest == v then
  297. return ents[i]
  298. end
  299.  
  300. i = i+1
  301.  
  302. end
  303.  
  304. return nil
  305.  
  306. end
  307.  
  308. function pony.attack(cmd)
  309.  
  310. local wep = me:GetActiveWeapon()
  311. if IsValid(wep) and wep.Primary and (wep.Primary.Automatic == true) then
  312. cmd:SetButtons( bit.bor(cmd:GetButtons(), IN_ATTACK ) )
  313. attacking = true
  314. else
  315. if attacking then
  316. cmd:RemoveKey( IN_ATTACK )
  317. attacking = false
  318. else
  319. cmd:SetButtons( bit.bor(cmd:GetButtons(), IN_ATTACK ) )
  320. attacking = true
  321. end
  322. end
  323.  
  324. end
  325.  
  326. vars["esp.distance"] = 5000
  327. vars["esp.players"] = false
  328. vars["esp.entity"] = false
  329. vars["esp.ents"] = {"money_printer", "spawned_money", "spawned_shipment"}
  330. vars["esp.staff"] = false
  331. vars["esp.crosshair"] = false
  332. vars["esp.hpbar"] = false
  333. vars["esp.fillbox"] = false
  334. vars["esp.teamcolor"] = false
  335.  
  336. vars["aimbot.enabled"] = false
  337. vars["aimbot.limb"] = "eyes"
  338. vars["aimbot.silent"] = false
  339. vars["aimbot.friends"] = false
  340. vars["aimbot.babygod"] = false
  341. vars["aimbot.noclip"] = false
  342. vars["aimbot.team"] = false
  343. vars["aimbot.rage"] = false
  344. vars["aimbot.nospread"] = false
  345. vars["aimbot.bodyaim"] = false
  346.  
  347. vars["misc.bhop"] = true
  348. vars["misc.fastshoot"] = false
  349. vars["misc.norecoil"] = false
  350.  
  351. pony.addhook("HUDPaint", "player.wallhack", function()
  352.  
  353. if !vars["esp.players"] then
  354. return
  355. end
  356.  
  357. for _,v in pairs( player.GetAll() ) do
  358.  
  359. if v != me and !pony.dormant(v) and v:Alive() then
  360.  
  361. local min = (v:GetPos() + Vector(0, 0, 1)):ToScreen();
  362. local max = (v:GetPos() + Vector(0, 0, 70)):ToScreen();
  363. local hit = (min.y - max.y);
  364. local wid = (hit / 2.5)
  365.  
  366. local Pos = max.y;
  367.  
  368. local col
  369. if vars["esp.teamcolor"] then
  370. col = team.GetColor( v:Team() )
  371. else
  372. col = WhCol
  373. end
  374.  
  375. surface.SetDrawColor(col)
  376. surface.DrawOutlinedRect(max.x - (wid / 2), max.y, wid, hit);
  377.  
  378. surface.SetDrawColor( bg )
  379. surface.DrawOutlinedRect(max.x - (wid / 2) - 1, max.y - 1, wid + 2, hit + 2);
  380. surface.DrawOutlinedRect(max.x - (wid / 2) + 1, max.y + 1, wid - 2, hit - 2);
  381.  
  382. draw.SimpleText(v:Nick(), "BudgetLabel", max.x + (wid / 2) + 5, Pos, Color(255, 255, 255, 255))
  383. Pos = Pos + 12;
  384.  
  385. draw.SimpleText("HP:"..v:Health(), "BudgetLabel", max.x + (wid / 2) + 5, Pos, Color(255, 255, 255, 255))
  386. Pos = Pos + 12;
  387.  
  388. if vars["esp.fillbox"] then
  389. draw.RoundedBox(0, max.x - (wid/2) + 1, max.y + 1, wid-2, hit-2, Color(col.r,col.g,col.b,50))
  390. end
  391.  
  392. if vars["esp.hpbar"] then
  393. draw.RoundedBox(0, max.x - (wid/1.5), max.y, (wid-2)/10 + 2, hit, Color(0,0,0,255))
  394. draw.RoundedBox(0, max.x - (wid/1.5) + 1, max.y + 1, (wid-2)/10, (hit-2)*0.01 * v:Health(), Color(0,200,0,255))
  395. end
  396.  
  397. end
  398.  
  399. end
  400.  
  401.  
  402. end)
  403.  
  404.  
  405. pony.addhook("HUDPaint", "wallhack.entities", function()
  406.  
  407. if !vars["esp.entity"] then
  408. return
  409. end
  410.  
  411. for k,v in pairs(ents.GetAll()) do
  412.  
  413. if table.HasValue(vars["esp.ents"], v:GetClass()) and ( pony.distance( me:GetPos(), v:GetPos() ) <= vars["esp.distance"] ) and !v:IsDormant() then
  414.  
  415. surface.SetFont("PonyFont")
  416. local class = v:GetClass()
  417. local classize = surface.GetTextSize(class)
  418. local posy = v:GetPos():ToScreen()
  419.  
  420. cam.Start3D()
  421. cam.IgnoreZ(true)
  422. render.MaterialOverride(Material("models/debug/debugwhite"))
  423. render.SuppressEngineLighting( true )
  424.  
  425. local col = WhCol
  426.  
  427. render.SetColorModulation( col.r/255, col.g/255, col.b/255 )
  428. v:DrawModel()
  429. render.SetColorModulation( 1, 1, 1 )
  430.  
  431. render.SuppressEngineLighting( false )
  432. render.MaterialOverride(0)
  433. cam.IgnoreZ(false)
  434.  
  435. cam.End3D()
  436.  
  437. pony.drawtext(class, posy.x - classize*0.5,posy.y)
  438.  
  439. end
  440.  
  441. end
  442.  
  443. end)
  444.  
  445. local safegroups = { -- Groups that shouldn't be considered as 'staff'
  446. "user",
  447. "default",
  448. "vip",
  449. "member",
  450. "regular"
  451. }
  452.  
  453. pony.addhook("HUDPaint", "wallhack.staff", function()
  454.  
  455. if !vars["esp.staff"] then
  456. return
  457. end
  458.  
  459. local staffs = 0
  460.  
  461. for k,v in pairs(player.GetAll()) do
  462.  
  463. if !table.HasValue(safegroups, v:GetUserGroup()) then
  464. staffs = staffs + 1
  465. end
  466.  
  467. end
  468.  
  469. pony.drawtext("Possible staff members online: " .. tostring( staffs ), 5,5)
  470.  
  471. end)
  472.  
  473. pony.addhook("HUDPaint", "wallhack.crosshair", function()
  474.  
  475. if !vars["esp.crosshair"] then
  476. return
  477. end
  478.  
  479. local x = ScrW()*0.5
  480. local y = ScrH()*0.5
  481.  
  482. surface.SetDrawColor( Color(255,255,255) )
  483.  
  484.  
  485. local wep = me:GetActiveWeapon()
  486. local gap
  487.  
  488. if wep and wep.Primary and wep.Primary.Spread then
  489. gap = wep.Primary.Spread * (x)
  490. else
  491. gap = 5
  492. end
  493.  
  494. local length = gap + 5
  495.  
  496. surface.DrawLine( x - length, y, x - gap, y )
  497. surface.DrawLine( x + length, y, x + gap, y )
  498.  
  499. surface.DrawLine( x, y - length, x, y - gap )
  500. surface.DrawLine( x, y + length, x, y + gap )
  501.  
  502. surface.SetDrawColor( WhCol )
  503.  
  504. gap = 0
  505. length = 5
  506.  
  507. surface.DrawLine( x - length, y, x - gap, y )
  508. surface.DrawLine( x + length, y, x + gap, y )
  509.  
  510. surface.DrawLine( x, y - length, x, y - gap )
  511. surface.DrawLine( x, y + length, x, y + gap )
  512.  
  513.  
  514.  
  515. end)
  516.  
  517. local function hl2()
  518. local class = me:GetActiveWeapon():GetClass()
  519. if class == "weapon_pistol" then return true end
  520. if class == "weapon_357" then return true end
  521. if class == "weapon_smg1" then return true end
  522. if class == "weapon_ar2" then return true end
  523. return false
  524. end
  525.  
  526. local function punch()
  527. if me:GetActiveWeapon() == nil then return Angle() end
  528. if string.find(string.lower(me:GetActiveWeapon():GetClass()), "fas2") or hl2() then
  529. return me:GetPunchAngle()
  530. end
  531. return Angle()
  532. end
  533.  
  534. local target = nil
  535. local aa = false
  536. local reloading = false
  537. pony.addhook("CreateMove", "aimbot", function(cmd)
  538.  
  539. if !me:Alive() then
  540. return
  541. end
  542.  
  543. if reloading then
  544. cmd:RemoveKey(IN_RELOAD)
  545. reloading = false
  546. return
  547. end
  548.  
  549. if me:GetActiveWeapon() and me:GetActiveWeapon().Clip1 and me:GetActiveWeapon():Clip1() <= 0 then
  550. cmd:SetButtons( bit.bor(cmd:GetButtons(), IN_RELOAD) )
  551. reloading = true
  552. end
  553.  
  554. local wep = LocalPlayer():GetActiveWeapon()
  555.  
  556. if attacking and IsValid(wep) and wep.Primary and wep.Primary.Automatic then
  557. cmd:RemoveKey(IN_ATTACK)
  558. attacking = false
  559. end
  560.  
  561. if !vars["aimbot.enabled"] then
  562. target = nil
  563. return
  564. end
  565.  
  566.  
  567. if old_angs then
  568.  
  569. if vars["aimbot.silent"] then
  570. cmd:SetViewAngles(old_angs)
  571. cmd:RemoveKey(IN_ATTACK)
  572. end
  573.  
  574. old_angs = nil
  575.  
  576. return
  577.  
  578. end
  579.  
  580. if !IsValid(target) or !target:Alive() or !pony.isvisible(target) then
  581.  
  582. local possible_targets = {}
  583.  
  584. for i = 1, #player.GetAll() do
  585.  
  586. v = player.GetAll()[i]
  587. i = i+1
  588.  
  589. if v != me and pony.isvisible(v) and !v:IsDormant() and v:Alive() then
  590.  
  591. if (vars["aimbot.friends"] and v:GetFriendStatus() == "friend") or
  592. (vars["aimbot.babygod"] and v:GetColor().a != 255) or
  593. (vars["aimbot.noclip"] and v:GetMoveType() == MOVETYPE_NOCLIP) or
  594. (vars["aimbot.team"] and v:Team() == me:Team()) then
  595. else
  596.  
  597. table.insert(possible_targets, v)
  598.  
  599. end
  600.  
  601. end
  602.  
  603.  
  604. end
  605.  
  606. local ent = pony.closest(possible_targets)
  607.  
  608. if not IsValid(ent) then
  609. return
  610. end
  611.  
  612. target = ent
  613.  
  614. end
  615.  
  616. if cmd:KeyDown( IN_ATTACK ) or vars["aimbot.rage"] then
  617.  
  618. old_angs = cmd:GetViewAngles()
  619.  
  620. local limb = vars["aimbot.limb"]
  621.  
  622. if vars["aimbot.bodyaim"] then
  623. limb = "chest"
  624. end
  625.  
  626. if vars["aimbot.rage"] then
  627. pony.attack(cmd)
  628. end
  629.  
  630. local angle = target:LookupAttachment( limb )
  631. local atch = target:GetAttachment( angle )
  632.  
  633. if angle and atch then
  634. angle = ( atch.Pos - me:GetShootPos() ):Angle()
  635. else
  636. angle = ( target:GetPos() + Vector(0,0,16) - me:GetShootPos() ):Angle()
  637. end
  638.  
  639. if vars["aimbot.nospread"] and IsValid(me:GetActiveWeapon()) and pony.cones[ me:GetActiveWeapon():GetClass() ] then
  640. angle = DS_manipulateShot(DS_md5PseudoRandom(cmd:CommandNumber()), angle:Forward(), Vector(-pony.cones[me:GetActiveWeapon():GetClass()].x, -pony.cones[me:GetActiveWeapon():GetClass()].y, 0)):Angle();
  641. cmd:SetViewAngles( angle - punch() )
  642. else
  643. cmd:SetViewAngles( angle - punch() )
  644. end
  645.  
  646. if vars["aimbot.silent"] then -- Thanks to NanoCat I was able to correct fake angle <3
  647.  
  648. local ang = angle - pony.getfakeangle()
  649.  
  650. local move = Vector( cmd:GetForwardMove(), cmd:GetSideMove(), 0 )
  651. local vec = ( move:Angle() + ( cmd:GetViewAngles() - pony.getfakeangle() ) ):Forward() * move:Length()
  652.  
  653. cmd:SetForwardMove( vec[1] )
  654. cmd:SetSideMove( vec[2] )
  655.  
  656. end
  657.  
  658. end
  659.  
  660.  
  661.  
  662. end)
  663.  
  664. local spreading = nil
  665. pony.addhook("CreateMove", "nospread", function(cmd)
  666.  
  667. if vars["aimbot.enabled"] then
  668. return
  669. end
  670.  
  671. if spreading then
  672. cmd:SetViewAngles(spreading)
  673. spreading = nil
  674. cmd:RemoveKey(IN_ATTACK)
  675. return
  676. end
  677.  
  678. local angle = me:EyeAngles()
  679. old_angs = angle
  680.  
  681. if vars["aimbot.nospread"] and IsValid(me:GetActiveWeapon()) and pony.cones[ me:GetActiveWeapon():GetClass() ] then
  682. spreading = angle
  683. angle = DS_manipulateShot(DS_md5PseudoRandom(cmd:CommandNumber()), angle:Forward(), Vector(-pony.cones[me:GetActiveWeapon():GetClass()].x, -pony.cones[me:GetActiveWeapon():GetClass()].y, 0)):Angle();
  684. cmd:SetViewAngles( angle )
  685. end
  686.  
  687.  
  688. end)
  689.  
  690. pony.addhook("Think", "norecoil", function()
  691.  
  692. if !vars["misc.norecoil"] then return end
  693.  
  694. local weapon = me:GetActiveWeapon()
  695.  
  696. if !IsValid(weapon) then
  697. return
  698. end
  699.  
  700. if weapon.Primary then
  701.  
  702. if weapon.Primary.Recoil then
  703. weapon.Primary.Recoil = 0
  704. end
  705.  
  706. if weapon.Primary.KickUp then
  707. weapon.Primary.KickUp = 0
  708. weapon.Primary.KickDown = 0
  709. weapon.Primary.KickHorizontal = 0
  710. end
  711.  
  712. end
  713.  
  714.  
  715. end)
  716.  
  717. pony.addhook("CalcView", "fakeview", function( ply, pos, ang, fov, nearZ, farZ )
  718.  
  719. local view = {}
  720.  
  721. view.origin = pos
  722. view.angles = pony.getfakeangle()
  723. view.fov = fov
  724.  
  725. return view
  726.  
  727. end)
  728.  
  729. pony.addhook("CalcViewModelView", "fakeview_weapon", function( wep, vm, oldPos, oldAng, pos, ang )
  730.  
  731. return pos, pony.getfakeangle()
  732.  
  733. end)
  734.  
  735. pony.addhook("CreateMove", "bhop", function(cmd)
  736.  
  737. if !vars["misc.bhop"] then return end
  738.  
  739. if me:IsOnGround() and input.IsKeyDown( KEY_SPACE ) then
  740. cmd:SetButtons( bit.bor(cmd:GetButtons(), IN_JUMP) )
  741. else
  742. cmd:RemoveKey(IN_JUMP)
  743. end
  744.  
  745. end)
  746.  
  747. local attacking = false
  748. pony.addhook("CreateMove", "fastshoot", function(cmd)
  749.  
  750. if !vars["misc.fastshoot"] then return end
  751.  
  752. if !input.IsMouseDown( MOUSE_LEFT ) then return end
  753.  
  754. attacking = !attacking
  755.  
  756. if attacking then
  757. cmd:SetButtons( bit.bor( cmd:GetButtons(), IN_ATTACK ) )
  758. else
  759. cmd:RemoveKey(IN_ATTACK)
  760. end
  761.  
  762.  
  763. end)
  764.  
  765. function pony.menu()
  766.  
  767. local function btn_paint(but)
  768.  
  769. function but.OnCursorEntered()
  770. but.hover = true
  771. but:SetTextColor(bg)
  772. end
  773.  
  774. function but.OnCursorExited()
  775. but.hover = false
  776. but:SetTextColor(fg)
  777. end
  778.  
  779. function but.Paint()
  780. but:SetTextColor(bg)
  781. draw.RoundedBox(0, 1, 1, but:GetWide() - 2, but:GetTall() - 2, fg)
  782.  
  783. if but.hover then
  784. draw.RoundedBox(0, 0, 0, but:GetWide(), but:GetTall(), fg)
  785. end
  786.  
  787. end
  788.  
  789. end
  790.  
  791.  
  792.  
  793. local mainframe_items = {}
  794.  
  795. local backpanel = vgui.Create("DFrame")
  796. backpanel:SetSize(512,256)
  797. backpanel:Center()
  798. backpanel:MakePopup()
  799. backpanel:SetTitle("")
  800. backpanel:ShowCloseButton(false)
  801.  
  802. local function CreateBox(var,txt)
  803. local but = vgui.Create("DButton", backpanel)
  804.  
  805. but.txt = txt
  806.  
  807. function but.DoClick()
  808. vars[var] = !vars[var]
  809. end
  810.  
  811. but:SetText("")
  812.  
  813. function but.Paint()
  814. draw.RoundedBox(0, 0, 0, 18, 18, fg)
  815. draw.RoundedBox(0, 1, 1, 16, 16, bg)
  816.  
  817. if vars[var] then
  818. draw.RoundedBox(0, 2, 2, 14, 14, fg)
  819. end
  820.  
  821. surface.SetFont("PonyFont")
  822. local txt_w = surface.GetTextSize(but.txt)
  823.  
  824. draw.DrawText( but.txt, "PonyFont", 25 + txt_w/2, 2, Color(255,255,255,255), 1 )
  825.  
  826. end
  827.  
  828. but:SetTall(18)
  829.  
  830. return but
  831. end
  832.  
  833. local items
  834.  
  835. local close = vgui.Create("DButton", backpanel)
  836. close:SetSize(30,20)
  837. close:SetPos(backpanel:GetWide() - 32, 2)
  838. close:SetText("X")
  839. close:SetTextColor( Color(255,255,255,255) )
  840.  
  841. function close.Paint()
  842. surface.SetDrawColor(bg)
  843. surface.DrawOutlinedRect( 0, 0, close:GetWide(), close:GetTall() )
  844. surface.SetDrawColor( Color(200,0,0,255) )
  845. surface.DrawRect( 1, 1, close:GetWide()-2, close:GetTall() - 2 )
  846. end
  847.  
  848. function close.DoClick()
  849. backpanel:Remove()
  850. end
  851.  
  852. function backpanel.Paint()
  853. surface.SetDrawColor(bg)
  854. surface.DrawOutlinedRect( 0, 0, backpanel:GetWide(), backpanel:GetTall() )
  855. surface.SetDrawColor(fg)
  856. surface.DrawRect( 1, 1, backpanel:GetWide()-2, 22 )
  857. surface.SetDrawColor(Color(0,0,0,250))
  858. surface.DrawRect( 1, 23, backpanel:GetWide()-2, backpanel:GetTall() - 23 )
  859.  
  860. surface.SetDrawColor(fg)
  861.  
  862. surface.SetFont("PonyFont")
  863. local txt = "BitchBot v3 - Only For You Aaryn! :)"
  864. local txt_w = surface.GetTextSize(txt)
  865. draw.DrawText(txt, "PonyFont", backpanel:GetWide()*0.5, 4, bg, 1)
  866.  
  867. end
  868.  
  869. local mainframe = vgui.Create("DForm", backpanel)
  870. mainframe:SetPos(2, 25)
  871. mainframe:SetSize(backpanel:GetWide() - 80, 50)
  872. mainframe:SetName("Options...")
  873.  
  874. local function AddItem(item)
  875. mainframe:AddItem(item)
  876. table.insert(mainframe_items, item)
  877. end
  878.  
  879. function mainframe.Paint()
  880. end
  881.  
  882. local aimbot = vgui.Create("DButton", backpanel)
  883. aimbot:SetSize(70,20)
  884. aimbot:SetPos(backpanel:GetWide() - 75, 25 )
  885. aimbot:SetText("Aimbot")
  886.  
  887. function aimbot.DoClick()
  888.  
  889. surface.PlaySound("HL1/fvox/blip.wav")
  890.  
  891. mainframe:Clear()
  892.  
  893. local but = CreateBox("aimbot.enabled", "Aimbot enabled")
  894. mainframe:AddItem(but)
  895.  
  896. local but = CreateBox("aimbot.rage", "Autofire")
  897. mainframe:AddItem(but)
  898.  
  899. local but = CreateBox("aimbot.silent", "Silent aim")
  900. mainframe:AddItem(but)
  901.  
  902. local but = CreateBox("aimbot.team", "Ignore team")
  903. mainframe:AddItem(but)
  904.  
  905. local but = CreateBox("aimbot.friends", "Ignore friends")
  906. mainframe:AddItem(but)
  907.  
  908. local but = CreateBox("aimbot.babygod", "Ignore god")
  909. mainframe:AddItem(but)
  910.  
  911. local but = CreateBox("aimbot.bodyaim", "Body aim")
  912. mainframe:AddItem(but)
  913.  
  914. end
  915.  
  916. btn_paint(aimbot)
  917.  
  918. local visual = vgui.Create("DButton", backpanel)
  919. visual:SetSize(70,20)
  920. visual:SetPos(backpanel:GetWide() - 75, 25 + 25 )
  921. visual:SetText("Visual")
  922.  
  923. function visual.DoClick()
  924.  
  925. surface.PlaySound("HL1/fvox/blip.wav")
  926.  
  927. mainframe:Clear()
  928.  
  929. local but = CreateBox("esp.players", "Show players")
  930. mainframe:AddItem(but)
  931.  
  932. local but = CreateBox("esp.hpbar", "Health bars")
  933. mainframe:AddItem(but)
  934.  
  935. local but = CreateBox("esp.fillbox", "Fill box")
  936. mainframe:AddItem(but)
  937.  
  938.  
  939. local but = CreateBox("esp.teamcolor", "Use team color")
  940. mainframe:AddItem(but)
  941.  
  942. local but = CreateBox("esp.crosshair", "Crosshair")
  943. mainframe:AddItem(but)
  944.  
  945. local but = CreateBox("esp.entity", "Show entities")
  946. mainframe:AddItem(but)
  947.  
  948. local but = vgui.Create("DButton", mainframe)
  949. mainframe:AddItem(but)
  950. but:SetText("Entity list ->")
  951. function but.Paint()
  952. draw.RoundedBox(0, 0, 0, but:GetWide(), but:GetTall(), fg)
  953. end
  954. but:SetTextColor(bg)
  955.  
  956. function but.DoClick()
  957.  
  958. local function btn_paint(but)
  959.  
  960. function but.OnCursorEntered()
  961. but.hover = true
  962. but:SetTextColor(bg)
  963. end
  964.  
  965. function but.OnCursorExited()
  966. but.hover = false
  967. but:SetTextColor(fg)
  968. end
  969.  
  970. function but.Paint()
  971. but:SetTextColor(fg)
  972. draw.RoundedBox(0, 0, 0, but:GetWide(), but:GetTall(), bg)
  973. draw.RoundedBox(0, 1, 1, but:GetWide() - 2, but:GetTall() - 2, bg)
  974.  
  975. if but.hover then
  976. but:SetTextColor(bg)
  977. draw.RoundedBox(0, 0, 0, but:GetWide(), but:GetTall(), fg)
  978. end
  979.  
  980. end
  981.  
  982. end
  983.  
  984. local function view_paint(view)
  985.  
  986. function view.Paint()
  987. draw.RoundedBox(0, 0, 0, view:GetWide(), view:GetTall(), fg)
  988. draw.RoundedBox(0, 1, 1, view:GetWide() - 2, view:GetTall() - 2, bg)
  989. end
  990.  
  991. end
  992.  
  993.  
  994. local backpanel = vgui.Create("DFrame")
  995. backpanel:SetSize(512,256)
  996. backpanel:Center()
  997. backpanel:MakePopup()
  998. backpanel:SetDraggable(true)
  999. backpanel:SetTitle("Entity list")
  1000.  
  1001. function backpanel.Paint()
  1002. draw.RoundedBox(2, 0, 0, backpanel:GetWide(), backpanel:GetTall(), fg)
  1003. draw.RoundedBox(2, 1, 1, backpanel:GetWide() - 2, backpanel:GetTall() - 2, bg)
  1004. draw.RoundedBox(0, 0, 0, backpanel:GetWide(), 22, fg)
  1005. end
  1006.  
  1007. local view1 = vgui.Create("DListView", backpanel)
  1008. view1:SetPos(5,30)
  1009. view1:SetSize(backpanel:GetWide()/2 - 30, backpanel:GetTall()-35)
  1010. local view = view1:AddColumn("Not on ESP")
  1011. view1:SetMultiSelect( false )
  1012.  
  1013. view_paint(view1)
  1014.  
  1015. local entities = {}
  1016. for k,v in pairs(ents.GetAll()) do
  1017. local class = v:GetClass()
  1018. if !table.HasValue(entities,class) then
  1019. table.insert(entities,class)
  1020. view1:AddLine(class)
  1021. end
  1022. end
  1023.  
  1024. for k,v in pairs(view1:GetLines()) do
  1025. function v.Paint()
  1026. local val = v:GetValue()
  1027. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, bg)
  1028. v.Columns[1]:SetTextColor(fg)
  1029.  
  1030. if v:IsSelected() then
  1031. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, fg)
  1032. v.Columns[1]:SetTextColor(bg)
  1033. end
  1034.  
  1035. end
  1036. end
  1037.  
  1038. function view.Header.Paint()
  1039. draw.RoundedBox(0, 0, 0, view.Header:GetWide(), view.Header:GetTall(), fg)
  1040. draw.RoundedBox(0, 1, 1, view.Header:GetWide() - 2, view.Header:GetTall() - 2, bg)
  1041. view.Header:SetTextColor(fg)
  1042. end
  1043.  
  1044. local view2 = vgui.Create("DListView", backpanel)
  1045. view2:SetPos(backpanel:GetWide() - view1:GetWide() - 5,30)
  1046. view2:SetSize(backpanel:GetWide()/2 - 30, backpanel:GetTall()-35)
  1047. view2:SetMultiSelect( false )
  1048. local view = view2:AddColumn("On ESP")
  1049. for k,v in pairs(vars["esp.ents"]) do
  1050. view2:AddLine(v)
  1051. end
  1052.  
  1053. view_paint(view2)
  1054.  
  1055. for k,v in pairs(view2:GetLines()) do
  1056. function v.Paint()
  1057. local val = v:GetValue()
  1058. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, bg)
  1059. v.Columns[1]:SetTextColor(fg)
  1060.  
  1061. if v:IsSelected() then
  1062. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, fg)
  1063. v.Columns[1]:SetTextColor(bg)
  1064. end
  1065.  
  1066. end
  1067. end
  1068.  
  1069. local function refresh()
  1070.  
  1071. if IsValid(view2) then
  1072. view2:Clear()
  1073. for k,v in pairs(vars["esp.ents"]) do
  1074. view2:AddLine(v)
  1075. end
  1076. end
  1077.  
  1078. entities = {}
  1079.  
  1080. if IsValid(view1) then
  1081. view1:Clear()
  1082.  
  1083. for k,v in pairs(ents.GetAll()) do
  1084. local class = v:GetClass()
  1085.  
  1086. if !table.HasValue(entities,class) then
  1087. table.insert(entities,class)
  1088. view1:AddLine(class)
  1089. end
  1090.  
  1091. end
  1092.  
  1093. end
  1094.  
  1095.  
  1096. for k,v in pairs(view2:GetLines()) do
  1097. function v.Paint()
  1098. local val = v:GetValue()
  1099. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, bg)
  1100. v.Columns[1]:SetTextColor(fg)
  1101.  
  1102. if v:IsSelected() then
  1103. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, fg)
  1104. v.Columns[1]:SetTextColor(bg)
  1105. end
  1106.  
  1107. end
  1108. end
  1109.  
  1110. for k,v in pairs(view1:GetLines()) do
  1111. function v.Paint()
  1112. local val = v:GetValue()
  1113. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, bg)
  1114. v.Columns[1]:SetTextColor(fg)
  1115.  
  1116. if v:IsSelected() then
  1117. draw.RoundedBox(0, 1, 1, v:GetWide() - 2, v:GetTall() - 2, fg)
  1118. v.Columns[1]:SetTextColor(bg)
  1119. end
  1120.  
  1121. end
  1122. end
  1123.  
  1124.  
  1125. end
  1126.  
  1127. function view.Header.Paint()
  1128. draw.RoundedBox(0, 0, 0, view.Header:GetWide(), view.Header:GetTall(), fg)
  1129. draw.RoundedBox(0, 1, 1, view.Header:GetWide() - 2, view.Header:GetTall() - 2, bg)
  1130. view.Header:SetTextColor(fg)
  1131. end
  1132.  
  1133. local but = vgui.Create("DButton", backpanel)
  1134. but:SetPos(view1:GetWide() + 10, backpanel:GetTall()/2 - 10)
  1135. but:SetSize(40,20)
  1136. but:SetText("->")
  1137. btn_paint(but)
  1138. function but.DoClick()
  1139. local class = view1:GetSelected()[1].Columns[1]:GetValue() -- Something tells me I'm overcomplicating it ^.^
  1140.  
  1141. if !table.HasValue(vars["esp.ents"], class) then
  1142. table.insert(vars["esp.ents"],class)
  1143. end
  1144.  
  1145. refresh()
  1146.  
  1147. end
  1148.  
  1149. local but = vgui.Create("DButton", backpanel)
  1150. but:SetPos(view1:GetWide() + 10, backpanel:GetTall()/2 + 15)
  1151. but:SetSize(40,20)
  1152. but:SetText("<-")
  1153. btn_paint(but)
  1154. function but.DoClick()
  1155. local class = view2:GetSelected()[1].Columns[1]:GetValue()
  1156.  
  1157. if table.HasValue(vars["esp.ents"], class) then
  1158. table.RemoveByValue(vars["esp.ents"],class)
  1159. end
  1160.  
  1161. refresh()
  1162.  
  1163. end
  1164.  
  1165. end
  1166.  
  1167. end
  1168.  
  1169. btn_paint(visual)
  1170.  
  1171. local misc = vgui.Create("DButton", backpanel)
  1172. misc:SetSize(70,20)
  1173. misc:SetPos(backpanel:GetWide() - 75, 25 + 25 + 25 )
  1174. misc:SetText("Misc")
  1175.  
  1176. btn_paint(misc)
  1177.  
  1178. function misc.DoClick()
  1179.  
  1180. surface.PlaySound("HL1/fvox/blip.wav")
  1181.  
  1182. mainframe:Clear()
  1183.  
  1184. local but = CreateBox("aimbot.nospread", "Spread compensation")
  1185. mainframe:AddItem(but)
  1186.  
  1187. local but = CreateBox("misc.bhop", "Bunny hop")
  1188. mainframe:AddItem(but)
  1189.  
  1190. local but = CreateBox("misc.fastshoot", "Auto pistol")
  1191. mainframe:AddItem(but)
  1192.  
  1193. local but = CreateBox("misc.norecoil", "No recoil")
  1194. mainframe:AddItem(but)
  1195.  
  1196. end
  1197.  
  1198. local settings = vgui.Create("DButton", backpanel)
  1199. settings:SetSize(70,20)
  1200. settings:SetPos(backpanel:GetWide() - 75, 25 + 25 + 25 + 25 )
  1201. settings:SetText("Settings")
  1202.  
  1203. btn_paint(settings)
  1204.  
  1205. function settings.DoClick()
  1206.  
  1207. surface.PlaySound("HL1/fvox/blip.wav")
  1208.  
  1209. mainframe:Clear()
  1210.  
  1211. local slider = vgui.Create("DColorMixer", backpanel)
  1212. mainframe:AddItem(slider)
  1213. slider:SetWangs(false)
  1214. slider:SetPalette(false)
  1215. slider:SetTall(120)
  1216. slider:SetAlphaBar(false)
  1217.  
  1218. local but = vgui.Create("DButton")
  1219. but:SetText("Menu color")
  1220.  
  1221. mainframe:AddItem(but)
  1222. function but.Paint()
  1223. draw.RoundedBox(0, 0, 0, but:GetWide(), but:GetTall(), fg)
  1224. end
  1225. but:SetTextColor(bg)
  1226.  
  1227. function but.DoClick()
  1228. local scol = slider:GetColor()
  1229. fg = Color( scol.r, scol.g, scol.b, 200 )
  1230. end
  1231.  
  1232. local but = vgui.Create("DButton")
  1233. but:SetText("Wallhack color")
  1234.  
  1235. mainframe:AddItem(but)
  1236. function but.Paint()
  1237. draw.RoundedBox(0, 0, 0, but:GetWide(), but:GetTall(), fg)
  1238. end
  1239. but:SetTextColor(bg)
  1240.  
  1241. function but.DoClick()
  1242. WhCol = slider:GetColor()
  1243. end
  1244.  
  1245.  
  1246. end
  1247.  
  1248. local credits = vgui.Create("DButton", backpanel)
  1249. credits:SetSize(70,20)
  1250. credits:SetPos(backpanel:GetWide() - 75, 25 + 25 + 25 + 25 + 25 )
  1251. credits:SetText("<3")
  1252.  
  1253. btn_paint(credits)
  1254.  
  1255. function credits.DoClick()
  1256.  
  1257. surface.PlaySound("HL1/fvox/blip.wav")
  1258.  
  1259. mainframe:Clear()
  1260.  
  1261. local txt = vgui.Create("RichText")
  1262. mainframe:AddItem(txt)
  1263. txt:SetTall(mainframe:GetTall())
  1264.  
  1265. txt:InsertColorChange(255,255,255,255)
  1266. txt:AppendText( "\nLove goes to the following people:\n\n" )
  1267. txt:AppendText( "Kawaii I'mPopQwZz\n" )
  1268. txt:AppendText( "HeX\n" )
  1269. txt:AppendText( "Jay\n" )
  1270. txt:AppendText( "WiseZombieKing\n" )
  1271. txt:AppendText( "NanoCat\n" )
  1272. txt:AppendText( "Trollaux\n" )
  1273.  
  1274. end
  1275.  
  1276. aimbot.DoClick()
  1277.  
  1278. end
  1279.  
  1280. concommand.Add("bitchbot", pony.menu)
  1281.  
  1282. local matOverlay = Material( "sprites/glow08" )
  1283. local matTraitor = Material( "sprites/dot" )
  1284. local twep = {"spiderman's_swep", "weapon_ttt_trait_defilibrator", "weapon_ttt_xbow", "weapon_ttt_dhook", "weapon_awp", "weapon_ttt_ak47", "weapon_jihadbomb", "weapon_ttt_knife", "weapon_ttt_c4", "weapon_ttt_decoy", "weapon_ttt_flaregun", "weapon_ttt_phammer", "weapon_ttt_push", "weapon_ttt_radio", "weapon_ttt_sipistol", "weapon_ttt_teleport", "weapon_ttt_awp", "weapon_mad_awp", "weapon_real_cs_g3sg1", "weapon_ttt_cvg_g3sg1", "weapon_ttt_g3sg1", "weapon_ttt_healthstation5", "weapon_ttt_sentry", "weapon_ttt_poison_dart", "weapon_ttt_trait_defibrillator"}
  1285.  
  1286. for _,v in pairs(player.GetAll()) do
  1287. v.HatTraitor = nil
  1288. end
  1289. for _,v in pairs(ents.GetAll()) do
  1290. v.HatESPTracked = nil
  1291. end
  1292.  
  1293. hook.Add("PostDrawOpaqueRenderables", "wire_animations_idle", function()
  1294. if GAMEMODE.round_state != ROUND_ACTIVE then
  1295. for _,v in pairs(player.GetAll()) do
  1296. v.HatTraitor = nil
  1297. end
  1298. for _,v in pairs(ents.GetAll()) do
  1299. v.HatESPTracked = nil
  1300. end
  1301. return
  1302. end
  1303. for _,v in pairs( ents.GetAll() ) do
  1304. if v and IsValid(v) and (table.HasValue(twep, v:GetClass()) and !v.HatESPTracked) then
  1305. local pl = v.Owner
  1306. if pl and IsValid(pl) and pl:IsTerror() then
  1307. if pl:IsDetective() then
  1308. v.HatESPTracked = true
  1309. else
  1310. v.HatESPTracked = true
  1311. pl.HatTraitor = true
  1312. chat.AddText( pl, Color(255,125,0), " is a ",Color(255,0,0), "TRAITOR",Color(255,125,0), " with a ",Color(255,0,0),v:GetClass().."!")
  1313. end
  1314. end
  1315. end
  1316. end
  1317.  
  1318.  
  1319. //Add a name for anyone we tracked
  1320. // cam.Start2D()
  1321. // local pos = (pl:GetPos()+Vector(0,0,100)):ToScreen()
  1322. // draw.DrawText( pl:Nick(), "ScoreboardText", pos['x'], pos['y'], team.GetColor( pl:Team() ), TEXT_ALIGN_CENTER )
  1323. // cam.End2D()
  1324. // end
  1325. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement