daily pastebin goal
42%
SHARE
TWEET

Shitcheat 4.10

Caliber_ Aug 16th, 2017 57 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --[[
  2. TODO LIST:
  3.  
  4. - automatic ACD for hl2rp
  5. - wait for robotboy to fix seteyeangles and setviewangles
  6. - somehow work the shitware menu into my menu
  7. ]]
  8.  
  9.  
  10. local defcon = { Menu = { t = {}; b = {}; c = 0}; Alive = {};}
  11. defcon.Normal           = {
  12.     aimbot                  = true;
  13.     aimbot_fov              = 5;
  14.     aimbot_friendly_fire    = true;
  15.     triggerbot              = false;
  16.     silent                  = false;
  17.    
  18.     esp_player              = true;
  19.     esp_player_dist         = 16000;
  20.     esp_player_showdist     = true;
  21.     esp_player_name         = true;
  22.     esp_player_rank         = true;
  23.     esp_player_health       = true;
  24.     esp_player_armor        = true;
  25.     esp_player_glow         = true;
  26.     boxESP                  = false;
  27.     chams                   = false;
  28.    
  29.     esp_entity              = true;
  30.     esp_entity_dist         = 16000;
  31.     propchams               = false;
  32.     entitychams             = false;
  33.    
  34.     flashlight_spam         = false;
  35.    
  36.     darkrp_money            = false;
  37.     darkrp_god              = false;
  38.    
  39.     ttt_deathnotifs         = true;
  40.     bhop_bhop               = true;
  41.     crosshair               = false;
  42.     velocity                = false;
  43.     lasereyes               = false;
  44.    
  45.     chatspam1               = false;
  46.     chatspam2               = false;
  47.     chatspam3               = false;
  48.     chatspam4               = false;
  49.    
  50.     cl_noclip               = false;
  51.    
  52.     pickupinradius          = false;
  53.     dupeinradius            = false;
  54. }
  55. defcon.Settings         = (file.Exists("d_settings.txt", "DATA") and util.JSONToTable(file.Read("d_settings.txt", "DATA"))) or defcon.Normal
  56. defcon.Entities         = (file.Exists("d_entities.txt", "DATA") and util.JSONToTable(file.Read("d_entities.txt", "DATA"))) or {}
  57. defcon.Whitelist        = (file.Exists("d_whitelist.txt", "DATA") and util.JSONToTable(file.Read("d_whitelist.txt", "DATA"))) or {}
  58. defcon.AimKey           = (file.Exists("d_aimkey.txt", "DATA") and tonumber(file.Read("d_aimkey.txt", "DATA"))) or KEY_LALT
  59.  
  60. --colors
  61.  
  62. red = Color(255,0,0,255);
  63. black = Color(0,0,0,255);
  64. green = Color(0,255,0,255);
  65. white = Color(255,255,255,255);
  66. blue = Color(0,0,255,255);
  67. cyan = Color(0,255,255,255);
  68. pink = Color(255,0,255,255);
  69. blue = Color(0,0,255,255);
  70. grey = Color(100,100,100,255);
  71. gold = Color(255,228,0,255);
  72. lightblue = Color(155,205,248);
  73. lightgreen = Color(174,255,0);
  74. iceblue = Color(116,187,251,255);
  75. orange = Color(255,165,0,255);
  76. brown = Color(112, 89, 50, 255);
  77. sc = Color(43, 128, 226, 255);
  78. sc2 = Color(43,140,226, 255);
  79.  
  80. --print shit
  81.  
  82. chat.AddText("")
  83. chat.AddText( sc2, "[Shitcheat] ", white, "Hack activated.")
  84. chat.AddText( sc2, "[Shitcheat] ", white, "To open the menu, press TAB and Q at the same time.")
  85. chat.AddText( sc2, "[Shitcheat] ", white, "The middle mouse button activates the triggerbot. ")
  86. chat.AddText( sc2, "[Shitcheat] ", white, "Left alt activates the aimbot.")
  87.  
  88. --menu display messages
  89.  
  90. defcon.Phrases              = {
  91.     "niggerniggerniggernigger";
  92.     "bob good is not so good";
  93.     "sheo is a kike";
  94.     "new shitcheat";
  95.     "better than snixzz!";
  96.     "100x better than snixzz";
  97.     "i hate niggers";
  98.     "suck my dick";
  99.     "donul trump";
  100.     "remove kebab";
  101.     "remember, no russian";
  102.     "'skiddie shit'";
  103.     "dirt shit nigger";
  104.     "how about you try spending a year of your life making a cheat";
  105.     "Made by the Madbluntz.rs Team";
  106.     "we need to nuke japan again";
  107.     "now with freecam";
  108.     "go fast eat ass";
  109.     "onion";
  110.     "[OOC]Johnny Nutmegg: you fucking suck dick bro";
  111.     "the fuck are you looking at";
  112.     "fucking eat shit kid";
  113.     "commies go home";
  114.     "tito is a dirty nigger";
  115.     "now with more dongs";
  116.     "north virginia battle falag isnt the confed flag";
  117.     "free forever, always.";
  118.     "the KKK is dead stop crying about it";
  119.     "doesn't support Æß¾";
  120.     "back to africa";
  121.     "if you voted for hillary delete system32";
  122.     "[LOOC]poop: hi";
  123.     "gulag";
  124.     "halgualuhglugaluaglhuaglhuaglhu";
  125.     "over 1000 lines of bullshit";
  126.     "remember to enable ESP";
  127.     "skype is shit";
  128.     "bent dick";
  129.     "nigger";
  130.     "minecraft used to be good";
  131.     "lets go back to 2011";
  132.     "not an argument";
  133.     "better than niggermenu";
  134.     "still using lua";
  135.     "better than gearmenu";
  136.     "personalized";
  137.     "who wants a free mbam key";
  138.     "remember kids, dont advertise.";
  139.     "madbluntz.rs - home of shitcheat";
  140.     "where my new england homies at";
  141.     "JSY3050PA";
  142.     "cuck";
  143.     "free gift card giveaway";
  144.     "exploding capacitors";
  145.     "Team AVO deserves ice cream";
  146.     "made with notepad++";
  147.     "made on microshit windon't 8.1";
  148.     "Pravi srpski ratni heroj";
  149.     "kosovo je srbija";
  150.     "REMOV KEBAB";
  151.     "i hear sadness";
  152.     "this isn't the final version, trust me.";
  153.     "there's more where that came from";
  154.     "remember; no russian";
  155.     "whoops";
  156.     "how many of these fucking things do you have";
  157.     "jesus christ";
  158.     "one side";
  159.     "down with fascists";
  160.     "good night alt right";
  161.     "identity politics is a hell of a drug";
  162.     "trump isn't a fascist you fucking retards";
  163.     "hitler only killed 12 million stfu";
  164.     "if you advertize a discord server i'll ddos u";
  165.     "don't forget to credit the people u steal hacks from";
  166.     "AUFHIFUWEHFUWAHFULFUWAHIFAWHIFUWHLFIUAWHFIUAWHFILWUHWAFHWILUFHWALIUFHWIUFHWAIUFHWUFHWLIFUHWIUFWHUIHFW";
  167.     "dirty fucking NIGGERS";
  168.     "spear chuckers get out of my country";
  169.     "hi";
  170.     "if you see this message, tell calb";
  171.     "BIG FUCK, TELL TONY";
  172.     "cucked ape";
  173.     "rust sucks";
  174.     "garry newman more like garry jewman";
  175.     "cum-guzzling faggots";
  176.     "dongs";
  177.     "official website: www.madbluntz.rs";
  178.     "listen to my music @ caliberr.bandcamp.com";
  179.     "discord.gg/nigger";
  180.     "furries will die from brain tumors";
  181.     "space left blank intentionally";
  182.     "whoa, dude";
  183.     "As seen on TV";
  184.     "BACK UP THE CLEAN DATA AND DISINFECT THE DEAD";
  185.     "Awesome";
  186.     "100% pure";
  187.     "May contain nuts";
  188.     "expect shitty memes";
  189.     "Better than Prey";
  190.     "More polygons";
  191.     "Sexy";
  192.     "THERE'S A LIGHT AT THE END OF THE TUNNEL, ALWAYS. A CLICHÉ HOPE TO DRIVE YOU TO ENDURE ANOTHER DAY";
  193.     "Limited edition";
  194.     "Flashing letters";
  195.     "It's here";
  196.     "Best in class";
  197.     "It's finished";
  198.     "Kind of dragon free";
  199.     "Excrement";
  200.     "More than 500 sold";
  201.     "One of a kind";
  202.     "Heaps of hits on YouTube";
  203.     "Indev";
  204.     "Spiders everywhere";
  205.     "Check it out";
  206.     "Holy cow, man";
  207.     "It's a game";
  208.     "Made in Sweden";
  209.     "Uses LWJGL";
  210.     "Reticulating splines";
  211.     "Singleplayer";
  212.     "Keyboard compatible";
  213.     "Undocumented";
  214.     "Ingots";
  215.     "That's no moon";
  216.     "l33t";
  217.     "Exclusive";
  218.     "The bee's knee";
  219.     "Down with O.P.P.";
  220.     "Closed source";
  221.     "Classy";
  222.     "Wow";
  223.     "Not on steam";
  224.     "Oh man";
  225.     "Awesome community";
  226.     "Pixels";
  227.     "Teetsuuuuoooo";
  228.     "Kaaneeeedaaaa";
  229.     "Now with difficulty";
  230.     "Enhanced";
  231.     "90% bug free";
  232.     "Pretty";
  233.     "We shoot the sick, the young, the lame,";
  234.     "We do our best to kill and maim,";
  235.     "Because the kills all count the same,";
  236.     "Flying low across the trees,";
  237.     "Pilots doing what they please,";
  238.     "Dropping frags on refugees,";
  239.     "It made us feel so good inside,";
  240.     "When the strongmen left and the women cried,";
  241.     "we decompose when we're buried ";
  242.     "we break apart when least ready ";
  243.     "we both know misery";
  244.     "But what we really like is the children fried,";
  245.     "See that family over there,";
  246.     "Watch me get them with a pear,";
  247.     "Blood and guts just everywhere,";
  248.     "set me free ";
  249.     "show me what it means to be ";
  250.     "alive and moving on ";
  251.     "i'll show you what it's like to be ";
  252.     "here when i'm gone";
  253.     "CIA with guns for hire,";
  254.     "Montagnards around a fire,";
  255.     "jban42 has abandoned the match and recieved a 7 day competitive matchmaking cooldown";
  256.     "don't worry ";
  257.     "it's nothing much ";
  258.     "no trouble at all ";
  259.     "if it doesn't make sense ";
  260.     "let me take the fall ";
  261.     "i'll always be the one ";
  262.     "afraid to let you down ";
  263.     "inquire and ask away ";
  264.     "so i don't lead you around ";
  265.     "don't worry if it doesn't make sense ";
  266.     "i should know better after all";
  267.     "Napalm makes the fire higher,";
  268.     "Children sucking on a mother's tit,";
  269.     "gooks down in a sifty pit,";
  270.     "Dow Chemical doesn't give a shit,";
  271.     "Attack some kids when you go downtown,";
  272.     "surfing supported shattered starshine ";
  273.     "so you're back from space ";
  274.     "you got a look on your face ";
  275.     "like you saw something great ";
  276.     "well i'm back from space too ";
  277.     "and i found something new ";
  278.     "but my story's gotta wait";
  279.     "it doesn't matter what i've done ";
  280.     "if you're gonna step on my shoudlers ";
  281.     "to act like the taller one ";
  282.     "something is showing through the cracks ";
  283.     "in your skin ";
  284.     "i thought you were a humanoid ";
  285.     "like me a humanoid ";
  286.     "i rode so many cosmic rays ";
  287.     "i ruled so many galactic days ";
  288.     "i wanna say i've overcome ";
  289.     "all of the problems that i faced ";
  290.     "and i've still got spare energy ";
  291.     "so you know the next time you're around ";
  292.     "you're gonna have to deal with my universal sound ";
  293.     "blasting through like mothafuckin' starlight";
  294.     "dust drifting directionless divine ";
  295.     "screaming sidelining supernovas ";
  296.     "colliding colossi cracked coronas ";
  297.     "you accrued new dues ";
  298.     "to eschew the slew in view ";
  299.     "your queue grew ";
  300.     "the few in queue were due ";
  301.     "you were through and flew";
  302.     "By throwing some candy on the ground,";
  303.     "Then grease them when they gather 'round,";
  304.     "hey ";
  305.     "it's a hot one today ";
  306.     "it's a hot day ";
  307.     "but i bet it's hotter for you ";
  308.     "you stupid patronizing fool ";
  309.     "i bet you think you're fuckin' cool ";
  310.     "you've got some new people to school ";
  311.     "on your stupid damn rules ";
  312.     "we're sick of hearing tales of you taking a stand ";
  313.     "blasphemers burned to the bones if they would not recant ";
  314.     "we're tired of hearing fables of how you're so stuck ";
  315.     "this shit will roll off us if we have any luck ";
  316.     "nd do you know what we have? ";
  317.     "we have luck ";
  318.     "you pave a road, you carve a path, you blaze a trail ";
  319.     "but you look like a stupid dog chasing its tail ";
  320.     "convincing others that it's lots of fun ";
  321.     "a grave mistake within the words you've spun ";
  322.     "hey ";
  323.     "it's a cold one today ";
  324.     "it's a cold day ";
  325.     "but i bet it's colder for you ";
  326.     "you stupid patronizing fool ";
  327.     "i bet you think you're fuckin' cool ";
  328.     "you've got some new people to school ";
  329.     "on your stupid damn rules ";
  330.     "we're sick of hearing tales of you taking a stand ";
  331.     "blasphemers burned to the bones if they would not recant ";
  332.     "we're tired of hearing fables of how you're so stuck ";
  333.     "this shit will roll off us if we have any luck ";
  334.     "and most of all above everything ";
  335.     "we will always have luck";
  336.     "A squad of Cong in the grass,";
  337.     "But all the fighting's long since passed,";
  338.     "Crispy critters in a mass,";
  339.     "i think a thousand years have passed ";
  340.     "while wondering how long i'll last ";
  341.     "and it turns out time flies ";
  342.     "i feel the earth has spun ";
  343.     "a million turns around the sun ";
  344.     "and it turns out time flies ";
  345.     "the best decision that i've made ";
  346.     "is living in the moment ";
  347.     "and not expanding ";
  348.     "the infinite points of past and future ";
  349.     "into some kind of quale ";
  350.     "ever commanding";
  351.     "LOH's out to have a blast,";
  352.     "Drop some peon kids en masse,";
  353.     "Send the remains to the chief of staff,";
  354.     "Oxcarts rolling down the road,";
  355.     "Peasants with a heavy load,";
  356. }
  357. defcon.Phrases3             = {
  358.     "kikr";
  359.     "They're all VC when the bombs explode,";
  360.     "i will soak myself in the rain ";
  361.     "until i'm reflective ";
  362.     "and i'll sprawl out underneath you ";
  363.     "and get your feet wet ";
  364.     "you'll absorb me through your shoes ";
  365.     "until your legs are heavy ";
  366.     "i'll make your journey that much longer ";
  367.     "when you're not ready ";
  368.     "Shooting women's lots of fun,";
  369.     "try killing one thats pregnant son,";
  370.     "You'll get two for the price of one,";
  371.     "Napalm sticks to kids.";
  372.     "Flying low and feeling mean,";
  373.     "see that family by the stream,";
  374.     "Drop some napalm n hear them scream,";
  375.     "See that gook on his knees,";
  376.     "Lost some flechettes in the breeze,";
  377.     "Find his arms nailed to the trees,";
  378.     "NVA are all hardcore,";
  379.     "Flechettes nail them to the jungle floor,";
  380.     "Throw them PSYOPS out the door,";
  381.     "18 kids in a no-fire zone,";
  382.     "Books under arms and going home,";
  383.     "Last in line goes home alone,";
  384.     "Chucks in a sampan sitting in the stern,";
  385.     "But he don't think his boat'll burn,";
  386.     "Them fucking gooks will never learn,";
  387.     "See the little kids jump and shout,";
  388.     "Drop some nape and without a doubt,";
  389.     "Watch them try and put it out,";
  390.     "I've been around, Some things I've seen,";
  391.     "But the people who are mighty mean,";
  392.     "The gooks you kill, they make you clean,";
  393.     "I've only seen it happen twice,";
  394.     "But both times, it was mighty nice,";
  395.     "Shooting peasants planting rice,";
  396.     "Napalm, son, is lots of fun,";
  397.     "Dropped from a bomb or shot from a gun,";
  398.     "It gets the gooks when they're on the run,";
  399.     "Some people say its not so neat ,";
  400.     "to watch gooks burning in the street,";
  401.     "but burning flesh smells mighty neat,";
  402.     "Gooks in the open, making hay,";
  403.     "Shoot civilians where the sit.";
  404.     "Take some pictures as you split.";
  405.     "All your life, you'll remember it.";
  406.     "They'se in good shape for the shape they'se in,";
  407.     "But they'se no way that they can win,";
  408.     "With Napalm rolling down their skin,";
  409.     "Napalm sticks to kids.";
  410.     "12 herbs and spices";
  411.     "Fat free";
  412.     "Absolutely no memes";
  413.     "Free dental";
  414.     "Ask your doctor";
  415.     "Minors not welcome";
  416.     "Cloud computing";
  417.     "Legal in Finland";
  418.     "Hard to label";
  419.     "Technically good";
  420.     "Bringing home the bacon";
  421.     "Indie";
  422.     "GOTY";
  423.     "Ceci n'est pas une cheat menu";
  424.     "Euclidian";
  425.     "Now in 2D";
  426.     "Inspirational";
  427.     "Herregud";
  428.     "deuce: N E V E R  F O R G E T MY COCK";
  429.     "sponsored by lootcrate and trunkclub and shithead and shinebox";
  430.     "Complex cellular automata";
  431.     "NO SIR";
  432.     "Played by cowboys";
  433.     "OpenGL 2.1 (if supported)";
  434.     "tens of colors";
  435.     "Try it";
  436.     "Age of empires is better";
  437.     "Try the mushroom sjw";
  438.     "Sensational";
  439.     "Hot tamale, hot hot tamale";
  440.     "Play him off, fuckhead";
  441.     "pants: P - THE PEE TAPES ARE REAL";
  442.     "Guaranteed";
  443.     "spigot: [WARNING: THIS STORY CONTAINS SPOILERS FOR UNIVERSAL AND ILLUMINATION ENTERTAINMENT'S DESPICABLE ME 3.]";
  444.     "Macroscopic";
  445.     "Bring it on";
  446.     "Random splash";
  447.     "pants: SIGHS, GETS OUT WALLET";
  448.     "Call your mother";
  449.     "Monster infighting";
  450.     "Loved by millions";
  451.     "pants: MMMM YEAH OOOH BOY";
  452.     "Ultimate edition";
  453.     "Freaky";
  454.     "PRESS INSERT TO OPEN sekrit MENU";
  455.     "You've got a brand new key";
  456.     "not water proof";
  457.     "Uninflammable";
  458.     "Whoa, dude";
  459.     "All inclusive";
  460.     "pants: LET ME GET YOU A DRINK WITH ABSOLUTELY NO ROOFIES IN IT";
  461.     "Tell your friends";
  462.     "NP is not in P";
  463.     "Livestreamed";
  464.     "Haunted";
  465.     "Polynomial";
  466.     "Terrestrial";
  467.     "All is full of ERP";
  468.     "Full of stars";
  469.     "Scientific";
  470.     "Not as cool as Spock";
  471.     "Collaborate and listen";
  472.     "Never fuck up";
  473.     "Take frequent breaks";
  474.     "Not linear";
  475.     "Han shot first";
  476.     "Nice to meet you";
  477.     "Buckets of lava";
  478.     "Ride the pig";
  479.     "Larger than Earth";
  480.     "sqrt(-1) love you";
  481.     "spigot: GOD SAID IT / I SUCKED ON IT / THAT SETTLES IT";
  482.     "Phobos anomaly";
  483.     "toggle your frog";
  484.     "getting wood";
  485.     "Falling off cliffs";
  486.     "14% sugar";
  487.     "150% hyperbole";
  488.     "Synecdoche";
  489.     "Let's punc";
  490.     "Seecret Friday update";
  491.     "Reference implementation";
  492.     "PRESS INSERT 2 open secret bitch";
  493.     "Lewd with two dudes with food";
  494.     "Kiss the sky";
  495.     "20 GOTO 10";
  496.     "pants: T DEUCE MY BONER CRASHED INTO THE SEA";
  497.     "frog toggler";
  498.     "Verlet intregration";
  499.     "bad boy teenager club";
  500.     "shoe stealer";
  501.     "boner";
  502.     "Peter Griffin";
  503.     "Do not distribute";
  504.     "Cogito ergo sum";
  505.     "boneless pizza machine broke";
  506.     "44 lines of code";
  507.     "A skeleton popped out";
  508.     "The Work of nutmegg";
  509.     "The sum of its parts";
  510.     "BTAF used to be good";
  511.     "spigot: WHOA HOLY GOD SHIT FALLING";
  512.     "I miss ADOM";
  513.     "you tell me when to be afraid ";
  514.     "so i know when to turn away ";
  515.     "i will be yours to lead astray ";
  516.     "my independence will decay ";
  517.     "we teach each other how to fear ";
  518.     "when insecure we disappear ";
  519.     "a peace we've been deprived of ";
  520.     "never taught each other how to ";
  521.     "i keep my eyes out for hurt ";
  522.     "and ways that i could subvert ";
  523.     "trained into a state of high alert ";
  524.     "my vision was yours to pervert ";
  525.     "we teach each other how to fear ";
  526.     "when insecure we disappear ";
  527.     "a peace we've been deprived of ";
  528.     "never taught each other how to ";
  529.     "love";
  530.     "umop-apisdn";
  531.     "deuce: CAN WE TALK BALLS?";
  532.     "bung: MOM!";
  533.     "deuce: THAT IS NOT AN ANSWER";
  534.     "onyun";
  535.     "OICU812";
  536.     "Bring me Ray Cokes";
  537.     "Finger-licking";
  538.     "spigot: PASSWORD STRENGTH: LIMP";
  539.     "dick-licking";
  540.     "cock-nobbling";
  541.     "absolutely fucking cancerous";
  542.     "101% communism free";
  543.     "sucking, fucking";
  544.     "teachin', preachin'";
  545.     "darkrp is a shit gamemode for shit people";
  546.     "now supports деад ниггерс";
  547.     "Thematic";
  548.     "back from sending a little part of me away ";
  549.     "admiring shapes beneath me ";
  550.     "caught my eye glowing brightly from a distance ";
  551.     "what on earth could that be ";
  552.     "do you call yourself stronger ";
  553.     "when you avoid it altogether ";
  554.     "just hold out a little longer ";
  555.     "and overcome the destroyer ";
  556.     "you're on the right track ";
  557.     "so rock on ";
  558.     "fuck you facepunch";
  559.     "fuck you FP";
  560.     "fuck you cloud 16";
  561.     "fuck you cloud 9";
  562.     "fuck you hillary clinton";
  563.     "fuck you futret";
  564.     "fuck you nishi";
  565.     "bielodesph gay";
  566.     "bong hits for gay jesus";
  567.     "and we won't turn back ";
  568.     "it was you and we shared a silent moment ";
  569.     "and i crossed the bridge on my way back home and ";
  570.     "now i'll never know you ";
  571.     "right now i barely know a thing ";
  572.     "do you call yourself stronger ";
  573.     "when you avoid it altogether ";
  574.     "just hold out a little longer ";
  575.     "and overcome the destroyer ";
  576.     "you're on the right track ";
  577.     "and we won't turn back ";
  578.     "Pneumatic";
  579.     "Prismatic";
  580.     "Sublime";
  581.     "Octagonal";
  582.     "Une baguette";
  583.     "pants: I'LL LIVE ON YOUR DESKTOP FOREVER";
  584.     "Gargamel uses it";
  585.     "smurfs r gay";
  586.     "7 day cooldown machine";
  587.     "Rita is the new top dog";
  588.     "SWM forever";
  589.     "Representing Edsbyn";
  590.     "Matt Damon";
  591.     "Supercalifragilisticexpialidocious";
  592.     "Consummate V's";
  593.     "Cow Tools";
  594.     "Double buffered";
  595.     "Fan fiction";
  596.     "Flaxkikare";
  597.     "Jason Jason Jason";
  598.     "Hotter than the sun";
  599.     "Internet enabled";
  600.     "Autonomous";
  601.     "Engage";
  602.     "Fantasy";
  603.     "DRR DRR DRR";
  604.     "Kick it root down";
  605.     "Google anlyticsed";
  606.     "Now supports åäö";
  607.     "some kind of dysphoria ";
  608.     "22 05 88 09 04 90 AC 09 ";
  609.     "some kind of desire to sleep";
  610.     "Give us Gordon";
  611.     "Tip your waiter";
  612.     "Very fun";
  613.     "12345 is a bad password";
  614. }
  615. defcon.Phrases4             = {
  616.     "nigs";
  617.     "But I can hear those gunships say,";
  618.     "They'll be no Chieu Hois today,";
  619.     "Vote for net neutrality";
  620.     "Lives in a pineapple under the sea";
  621.     "in distress, feeling stressed ";
  622.     "reassuring ";
  623.     "the stairs are a hassle ";
  624.     "i feel unable ";
  625.     "a shepherd's scale ";
  626.     "where the notes are played with sounds of yelling ";
  627.     "at the rain ";
  628.     "and i will grow";
  629.     "MAP11 has two names";
  630.     "Omnipotent";
  631.     "Gasp";
  632.     "...";
  633.     "Bees, bees, bees, bees";
  634.     "Jag känner en bot";
  635.     "Haha, LOL";
  636.     "Menger sponge";
  637.     "idspispopd";
  638.     "but the day could be dark ";
  639.     "and the day could be bleak ";
  640.     "but i'll have done it all ";
  641.     "i have done it all";
  642.     "Eple (original edit)";
  643.     "So fresh, so clean";
  644.     "Slow acting portals";
  645.     "Don't look directly at the bugs";
  646.     "Finally without NIGGERS";
  647.     "don't let light make you blind to how things look ";
  648.     "don't let dark make you ignorant to what it took ";
  649.     "to come this far and open up to you";
  650.     "aight im fucking tired of making shitty messages that no one will see";
  651.     "Scary";
  652.     "Twittered about";
  653.     "Jump up, jump up, and get down";
  654.     "sheo is neat";
  655.     "can't be like this forever ";
  656.     "turn off all the lights ";
  657.     "my heartbeat fills the night ";
  658.     "pacemaker keep me steady ";
  659.     "keeping me at the ready";
  660.     "let's break out of this";
  661.     "a riddle, wrapped in a mystery";
  662.     "Huge tracts of land";
  663.     "Welcome to your Doom";
  664.     "Stay a while, stay forever";
  665.     "Stay a while and listen";
  666.     "Treatment for your rash";
  667.     "look at all the things ";
  668.     "i packed away to make a space ";
  669.     "that i could play and laugh and love ";
  670.     "and live in ";
  671.     "'look at all the things'";
  672.     "you said to me as i faded away ";
  673.     "from everyone and everything ";
  674.     "that had been ";
  675.     "you took away my parachute ";
  676.     "and told me to fall ";
  677.     "i jumped and felt the air ";
  678.     "rip through me as i stared ";
  679.     "at the ground";
  680.     "when i'm gone will my drive live on ";
  681.     "i'd like to think when i'm gone ";
  682.     "my drive will burn on";
  683.     "'Autological' is";
  684.     "Information wants to be free";
  685.     "Almost never' is an interesting concept";
  686.     "Lots of truthiness";
  687.     "The nigger is a baffoon";
  688.     "Turing complete";
  689.     "It's groundbreaking";
  690.     "Let our battles begin";
  691.     "The sky is the limit";
  692.     "Casul gayming";
  693.     "Undefeated";
  694.     "Kinda like Lemmings";
  695.     "Follow the train, CJ";
  696.     "Leveraging synergy";
  697.     "This message will never appear on the hack menu, isn't that weird?";
  698.     "Read more books";
  699.     "Khaaaaaaaaan";
  700.     "Less addictive than TV Tropes";
  701.     "More addictive than lemonade";
  702.     "I want to die";
  703.     "Bigger than a bread box";
  704.     "Millions of peaches";
  705.     "Fnord";
  706.     "This is my true form";
  707.     "Totally forgot about Dre";
  708.     "Don't bother with the clones";
  709.     "Pumpkinhead";
  710.     "Hobo humping slobo babe";
  711.     "Feature packed";
  712.     "Conventional";
  713.     "Homeomorphic to a 3-sphere";
  714.     "Doesn't avoid double negatives";
  715.     "Meeting expectations";
  716.     "lives in cambodia";
  717.     "PC gaming since 1873";
  718.     "Ghoughpteighbteau tchoghs";
  719.     "GET GUD AT MINGING U NIGGER";
  720.     "NEXUS NOT FOUND";
  721.     "ADMIN SPOTTED";
  722.     "/plyban ^ 0";
  723.     "everyone type in chat caliber is a stupid nigger";
  724.     "caliber .50 BMG";
  725.     "andy.b choked on niggermenu";
  726.     "Déjà vu";
  727.     "Déjà vu";
  728.     "Got your nose";
  729.     "Haley loves Elan";
  730.     "fuck you microsoft";
  731.     "Afraid of the big, black bat";
  732.     "Doesn't use stonel code";
  733.     "Child's play";
  734.     "See you next Friday or so";
  735.     "fuck formatting";
  736.     "From the streets of Södermalm";
  737.     "150 bpm for 400000 minutes";
  738.     "Technologic";
  739.     "Funk soul brother";
  740.     "Pumpa kungen";
  741.     "日本ハロー!";
  742.     "한국 안녕하세요";
  743.     "Helo Cymru";
  744.     "Cześć Polsko";
  745.     "你好中国!";
  746.     "Привет Россия";
  747.     "Γεια σου Ελλάδα";
  748.     "My life for Aiur";
  749.     "I see your vocabulary has improved";
  750.     "Who put it there?";
  751.     "You can't explain that";
  752.     "if not ok then return end";
  753.     "§1C§2o§3l§4o§5r§6m§7a§8t§9i§ac";
  754.     "§kFUNKY LOL";
  755.     "Big Pointy Teeth";
  756.     "Bekarton guards the gate";
  757.     "Mmmph, mmph";
  758.     "Don't feed avocados to parrots";
  759.     "Swords for everyone";
  760.     ".party()";
  761.     "Pretty scary";
  762.     "I have a suggestion.";
  763.     "Now with extra hugs";
  764.     "Now Lua 6";
  765.     "Woah.";
  766.     "HURNERJSGER?";
  767.     "What's up, Doc?";
  768.     "Now contains 6 million random daily kikes!";
  769.     "That's Niggerwang";
  770.     "join this server right now u niggers";
  771.     "Put a little fence around it";
  772.     "Throw a blanket over it";
  773.     "Now with additional stuff";
  774.     "Extra things";
  775.     "niggaz in da hood";
  776.     "So sweet";
  777.     "Popping tags";
  778.     "Very influential in its circle";
  779.     "Now with extra yeet";
  780.     "Rise from your grave";
  781.     "Warning A huge battleship is approaching fast!";
  782.     "Blue warrior shot the food";
  783.     "Run, coward I hunger";
  784.     "Flavor with no seasoning";
  785.     "Strange, but not a stranger";
  786.     "Tougher than diamonds, rich like cream";
  787.     "Getting ready to show";
  788.     "Getting ready to know";
  789.     "i'm happy with it.";
  790.     "Getting ready to drop";
  791.     "Getting ready to suck";
  792.     "Getting ready to freak";
  793.     "Getting ready to speak";
  794.     "It swings, it jives";
  795.     "Cruising streets for gold";
  796.     "Take an eggbeater and beat it against a skillet";
  797.     "Make me a table, a funky table";
  798.     "Take the elevator to the mezzanine";
  799.     "Stop being reasonable, this is the Internet";
  800.     "/giveweapon m9k_1911a1 1";
  801.     "This is good for Realms.";
  802.     "now with memeware";
  803.     "fuck all y'all";
  804.     "cocaine is bad for u";
  805.     "school is gay";
  806.     "Any computer is a laptop if you're brave enough";
  807.     "Do it all, everything";
  808.     "Where there is not light, there can spider";
  809.     "GNU Terry Pratchett";
  810.     "More Digital";
  811.     "doot doot";
  812.     "Falling with style";
  813.     "There's no stopping the nutmegg";
  814.     "Throw yourself at the ground and miss";
  815.     "Rule #1: it's never my fault";
  816.     "Replaced molten cheese with blood?";
  817.     "Absolutely fixed relatively broken coordinates";
  818.     "Boats FTW";
  819.     "gay edition";
  820.     "REALLY gay edition";
  821.     "You're going too fast";
  822.     "made without parential permission";
  823.     "lapfuckstrax";
  824.     "tried, tested, not approved.";
  825.     "aspie collective";
  826.     "a product of its time";
  827.     "their they're and there";
  828.     "endless streams of shit";
  829.     "new! old! terrible!";
  830.     "i make music now";
  831.     "this is my life now";
  832.     "i'm ok with this";
  833.     "u know wwhat this is prob the last version, i dont have anything new to add";
  834.     "shoutout to johnny nutmegg";
  835.     "etxraneous bullshit";
  836.     "inflated filesize";
  837.     "cancer";
  838.     "die";
  839.     "aimbot key is left alt";
  840.     "oh fuck off";
  841.     "try exanima";
  842.     "jerkcity.com - since 1998";
  843. }
  844. defcon.Phrasesall           = {    
  845.     defcon.Phrases;    
  846.     defcon.Phrases3;       
  847.     defcon.Phrases4;       
  848. }
  849. defcon.Phrases2             = {
  850.     "got fucked";
  851.     "got shit on";
  852.     "died";
  853.     "got holocausted";
  854.     "ate shit";
  855.     "tried to fly a potato";
  856.     "dug too deep";
  857.     "got RDM'd";
  858.     "tried to drink molten stone";
  859.     "got owned";
  860.     "ate that dirt";
  861.     "fought the law (and the law won)";
  862.     "was slain";
  863.     "tried to do hvh with an aimware user";
  864.     "downloaded memeware";
  865.     "deleted system32";
  866.     "got mad";
  867.     "kicked the bucket";
  868.     "downloaded malware";
  869.     "got spawncamped to death";
  870.     "unsubscribed from dramaalert";
  871.     "went to hell";
  872.     "did not pass go";
  873.     "did not collect 200 dollars";
  874.     "forgot how to stop, drop, and roll";
  875.     "went to detroit at night";
  876.     "got smashed";
  877.     "got their fucking brains blown out";
  878.     "became one with the ground";
  879.     "got gangbanged";
  880.     "literally ate shit";
  881.     "listened to a kanye west album";
  882.     "fucked a cat";
  883.     "got their dick bitten off by spets";
  884.     "tried to erp with spets";
  885.     "broke their spine";
  886.     "broke their dick";
  887.     "used reddit";
  888.     "was savagely murdered";
  889.     "got crusaded";
  890.     "converted to islam";
  891.     "burned the qur'an";
  892.     "ate pork";
  893.     "contracted wrongthink";
  894.     "fuckin died LMAO";
  895.     "is dead, long live the king!";
  896.     "gave bad succ";
  897.     "unjammed an open-bolt weapon";
  898.     "brought snixzz3 to a gmod hvh";
  899.     "tried to use the carthus curved sword in a fight club";
  900.     "unfinished string lol";
  901.     "is dead lol";
  902.     "contracted autism";
  903.     "didn't praise johnny nutmegg";
  904.     "watched an amy schumer comedy special";
  905.     "voted for hillary clinton";
  906.     "supported communism";
  907.     "got boned";
  908.     "got permbanned by spets";
  909.     "tried to break into rcon";
  910.     "drowned";
  911.     "got struck by lightening";
  912.     "was detected by CAC";
  913.     "sat on a dick";
  914.     "got raped anally";
  915.     "followed bob good";
  916.     "tried to ERP with sheo";
  917.     "didn't let someone react to their /me";
  918.     "got blamed for mingery";
  919.     "has used /Me cum";
  920.     "has used /Me punc";
  921.     "has used /plyban me 0";
  922.     "stole rations";
  923.     "posted their IP on raidforums";
  924.     "smoked bad weed";
  925.     "choked on niggermenu";
  926.     "dedicated his whole life to hl2rp";
  927.     "tried to install gentoo";
  928.     "got doused with napalm";
  929.     "drank some nape";
  930.     "used omegle";
  931.     "uninstalled their antivirus";
  932.     "got ganked by gooks";
  933.     "visited nebulous";
  934.     "didn't subscribe to madbluntz";
  935.     "used snixzz3";
  936.     "tried to run from a cheater";
  937. }
  938. defcon.Keys = {
  939. "KEY_0", "KEY_1", "KEY_2", "KEY_3", "KEY_4", "KEY_5",
  940. "KEY_6", "KEY_7", "KEY_8", "KEY_9", "KEY_A", "KEY_B", "KEY_C",
  941. "KEY_D", "KEY_E", "KEY_F", "KEY_G", "KEY_H", "KEY_I", "KEY_J",
  942. "KEY_K", "KEY_L", "KEY_M", "KEY_N", "KEY_O", "KEY_P", "KEY_Q",
  943. "KEY_R", "KEY_S", "KEY_T", "KEY_U", "KEY_V", "KEY_W", "KEY_X",
  944. "KEY_Y", "KEY_Z", "KEY_PAD_0", "KEY_PAD_1", "KEY_PAD_2", "KEY_PAD_3",
  945. "KEY_PAD_4", "KEY_PAD_5", "KEY_PAD_6", "KEY_PAD_7", "KEY_PAD_8", "KEY_PAD_9",
  946. "KEY_PAD_DIVIDE", "KEY_PAD_MULTIPLY", "KEY_PAD_MINUS", "KEY_PAD_PLUS", "KEY_PAD_ENTER",
  947. "KEY_PAD_DECIMAL", "KEY_LBRACKET", "KEY_RBRACKET", "KEY_SEMICOLON", "KEY_APOSTROPHE",
  948. "KEY_BACKQUOTE", "KEY_COMMA", "KEY_PERIOD", "KEY_SLASH", "KEY_BACKSLASH", "KEY_MINUS",
  949. "KEY_EQUAL", "KEY_ENTER", "KEY_SPACE", "KEY_BACKSPACE", "KEY_TAB", "KEY_CAPSLOCK",
  950. "KEY_NUMLOCK", "KEY_ESCAPE", "KEY_SCROLLLOCK", "KEY_INSERT", "KEY_DELETE", "KEY_HOME",
  951. "KEY_END", "KEY_PAGEUP", "KEY_PAGEDOWN", "KEY_BREAK", "KEY_LSHIFT", "KEY_RSHIFT",
  952. "KEY_LALT", "KEY_RALT", "KEY_LCONTROL", "KEY_RCONTROL", "KEY_LWIN", "KEY_RWIN",
  953. "KEY_APP", "KEY_UP", "KEY_LEFT", "KEY_DOWN", "KEY_RIGHT", "KEY_F1", "KEY_F2",
  954. "KEY_F3", "KEY_F4", "KEY_F5", "KEY_F6", "KEY_F7", "KEY_F8", "KEY_F9",
  955. "KEY_F10", "KEY_F11", "KEY_F12", "KEY_CAPSLOCKTOGGLE", "KEY_NUMLOCKTOGGLE",
  956. "KEY_SCROLLLOCKTOGGLE"
  957. };
  958.  
  959. local function SafeCheck(v)
  960.     if v ~=LocalPlayer() and v:Alive() and v:IsValid() and v:GetActiveWeapon():IsValid() and v:Health() >= 1 then
  961.         return true
  962.     else
  963.         return false
  964.     end
  965. end
  966.  
  967. for k,v in pairs(defcon.Normal) do
  968.     if defcon.Settings[k] == nil then
  969.         defcon.Settings = defcon.Normal
  970.         -- so if you fuck with my shit i fuck with your shit
  971.     end
  972. end
  973.  
  974. -- functions
  975.  
  976. function defcon.Update(x,y,z, ok)
  977.     if x == "setting" then
  978.         defcon.Settings[y] = z
  979.         if ok == true then
  980.             file.Write("d_settings.txt", util.TableToJSON(defcon.Settings))
  981.         end
  982.     elseif x == "entity" then
  983.         file.Write("d_entities.txt", util.TableToJSON(defcon.Entities))
  984.     elseif x == "friend" then
  985.         file.Write("d_whitelist.txt", util.TableToJSON(defcon.Whitelist))
  986.     end
  987. end
  988. function defcon.ESPCheck(typ, v)
  989.     if typ == "player" then
  990.         if v:Alive() && v:Health() >= 1 && v ~= LocalPlayer() /*&& /*LocalPlayer():Alive() &&*/ /*LocalPlayer():Team() ~= TEAM_SPECTATOR*/ then
  991.             return true
  992.         end
  993.     elseif typ == "entity" then
  994.         if IsValid(v) then
  995.             return true
  996.         end
  997.     end
  998.     return false
  999. end
  1000. function defcon.ESPDistance(typ, v)
  1001.     if typ == "player" then
  1002.         if defcon.Settings["esp_player_dist"] >= 16000 then
  1003.             return true
  1004.         elseif v:GetPos():Distance(LocalPlayer():GetPos()) < (defcon.Settings["esp_player_dist"]) then
  1005.             return true
  1006.         end
  1007.     elseif typ == "entity" then
  1008.         if defcon.Settings["esp_entity_dist"] >= 16000 then
  1009.             return true
  1010.         elseif v:GetPos():Distance(LocalPlayer():GetPos()) < (defcon.Settings["esp_entity_dist"]) then
  1011.             return true
  1012.         end
  1013.     end
  1014.     return false
  1015. end
  1016. function defcon.GetShootPos(ent)
  1017.     local eyes = ent:LookupAttachment("eyes");
  1018.     if(eyes ~= 0) then
  1019.         eyes = ent:GetAttachment(eyes);
  1020.         if(eyes and eyes.Pos) then
  1021.             return eyes.Pos, eyes.Ang;
  1022.         end
  1023.     end
  1024. end
  1025. function defcon.Visible(ent)
  1026.     local pos = LocalPlayer():GetShootPos()
  1027.     local ang = LocalPlayer():GetAimVector()
  1028.     local trace = {start = LocalPlayer():GetShootPos(), endpos = defcon.GetShootPos(ent), filter = {LocalPlayer(), ent}, mask = 1174421507};
  1029.     local tr = util.TraceLine(trace);
  1030.     return(tr.Fraction == 1);
  1031. end
  1032. function defcon.Whitelisted(ent)
  1033.     if defcon.Whitelist[ent:SteamID()] then return true
  1034.     else return false end
  1035. end
  1036. function defcon.CanTarget(v)
  1037.     if v:IsPlayer() then
  1038.         if (defcon.Visible(v) and (not defcon.Whitelisted(v)) and v:Alive() and (v:Health() > 0) and v:Team() ~= TEAM_SPECTATOR) then
  1039.             if (v ~= LocalPlayer() and LocalPlayer():Alive() and LocalPlayer():Team() ~= TEAM_SPECTATOR) then
  1040.                 if not(defcon.Settings["aimbot_friendly_fire"]) then
  1041.                     if (v:Team() ~= LocalPlayer():Team()) then
  1042.                         return true
  1043.                     end
  1044.                 else
  1045.                     return true
  1046.                 end
  1047.             end
  1048.         end
  1049.     end
  1050.     return false
  1051. end
  1052. function defcon.Ents()
  1053.     local t = {}
  1054.     for k,v in pairs(ents.GetAll()) do
  1055.         if IsValid(v) and not(table.HasValue(t, v:GetClass())) then
  1056.             table.insert(t, v:GetClass())
  1057.         end
  1058.     end
  1059.     table.sort(t, function(a,b) return a < b end)
  1060.    
  1061.     return t
  1062. end
  1063.  
  1064. -- fonts
  1065.  
  1066. surface.CreateFont("deffont", {
  1067.     font    =   "impact",
  1068.     size    =   64
  1069. });
  1070.  
  1071. surface.CreateFont("deffontesp1", {
  1072.     font="TabLarge",
  1073.     size=13,
  1074.     weight=700
  1075. });
  1076. surface.CreateFont("deffontesp2", {
  1077.     font="TabLarge",
  1078.     size=10,
  1079.     weight=700
  1080. });
  1081. surface.CreateFont("fuck", {
  1082.     font="Console",
  1083.     size=13,
  1084.     weight=100
  1085. });
  1086.  surface.CreateFont("warnign", {
  1087.  size = 18,
  1088.  weight = 0,
  1089.  antialias = false,
  1090.  font = "times new roman"
  1091.  });
  1092.   surface.CreateFont("trike", {
  1093.  size = 13,
  1094.  weight = 0,
  1095.  antialias = false,
  1096.  font = "Trebuchet"
  1097.  });
  1098.  
  1099. -- long vars
  1100.  
  1101. local menu              = defcon.Menu
  1102. local current           = defcon.Current
  1103. local alive             = defcon.Alive
  1104. local normal            = defcon.Normal
  1105. local settings          = defcon.Settings
  1106. local entities          = defcon.Entities
  1107. local whitelist         = defcon.Whitelist
  1108. local phrases           = defcon.Phrases
  1109. local espcheck          = defcon.ESPCheck
  1110. local espdistance       = defcon.ESPDistance
  1111.  
  1112. -- menu base
  1113.  
  1114. local function AddTab(txt, tab, func)
  1115.     menu.c = menu.c + 1
  1116.     local panel
  1117.     if tab and tab == true then
  1118.         panel = vgui.Create("DPanel", menu.frame);
  1119.         panel:SetPos(120,25);
  1120.         panel:SetSize(376,406);
  1121.         if menu.Current == txt then
  1122.             panel:SetVisible(true)
  1123.         else
  1124.             panel:SetVisible(false)
  1125.         end
  1126.         panel.Paint = function()
  1127.             surface.SetDrawColor( 163, 163, 163, 255 )
  1128.             surface.DrawOutlinedRect( 0, 0, panel:GetWide() - 1, panel:GetTall() - 1)
  1129.             draw.SimpleText(string.upper(txt), "deffont", 10, 5, Color(210, 210, 210, 235), TEXT_ALIGN_LEFT);
  1130.         end
  1131.     end
  1132.     local button = vgui.Create("DButton", menu.buttons);
  1133.     button:SetText(txt);
  1134.     button:SetSize(80, 20);
  1135.     button:SetPos(15, -15+(25*menu.c));
  1136.     button:SetTextColor(color_white)
  1137.     button.Paint = function(self)
  1138.         surface.SetDrawColor(100,100,100,220)
  1139.         surface.DrawRect(0, 0,self:GetSize())
  1140.         surface.SetDrawColor(0,0,0,0)
  1141.         surface.SetTextColor(color_white)
  1142.         surface.DrawOutlinedRect(0,0,self:GetSize())
  1143.     end
  1144.     button.DoClick = func or (tab and tab == true and function()
  1145.         for k,v in pairs(menu.t) do
  1146.             if v ~= panel then
  1147.                 v:SetVisible(false)
  1148.             end
  1149.         end
  1150.         panel:SetVisible(true)
  1151.         menu.Current = txt
  1152.         surface.PlaySound("ambient/levels/canals/drip4.wav");
  1153.     end)
  1154.     return panel, button;
  1155. end
  1156.  
  1157. --derma bullshit + menu niggering
  1158.  
  1159. local function AddFeature(id, parent, typ, name, setting, o1, o2)
  1160.     if not parent then return end
  1161.     if typ == "button" then
  1162.         local label = vgui.Create("DLabel", parent)
  1163.         label:SetText(name)
  1164.         label:SetPos(5,(55+(id*25)))
  1165.         label:SizeToContents(false)
  1166.         local button = vgui.Create("DButton", parent)
  1167.         if defcon.Settings[setting] == true then
  1168.             button:SetText("enabled")
  1169.         else
  1170.             button:SetText("disabled")
  1171.         end
  1172.         button:SetSize(80,20)
  1173.         if not id then
  1174.             button:SetPos(285,45)
  1175.         else
  1176.             button:SetPos(285,(55+(id*25)))
  1177.         end
  1178.         button.DoClick = function()
  1179.             if button:GetText() == "enabled" then
  1180.                 button:SetText("disabled"); defcon.Update("setting", setting, false, true)
  1181.             else
  1182.                 button:SetText("enabled"); defcon.Update("setting", setting, true, true)
  1183.             end
  1184.         end
  1185.         button:SetTextColor(color_white)
  1186.         button.Paint = function(self)
  1187.             surface.SetDrawColor(100,100,100,220)
  1188.             surface.DrawRect(0, 0,self:GetSize())
  1189.             surface.SetDrawColor(0,0,0,0)
  1190.             surface.SetTextColor(color_white)
  1191.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1192.         end
  1193.         return button,label
  1194.     elseif typ == "slider" then
  1195.         local slider = vgui.Create("DNumSlider", parent)
  1196.         slider:SetPos(5, (45+(id*25)))
  1197.         slider:SetText(name)
  1198.         slider:SetMinMax(o1, o2)
  1199.         slider:SetWide(372.5)
  1200.         slider:SetDecimals( 0 )
  1201.         slider:SetFGColor(255,255,255,255)
  1202.         slider:SetBGColor(255,255,255,255)
  1203.         slider:SetValue(defcon.Settings[setting])
  1204.         slider.OnValueChanged = function(panel, value)
  1205.             local c = tonumber(value)
  1206.             defcon.Update("setting", setting, math.Round(c), true)
  1207.         end
  1208.         return slider;
  1209. end
  1210.  
  1211.     if typ == "label" then
  1212.         local label = vgui.Create("DLabel", parent)
  1213.         label:SetText(name)
  1214.         label:SetPos(5,(55+(id*25)))
  1215.         label:SizeToContents(false)
  1216.         label:SetFont("warnign")
  1217.         label.Paint = function(self)
  1218.             label:SetTextColor(Color( 43, 98, 226, 255 ))
  1219.             end
  1220.        
  1221.     return label
  1222. end
  1223.         if typ == "label2" then
  1224.         local label = vgui.Create("DLabel", parent)
  1225.         label:SetText(name)
  1226.         label:SetPos(5,(55+(id*25)))
  1227.         label:SizeToContents(false)
  1228.         label:SetFont("fuck")
  1229.         label.Paint = function(self)
  1230.             label:SetTextColor(Color( 140, 140, 140, 255 ))
  1231.             end
  1232.            
  1233.     return label2
  1234. end
  1235.         if typ == "label3" then
  1236.         local label = vgui.Create("DLabel", parent)
  1237.         label:SetText(name)
  1238.         label:SetPos(5,(55+(id*25)))
  1239.         label:SizeToContents(false)
  1240.         label:SetFont("warnign")
  1241.         label.Paint = function(self)
  1242.             label:SetTextColor(Color( 43, 98, 226, 255 ))
  1243.             end
  1244.        
  1245.     return label3
  1246. end
  1247.         if typ == "def" then
  1248.         local label = vgui.Create("DLabel", parent)
  1249.         label:SetText(name)
  1250.         label:SetPos(5,(55+(id*25)))
  1251.         label:SizeToContents(false)
  1252.         label:SetFont("trike")
  1253.         label.Paint = function(self)
  1254.             label:SetTextColor(Color( 220, 220, 220, 255 ))
  1255.             end
  1256.            
  1257.     return def
  1258. end
  1259.     if not parent then return end
  1260.     if typ == "canser" then
  1261.         local label = vgui.Create("DLabel", parent)
  1262.         label:SetText(name)
  1263.         label:SetPos(5,(55+(id*25)))
  1264.         label:SizeToContents(false)
  1265.         local button = vgui.Create("DButton", parent)
  1266.         if defcon.Settings[setting] == true then
  1267.             button:SetText("enabled")
  1268.         else
  1269.             button:SetText("disabled")
  1270.         end
  1271.         button:SetSize(80,20)
  1272.         if not id then
  1273.             button:SetPos(285,45)
  1274.         else
  1275.             button:SetPos(285,(55+(id*25)))
  1276.         end
  1277.         button.DoClick = function()
  1278.             if button:GetText() == "enabled" then
  1279.                 button:SetText("disabled"); defcon.Update("setting", setting, false, true); RunConsoleCommand "SH_toggle"
  1280.             else
  1281.                 button:SetText("enabled"); defcon.Update("setting", setting, true, true); RunConsoleCommand "SH_toggle"
  1282.             end
  1283.         end
  1284.         button:SetTextColor(color_white)
  1285.         button.Paint = function(self)
  1286.             surface.SetDrawColor(100,100,100,220)
  1287.             surface.DrawRect(0, 0,self:GetSize())
  1288.             surface.SetDrawColor(0,0,0,0)
  1289.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1290.     end
  1291.     end
  1292.     if not parent then return end
  1293.     if typ == "landsernigger" then
  1294.         local label = vgui.Create("DLabel", parent)
  1295.         label:SetText(name)
  1296.         label:SetPos(5,(55+(id*25)))
  1297.         label:SizeToContents(false)
  1298.         local button = vgui.Create("DButton", parent)
  1299.         if defcon.Settings[setting] == true then
  1300.             button:SetText("search")
  1301.         else
  1302.             button:SetText("search")
  1303.         end
  1304.         button:SetSize(80,20)
  1305.         if not id then
  1306.             button:SetPos(285,45)
  1307.         else
  1308.             button:SetPos(285,(55+(id*25)))
  1309.         end
  1310.         button.DoClick = function()
  1311.             if button:GetText() == "enabled" then
  1312.                 button:SetText("search"); defcon.Update("setting", setting, false, true); RunConsoleCommand "pickupinradius"
  1313.             else
  1314.                 button:SetText("search"); defcon.Update("setting", setting, true, true); RunConsoleCommand "pickupinradius"
  1315.             end
  1316.         end
  1317.         button:SetTextColor(color_white)
  1318.         button.Paint = function(self)
  1319.             surface.SetDrawColor(100,100,100,220)
  1320.             surface.DrawRect(0, 0,self:GetSize())
  1321.             surface.SetDrawColor(0,0,0,0)
  1322.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1323.     end
  1324.     end
  1325.         if not parent then return end
  1326.     if typ == "landsernigger6" then
  1327.         local label = vgui.Create("DLabel", parent)
  1328.         label:SetText(name)
  1329.         label:SetPos(5,(55+(id*25)))
  1330.         label:SizeToContents(false)
  1331.         local button = vgui.Create("DButton", parent)
  1332.         if defcon.Settings[setting] == true then
  1333.             button:SetText("enabled")
  1334.         else
  1335.             button:SetText("disabled")
  1336.         end
  1337.         button:SetSize(80,20)
  1338.         if not id then
  1339.             button:SetPos(285,45)
  1340.         else
  1341.             button:SetPos(285,(55+(id*25)))
  1342.         end
  1343.         button.DoClick = function()
  1344.             if button:GetText() == "enabled" then
  1345.                 button:SetText("disabled"); defcon.Update("setting", setting, false, true); RunConsoleCommand ("defcon.chams", "0")
  1346.             else
  1347.                 button:SetText("enabled"); defcon.Update("setting", setting, true, true); RunConsoleCommand ("defcon.chams", "1")
  1348.             end
  1349.         end
  1350.         button:SetTextColor(color_white)
  1351.         button.Paint = function(self)
  1352.             surface.SetDrawColor(100,100,100,220)
  1353.             surface.DrawRect(0, 0,self:GetSize())
  1354.             surface.SetDrawColor(0,0,0,0)
  1355.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1356.     end
  1357.     end
  1358.     if not parent then return end
  1359.     if typ == "landsernigger3" then
  1360.         local label = vgui.Create("DLabel", parent)
  1361.         label:SetText(name)
  1362.         label:SetPos(5,(55+(id*25)))
  1363.         label:SizeToContents(false)
  1364.         local button = vgui.Create("DButton", parent)
  1365.         if defcon.Settings[setting] == true then
  1366.             button:SetText("enabled")
  1367.         else
  1368.             button:SetText("disabled")
  1369.         end
  1370.         button:SetSize(80,20)
  1371.         if not id then
  1372.             button:SetPos(285,45)
  1373.         else
  1374.             button:SetPos(285,(55+(id*25)))
  1375.         end
  1376.         button.DoClick = function()
  1377.             if button:GetText() == "enabled" then
  1378.                 button:SetText("disabled"); defcon.Update("setting", setting, false, true); RunConsoleCommand ("defcon.boxESP", "0")
  1379.             else
  1380.                 button:SetText("enabled"); defcon.Update("setting", setting, true, true); RunConsoleCommand ("defcon.boxESP", "1")
  1381.             end
  1382.         end
  1383.         button:SetTextColor(color_white)
  1384.         button.Paint = function(self)
  1385.             surface.SetDrawColor(100,100,100,220)
  1386.             surface.DrawRect(0, 0,self:GetSize())
  1387.             surface.SetDrawColor(0,0,0,0)
  1388.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1389.     end
  1390.     end
  1391.             if not parent then return end
  1392.     if typ == "landsernigger4" then
  1393.         local label = vgui.Create("DLabel", parent)
  1394.         label:SetText(name)
  1395.         label:SetPos(5,(55+(id*25)))
  1396.         label:SizeToContents(false)
  1397.         local button = vgui.Create("DButton", parent)
  1398.         if defcon.Settings[setting] == true then
  1399.             button:SetText("enabled")
  1400.         else
  1401.             button:SetText("disabled")
  1402.         end
  1403.         button:SetSize(80,20)
  1404.         if not id then
  1405.             button:SetPos(285,45)
  1406.         else
  1407.             button:SetPos(285,(55+(id*25)))
  1408.         end
  1409.         button.DoClick = function()
  1410.             if button:GetText() == "enabled" then
  1411.                 button:SetText("disabled"); defcon.Update("setting", setting, false, true); RunConsoleCommand ("defcon.propchams", "0")
  1412.             else
  1413.                 button:SetText("enabled"); defcon.Update("setting", setting, true, true); RunConsoleCommand ("defcon.propchams", "1")
  1414.             end
  1415.         end
  1416.         button:SetTextColor(color_white)
  1417.         button.Paint = function(self)
  1418.             surface.SetDrawColor(100,100,100,220)
  1419.             surface.DrawRect(0, 0,self:GetSize())
  1420.             surface.SetDrawColor(0,0,0,0)
  1421.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1422.     end
  1423.     end
  1424.                 if not parent then return end
  1425.     if typ == "landsernigger5" then
  1426.         local label = vgui.Create("DLabel", parent)
  1427.         label:SetText(name)
  1428.         label:SetPos(5,(55+(id*25)))
  1429.         label:SizeToContents(false)
  1430.         local button = vgui.Create("DButton", parent)
  1431.         if defcon.Settings[setting] == true then
  1432.             button:SetText("enabled")
  1433.         else
  1434.             button:SetText("disabled")
  1435.         end
  1436.         button:SetSize(80,20)
  1437.         if not id then
  1438.             button:SetPos(285,45)
  1439.         else
  1440.             button:SetPos(285,(55+(id*25)))
  1441.         end
  1442.         button.DoClick = function()
  1443.             if button:GetText() == "enabled" then
  1444.                 button:SetText("disabled"); defcon.Update("setting", setting, false, true); RunConsoleCommand ("defcon.radiochams", "0")
  1445.             else
  1446.                 button:SetText("enabled"); defcon.Update("setting", setting, true, true); RunConsoleCommand ("defcon.radiochams", "1")
  1447.             end
  1448.         end
  1449.         button:SetTextColor(color_white)
  1450.         button.Paint = function(self)
  1451.             surface.SetDrawColor(100,100,100,220)
  1452.             surface.DrawRect(0, 0,self:GetSize())
  1453.             surface.SetDrawColor(0,0,0,0)
  1454.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1455.     end
  1456.     end
  1457.     if not parent then return end
  1458.     if typ == "landsernigger2" then
  1459.         local label = vgui.Create("DLabel", parent)
  1460.         label:SetText(name)
  1461.         label:SetPos(5,(55+(id*25)))
  1462.         label:SizeToContents(false)
  1463.         local button = vgui.Create("DButton", parent)
  1464.         if defcon.Settings[setting] == true then
  1465.             button:SetText("dupe")
  1466.         else
  1467.             button:SetText("dupe")
  1468.         end
  1469.         button:SetSize(80,20)
  1470.         if not id then
  1471.             button:SetPos(285,45)
  1472.         else
  1473.             button:SetPos(285,(55+(id*25)))
  1474.         end
  1475.         button.DoClick = function()
  1476.             if button:GetText() == "enabled" then
  1477.                 button:SetText("dupe"); defcon.Update("setting", setting, false, true); RunConsoleCommand "dupeinradius"
  1478.             else
  1479.                 button:SetText("dupe"); defcon.Update("setting", setting, true, true); RunConsoleCommand "dupeinradius"
  1480.             end
  1481.         end
  1482.         button:SetTextColor(color_white)
  1483.         button.Paint = function(self)
  1484.             surface.SetDrawColor(100,100,100,220)
  1485.             surface.DrawRect(0, 0,self:GetSize())
  1486.             surface.SetDrawColor(0,0,0,0)
  1487.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1488.     end
  1489.     end
  1490. if not parent then return end
  1491.     if typ == "bielodesphgay" then
  1492.         local label = vgui.Create("DLabel", parent)
  1493.         label:SetText(name)
  1494.         label:SetPos(5,(55+(id*25)))
  1495.         label:SizeToContents(false)
  1496.         local button = vgui.Create("DButton", parent)
  1497.         if defcon.Settings[setting] == true then
  1498.             button:SetText("enabled")
  1499.         else
  1500.             button:SetText("disabled")
  1501.         end
  1502.         button:SetSize(80,20)
  1503.         if not id then
  1504.             button:SetPos(285,45)
  1505.         else
  1506.             button:SetPos(285,(55+(id*25)))
  1507.         end
  1508.         button.DoClick = function()
  1509.             if button:GetText() == "enabled" then
  1510.                 button:SetText("disabled"); defcon.Update("setting", setting, false, true); RunConsoleCommand ("entitychams", "0")
  1511.             else
  1512.                 button:SetText("enabled"); defcon.Update("setting", setting, true, true); RunConsoleCommand ("entitychams", "1")
  1513.             end
  1514.         end
  1515.         button:SetTextColor(color_white)
  1516.         button.Paint = function(self)
  1517.             surface.SetDrawColor(100,100,100,220)
  1518.             surface.DrawRect(0, 0,self:GetSize())
  1519.             surface.SetDrawColor(0,0,0,0)
  1520.             surface.DrawOutlinedRect(0,0,self:GetSize())
  1521.     end
  1522.     end
  1523. end
  1524.  
  1525. --button shit
  1526.  
  1527. local function AddButton(parent, text, posx, posy, func)
  1528.     local button = vgui.Create("DButton", parent)
  1529.     button:SetText(text)
  1530.     button:SetSize(80,20)
  1531.     button:SetPos(posx,posy)
  1532.     button:SetTextColor(color_white)
  1533.     button.DoClick = func or function() end
  1534.     button.Paint = function(self)
  1535.         surface.SetDrawColor(100,100,100,220)
  1536.         surface.DrawRect(0, 0,self:GetSize())
  1537.         surface.SetDrawColor(163,163,163,0)
  1538.         surface.DrawOutlinedRect(0,0,self:GetSize())
  1539.     end
  1540.     return button
  1541. end
  1542.  
  1543. local function DrawMenu()
  1544.     if(menu.frame) then menu.frame:Remove(); menu.frame = nil; end
  1545.    
  1546.     menu.c = 0
  1547.    
  1548.     menu.frame = vgui.Create("DFrame");
  1549.     menu.frame:SetPos(ScrW()/2-184, ScrH()/2-155);
  1550.     menu.frame:SetSize(500, 435);
  1551.     menu.frame:SetTitle("Shitcheat 4.10 :: ".. (table.Random(table.Random(defcon.Phrasesall))  ));
  1552.     menu.frame.Paint = function()
  1553.         surface.SetDrawColor(50,50,50,200)
  1554.         surface.DrawRect(0, 0,menu.frame:GetWide(),menu.frame:GetTall())
  1555.         surface.SetDrawColor(163,163,0,0)
  1556.         surface.DrawOutlinedRect(0,0,menu.frame:GetWide(),menu.frame:GetTall())
  1557.     end
  1558.     menu.frame:SetVisible(true);
  1559.     menu.frame:SetDraggable(true);
  1560.     menu.frame:SetSizable(false);
  1561.     menu.frame:ShowCloseButton(false);
  1562.     menu.frame:SetBackgroundBlur(true)
  1563.     menu.frame:MakePopup();
  1564.    
  1565.     menu.close = vgui.Create("DButton", menu.frame)
  1566.     menu.close:SetFont('marlett')
  1567.     menu.close:SetText('r')
  1568.     menu.close:SetColor(Color(255, 255, 255, 255))
  1569.     menu.close:SetSize(15, 15)
  1570.     menu.close:SetDrawBackground(false)
  1571.     menu.close:SetPos(menu.frame:GetWide() - 20, 5)
  1572.     menu.close.DoClick = function()
  1573.         menu.frame:Remove(); menu.frame = nil;
  1574.     end
  1575.  
  1576.     menu.buttons = vgui.Create("DPanel",menu.frame)
  1577.     menu.buttons:SetPos(5, 25)
  1578.     menu.buttons:SetSize(111,406)
  1579.     menu.buttons:SetVisible(true)
  1580.     menu.buttons.Paint = function()
  1581.         surface.SetDrawColor(163,163,163,255)
  1582.         surface.DrawOutlinedRect(0,0,110,405)
  1583.     end
  1584.  
  1585.     menu.t.def = vgui.Create("DPanel", menu.frame);
  1586.     menu.t.def:SetPos(120,25);
  1587.     menu.t.def:SetSize(376,406);
  1588.     if menu.Current ~= nil then menu.t.def:SetVisible(false) end
  1589.     menu.t.def.Paint = function()
  1590.         surface.SetDrawColor( 163, 163, 163, 255 )
  1591.         surface.DrawOutlinedRect( 0, 0, menu.t.def:GetWide() - 1, menu.t.def:GetTall() - 1)
  1592.     end
  1593.    
  1594.     menu.t.a, menu.b.a      = AddTab("Aimbot",      true)
  1595.     menu.t.p, menu.b.p      = AddTab("Player ESP",  true)
  1596.     menu.t.e, menu.b.e      = AddTab("Entity ESP",  true)
  1597.     menu.t.m, menu.b.m      = AddTab("Misc.",       true)
  1598.     menu.t.c, menu.b.c      = AddTab("Chat Spam",   true)
  1599.     menu.t.f, menu.b.f      = AddTab("Freecam",     true)
  1600.     --id, parent , the type, the text , setting
  1601.     AddFeature(1, menu.t.a, "button", "", "aimbot")
  1602.     AddFeature(1, menu.t.a, "def", "Enabled")
  1603.     AddFeature(2, menu.t.a, "button", "", "triggerbot")
  1604.     AddFeature(2, menu.t.a, "def", "Triggerbot")
  1605.     AddFeature(3, menu.t.a, "button", "", "aimbot_friendly_fire")
  1606.     AddFeature(3, menu.t.a, "def", "Friendly Fire")
  1607.     AddFeature(4, menu.t.a, "slider", "", "aimbot_fov", 0, 180)
  1608.     AddFeature(4, menu.t.a, "def", "FOV")
  1609.     AddFeature(6, menu.t.a, "label2", "The aimbot key is left alt by default                                                                                                                 ")
  1610.    
  1611.     AddFeature(1, menu.t.p, "button", "", "esp_player")
  1612.     AddFeature(1, menu.t.p, "def", "Enabled")
  1613.     AddFeature(2, menu.t.p, "button", "", "esp_player_name")
  1614.     AddFeature(2, menu.t.p, "def", "Show Name")
  1615.     AddFeature(3, menu.t.p, "button", "", "esp_player_rank")
  1616.     AddFeature(3, menu.t.p, "def", "Show Rank")
  1617.     AddFeature(4, menu.t.p, "button", "", "esp_player_health")
  1618.     AddFeature(4, menu.t.p, "def", "Show Health")
  1619.     AddFeature(5, menu.t.p, "button", "", "esp_player_armor")
  1620.     AddFeature(5, menu.t.p, "def", "Show Armor")
  1621.     AddFeature(6, menu.t.p, "button", "", "esp_player_showdist")
  1622.     AddFeature(6, menu.t.p, "def", "Show Distance")
  1623.     AddFeature(7, menu.t.p, "slider", "", "esp_player_dist", 0, 16000)
  1624.     AddFeature(7, menu.t.p, "def", "Draw Distance")
  1625.     AddFeature(8, menu.t.p, "button", "", "esp_player_glow")
  1626.     AddFeature(8, menu.t.p, "def", "Draw Glow Halo")
  1627.     AddFeature(9, menu.t.p, "button", "", "lasereyes")
  1628.     AddFeature(9, menu.t.p, "def", "Laser Eyes")
  1629.     AddFeature(10,menu.t.p, "landsernigger3", "", "defcon.boxESP")
  1630.     AddFeature(10,menu.t.p, "def", "Draw Hitboxes")
  1631.     AddFeature(11,menu.t.p, "landsernigger6", "", "defcon.chams")
  1632.     AddFeature(11,menu.t.p, "def", "Player Chams")
  1633.    
  1634.     AddFeature(1, menu.t.e, "button", "", "esp_entity")
  1635.     AddFeature(1, menu.t.e, "def", "Entity Finder")
  1636.     AddFeature(2, menu.t.e, "slider", "", "esp_entity_dist", 0, 16000)
  1637.     AddFeature(2, menu.t.e, "def", "Draw Distance")
  1638.     AddFeature(3, menu.t.e, "landsernigger4", "", "defcon.propchams")
  1639.     AddFeature(3, menu.t.e, "def", "Physics Prop chams")
  1640.     AddFeature(4, menu.t.e, "bielodesphgay", "", "entitychams")
  1641.     AddFeature(4, menu.t.e, "def", "Entity chams")
  1642.    
  1643.     AddFeature(1, menu.t.m, "button", "", "flashlight_spam")
  1644.     AddFeature(1, menu.t.m, "def", "Flashlight Spam [hold leftarrow]")
  1645.     AddFeature(2, menu.t.m, "button", "", "bhop_bhop")
  1646.     AddFeature(2, menu.t.m, "def", "Bunny hopping [hold space]")
  1647.     AddFeature(3, menu.t.m, "button", "", "crosshair")
  1648.     AddFeature(3, menu.t.m, "def", "Client side crosshair")
  1649.     AddFeature(4, menu.t.m, "button", "", "velocity")
  1650.     AddFeature(4, menu.t.m, "def", "Big velocity meter")
  1651.     AddFeature(5, menu.t.m, "landsernigger", "","pickupinradius")
  1652.     AddFeature(5, menu.t.m, "def", "Pick up items in radius [Clockwork schemas only]")
  1653.     AddFeature(6, menu.t.m, "label2", "Console coammand: pickupinradius                                               ")
  1654.     AddFeature(7, menu.t.m, "landsernigger2", "", "dupeinradius")
  1655.     AddFeature(7, menu.t.m, "def", "Duplicate items in radius [Clockwork schemas only]")
  1656.     AddFeature(8, menu.t.m, "label2", "Console command: dupeinradius                                               ")
  1657.  
  1658.    
  1659.     AddFeature(1, menu.t.c, "button", "", "chatspam1")
  1660.     AddFeature(1, menu.t.c, "def", "Random messages")
  1661.     AddFeature(2, menu.t.c, "button", "", "chatspam2")
  1662.     AddFeature(2, menu.t.c, "def", "HL2RP VC messages")
  1663.     AddFeature(3, menu.t.c, "button", "", "chatspam3")
  1664.     AddFeature(3, menu.t.c, "def", "WWWWWWWWWWWWWWWWWW")
  1665.     AddFeature(4, menu.t.c, "button", "", "chatspam4")
  1666.     AddFeature(4, menu.t.c, "def", "Menu display messages")
  1667.    
  1668.     AddFeature(1, menu.t.f, "canser", "", "cl_noclip")
  1669.     AddFeature(1, menu.t.f, "def", "New Freecam")
  1670.  
  1671.     AddFeature(11, menu.t.f, "label", "NOTICE: entities may not appear when using freecam                                                     ")
  1672.    
  1673.     if string.find(gmod.GetGamemode().Name, "DarkRP") then
  1674.         AddFeature(1, menu.t.g, "button", "God-mode Exploit (Costs in-game $$$)", "darkrp_god")
  1675.     end
  1676.     local elist
  1677.     local elist2
  1678.     local elistc
  1679.     local elistc2
  1680.     local function makeelist()
  1681.         elist = vgui.Create("DComboBox", menu.t.e)
  1682.         elist:SetPos(10,menu.t.e:GetTall()-43)
  1683.         elist:SetSize(130,20)
  1684.         for k,v in pairs(defcon.Ents()) do
  1685.             if not(defcon.Entities[v]) then
  1686.                 local i = elist:AddChoice(v)
  1687.             end
  1688.         end
  1689.         elist.OnSelect = function(index,value,data)
  1690.             print(data)
  1691.             elist2 = data
  1692.         end
  1693.     end
  1694.     local function makeelistc()
  1695.         elistc = vgui.Create("DComboBox", menu.t.e)
  1696.         elistc:SetPos(235, menu.t.e:GetTall()-43)
  1697.         elistc:SetSize(130,20)
  1698.         for k,v in pairs(defcon.Entities) do
  1699.             local i = elistc:AddChoice(v)
  1700.         end
  1701.         elistc.OnSelect = function(index,value,data)
  1702.             elistc2 = data
  1703.         end
  1704.     end
  1705.     makeelist()
  1706.     makeelistc()
  1707.     AddButton(menu.t.e, "Add Entity", 35, menu.t.e:GetTall()-23, function()
  1708.         if(elist2) then
  1709.             for k,v in pairs(defcon.Ents()) do
  1710.                 if (v == elist2) then
  1711.                     print(v)
  1712.                     table.insert(defcon.Entities, v)
  1713.                     defcon.Update("entity")
  1714.                 end
  1715.             end
  1716.         end
  1717.         makeelist()
  1718.         makeelistc()
  1719.     end)
  1720.     AddButton(menu.t.e, "Remove Entity", 260, menu.t.e:GetTall()-23, function()
  1721.         if(elistc2) then
  1722.             for k,v in pairs(defcon.Entities) do
  1723.                 if (v == elistc2) then
  1724.                     defcon.Entities[k] = nil;
  1725.                     defcon.Update("entity")
  1726.                 end
  1727.             end
  1728.         end
  1729.         makeelist()
  1730.         makeelistc()
  1731.     end)
  1732.     local flist
  1733.     local flist2
  1734.     local flistc
  1735.     local flistc2
  1736.     local function makeflist()
  1737.         flist = vgui.Create("DComboBox", menu.t.a)
  1738.         flist:SetPos(10,menu.t.a:GetTall()-43)
  1739.         flist:SetSize(130,20)
  1740.         for k,v in pairs(player.GetAll()) do
  1741.             if v ~= LocalPlayer() then
  1742.                 if not(defcon.Whitelist[v:SteamID()]) then
  1743.                     local i = flist:AddChoice(v:Nick())
  1744.                 end
  1745.             end
  1746.         end
  1747.         flist.OnSelect = function(index,value,data)
  1748.             print(data)
  1749.             elist2 = data
  1750.         end
  1751.     end
  1752.  
  1753. end
  1754.  
  1755. --panic mode for servers with serverguard
  1756.  
  1757. _G.render.Capture = function( data, func )
  1758.  
  1759.     if ( data.format == "jpeg" ) then
  1760.  
  1761.         RunConsoleCommand("panicmode", "1"); surface.PlaySound("vo/NovaProspekt/eli_foundme02.wav");
  1762.         print ("[Shitcheat] Someone tried to screencap you using serverguard! all visible elements have been disabled.")
  1763.         print ("[ShitCheat] To re-enable them, type 'panicmode 0' into the console.")
  1764.  
  1765.     elseif ( data.format == "png" ) then
  1766.  
  1767.         RunConsoleCommand("panicmode", "1"); surface.PlaySound("vo/NovaProspekt/eli_foundme02.wav");
  1768.         print ("[Shitcheat] Someone tried to screencap you using serverguard! all visible elements have been disabled.")
  1769.         print ("[ShitCheat] To re-enable them, type 'panicmode 0' into the console.")
  1770.        
  1771.     else
  1772.    
  1773.         RunConsoleCommand("panicmode", "1"); surface.PlaySound("vo/NovaProspekt/eli_foundme02.wav");
  1774.         print ("[Shitcheat] Someone tried to screencap you using serverguard! all visible elements have been disabled.")
  1775.         print ("[ShitCheat] To re-enable them, type 'panicmode 0' into the console.")
  1776.    
  1777.     end
  1778.  
  1779. end
  1780.  
  1781. --clientside noclip / freecam
  1782.  
  1783. local SH = {}
  1784.  
  1785. SH.Enabled = false
  1786. SH.ViewOrigin = Vector( 0, 0, 0 )
  1787. SH.ViewAngle = Angle( 0, 0, 0 )
  1788. SH.Velocity = Vector( 0, 0, 0 )
  1789.  
  1790. function SH.CalcView( ply, origin, angles, fov, p, o, a, f )
  1791.     if ( !SH.Enabled ) then return end
  1792.     if ( SH.SetView ) then
  1793.         SH.ViewOrigin = origin
  1794.         SH.ViewAngle = angles
  1795.        
  1796.         SH.SetView = false
  1797.     end
  1798.     return { origin = SH.ViewOrigin, angles = SH.ViewAngle }
  1799. end
  1800. hook.Add( "CalcView", "niggerwalk", SH.CalcView )
  1801.  
  1802. function SH.CreateMove( cmd, ply, origin, angles, fov, p, o, a, f )
  1803.     if ( !SH.Enabled ) then return end
  1804.    
  1805.     local time = FrameTime()
  1806.     SH.ViewOrigin = SH.ViewOrigin + ( SH.Velocity * time)
  1807.     SH.Velocity = SH.Velocity * 0.95
  1808.    
  1809.     local sensitivity = 0.022
  1810.     SH.ViewAngle.p = math.Clamp( SH.ViewAngle.p + ( cmd:GetMouseY() * sensitivity ), -89, 89 )
  1811.     SH.ViewAngle.y = SH.ViewAngle.y + ( cmd:GetMouseX() * -1 * sensitivity )
  1812.    
  1813.     local nig = Vector( 0, 0, 0 )
  1814.     local add = Vector( 0, 0, 0 )
  1815.     local ang = SH.ViewAngle
  1816.     if ( cmd:KeyDown( IN_FORWARD ) ) then add = add + ang:Forward() end
  1817.     if ( cmd:KeyDown( IN_BACK ) ) then add = add - ang:Forward() end
  1818.     if ( cmd:KeyDown( IN_MOVERIGHT ) ) then add = add + ang:Right() end
  1819.     if ( cmd:KeyDown( IN_MOVELEFT ) ) then add = add - ang:Right() end
  1820.     if ( cmd:KeyDown( IN_JUMP ) ) then add = add + ang:Up() end
  1821.     if ( cmd:KeyDown( IN_DUCK ) ) then add = add - ang:Up() end
  1822.    
  1823.     add = add:GetNormal() * time * 500
  1824.     if ( cmd:KeyDown( IN_SPEED ) ) then add = add * 2 end
  1825.    
  1826.     SH.Velocity = SH.Velocity + add
  1827.    
  1828.     if ( SH.LockView == true ) then
  1829.         SH.LockView = cmd:GetViewAngles()
  1830.     end
  1831.     if ( SH.LockView ) then
  1832.         cmd:SetViewAngles( SH.LockView )
  1833.     end
  1834.    
  1835.     cmd:SetForwardMove( 0 )
  1836.     cmd:SetSideMove( 0 )
  1837.     cmd:SetUpMove( 0 )
  1838. end
  1839. hook.Add( "CreateMove", "niggerwalk", SH.CreateMove )
  1840.  
  1841. function SH.Toggle()
  1842.     SH.Enabled = !SH.Enabled
  1843.     SH.LockView = SH.Enabled
  1844.     SH.SetView = true
  1845.    
  1846.     local status = { [ true ] = "enabled", [ false ] = "disabled" }
  1847. end
  1848. concommand.Add( "SH_toggle", SH.Toggle )
  1849.  
  1850. concommand.Add( "SH_pos", function() print( SH.ViewOrigin ) end )
  1851.    
  1852. --best esp
  1853.  
  1854. hook.Add("HUDPaint", "catHUD", function()
  1855.     if defcon.Settings["esp_player"] and GetConVarNumber("panicmode") == 0 or defcon.Settings["esp_entity"] and GetConVarNumber("panicmode") == 0 then
  1856.         for k,v in pairs(ents.GetAll()) do
  1857.             if defcon.Settings["esp_player"] && v:IsPlayer() and GetConVarNumber("panicmode") == 0 then
  1858.                 if(espcheck("player", v) and espdistance("player", v) and GetConVarNumber("panicmode") == 0 )then
  1859.                     local ESP = (v:EyePos()):ToScreen()
  1860.                     local name,health,rank,col,distance = "","","","",""
  1861.                     local outcol = Color(0,0,0,255)
  1862.                     local white = Color(255,255,255,255)
  1863.                     local outcol2 = outcol
  1864.                     if defcon.Settings["esp_player_name"] and GetConVarNumber("panicmode") == 0 then
  1865.                         if v.GetRPName then name = v:GetRPName()
  1866.                         else name = v:Nick() end
  1867.                     end
  1868.                     if v:Nick() ~= name then rank = " "..v:Nick() end
  1869.                     if v.SteamName and name ~= v:SteamName() then rank = " "..v:SteamName() end
  1870.                     if defcon.Settings["esp_player_rank"] and GetConVarNumber("panicmode") == 0 then
  1871.                         if v:IsSuperAdmin() then
  1872.                             rank = "[Super Admin]"..rank
  1873.                         elseif v:IsAdmin() then
  1874.                             rank = "[Admin]"..rank
  1875.                         elseif v:IsUserGroup("moderator") or v:IsUserGroup("mod") then
  1876.                             rank = "[Moderator]"..rank
  1877.                         elseif v:IsUserGroup("vip") or v:IsUserGroup("donator") then
  1878.                             rank = "[Donator]"..rank
  1879.                         end
  1880.                     end
  1881.                     if defcon.Settings["esp_player_health"] and GetConVarNumber("panicmode") == 0 and not(defcon.Settings["esp_player_armor"]) then
  1882.                         health = v:Health().."H"
  1883.                     elseif defcon.Settings["esp_player_armor"] and GetConVarNumber("panicmode") == 0 and not(defcon.Settings["esp_player_health"]) then
  1884.                         health = v:Armor().."A"
  1885.                     elseif defcon.Settings["esp_player_armor"] and GetConVarNumber("panicmode") == 0 and defcon.Settings["esp_player_health"] then
  1886.                         health = v:Health().. "H - "..v:Armor().."A"
  1887.                     end
  1888.                     if defcon.Settings["esp_player_showdist"] and GetConVarNumber("panicmode") == 0 then
  1889.                         distance = v:GetPos():Distance(LocalPlayer():GetPos())
  1890.                         distance = math.Round(distance).." m"
  1891.                     end
  1892.                     col = team.GetColor(v:Team())
  1893.                     if(col.r <= 50 and col.g <= 50 and col.b <= 50) then
  1894.                         outcol2 = Color(200,200,200,255)
  1895.                     end
  1896.                     if col.a <= 50 then
  1897.                         col = Color(col.r,col.g,col.b, 255)
  1898.                     end
  1899.                     draw.SimpleTextOutlined(rank, "deffontesp2", ESP.x, ESP.y -46, col, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, outcol2)
  1900.                     draw.SimpleTextOutlined(name, "deffontesp1", ESP.x, ESP.y - 34, col, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, outcol2)
  1901.                     if health ~= "" then
  1902.                         draw.SimpleTextOutlined(health, "deffontesp2", ESP.x, ESP.y -22, white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, outcol)
  1903.                         draw.SimpleTextOutlined(distance, "deffontesp2", ESP.x, ESP.y - 10, white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, outcol)
  1904.                     else
  1905.                         draw.SimpleTextOutlined(distance, "deffontesp2", ESP.x, ESP.y - 22, white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, outcol)
  1906.                     end
  1907.                     if defcon.Settings["esp_player_glow"] and GetConVarNumber("panicmode") == 0 then
  1908.                         halo.Add({v}, col, 2, 2, 1, true, true)
  1909.                     end
  1910.                 end
  1911.             end
  1912.             if (defcon.Settings["esp_entity"] and espcheck("entity", v) and espdistance("entity", v) and GetConVarNumber("panicmode") == 0)then
  1913.                 if table.HasValue(defcon.Entities, v:GetClass()) then
  1914.                     local ESP = (v:EyePos()):ToScreen()
  1915.                     draw.SimpleTextOutlined(v:GetClass(), "deffontesp1", ESP.x, ESP.y - 46, Color(255,0,0,255), TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, Color(0,0,0,255))
  1916.                 end
  1917.             end
  1918.         end
  1919.     end
  1920.                     for k, v in pairs( player.GetAll() ) do
  1921.                             if ( GAMEMODE_NAME == "cwhl2rp" ) and GetConVarNumber("panicmode") == 0 then
  1922.                             if( v == LocalPlayer() ) then continue; end
  1923.                             local ESP = (v:EyePos()):ToScreen()
  1924.                             local hpos = v:GetPos();
  1925.                             local dist = hpos:Distance( LocalPlayer():GetPos() );
  1926.                             local m = dist / 39.36;
  1927.     if( dist <= math.min( Clockwork.config:Get( "talk_radius" ):Get() / 3, 80 ) ) and( GAMEMODE_NAME == "cwhl2rp" ) then
  1928.             draw.SimpleTextOutlined( "Whisper Range", "deffontesp2", ESP.x, ESP.y +2, white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, Color(0,0,0,255) );
  1929.         elseif( dist <= Clockwork.config:Get( "talk_radius" ):Get() ) then
  1930.             draw.SimpleTextOutlined( "Talk Range", "deffontesp2", ESP.x, ESP.y +2, white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, Color(0,0,0,255) );
  1931.         elseif( dist <= Clockwork.config:Get( "talk_radius" ):Get() * 2 ) then
  1932.             draw.SimpleTextOutlined( "Yell Range", "deffontesp2", ESP.x, ESP.y +2, white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, Color(0,0,0,255) );
  1933.         else
  1934.             draw.SimpleTextOutlined( "Out of text Range", "deffontesp2", ESP.x, ESP.y +2, white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, 1, Color(0,0,0,255) );
  1935. end
  1936. end
  1937. end
  1938. end)
  1939.  
  1940. --still waiting for robotboy to fix seteyeangles (Fuck you FP)
  1941.  
  1942. hook.Add("Think", "catBOT", function(ucmd, origin, angles, calcview, fov, p, o, a, f, aaaaa )
  1943.     if(input.IsKeyDown(KEY_TAB) && input.IsKeyDown(KEY_Q) && !menu.frame)then
  1944.         DrawMenu()
  1945.     elseif(menu.frame && input.IsKeyDown(KEY_BACKSPACE))then
  1946.         menu.frame:Remove();menu.frame = nil
  1947.     end
  1948.     if defcon.Settings["flashlight_spam"] and input.IsKeyDown(KEY_LEFT) then
  1949.         RunConsoleCommand("impulse", "100")
  1950.     end
  1951.     if(defcon.Settings["triggerbot"] && input.IsMouseDown(MOUSE_MIDDLE)) then
  1952.         local pos = LocalPlayer():GetShootPos()
  1953.         local ang = LocalPlayer():GetAimVector()
  1954.         local tracedata = {}
  1955.         tracedata.start = pos
  1956.         tracedata.endpos = pos+(ang*9999999999999)
  1957.         local trace = util.TraceLine(tracedata)
  1958.         if(trace.HitNonWorld) then
  1959.             target = trace.Entity
  1960.             if(target:IsPlayer() and defcon.CanTarget(target)) then
  1961.                 RunConsoleCommand("+attack")
  1962.                 timer.Simple(0.000000000000000000001, function() RunConsoleCommand("-attack") end)
  1963.             end
  1964.         end
  1965.     end
  1966.    
  1967.    
  1968.     local SetEyeAngles = SetEyeAngles;
  1969.     if(defcon.Settings["aimbot"] && /*input.IsKeyDown(defcon.AimKey)*/ input.IsKeyDown(KEY_F8)) then
  1970.         for k,v in pairs(player.GetAll()) do
  1971.             if defcon.CanTarget(v) then
  1972.                 local head = v:LookupBone("ValveBiped.Bip01_Head1")
  1973.                 if head ~= nil then
  1974.                     local fov = defcon.Settings["aimbot_fov"]
  1975.                     if fov == 0 then
  1976.                         local headpos,targetheadang = v:GetBonePosition(head)
  1977.                         LocalPlayer():SetEyeAngles((headpos - LocalPlayer():GetShootPos()):Angle())
  1978.                     else
  1979.                         local lpang = LocalPlayer():GetAngles();
  1980.                         local ang = (v:GetPos() - LocalPlayer():GetPos()):Angle();
  1981.                         local ady = math.abs(math.NormalizeAngle(lpang.y - ang.y))
  1982.                         local adp = math.abs(math.NormalizeAngle(lpang.p - ang.p ))
  1983.                         if not(ady > fov or adp > fov) then
  1984.                             local headpos,targetheadang = v:GetBonePosition(head)
  1985.                             if headpos != nil and targetheadang != nil then
  1986.                                 LocalPlayer():SetEyeAngles((headpos - LocalPlayer():GetShootPos()):Angle())
  1987.                             end
  1988.                         end
  1989.                     end
  1990.                 end
  1991.             end
  1992.         end
  1993.     end
  1994.     if defcon.Settings["ttt_deathnotifs"] then
  1995.         for k,v in pairs(player.GetAll()) do
  1996.             if v:Alive() and not (defcon.Alive[v:UniqueID()] == true) then
  1997.                 defcon.Alive[v:UniqueID()] = true
  1998.             elseif not v:Alive() and (defcon.Alive[v:UniqueID()] == true) then
  1999.                 defcon.Alive[v:UniqueID()] = false
  2000.                 notification.AddLegacy(v:Nick().. (" "..defcon.Phrases2[math.random(1, table.Count(defcon.Phrases2))]), NOTIFY_GENERIC, 5)
  2001.                 print ( "[Shitcheat] " .. v:Nick().. (" "..defcon.Phrases2[math.random(1, table.Count(defcon.Phrases2))]))
  2002.             end
  2003.         end
  2004.     end
  2005. end)
  2006.  
  2007. --bhop (should toggle if you don't use catapult)
  2008.  
  2009. hook.Add( "CreateMove", "Billard_Bhop", function( ucmd )
  2010.     if defcon.Settings["bhop_bhop"] then
  2011.         if ucmd:KeyDown( IN_JUMP ) then
  2012.             if LocalPlayer():WaterLevel() <= 1 && LocalPlayer():GetMoveType() != MOVETYPE_LADDER && !LocalPlayer():IsOnGround() then
  2013.                     ucmd:RemoveKey( IN_JUMP )
  2014.             end
  2015.         end
  2016.     end
  2017. end )
  2018.  
  2019.  
  2020. --velocity meter
  2021.  
  2022. surface.CreateFont("velmet", {
  2023.  size = 50,
  2024.  weight = 50,
  2025.  antialias = true,
  2026.  font = "courier new"
  2027.  });
  2028.  
  2029. hook.Add("HUDPaint", "Velocity", function()
  2030.     for k,v in pairs(player.GetAll()) do
  2031.         if defcon.Settings ["velocity"] and GetConVarNumber("panicmode") == 0 then
  2032.             local showvel = math.floor(LocalPlayer():GetVelocity():Length())
  2033.                 draw.RoundedBox(1, ScrW()/2.5, ScrH()/1.07, ScrW()/4.21, ScrH()/26, Color(50, 50, 50, 150))
  2034.                 draw.DrawText("VELOCITY: "..showvel, "velmet", ScrW()/2.5, ScrH()/1.075, Color(255, 255, 255, 185))
  2035.                 end
  2036.             end
  2037.     end)
  2038.    
  2039. --crosshair
  2040.  
  2041. hook.Add( "HUDPaint", "CrossHair", function ( ucmd )
  2042.     if defcon.Settings["crosshair"] and GetConVarNumber("panicmode") == 0 then
  2043.         local h = ScrH() / 2
  2044.         local w = ScrW() / 2
  2045.         local h1 = ScrH() / 2
  2046.         local w1 = ScrW() / 2
  2047.        
  2048.         surface.SetDrawColor( 0, 255, 255 )
  2049.         surface.DrawLine( w + 10, h, w - 10, h )
  2050.         surface.DrawLine( w, h + 10, w, h - 10 )
  2051.     end
  2052.        
  2053. end)
  2054.  
  2055. --physics prop ESP
  2056.  
  2057. local propchams = CreateMaterial("propchams","VertexLitGeneric",{
  2058.         ["$basetexture"] = "models/debug/debugwhite",
  2059.         ["$model"] = 1,
  2060.         ["$translucent"] = 1,
  2061.         ["$alpha"] = 1,
  2062.         ["$nocull"] = 1,
  2063.         ["$ignorez"] = 1
  2064. }
  2065. )
  2066.  
  2067. hook.Add( "HUDPaint", "PropESP", function()
  2068.     for k,v in pairs ( ents.FindByClass( "prop_physics" ) ) do
  2069.         if GetConVarNumber("defcon.propchams") == 1 and GetConVarNumber("panicmode") == 0 then
  2070.             cam.Start3D(EyePos(), EyeAngles())
  2071.                 if v:IsValid() then
  2072.                     render.SuppressEngineLighting( false )
  2073.                     render.MaterialOverride( propchams )
  2074.                     render.SetBlend(0.2)
  2075.                     render.SetColorModulation( 0, 255, 0)
  2076.                     v:DrawModel()
  2077.             cam.End3D()
  2078.             end
  2079.         end
  2080.     end
  2081. end)
  2082.  
  2083. -- player chams (copy-pasted from an old shitty lua file i found in my shit folder one day)
  2084.  
  2085. hook.Add( "HUDPaint", "ESPChams", function()
  2086.  
  2087.     for k,v in pairs ( player.GetAll() ) do
  2088.     if GetConVarNumber("defcon.chams") == 1 and GetConVarNumber("panicmode") == 0 then
  2089.        
  2090.         if SafeCheck(v) == true then
  2091.        
  2092.             local ply = LocalPlayer()
  2093.            
  2094.             cam.Start3D(EyePos(), EyeAngles())
  2095.                      render.MaterialOverride( propchams )
  2096.                      render.SuppressEngineLighting( false )
  2097.                      render.SetBlend( 1 )
  2098.                      render.SetColorModulation( 0, 255, 255 )
  2099.                     v:DrawModel();
  2100.                     -- This bit is for weapons. --
  2101.                      render.MaterialOverride( propchams )
  2102.                      render.SuppressEngineLighting( false )
  2103.                      render.SetBlend( 1 )
  2104.                      render.SetColorModulation( 255, 0, 0 )
  2105.                     v:GetActiveWeapon():DrawModel()
  2106.                 cam.End3D()
  2107.         end
  2108.     end
  2109. end
  2110. end)
  2111.  
  2112. --box ESP
  2113.  
  2114. hook.Add("HUDPaint", "3DBoxESP", function()
  2115.     for k,v in pairs(player.GetAll()) do
  2116.         if GetConVarNumber("defcon.boxESP") == 1 and GetConVarNumber("panicmode") == 0 then
  2117.             if SafeCheck(v) == true then
  2118.             local ply = LocalPlayer()
  2119.             local plyPos = v:GetPos()
  2120.             local head = v:OBBMaxs()
  2121.             local feet = v:OBBMins()
  2122.             local eye = v:EyeAngles()
  2123.                 cam.Start3D()
  2124.                     render.DrawWireframeBox( plyPos, Angle( 0, eye.y, 0), feet, head, team.GetColor(v:Team()) )
  2125.                      cam.End3D()
  2126.                   end
  2127.            end
  2128.     end
  2129. end)
  2130.  
  2131. --entity chams (works with darkrp shit too)
  2132.  
  2133. hook.Add("HUDPaint", "entityespchams", function()
  2134.     if (GetConVarNumber("entitychams") == 1) and GetConVarNumber("panicmode") == 0 then
  2135.     for k, v in pairs(ents.GetAll()) do
  2136.                                 if string.find(v:GetClass(), "printer") then
  2137.                                             cam.Start3D(EyePos(), EyeAngles())
  2138.                                             if v:IsValid() then
  2139.                                             render.SuppressEngineLighting( false )
  2140.                                             render.MaterialOverride("models/debug/debugwhite")
  2141.                                             render.SetBlend( 1 )
  2142.                                             render.SetColorModulation( 0, 255, 255)
  2143.                                             v:DrawModel()
  2144.                                             cam.End3D()
  2145.                                             end
  2146.                                         elseif v:GetClass() == "spawned_shipment" then
  2147.                                                     cam.Start3D(EyePos(), EyeAngles())
  2148.                                             if v:IsValid() then
  2149.                                             render.SuppressEngineLighting( false )
  2150.                                             render.MaterialOverride("models/debug/debugwhite")
  2151.                                             render.SetBlend( 1 )
  2152.                                             render.SetColorModulation( 0, 255, 255)
  2153.                                             v:DrawModel()
  2154.                                             cam.End3D()
  2155.                                             end
  2156.                                             elseif table.HasValue(defcon.Entities, v:GetClass()) then
  2157.                                             cam.Start3D(EyePos(), EyeAngles())
  2158.                                             if v:IsValid() then
  2159.                                             render.SuppressEngineLighting( false )
  2160.                                             render.MaterialOverride("models/debug/debugwhite")
  2161.                                             render.SetBlend( 1 )
  2162.                                             render.SetColorModulation( 0, 255, 255)
  2163.                                             v:DrawModel()
  2164.                                             cam.End3D()
  2165.                                             end
  2166.                                             elseif string.find(v:GetClass(), "durgz") then
  2167.                                             cam.Start3D(EyePos(), EyeAngles())
  2168.                                             if v:IsValid() then
  2169.                                             render.SuppressEngineLighting( false )
  2170.                                             render.MaterialOverride("models/debug/debugwhite")
  2171.                                             render.SetBlend( 1 )
  2172.                                             render.SetColorModulation( 0, 255, 255)
  2173.                                             v:DrawModel()
  2174.                                             cam.End3D()
  2175.                                             end
  2176.                                             elseif v:GetClass() == "spawned_weapon" then
  2177.                                             cam.Start3D(EyePos(), EyeAngles())
  2178.                                             if v:IsValid() then
  2179.                                             render.SuppressEngineLighting( false )
  2180.                                             render.MaterialOverride("models/debug/debugwhite")
  2181.                                             render.SetBlend( 1 )
  2182.                                             render.SetColorModulation( 0, 255, 255)
  2183.                                             v:DrawModel()
  2184.                                             cam.End3D()
  2185.                                             end
  2186.                                             elseif v:GetClass() == "spawned_money" then
  2187.                                             cam.Start3D(EyePos(), EyeAngles())
  2188.                                             if v:IsValid() then
  2189.                                             render.SuppressEngineLighting( false )
  2190.                                             render.MaterialOverride("models/debug/debugwhite")
  2191.                                             render.SetBlend( 1 )
  2192.                                             render.SetColorModulation( 0, 255, 255)
  2193.                                             v:DrawModel()
  2194.                                             cam.End3D()
  2195.                                             end
  2196.                                             else
  2197.                                        
  2198.                                 end
  2199.                         end
  2200.                 end    
  2201. end)
  2202.  
  2203. --chat spam 1
  2204.  
  2205. local function Spam2()
  2206.     if defcon.Settings["chatspam1"] then
  2207.         if ( GAMEMODE_NAME == "cwhl2rp" ) then
  2208.          LocalPlayer():ConCommand("cwsay "..table.Random(normalspam).." " )
  2209.          else
  2210.          LocalPlayer():ConCommand("say "..table.Random(normalspam).." " )
  2211.          end
  2212.     end
  2213. end
  2214. timer.Create("Spammins2", .05,0,Spam2)
  2215.  
  2216. normalspam = {}
  2217. normalspam[1] = "mods = fags"
  2218. normalspam[2] = "I hate niggers"
  2219. normalspam[3] = "sheo was here"
  2220. normalspam[4] = "try finger but hole"
  2221. normalspam[5] = "time for crab"
  2222. normalspam[6] = "THIS SERVER IS GETTING FUCKING NULLED RN"
  2223. normalspam[7] = "whoever made this server is a fucking downie holy shit"
  2224. normalspam[8] = "this serv sucks, fuck you guys"
  2225. normalspam[9] = "im not hacking wtf?"
  2226. normalspam[10] = "Mega.co.nz is famous for it's shitposting on 4chan."
  2227. normalspam[11] = "How much memes could a cock suck if 9/11?"
  2228. normalspam[12] = "assrape"
  2229. normalspam[13] = "AHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
  2230. normalspam[14] = "Sweedish fish are like apples, they taste good as candy, not the actual thing."
  2231. normalspam[15] = "you what"
  2232. normalspam[16] = "I'll quote your head with a rock"
  2233. normalspam[17] = "fuck me harder daddy"
  2234. normalspam[18] = "dickrape is neat"
  2235. normalspam[19] = "Shitty memes from a shitty dream."
  2236. normalspam[20] = "sheogorath has aids"
  2237. normalspam[21] = "fuck niggers"
  2238. normalspam[22] = "♫im an alabama nigger and i wanna be free, to hell with the n double a-c-p♫"
  2239. normalspam[23] = "hey whats up guys it's scarce here"
  2240. normalspam[24] = "//this is a test of the emergency broadcast system"
  2241. normalspam[25] = "erp = b&"
  2242. normalspam[26] = "50 percent off all fat farts at the fag store"
  2243. normalspam[27] = "dennis the menace"
  2244. normalspam[28] = "that's how things came to be, and that can never change, that can never change, no way.  That's how things came to be and that can never change, except when things'll change some day."
  2245. normalspam[29] = "shoutout to poopnig420 for providing memes"
  2246. normalspam[30] = "shoutout to inboot for providing packets"
  2247. normalspam[31] = "geklmin is a grade-a autist."
  2248. normalspam[32] = "REMOVE KEBAB remove kebab"
  2249. normalspam[33] = "you are worst turk. you are the turk idiot you are the turk smell. return to croatioa. to our croatia cousins you may come our contry. you may live in the zoo….ahahahaha"
  2250. normalspam[34] = "hahahahaha idiot turk and bosnian smell so bad..wow i can smell it."
  2251. normalspam[35] = "you will get caught. russia+usa+croatia+slovak=kill bosnia…"
  2252. normalspam[36] = "you will ww2/ tupac alive in serbia, tupac making album of serbia . fast rap tupac serbia."
  2253. normalspam[37] = "2pac aliv and real strong wizard kill all the turk farm aminal with rap magic now we the serba rule ."
  2254. normalspam[38] = "ape of the zoo presidant georg bush fukc the great satan and lay egg this egg hatch and bosnia wa;s born."
  2255. normalspam[39] = "stupid baby form the eggn give bak our clay we will crush u lik a skull of pig. serbia greattst countrey"
  2256. normalspam[40] = "cetnik rascal FUck but fuck asshole turk stink bosnia sqhipere shqipare..turk genocide best day of my life."
  2257. normalspam[41] = "http://www.madbluntz.rs offical sponsor of the republika srpska - marijuana fanatics serbia"
  2258. normalspam[42] = "long live madbluntz"
  2259. normalspam[43] = "bob good militia is dead"
  2260. normalspam[44] = "hail nutmegg"
  2261. normalspam[45] = "madbluntz.rs best cheats on earth also free dl today"
  2262. normalspam[46] = "// madblintz.rs serbain weed fanatics central download the world's best gmod lua cheat today"
  2263. normalspam[47] = "GET SHITCHEAT NOW MADBLUNTZ.RS"
  2264. normalspam[48] = "fuck off kike"
  2265.  
  2266. --chat spammer 2
  2267.  
  2268. local function Spam()
  2269.     if defcon.Settings["chatspam2"] then
  2270.         if ( GAMEMODE_NAME == "cwhl2rp" ) then
  2271.          LocalPlayer():ConCommand("cwsay "..table.Random(hl2rpvcspam).." " )
  2272.         else
  2273.          LocalPlayer():ConCommand("say "..table.Random(hl2rpvcspam).." " )
  2274.     end
  2275. end
  2276. end
  2277. timer.Create("Spammins", .05,0,Spam)
  2278.  
  2279. hl2rpvcspam = {}
  2280. hl2rpvcspam[1] = "noooo"
  2281. hl2rpvcspam[2] = "whistle tune"
  2282. hl2rpvcspam[3] = "i could eat a horse"
  2283. hl2rpvcspam[4] = "combine"
  2284. hl2rpvcspam[5] = "zombies"
  2285. hl2rpvcspam[6] = "run"
  2286. hl2rpvcspam[7] = "over here"
  2287. hl2rpvcspam[8] = "hey over here"
  2288. hl2rpvcspam[9] = "run for your life"
  2289. hl2rpvcspam[10] = "hes dead"
  2290. hl2rpvcspam[11] = "woops"
  2291. hl2rpvcspam[12] = "hands on doctor breen"
  2292. hl2rpvcspam[13] = "dream about cheese"
  2293. hl2rpvcspam[14] = "dibs on the suit"
  2294.  
  2295. --chatspammer 3
  2296.  
  2297. local function Spam3()
  2298.     if defcon.Settings["chatspam3"] then
  2299.         if ( GAMEMODE_NAME == "cwhl2rp" ) then
  2300.          LocalPlayer():ConCommand("cwsay WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW" )
  2301.         else
  2302.           LocalPlayer():ConCommand("say WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW" )
  2303.         end
  2304.      end
  2305. end
  2306. timer.Create("Spammins", .05,0,Spam3)
  2307.  
  2308. --chatspammer 4
  2309.  
  2310. local function Spam4()
  2311.     if defcon.Settings["chatspam4"] then
  2312.         if ( GAMEMODE_NAME == "cwhl2rp" ) then
  2313.          LocalPlayer():ConCommand("cwsay " ..table.Random(table.Random(defcon.Phrasesall)).." ")       
  2314.         else
  2315.           LocalPlayer():ConCommand("say "..table.Random(table.Random(defcon.Phrasesall)).." " )
  2316.         end
  2317.      end
  2318. end
  2319. timer.Create("Spammins", .05,0,Spam4)
  2320.  
  2321. --laser eyes (old shit from anozira days)
  2322.  
  2323. hook.Add("PostDrawOpaqueRenderables", "lasereyes", function()
  2324.     if defcon.Settings["lasereyes"] and GetConVarNumber("panicmode") == 0 then
  2325.     for k, v in pairs(player.GetAll())do
  2326.     if SafeCheck(v) == true then
  2327.         local pos, ang = v:GetShootPos();
  2328.         render.SetMaterial(Material("sprites/bluelaser1"));
  2329.         render.DrawBeam(pos, v:GetEyeTrace().HitPos, 5, 1, 1, team.GetColor(v:Team()));
  2330.     end
  2331.     end
  2332.     end
  2333. end)  
  2334.  
  2335. --pickup and dupein radius from niggermenu
  2336.  
  2337. function DupeInRadius()
  2338.         local ply = LocalPlayer()
  2339.             for k,v in pairs( ents.GetAll() ) do
  2340.                     local pos = v:GetPos()
  2341.                     if v:IsValid() and ply:GetPos():Distance(pos) <= 180 then
  2342.                             if v:GetClass() == "cw_item"  then
  2343.                                     for i=0,2,1 do
  2344.                                             Clockwork.datastream:Start("EntityMenuOption", {v, "cwItemTake", "cwItemTake"})
  2345.                                                                         end
  2346.                                                         elseif v:GetClass() == "cw_cash" then
  2347.                                                                 for i=0,2,1 do
  2348.                                             Clockwork.datastream:Start("EntityMenuOption", {v, "cwCashTake", "cwCashTake"})
  2349.                                     end
  2350.                             end
  2351.                     end
  2352.             end
  2353.     end
  2354.  
  2355.    concommand.Add( "dupeinradius", DupeInRadius )
  2356.  
  2357. function PickUpInRadius()
  2358.     local ply = LocalPlayer()
  2359.         for k,v in pairs( ents.GetAll() ) do
  2360.                 local pos = v:GetPos()
  2361.                 if v:IsValid() and ply:GetPos():Distance(pos) <= 2048 then
  2362.                         if v:GetClass() == "cw_item"  then
  2363.                                 Clockwork.datastream:Start("EntityMenuOption", {v, "cwItemTake", "cwItemTake"});
  2364.                         elseif v:GetClass() == "cw_cash" then
  2365.                                 Clockwork.datastream:Start("EntityMenuOption", {v, "cwCashTake", "cwCashTake"});
  2366.                         elseif v:GetClass() == "cw_shipment" then
  2367.                                 Clockwork.datastream:Start("EntityMenuOption", {v, "cwShipmentOpen", "cwShipmentOpen"});
  2368.                         elseif v:GetClass() == "prop_physics" then
  2369.                                 Clockwork.datastream:Start("EntityMenuOption", {v, "cwContainerOpen", "cwContainerOpen"});
  2370.                         elseif v:GetClass() == "prop_ragdoll" then
  2371.                                 Clockwork.datastream:Start("EntityMenuOption", {v, "cwContainerOpen", "cwContainerOpen"});
  2372.                          end
  2373.                 end
  2374.         end
  2375. end
  2376. concommand.Add( "pickupinradius", PickUpInRadius )
  2377.  
  2378. --clientside convars
  2379.  
  2380. CreateClientConVar( "defcon.boxESP", 0, true, false)
  2381. CreateClientConVar( "defcon.propchams", 0, true, false)
  2382. CreateClientConVar( "defcon.radiochams", 0, true, false)
  2383. CreateClientConVar( "defcon.chams", 0, true, false)
  2384. CreateClientConVar( "entitychams", 0, true, false)
  2385. CreateClientConVar( "panicmode", 0, true, false)
  2386.  
  2387. --literal fucking copy of memeware
  2388.  
  2389. local type = type;
  2390. local next = next;
  2391.  
  2392. local function Copy(tt, lt)
  2393.     local copy = {}
  2394.     if lt then
  2395.         if type(tt) == "table" then
  2396.             for k,v in next, tt do
  2397.                 copy[k] = Copy(k, v)
  2398.             end
  2399.         else
  2400.             copy = lt
  2401.         end
  2402.         return copy
  2403.     end
  2404.     if type(tt) != "table" then
  2405.         copy = tt
  2406.     else
  2407.         for k,v in next, tt do
  2408.             copy[k] = Copy(k, v)
  2409.         end
  2410.     end
  2411.     return copy
  2412. end
  2413.  
  2414. local surface = Copy(surface);
  2415. local vgui = Copy(vgui);
  2416. local input = Copy(input);
  2417. local Color = Color;
  2418. local ScrW, ScrH = ScrW, ScrH;
  2419. local gui = Copy(gui);
  2420. local math = Copy(math);
  2421. local file = Copy(file);
  2422. local util = Copy(util);
  2423.  
  2424. surface.CreateFont("memeyou", {
  2425.     font = "Console",
  2426.     size = 13,
  2427.     weight = 700,
  2428.     shadow = false,
  2429.     antialias = false,
  2430. });
  2431.  
  2432. surface.CreateFont("memeyou2", {
  2433.     font = "Console",
  2434.     size = 13,
  2435.     weight = 700,
  2436.     shadow = false,
  2437.     antialias = false,
  2438. });
  2439.  
  2440. local options = {
  2441.     ["casualbot"] = {
  2442.         {
  2443.             {"Aimbot", 20, 20, 350, 240, 120},
  2444.             {"Enabled", "Checkbox", true, 0},
  2445.             {"Silent", "Checkbox", false, 0},
  2446.             {"Autofire", "Checkbox", false, 0},
  2447.             {"Autosnap", "Checkbox", false, 0},
  2448.             {"Auto Pistol", "Checkbox", true, 0},
  2449.             {"Non-Sticky", "Checkbox", false, 0},
  2450.             {"Bullettime", "Checkbox", false, 0},
  2451.         },
  2452.         {
  2453.             {"Target", 20, 280, 350, 180, 120},
  2454.             {"Selection", "Selection", "Distance", {"Distance", "Health", "Nextshot"}, 150 },
  2455.             {"Bodyaim", "Checkbox", false, 0},
  2456.             {"Ignore Bots", "Checkbox", false, 0},
  2457.             {"Ignore Team", "Checkbox", false, 0},
  2458.             {"Ignore Friends", "Checkbox", true, 0},
  2459.             {"Snapline", "Checkbox", false, 0},
  2460.         },
  2461.         {
  2462.             {"Accuracy", 380, 20, 350, 190, 120},
  2463.             {"Anti Spread", "Checkbox", false, 0},
  2464.             {"Anti Recoil", "Checkbox", false, 0},
  2465.         },
  2466.         {
  2467.             {"Anti-Aim", 380, 230, 350, 230, 140},
  2468.             {"Enabled", "Checkbox", false, 0},
  2469.             {"X", "Selection", "Emotion", {"Up", "Down", "Jitter", "Emotion"}, 150},
  2470.             {"Y", "Selection", "Emotion", {"Forward", "Backwards", "Jitter", "TJitter", "Sideways", "Emotion", "Static", "Towards Players"}, 150},
  2471.             {"Max Y", "Slider", 50, 360, 150},
  2472.             {"Min Y", "Slider", 0, 360, 150},
  2473.             {"Emotion Randomcoin X", "Slider", 50, 100, 150},
  2474.             {"Emotion Randomcoin Y", "Slider", 20, 100, 150},
  2475.         },
  2476.     },
  2477.     ["Visuals"] = {
  2478.         {
  2479.             {"ESP", 20, 20, 350, 240, 220},
  2480.             {"Enabled", "Checkbox", false, 54},
  2481.             {"Box", "Checkbox", false, 54},
  2482.             {"Box Type", "Selection", "2D Box", {"2D Box", "3D Box"}, 68},
  2483.             {"Name", "Checkbox", false, 54},
  2484.             {"Health", "Checkbox", false, 54},
  2485.             {"Weapon", "Checkbox", false, 54},
  2486.             {"XQZ", "Checkbox", false, 54},
  2487.             {"Chams", "Checkbox", false, 54},
  2488.             {"Skeleton", "Checkbox", false, 54},
  2489.         },
  2490.         {
  2491.             {"Filter", 20, 280, 350, 180, 220},
  2492.             {"Enemies only", "Checkbox", false, 54},
  2493.             {"Distance", "Checkbox", false, 54},
  2494.             {"Max Distance", "Slider", 0, 10000, 68},
  2495.         },
  2496.         {
  2497.             {"Misc", 380, 20, 350, 190, 220},
  2498.             {"Thirdperson", "Checkbox", false, 54},
  2499.         },
  2500.     },
  2501.     ["Colors"] = {
  2502.         {
  2503.             {"Box - Team", 20, 20, 250, 175, 130},
  2504.             {"R", "Slider", 255, 255, 88},
  2505.             {"G", "Slider", 255, 255, 88},
  2506.             {"B", "Slider", 0, 255, 88},
  2507.         },
  2508.         {
  2509.             {"Box - Enemy", 20, 205, 250, 175, 130},
  2510.             {"R", "Slider", 180, 255, 88},
  2511.             {"G", "Slider", 120, 255, 88},
  2512.             {"B", "Slider", 0, 255, 88},
  2513.         },
  2514.         {
  2515.             {"Chams - Team", 290, 20, 250, 175, 130},
  2516.             {"Visible R", "Slider", 0, 255, 88},
  2517.             {"Visible G", "Slider", 255, 255, 88},
  2518.             {"Visible B", "Slider", 0, 255, 88},
  2519.             {"Not Visible R", "Slider", 0, 255, 88},
  2520.             {"Not Visible G", "Slider", 0, 255, 88},
  2521.             {"Not Visible B", "Slider", 255, 255, 88},
  2522.         },
  2523.        
  2524.         {
  2525.             {"Chams - Enemy", 290, 205, 250, 175, 130},
  2526.             {"Visible R", "Slider", 255, 255, 88},
  2527.             {"Visible G", "Slider", 0, 255, 88},
  2528.             {"Visible B", "Slider", 0, 255, 88},
  2529.             {"Not Visible R", "Slider", 180, 255, 88},
  2530.             {"Not Visible G", "Slider", 120, 255, 88},
  2531.             {"Not Visible B", "Slider", 0, 255, 88},
  2532.         },
  2533.     },
  2534. };
  2535.  
  2536. local order = {
  2537.     "casualbot",
  2538.     "Visuals",
  2539.     "Colors",
  2540. };
  2541.  
  2542. local function updatevar( men, sub, lookup, new )
  2543.     for aa,aaa in next, options[men] do
  2544.         for key, val in next, aaa do
  2545.             if(aaa[1][1] != sub) then continue; end
  2546.             if(val[1] == lookup) then
  2547.                 val[3] = new;
  2548.             end
  2549.         end
  2550.     end
  2551. end
  2552.  
  2553. local function loadconfig()
  2554.     if(!file.Exists("secretbitch.txt", "DATA")) then return; end
  2555.     local tab = util.JSONToTable( file.Read("secretbitch.txt", "DATA") );
  2556.     local cursub;
  2557.     for k,v in next, tab do
  2558.         if(!options[k]) then continue; end
  2559.         for men, subtab in next, v do
  2560.             for key, val in next, subtab do
  2561.                 if(key == 1) then cursub = val[1]; continue; end
  2562.                 updatevar(k, cursub, val[1], val[3]);
  2563.             end
  2564.         end
  2565.     end
  2566. end
  2567.  
  2568. local function gBool(men, sub, lookup)
  2569.     if(!options[men]) then return; end
  2570.     for aa,aaa in next, options[men] do
  2571.         for key, val in next, aaa do
  2572.             if(aaa[1][1] != sub) then continue; end
  2573.             if(val[1] == lookup) then
  2574.                 return val[3];
  2575.             end
  2576.         end
  2577.     end
  2578. end
  2579.  
  2580. local function gOption(men, sub, lookup)
  2581.     if(!options[men]) then return ""; end
  2582.     for aa,aaa in next, options[men] do
  2583.         for key, val in next, aaa do
  2584.             if(aaa[1][1] != sub) then continue; end
  2585.             if(val[1] == lookup) then
  2586.                 return val[3];
  2587.             end
  2588.         end
  2589.     end
  2590.     return "";
  2591. end
  2592.  
  2593. local function gInt(men, sub, lookup)
  2594.     if(!options[men]) then return 0; end
  2595.     for aa,aaa in next, options[men] do
  2596.         for key, val in next, aaa do
  2597.             if(aaa[1][1] != sub) then continue; end
  2598.             if(val[1] == lookup) then
  2599.                 return val[3];
  2600.             end
  2601.         end
  2602.     end
  2603.     return 0;
  2604. end
  2605.  
  2606. local function saveconfig()
  2607.     file.Write("secretbitch.txt", util.TableToJSON(options));
  2608. end
  2609.  
  2610. local mousedown;
  2611. local candoslider;
  2612. local drawlast;
  2613.  
  2614. local visible = {};
  2615.  
  2616. for k,v in next, order do
  2617.     visible[v] = false;
  2618. end
  2619.  
  2620. local function DrawBackground(w, h)
  2621.     surface.SetDrawColor(50, 50, 50, 200);
  2622.     surface.DrawRect(0, 0, w, h);
  2623.    
  2624.     local curcol = Color(50, 50, 50, 200);
  2625.    
  2626.     for i = 0, 30 do
  2627.         surface.SetDrawColor(curcol);
  2628.         curcol.r = curcol.r ;
  2629.         surface.DrawLine(0, i, w, i);
  2630.     end
  2631.    
  2632.     surface.SetDrawColor(curcol);
  2633.    
  2634.     surface.SetFont("memeyou");
  2635.    
  2636.     local tw, th = surface.GetTextSize("not memeware");
  2637.    
  2638.     surface.SetTextPos(5, 15 - th / 2);
  2639.    
  2640.     surface.SetTextColor(255, 255, 255);
  2641.    
  2642.     surface.DrawText("not memeware");
  2643.    
  2644.     surface.DrawRect(0, 31, 5, h - 31);
  2645.     surface.DrawRect(0, h - 5, w, h);
  2646.     surface.DrawRect(w - 5, 31, 5, h);
  2647. end
  2648.  
  2649. local function MouseInArea(minx, miny, maxx, maxy)
  2650.     local mousex, mousey = gui.MousePos();
  2651.     return(mousex < maxx && mousex > minx && mousey < maxy && mousey > miny);
  2652. end
  2653.  
  2654. local function DrawOptions(self, w, h)
  2655.     local mx, my = self:GetPos();
  2656.    
  2657.     local sizeper = (w - 10) / #order;
  2658.    
  2659.     local maxx = 0;
  2660.    
  2661.     for k,v in next, order do
  2662.         local bMouse = MouseInArea(mx + 5 + maxx, my + 31, mx + 5 + maxx + sizeper, my + 31 + 30);
  2663.         if(visible[v]) then
  2664.             local curcol = Color(60, 60, 60, 200);
  2665.             for i = 0, 30 do
  2666.                 surface.SetDrawColor(curcol);
  2667.                 curcol.r, curcol.g, curcol.b = curcol.r + 0, curcol.g + 0, curcol.b + 0;
  2668.                 surface.DrawLine( 5 + maxx, 31 + i, 5 + maxx + sizeper, 31 + i);
  2669.             end
  2670.         elseif(bMouse) then
  2671.             local curcol = Color(55, 55, 55, 200);
  2672.             for i = 0, 30 do
  2673.                 surface.SetDrawColor(curcol);
  2674.                 curcol.r, curcol.g, curcol.b = curcol.r - 0, curcol.g - 0, curcol.b - 0;
  2675.                 surface.DrawLine( 5 + maxx, 31 + i, 5 + maxx + sizeper, 31 + i);
  2676.             end
  2677.         else
  2678.             local curcol = Color(50, 50, 50, 200);
  2679.             for i = 0, 30 do
  2680.                 surface.SetDrawColor(curcol);
  2681.                 curcol.r, curcol.g, curcol.b = curcol.r - 0, curcol.g - 0, curcol.b - 0;
  2682.                 surface.DrawLine( 5 + maxx, 31 + i, 5 + maxx + sizeper, 31 + i);
  2683.             end
  2684.         end
  2685.         if(bMouse && input.IsMouseDown(MOUSE_LEFT) && !mousedown && !visible[v]) then
  2686.             local nb = visible[v];
  2687.             for key,val in next, visible do
  2688.                 visible[key] = false;
  2689.             end
  2690.             visible[v] = !nb;
  2691.         end
  2692.         surface.SetFont("memeyou2");
  2693.         surface.SetTextColor(255, 255, 255);
  2694.         local tw, th = surface.GetTextSize(v);
  2695.         surface.SetTextPos( 5 + maxx + sizeper / 2 - tw / 2, 31 + 15 - th / 2 );
  2696.         surface.DrawText(v);
  2697.         maxx = maxx + sizeper;
  2698.     end
  2699. end
  2700.  
  2701. local function DrawCheckbox(self, w, h, var, maxy, posx, posy, dist)
  2702.     surface.SetFont("memeyou2");
  2703.     surface.SetTextColor(255, 255, 255);
  2704.     surface.SetTextPos( 5 + posx + 15 + 5, 61 + posy + maxy );
  2705.     local tw, th = surface.GetTextSize(var[1]);
  2706.     surface.DrawText(var[1]);
  2707.    
  2708.     surface.SetDrawColor(163, 163, 163);
  2709.    
  2710.     surface.DrawOutlinedRect( 5 + posx + 15 + 5 + dist + var[4], 61 + posy + maxy + 2, 14, 14);
  2711.    
  2712.     local mx, my = self:GetPos();
  2713.    
  2714.     local bMouse = MouseInArea(mx + 5 + posx + 15 + 5, my + 61 + posy + maxy, mx + 5 + posx + 15 + 5 + dist + 14 + var[4], my + 61 + posy + maxy + 16);
  2715.    
  2716.     if(bMouse) then
  2717.         surface.DrawRect( 5 + posx + 15 + 5 + dist + 2 + var[4], 61 + posy + maxy + 4, 10, 10);
  2718.     end
  2719.    
  2720.     if(var[3]) then
  2721.         surface.SetDrawColor(43, 98, 226);
  2722.         surface.DrawRect( 5 + posx + 15 + 5 + dist + 2 + var[4], 61 + posy + maxy + 4, 10, 10);
  2723.         surface.SetDrawColor(43, 98, 226);
  2724.         surface.DrawOutlinedRect( 5 + posx + 15 + 5 + dist + 2 + var[4], 61 + posy + maxy + 4, 10, 10);
  2725.     end
  2726.    
  2727.     if(bMouse && input.IsMouseDown(MOUSE_LEFT) && !mousedown && !drawlast) then
  2728.         var[3] = !var[3];
  2729.     end
  2730. end
  2731.  
  2732. local function DrawSlider(self, w, h, var, maxy, posx, posy, dist)
  2733.     local curnum = var[3];
  2734.     local max = var[4];
  2735.     local size = var[5];
  2736.     surface.SetFont("memeyou2");
  2737.     surface.SetTextColor(255, 255, 255);
  2738.     surface.SetTextPos( 5 + posx + 15 + 5, 61 + posy + maxy );
  2739.     surface.DrawText(var[1]);
  2740.    
  2741.     local tw, th = surface.GetTextSize(var[1]);
  2742.    
  2743.     surface.SetDrawColor(163, 163, 163);
  2744.    
  2745.     surface.DrawRect( 5 + posx + 15 + 5 + dist, 61 + posy + maxy + 9, size, 2);
  2746.    
  2747.     local ww = math.ceil(curnum * size / max);
  2748.    
  2749.     surface.SetDrawColor(43, 98, 226);
  2750.    
  2751.     surface.DrawRect( 3 + posx + 15 + 5 + dist + ww, 61 + posy + maxy + 9 - 5, 4, 12);
  2752.    
  2753.     surface.SetDrawColor(43, 98, 226);
  2754.    
  2755.     local tw, th = surface.GetTextSize(curnum..".00");
  2756.    
  2757.     surface.DrawOutlinedRect( 3 + posx + 15 + 5 + dist + ww, 61 + posy + maxy + 4, 4, 12);
  2758.    
  2759.     surface.SetTextPos( 5 + posx + 15 + 5 + dist + (size / 2) - tw / 2, 61 + posy + maxy + 16);
  2760.    
  2761.     surface.DrawText(curnum..".00");
  2762.    
  2763.     local mx, my = self:GetPos();
  2764.    
  2765.     local bMouse = MouseInArea(5 + posx + 15 + 5 + dist + mx, 61 + posy + maxy + 9 - 5 + my, 5 + posx + 15 + 5 + dist + mx + size, 61 + posy + maxy + 9 - 5 + my + 12);
  2766.    
  2767.     if(bMouse && input.IsMouseDown(MOUSE_LEFT) && !drawlast && !candoslider) then
  2768.         local mw, mh = gui.MousePos();
  2769.    
  2770.         local new = math.ceil( ((mw - (mx + posx + 25 + dist - size)) - (size + 1)) / (size - 2) * max);
  2771.         var[3] = new;
  2772.     end
  2773. end
  2774.  
  2775. local notyetselected;
  2776.  
  2777. local function DrawSelect(self, w, h, var, maxy, posx, posy, dist)
  2778.  
  2779.     local size = var[5];
  2780.     local curopt = var[3];
  2781.    
  2782.     surface.SetFont("memeyou2");
  2783.     surface.SetTextColor(255, 255, 255);
  2784.     surface.SetTextPos( 5 + posx + 15 + 5, 61 + posy + maxy );
  2785.     local tw, th = surface.GetTextSize(var[1]);
  2786.     surface.DrawText(var[1]);
  2787.    
  2788.     surface.SetDrawColor(163, 163, 163);
  2789.    
  2790.     surface.DrawOutlinedRect( 25 + posx + dist, 61 + posy + maxy, size, 16);
  2791.    
  2792.     local mx, my = self:GetPos();
  2793.    
  2794.     local bMouse = MouseInArea( mx + 25 + posx + dist, my + 61 + posy + maxy, mx + 25 + posx + dist + size, my + 61 + posy + maxy + 16)
  2795.    
  2796.     local check = dist..posy..posx..w..h..maxy;
  2797.    
  2798.     if(bMouse || notyetselected == check) then
  2799.        
  2800.         surface.DrawRect(25 + posx + dist + 2, 61 + posy + maxy + 2, size - 4, 12);
  2801.        
  2802.     end
  2803.    
  2804.     local tw, th = surface.GetTextSize(curopt);
  2805.    
  2806.     surface.SetTextPos( 25 + posx + dist + 5, 61 + posy + maxy + 6 - th / 2 + 2);
  2807.    
  2808.     surface.DrawText(curopt);
  2809.    
  2810.     if(bMouse && input.IsMouseDown(MOUSE_LEFT) && !drawlast && !mousedown || notyetselected == check) then
  2811.         notyetselected = check;
  2812.         drawlast = function()
  2813.             local maxy2 = 16;
  2814.             for k,v in next, var[4] do
  2815.                 surface.SetDrawColor(163, 163, 163);
  2816.                 surface.DrawRect( 25 + posx + dist, 61 + posy + maxy + maxy2, size, 16);
  2817.                 local bMouse2 = MouseInArea( mx + 25 + posx + dist, my + 61 + posy + maxy + maxy2, mx + 25 + posx + dist + size, my + 61 + posy + maxy + 16 + maxy2)
  2818.                 if(bMouse2) then
  2819.                     surface.SetDrawColor(200, 200, 200);
  2820.                     surface.DrawRect( 25 + posx + dist, 61 + posy + maxy + maxy2, size, 16);
  2821.                 end
  2822.                 local tw, th = surface.GetTextSize(v);
  2823.                 surface.SetTextPos( 25 + posx + dist + 5, 61 + posy + maxy + 6 - th / 2 + 2 + maxy2);
  2824.                 surface.DrawText(v);
  2825.                 maxy2 = maxy2 + 16;
  2826.                 if(bMouse2 && input.IsMouseDown(MOUSE_LEFT) && !mousedown) then
  2827.                     var[3] = v;
  2828.                     notyetselected = nil;
  2829.                     drawlast = nil;
  2830.                     return;
  2831.                 end
  2832.             end
  2833.             local bbMouse = MouseInArea( mx + 25 + posx + dist, my + 61 + posy + maxy, mx + 25 + posx + dist + size, my + 61 + posy + maxy + maxy2);
  2834.             if(!bbMouse && input.IsMouseDown(MOUSE_LEFT) && !mousedown) then
  2835.                  notyetselected = nil;
  2836.                  drawlast = nil;
  2837.                  return;
  2838.             end
  2839.         end
  2840.     end
  2841.    
  2842.    
  2843. end
  2844.  
  2845. local function DrawSubSub(self, w, h, k, var)
  2846.     local opt, posx, posy, sizex, sizey, dist = var[1][1], var[1][2], var[1][3], var[1][4], var[1][5], var[1][6];
  2847.    
  2848.     surface.SetDrawColor(163, 163, 163);
  2849.    
  2850.     local startpos = 61 + posy;
  2851.    
  2852.     surface.SetTextColor(255, 255, 255);
  2853.    
  2854.     surface.SetFont("memeyou2");
  2855.    
  2856.     local tw, th = surface.GetTextSize(opt);
  2857.    
  2858.     surface.DrawLine( 5 + posx, startpos, 5 + posx + 15, startpos);
  2859.    
  2860.     surface.SetTextPos( 5 + posx + 15 + 5, startpos - th / 2 );
  2861.    
  2862.     surface.DrawLine( 5 + posx + 15 + 5 + tw + 5, startpos, 5 + posx + sizex, startpos);
  2863.    
  2864.     surface.DrawLine( 5 + posx, startpos, 5 + posx, startpos + sizey);
  2865.    
  2866.     surface.DrawLine(5 + posx, startpos + sizey, 5 + posx + sizex, startpos + sizey );
  2867.    
  2868.     surface.DrawLine( 5 + posx + sizex, startpos, 5 + posx + sizex, startpos + sizey);
  2869.    
  2870.     surface.DrawText(opt);
  2871.    
  2872.     local maxy = 15;
  2873.    
  2874.     for k,v in next, var do
  2875.         if(k == 1) then continue; end
  2876.         if(v[2] == "Checkbox") then
  2877.             DrawCheckbox(self, w, h, v, maxy, posx, posy, dist);
  2878.         elseif(v[2] == "Slider") then
  2879.             DrawSlider(self, w, h, v, maxy, posx, posy, dist);
  2880.         elseif(v[2] == "Selection") then
  2881.             DrawSelect(self, w, h, v, maxy, posx, posy, dist);
  2882.         end
  2883.         maxy = maxy + 25;
  2884.     end
  2885. end
  2886.  
  2887. local function DrawSub(self, w, h)
  2888.     for k, v in next, visible do
  2889.         if(!v) then continue; end
  2890.         for _, var in next, options[k] do
  2891.             DrawSubSub(self, w, h, k, var);
  2892.         end
  2893.     end
  2894. end
  2895.  
  2896. local function DrawSaveButton(self, w, h)
  2897.     local curcol = Color(60, 60, 60, 200);
  2898.     local mx, my = self:GetPos();
  2899.     local bMouse = MouseInArea(mx + 30, my + h - 50, mx + 30 + 200, my + h - 50 + 30);
  2900.     if(bMouse) then
  2901.         curcol = Color(65, 65, 65, 200);
  2902.     end
  2903.     for i = 0, 30 do
  2904.         surface.SetDrawColor(curcol);
  2905.         surface.DrawLine( 30, h - 50 + i, 30 + 200, h - 50 + i );
  2906.         for k,v in next, curcol do
  2907.             curcol[k] = curcol[k] - 0;
  2908.         end
  2909.     end
  2910.     surface.SetFont("memeyou2");
  2911.     surface.SetTextColor(255, 255, 255);
  2912.     local tw, th = surface.GetTextSize("Save Config");
  2913.     surface.SetTextPos( 30 + 100 - tw / 2, h - 50 + 15 - th / 2 );
  2914.     surface.DrawText("Save Config");
  2915.     if(bMouse && input.IsMouseDown(MOUSE_LEFT)) then
  2916.         saveconfig();
  2917.     end
  2918. end
  2919.  
  2920. local function DrawLoadButton(self, w, h)
  2921.     local curcol = Color(60, 60, 60, 200);
  2922.     local mx, my = self:GetPos();
  2923.     local bMouse = MouseInArea(mx + 250, my + h - 50, mx + 250 + 200, my + h - 50 + 30);
  2924.     if(bMouse) then
  2925.         curcol = Color(65, 65, 65, 200);
  2926.     end
  2927.     for i = 0, 30 do
  2928.         surface.SetDrawColor(curcol);
  2929.         surface.DrawLine( 250, h - 50 + i, 250 + 200, h - 50 + i );
  2930.         for k,v in next, curcol do
  2931.             curcol[k] = curcol[k] - 0;
  2932.         end
  2933.     end
  2934.     surface.SetFont("memeyou2");
  2935.     surface.SetTextColor(255, 255, 255);
  2936.     local tw, th = surface.GetTextSize("Load Config");
  2937.     surface.SetTextPos( 250 + 100 - tw / 2, h - 50 + 15 - th / 2 );
  2938.     surface.DrawText("Load Config");
  2939.     if(bMouse && input.IsMouseDown(MOUSE_LEFT)) then
  2940.         loadconfig();
  2941.     end
  2942. end
  2943.  
  2944. loadconfig();
  2945.  
  2946. local insertdown2, insertdown, menuopen;
  2947.  
  2948. local function menu()
  2949.     local frame = vgui.Create("DFrame");
  2950.     frame:SetSize(800, 600);
  2951.     frame:Center();
  2952.     frame:SetTitle("");
  2953.     frame:MakePopup();
  2954.     frame:ShowCloseButton(false);
  2955.    
  2956.     frame.Paint = function(self, w, h)
  2957.         if(candoslider && !mousedown && !drawlast && !input.IsMouseDown(MOUSE_LEFT)) then
  2958.             candoslider = false;
  2959.         end
  2960.         DrawBackground(w, h);
  2961.         DrawOptions(self, w, h);
  2962.         DrawSub(self, w, h);
  2963.         DrawSaveButton(self, w, h);
  2964.         DrawLoadButton(self, w, h);
  2965.         if(drawlast) then
  2966.             drawlast();
  2967.             candoslider = true;
  2968.         end
  2969.         mousedown = input.IsMouseDown(MOUSE_LEFT);
  2970.     end
  2971.    
  2972.     frame.Think = function()
  2973.         if (input.IsKeyDown(KEY_INSERT) && !insertdown2) then
  2974.             frame:Remove();
  2975.             menuopen = false;
  2976.             candoslider = false;
  2977.             drawlast = nil;
  2978.         end
  2979.     end
  2980. end
  2981.  
  2982. local function Think()
  2983.     if (input.IsKeyDown(KEY_INSERT) && !menuopen && !insertdown) then
  2984.         menuopen = true;
  2985.         insertdown = true;
  2986.         menu();
  2987.     elseif (!input.IsKeyDown(KEY_INSERT) && !menuopen) then
  2988.         insertdown = false;
  2989.     end
  2990.     if (input.IsKeyDown(KEY_INSERT) && insertdown && menuopen) then
  2991.         insertdown2 = true;
  2992.     else
  2993.         insertdown2 = false;
  2994.     end
  2995. end
  2996.  
  2997. hook.Add("Think", "", Think);
  2998.  
  2999. --[[
  3000. Actual codens
  3001. ]]
  3002.  
  3003. local FindMetaTable = FindMetaTable;
  3004.  
  3005. local em = FindMetaTable"Entity";
  3006. local pm = FindMetaTable"Player";
  3007. local cm = FindMetaTable"CUserCmd";
  3008. local wm = FindMetaTable"Weapon";
  3009. local am = FindMetaTable"Angle";
  3010. local vm = FindMetaTable"Vector";
  3011.  
  3012. local Vector = Vector;
  3013. local player = Copy(player);
  3014. local Angle = Angle;
  3015. local me = LocalPlayer();
  3016. local render = Copy(render);
  3017. local cma = Copy(cam);
  3018. local Material = Material;
  3019. local CreateMaterial = CreateMaterial;
  3020.  
  3021. --[[
  3022. esp
  3023. ]]
  3024.  
  3025. local function Filter(v)
  3026.     local enemy = gBool("Visuals", "Filter", "Enemies only");
  3027.     local dist = gBool("Visuals", "Filter", "Distance")
  3028.     if(enemy) then
  3029.         if(pm.Team(v) == pm.Team(me)) then return false; end
  3030.     end
  3031.     if(dist) then
  3032.         local maxdist = gBool("Visuals", "Filter", "Max Distance");
  3033.         if( vm.Distance( em.GetPos(v), em.GetPos(me) ) > (maxdist * 5) ) then return false; end
  3034.     end
  3035.     return true;
  3036. end
  3037.  
  3038.  
  3039. local chamsmat = CreateMaterial("a", "VertexLitGeneric", {
  3040.     ["$ignorez"] = 1,
  3041.     ["$model"] = 1,
  3042.     ["$basetexture"] = "models/debug/debugwhite",
  3043. });
  3044.  
  3045. local chamsmat2 = CreateMaterial("@", "vertexlitgeneric", {
  3046.     ["$ignorez"] = 0,
  3047.     ["$model"] = 1,
  3048.     ["$basetexture"] = "models/debug/debugwhite",
  3049. });
  3050.  
  3051. local function GetChamsColor(v, vis)
  3052.     local pre = "Chams - Enemy";
  3053.     if(pm.Team(v) == pm.Team(me)) then
  3054.         pre = "Chams - Team";
  3055.     end
  3056.     if(vis) then
  3057.         local r = gInt("Colors", pre, "Visible R") / 255;
  3058.         local g = gInt("Colors", pre, "Visible G") / 255;
  3059.         local b = gInt("Colors", pre, "Visible B") / 255;
  3060.         return r,g,b;
  3061.     end
  3062.     local r = gInt("Colors", pre, "Not Visible R") / 255;
  3063.     local g = gInt("Colors", pre, "Not Visible G") / 255;
  3064.     local b = gInt("Colors", pre, "Not Visible B") / 255;
  3065.     return r,g,b;
  3066. end
  3067.  
  3068. local function Chams(v)
  3069.     if(gBool("Visuals", "ESP", "XQZ")) then
  3070.         cam.Start3D();
  3071.             cam.IgnoreZ(true);
  3072.             em.DrawModel(v);
  3073.             cam.IgnoreZ(false);
  3074.         cam.End3D();
  3075.     end
  3076.     if(gBool("Visuals", "ESP", "Chams")) then
  3077.         cam.Start3D();
  3078.            
  3079.             render.MaterialOverride(chamsmat);
  3080.             render.SetColorModulation(GetChamsColor(v));
  3081.                
  3082.             em.DrawModel(v);
  3083.                
  3084.             render.SetColorModulation(GetChamsColor(v, true));
  3085.             render.MaterialOverride(chamsmat2);
  3086.                
  3087.             em.DrawModel(v);
  3088.            
  3089.         cam.End3D();
  3090.     end
  3091. end
  3092.  
  3093. local function GetColor(v)
  3094.     if(pm.Team(v) == pm.Team(me)) then
  3095.         local r = gInt("Colors", "Box - Team", "R");
  3096.         local g = gInt("Colors", "Box - Team", "G");
  3097.         local b = gInt("Colors", "Box - Team", "B");
  3098.         return(Color(r, g, b, 220));
  3099.     end
  3100.     local r = gInt("Colors", "Box - Enemy", "R");
  3101.     local g = gInt("Colors", "Box - Enemy", "G");
  3102.     local b = gInt("Colors", "Box - Enemy", "B");
  3103.     return(Color(r, g, b, 220));
  3104. end
  3105.  
  3106. local function ESP(v)
  3107.     local pos = em.GetPos(v);
  3108.     local pos, pos2 = vm.ToScreen(pos - Vector(0, 0, 5)), vm.ToScreen( pos + Vector(0, 0, 70 ) );
  3109.     local h = pos.y - pos2.y;
  3110.     local w = h / 2.2;
  3111.     if(gBool("Visuals", "ESP", "Box") && gOption("Visuals", "ESP", "Box Type") == "2D Box") then   
  3112.        
  3113.         surface.SetDrawColor(GetColor(v));
  3114.         surface.DrawOutlinedRect( pos.x - w / 2, pos.y - h, w, h);
  3115.         surface.SetDrawColor(0, 0, 0, 220);
  3116.         surface.DrawOutlinedRect( pos.x - w / 2 - 1, pos.y - h - 1, w + 2, h + 2);
  3117.         surface.DrawOutlinedRect( pos.x - w / 2 + 1, pos.y - h + 1, w - 2, h - 2);
  3118.        
  3119.     end
  3120.    
  3121.     if(gBool("Visuals", "ESP", "Health")) then
  3122.         local hp = em.Health(v) * h / 100;
  3123.         if(hp > h) then hp = h; end
  3124.         local diff = h - hp;
  3125.         surface.SetDrawColor(0, 0, 0, 255);
  3126.         surface.DrawRect(pos.x - w / 2 - 5, pos.y - h - 1, 3, h + 2);
  3127.         surface.SetDrawColor( ( 100 - em.Health(v) ) * 2.55, em.Health(v) * 2.55, 0, 255);
  3128.         surface.DrawRect(pos.x - w / 2 - 4, pos.y - h + diff, 1, hp);
  3129.     end
  3130.  
  3131.        
  3132.     surface.SetFont("BudgetLabel");
  3133.    
  3134.     surface.SetTextColor(255, 255, 255);
  3135.    
  3136.     if(gBool("Visuals", "ESP", "Name")) then
  3137.    
  3138.         local tw, th = surface.GetTextSize(pm.Name(v));
  3139.        
  3140.         surface.SetTextPos( pos.x - tw / 2, pos.y - h + 2 - th );
  3141.        
  3142.         surface.DrawText(pm.Name(v));
  3143.        
  3144.     end
  3145.    
  3146.     if(gBool("Visuals", "ESP", "Weapon")) then
  3147.        
  3148.         local w = pm.GetActiveWeapon(v);
  3149.         if(w && em.IsValid(w)) then
  3150.             local tw,  th = surface.GetTextSize(em.GetClass(w));
  3151.             surface.SetTextPos( pos.x - tw / 2, pos.y - th / 2 + 5 );
  3152.             surface.DrawText(em.GetClass(w));
  3153.         end
  3154.        
  3155.     end
  3156.    
  3157.     if(gBool("Visuals", "ESP", "Skeleton")) then
  3158.         local origin = em.GetPos(v);
  3159.         for i = 1, em.GetBoneCount(v) do
  3160.             local parent = em.GetBoneParent(v, i);
  3161.             if(!parent) then continue; end
  3162.             local bonepos, parentpos = em.GetBonePosition(v, i), em.GetBonePosition(v, parent);
  3163.             if(!bonepos || !parentpos || bonepos == origin) then continue; end
  3164.             local bs, ps = vm.ToScreen(bonepos), vm.ToScreen(parentpos);
  3165.             surface.SetDrawColor(255, 255, 255);
  3166.             surface.DrawLine(bs.x, bs.y, ps.x, ps.y);
  3167.         end
  3168.     end
  3169.    
  3170. end
  3171.  
  3172. local aimtarget;
  3173.  
  3174.  
  3175. hook.Add("HUDPaint", "", function()
  3176.     if(aimtarget && gBool("casualbot", "Target", "Snapline")) then
  3177.         local pos = vm.ToScreen(em.LocalToWorld(aimtarget, em.OBBCenter(aimtarget)));
  3178.         surface.SetDrawColor(255, 255, 255);
  3179.         surface.DrawLine(ScrW() / 2, ScrH() / 2, pos.x, pos.y);
  3180.     end
  3181.     if(!gBool("Visuals", "ESP", "Enabled")) then return; end
  3182.     for k,v in next, player.GetAll() do
  3183.         if(!em.IsValid(v) || em.Health(v) < 1 || v == me || em.IsDormant(v)) then continue; end
  3184.         if(!Filter(v)) then continue; end
  3185.         ESP(v);
  3186.     end
  3187. end);
  3188.  
  3189. hook.Add("RenderScreenspaceEffects", "", function()
  3190.     if(!gBool("Visuals", "ESP", "Enabled")) then return; end
  3191.     for k,v in next, player.GetAll() do
  3192.         if(!em.IsValid(v) || em.Health(v) < 1 || v == me || em.IsDormant(v)) then continue; end
  3193.         if(!Filter(v)) then continue; end
  3194.         Chams(v);
  3195.     end
  3196. end);
  3197.  
  3198. saveconfig();
  3199.  
  3200. --[[
  3201. memes
  3202. ]]
  3203.  
  3204. local fa;
  3205. local aa;
  3206.  
  3207. local function FixMovement(ucmd, aaaaa)
  3208.     --local move = Vector(cm.GetForwardMove(ucmd), cm.GetSideMove(ucmd), 0);
  3209.     --local move = am.Forward( vm.Angle(move) + ( cm.GetViewAngles(ucmd) - fa ) ) * vm.Length(move);
  3210.     local move = Vector(cm.GetForwardMove(ucmd), cm.GetSideMove(ucmd), cm.GetUpMove(ucmd));
  3211.     local speed = math.sqrt(move.x * move.x + move.y * move.y);
  3212.     local ang = vm.Angle(move);
  3213.     local yaw = math.rad(cm.GetViewAngles(ucmd).y - fa.y + ang.y);
  3214.     cm.SetForwardMove(ucmd, (math.cos(yaw) * speed) * ( aaaaa && -1 || 1 ));
  3215.     cm.SetSideMove(ucmd, math.sin(yaw) * speed);
  3216.     --cm.SetForwardMove(ucmd, move.x);
  3217.     --cm.SetSideMove(ucmd, (aaaaa && move.y * -1 || move.y));
  3218. end
  3219.  
  3220. local function Clamp(val, min, max)
  3221.     if(val < min) then
  3222.         return min;
  3223.     elseif(val > max) then
  3224.         return max;
  3225.     end
  3226.     return val;
  3227. end
  3228.  
  3229. local function NormalizeAngle(ang)
  3230.     ang.x = math.NormalizeAngle(ang.x);
  3231.     ang.p = math.Clamp(ang.p, -89, 89);
  3232. end
  3233.  
  3234. --[[
  3235. aimer
  3236. ]]
  3237.  
  3238. local table = Copy(table);
  3239. local dists = {};
  3240.  
  3241. local function GetPos(v)
  3242.  
  3243.     if(gBool("casualbot", "Target", "Bodyaim")) then return( em.LocalToWorld(v, em.OBBCenter(v)) ); end
  3244.  
  3245.     local eyes = em.LookupAttachment(v, "eyes");
  3246.    
  3247.     if(!eyes) then return( em.LocalToWorld(v, em.OBBCenter(v)) ); end
  3248.    
  3249.     local pos = em.GetAttachment(v, eyes);
  3250.    
  3251.     if(!pos) then return( em.LocalToWorld(v, em.OBBCenter(v)) ); end
  3252.    
  3253.     return(pos.Pos);
  3254. end
  3255.  
  3256. local aimignore;
  3257.  
  3258. local function Valid(v)
  3259.     if(!v || !em.IsValid(v) || v == me || em.Health(v) < 1 || em.IsDormant(v) || pm.Team(v) == 1002 || (v == aimignore && gOption("casualbot", "Target", "Selection") == "Nextshot")) then return false; end
  3260.     if(gBool("casualbot", "Target", "Ignore Bots")) then
  3261.         if(pm.IsBot(v)) then return false; end
  3262.     end
  3263.     if(gBool("casualbot", "Target", "Ignore Team")) then
  3264.         if(pm.Team(v) == pm.Team(me)) then return false; end
  3265.     end
  3266.     if(gBool("casualbot", "Target", "Ignore Friends")) then
  3267.         if(pm.GetFriendStatus(v) == "friend") then return false; end
  3268.     end
  3269.     local tr = {
  3270.         start = em.EyePos(me),
  3271.         endpos = GetPos(v),
  3272.         mask = MASK_SHOT,
  3273.         filter = {me, v},
  3274.     };
  3275.     return(util.TraceLine(tr).Fraction == 1);
  3276. end
  3277.  
  3278. local function gettarget()
  3279.  
  3280.     local opt = gOption("casualbot", "Target", "Selection");
  3281.    
  3282.     local sticky = gOption("casualbot", "Aimbot", "Non-Sticky");
  3283.    
  3284.     if(opt == "Distance") then
  3285.  
  3286.         if( !sticky && Valid(aimtarget) ) then return; end
  3287.  
  3288.         dists = {};
  3289.        
  3290.         for k,v in next, player.GetAll() do
  3291.             if(!Valid(v)) then continue; end
  3292.             dists[#dists + 1] = { vm.Distance( em.GetPos(v), em.GetPos(me) ), v };
  3293.         end
  3294.        
  3295.         table.sort(dists, function(a, b)
  3296.             return(a[1] < b[1]);
  3297.         end);
  3298.        
  3299.         aimtarget = dists[1] && dists[1][2] || nil;
  3300.        
  3301.     elseif(opt == "Health") then
  3302.        
  3303.         if( !sticky && Valid(aimtarget) ) then return; end
  3304.  
  3305.         dists = {};
  3306.        
  3307.         for k,v in next, player.GetAll() do
  3308.             if(!Valid(v)) then continue; end
  3309.             dists[#dists + 1] = { em.Health(v), v };
  3310.         end
  3311.        
  3312.         table.sort(dists, function(a, b)
  3313.             return(a[1] < b[1]);
  3314.         end);
  3315.        
  3316.         aimtarget = dists[1] && dists[1][2] || nil;
  3317.        
  3318.     elseif(opt == "Nextshot") then
  3319.         if( !sticky && Valid(aimtarget) ) then return; end
  3320.         aimtarget = nil;
  3321.         local allplys = player.GetAll();
  3322.         local avaib = {};
  3323.         for k,v in next,allplys do
  3324.             avaib[math.random(100)] = v;
  3325.         end
  3326.        
  3327.         for k,v in next, avaib do
  3328.             if(Valid(v)) then
  3329.                 aimtarget = v;
  3330.             end
  3331.         end
  3332.     end
  3333.        
  3334. end
  3335.  
  3336.  
  3337. local cones = {};
  3338.  
  3339. local pcall = pcall;
  3340. local require = require;
  3341.  
  3342. local nullvec = Vector() * -1;
  3343.  
  3344. local IsFirstTimePredicted = IsFirstTimePredicted;
  3345. local CurTime = CurTime;
  3346. local servertime=0;
  3347. local bit = Copy(bit);
  3348.  
  3349.  
  3350. hook.Add("Move", "", function()
  3351.     if(!IsFirstTimePredicted()) then return; end
  3352.     servertime = CurTime();
  3353. end);
  3354.  
  3355.  
  3356. GAMEMODE["EntityFireBullets"] = function(self, p, data)
  3357.     aimignore = aimtarget;
  3358.     local w = pm.GetActiveWeapon(me);
  3359.     local Spread = data.Spread * -1;
  3360.     if(!w || !em.IsValid(w) || cones[em.GetClass(w)] == Spread || Spread == nullvec) then return; end
  3361.     cones[em.GetClass(w)] = Spread;
  3362. end
  3363.  
  3364. local function PredictSpread(ucmd, ang)
  3365.     local w = pm.GetActiveWeapon(me);
  3366.     if(!w || !em.IsValid(w) || !cones[em.GetClass(w)] || !gBool("casualbot", "Accuracy", "Anti Spread")) then return am.Forward(ang); end
  3367.     return(dickwrap.Predict(ucmd, am.Forward(ang), cones[em.GetClass(w)]));
  3368. end
  3369.  
  3370. local function Autofire(ucmd)
  3371.     if(pm.KeyDown(me, 1) && gBool("casualbot", "Aimbot", "Auto Pistol")) then
  3372.         cm.SetButtons(ucmd, bit.band( cm.GetButtons(ucmd), bit.bnot( 1 ) ) );
  3373.     else
  3374.         cm.SetButtons(ucmd, bit.bor( cm.GetButtons(ucmd), 1 ) );
  3375.     end
  3376. end
  3377.  
  3378. local function WeaponCanFire()
  3379.     local w = pm.GetActiveWeapon(me);
  3380.     if(!w || !em.IsValid(w) || !gBool("casualbot", "Aimbot", "Bullettime")) then return true; end
  3381.     return( servertime >= wm.GetNextPrimaryFire(w) );
  3382. end
  3383.  
  3384. local function WeaponShootable()
  3385.     local wep = pm.GetActiveWeapon(me);
  3386.     if( em.IsValid(wep) ) then // I would never get lazy..
  3387.          local n = string.lower(wep:GetPrintName())
  3388.          if( wep:Clip1() <= 0 ) then
  3389.             return false;
  3390.          end
  3391.          
  3392.          
  3393.          
  3394.          if( string.find(n,"knife") or string.find(n,"grenade") or string.find(n,"sword") or string.find(n,"bomb") or string.find(n,"ied") or string.find(n,"c4") or string.find(n,"slam") or string.find(n,"climb") or string.find(n,"hand") or string.find(n,"fist") ) then
  3395.             return false;
  3396.          end
  3397.          
  3398.          
  3399.           return true;
  3400.     end
  3401. end
  3402.  
  3403. local function PredictPos(pos)
  3404. local myvel = LocalPlayer():GetVelocity()
  3405. local pos = pos - (myvel * engine.TickInterval());
  3406. return pos;
  3407. end
  3408.  
  3409.  
  3410. local function aimer(ucmd)
  3411.     if(cm.CommandNumber(ucmd) == 0 || !gBool("casualbot", "Aimbot", "Enabled")) then return; end
  3412.     gettarget();
  3413.     aa = false;
  3414.     if(aimtarget && (input.IsKeyDown(KEY_LALT) || gBool("casualbot", "Aimbot", "Autosnap"))  ) then
  3415.         aa = true;
  3416.         local pos = GetPos(aimtarget) - em.EyePos(me);
  3417.         PredictPos(pos);
  3418.         local ang = vm.Angle( PredictSpread(ucmd, vm.Angle(pos)));
  3419.         NormalizeAngle(ang);
  3420.         cm.SetViewAngles(ucmd, ang);
  3421.         if(gBool("casualbot", "Aimbot", "Autofire")) then
  3422.             Autofire(ucmd);
  3423.         end
  3424.         if(gBool("casualbot", "Aimbot", "Silent")) or defcon.Settings["silent"] then
  3425.             FixMovement(ucmd);
  3426.         else
  3427.             fa = ang;
  3428.         end
  3429.     end
  3430. end
  3431.  
  3432. --[[
  3433. local function test12 (ucmd)
  3434.     if(defcon.Settings["aimbot"] && /*input.IsKeyDown(defcon.AimKey)*/ input.IsKeyDown(KEY_F)) then
  3435.         for k,v in pairs(player.GetAll()) do
  3436.             if defcon.CanTarget(v) then
  3437.                 local head = v:LookupBone("ValveBiped.Bip01_Head1")
  3438.                 if head ~= nil then
  3439.                     local fov = defcon.Settings["aimbot_fov"]
  3440.                     if fov == 0 then
  3441.                         local headpos,targetheadang = v:GetBonePosition(head)
  3442.                         ply:SetEyeAngles((headpos - LocalPlayer():GetShootPos()):Angle())
  3443.                     else
  3444.                         local lpang = LocalPlayer():GetAngles();
  3445.                         local ang = (v:GetPos() - LocalPlayer():GetPos()):Angle();
  3446.                         local ady = math.abs(math.NormalizeAngle(lpang.y - ang.y))
  3447.                         local adp = math.abs(math.NormalizeAngle(lpang.p - ang.p ))
  3448.                         if not(ady > fov or adp > fov) then
  3449.                             local headpos,targetheadang = v:GetBonePosition(head)
  3450.                             if headpos != nil and targetheadang != nil then
  3451.                                 ply:SetEyeAngles((headpos - LocalPlayer():GetShootPos()):Angle())
  3452.                             end
  3453.                         end
  3454.                     end
  3455.                 end
  3456.             end
  3457.         end
  3458.     end
  3459. end
  3460. --]]
  3461.  
  3462. --antiaimer
  3463.  
  3464. local ox=-181;
  3465. local oy=0;
  3466.  
  3467. local function RandCoin()
  3468.     local randcoin = math.random(0,1);
  3469.     if(randcoin == 1) then return 1; else return -1; end
  3470. end
  3471.  
  3472. local function GetX()
  3473.     local opt = gOption("casualbot", "Anti-Aim", "X");
  3474.     if(opt == "Emotion") then
  3475.         local randcoin = gInt("casualbot", "Anti-Aim", "Emotion Randomcoin X");
  3476.         if( math.random(100) < randcoin ) then
  3477.             ox = RandCoin() * 181;
  3478.         end
  3479.     elseif( opt == "Up" ) then
  3480.         ox = -181;
  3481.     elseif( opt == "Down" ) then
  3482.         ox = 181;
  3483.     elseif(opt == "Jitter") then
  3484.         ox = ox * -1;
  3485.     end
  3486. end
  3487.  
  3488. local function GetClosest()
  3489.     local ddists = {};
  3490.    
  3491.     local closest;
  3492.        
  3493.     for k,v in next, player.GetAll() do
  3494.     if(!Valid(v)) then continue; end
  3495.         ddists[#ddists + 1] = { vm.Distance( em.GetPos(v), em.GetPos(me) ), v };
  3496.     end
  3497.        
  3498.     table.sort(ddists, function(a, b)
  3499.         return(a[1] < b[1]);
  3500.     end);
  3501.        
  3502.     closest = ddists[1] && ddists[1][2] || nil;
  3503.    
  3504.     if(!closest) then return fa.y; end
  3505.    
  3506.     local pos = em.GetPos(closest);
  3507.    
  3508.     local pos = vm.Angle(pos - em.EyePos(me));
  3509.    
  3510.     return( pos.y );
  3511. end
  3512.  
  3513. local function GetY()
  3514.     local opt = gOption("casualbot", "Anti-Aim", "Y");
  3515.     if(opt == "Emotion") then
  3516.         local randcoin = gInt("casualbot", "Anti-Aim", "Emotion Randomcoin Y");
  3517.         if( math.random(100) < randcoin ) then
  3518.             oy = fa.y + math.random(-180, 180);
  3519.         end
  3520.     elseif( opt == "Eye Angles" ) then
  3521.         oy = fa.y;
  3522.     elseif( opt == "Sideways" ) then
  3523.         oy = fa.y - 90;
  3524.     elseif(opt == "Jitter") then
  3525.         oy = fa.y + math.random(-90, 90);
  3526.     elseif(opt == "TJitter") then
  3527.         oy = fa.y - 180 + math.random(-90, 90);
  3528.     elseif(opt == "Static") then
  3529.         oy = 0;
  3530.     elseif(opt == "Forward") then
  3531.         oy = fa.y;
  3532.     elseif(opt == "Backwards") then
  3533.         oy = fa.y - 180;
  3534.     elseif(opt == "Towards Players") then
  3535.         oy = GetClosest();
  3536.     end
  3537. end
  3538.  
  3539. local function walldetect()
  3540.     local eye = em.EyePos(me);
  3541.     local tr = util.TraceLine({
  3542.         start = eye,
  3543.         endpos = (eye + (am.Forward(fa) * 10)),
  3544.         mask = MASK_ALL,
  3545.     });
  3546.     if(tr.Hit) then
  3547.         ox = -181;
  3548.         oy = -90;
  3549.     end
  3550. end
  3551.  
  3552. local function antiaimer(ucmd)
  3553.     if( (cm.CommandNumber(ucmd) == 0 && !gBool("Visuals", "Misc", "Thirdperson")) || cm.KeyDown(ucmd, 1) || cm.KeyDown(ucmd, 32) || aa || !gBool("casualbot", "Anti-Aim", "Enabled")) then return; end
  3554.     GetX();
  3555.     GetY();
  3556.     walldetect();
  3557.     local aaang = Angle(ox, oy, 0);
  3558.     cm.SetViewAngles(ucmd, aaang);
  3559.     FixMovement(ucmd, true);
  3560. end
  3561.  
  3562. local function GetAngle(ang)
  3563.     if(!gBool("casualbot", "Accuracy", "Anti Recoil")) then return ang + pm.GetPunchAngle(me); end
  3564.     return ang;
  3565. end
  3566.  
  3567. local function rapidfire(ucmd)
  3568.     if(pm.KeyDown(me, 1) && gBool("casualbot", "Aimbot", "Auto Pistol")) then
  3569.         cm.SetButtons(ucmd, bit.band( cm.GetButtons(ucmd), bit.bnot( 1 ) ) );
  3570.     end
  3571. end
  3572.  
  3573. local function meme(ucmd)
  3574.     if(!fa) then fa = cm.GetViewAngles(ucmd); end
  3575.     fa = fa + Angle(cm.GetMouseY(ucmd) * .023, cm.GetMouseX(ucmd) * -.023, 0);
  3576.     NormalizeAngle(fa);
  3577.     if(cm.CommandNumber(ucmd) == 0) then
  3578.         cm.SetViewAngles(ucmd, GetAngle(fa));
  3579.         return;
  3580.     end
  3581.     if(cm.KeyDown(ucmd, 1)) then
  3582.         local ang = GetAngle(vm.Angle( PredictSpread(ucmd, fa ) ) );
  3583.         NormalizeAngle(ang);
  3584.         cm.SetViewAngles(ucmd, ang);
  3585.     end
  3586.     if(cm.KeyDown(ucmd, 2) && !em.IsOnGround(me)) then
  3587.         cm.SetButtons(ucmd, bit.band( cm.GetButtons(ucmd), bit.bnot( 2 ) ) );
  3588.     end
  3589. end
  3590.  
  3591.  
  3592. hook.Add("CreateMove", "", function(ucmd)
  3593.     meme(ucmd);
  3594.     aimer(ucmd);
  3595.     antiaimer(ucmd);
  3596. end);
  3597.  
  3598. hook.Add("CalcView", "", function(p, o, a, f)
  3599.     return({
  3600.         angles = GetAngle(fa),
  3601.         origin = (gBool("Visuals", "Misc", "Thirdperson") && o + am.Forward(fa) * -150 || o),
  3602.         fov = f,
  3603.     });
  3604. end);
  3605.  
  3606. hook.Add("ShouldDrawLocalPlayer", "", function()
  3607.     return(gBool("Visuals", "Misc", "Thirdperson"));
  3608. end);
  3609.  
  3610. --gutted leftovers that for some reason make the freecam work again (idk why)
  3611.  
  3612. hook.Add("CalcView", "", function( p, o, a, f)
  3613.  
  3614. end);
  3615.  
  3616. --everything below is disabled lol
  3617.  
  3618. /*concommand.Add("debug", function()
  3619.     local pcash,gname = "", gmod.GetGamemode().Name
  3620.     print("Game-mode:\n    "..gname)
  3621.     if string.find(gname, "DarkRP") then
  3622.         print("Player Cash Amounts")
  3623.         for k,v in pairs(player.GetAll()) do
  3624.             if not(v.DarkRPVars and v.DarkRPVars.money)and(darkrpvar == true) then
  3625.                 darkrpvar = false
  3626.             end
  3627.             if v ~= LocalPlayer() then
  3628.                 pcash = pcash.."    "..v:Nick().." - "..v.DarkRPVars.money.."\n"
  3629.             end
  3630.         end
  3631.         if pcash ~= "" then
  3632.             print(pcash)
  3633.         end
  3634.     end
  3635.     if LocalPlayer().GetActiveWeapon and LocalPlayer():GetActiveWeapon() ~= nil and IsValid(LocalPlayer():GetActiveWeapon()) then
  3636.         print("Current Weapon")
  3637.         print("    "..LocalPlayer():GetActiveWeapon():GetClass())
  3638.     end
  3639.         local pos = LocalPlayer():GetShootPos()
  3640.     local ang = LocalPlayer():GetAimVector()
  3641.     local tracedata = {}
  3642.     tracedata.start = pos
  3643.     tracedata.endpos = pos+(ang*9999999999999)
  3644.     local trace = util.TraceLine(tracedata)
  3645.     if(trace.HitNonWorld) then
  3646.         target = trace.Entity
  3647.         print("Entity Info")
  3648.         print("    Class: "..target:GetClass())
  3649.         print("    Model: "..target:GetModel())
  3650.     end
  3651. end)*/
  3652.  
  3653. --[[
  3654. GREETZ:
  3655. Johnny Nutmegg, Tito, Komrade Seals, Lincent, Dr. Richard Head, Caliber, the rest of the Madbluntz.rs team, Nigel farage,
  3656. Rush, Mack, Ghost, Shawntism, Fried_Kooch, Timi, AROLTD, Kibler, Adolf Hitler, Oscar, Rootie, Alex Jones, Verrock,
  3657. Thrice, A5, Ted and Quak
  3658.  
  3659. Created by the Madbluntz.rs team for internal use during raids.
  3660. Released and developed publically to encourage both new people to join and to create the best public lua cheat imaginable.
  3661. Free to distribute and modify in any way.
  3662.  
  3663. "Shitcheat: free forever, always."
  3664.  
  3665. --]]
RAW Paste Data
Top