daily pastebin goal
81%
SHARE
TWEET

Shitcheat 4.9

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