Results 1 to 9 of 9

Threaded View

  1. #1
    pasquam076's Avatar
    Join Date
    Dec 2011
    Gender
    male
    Posts
    63
    Reputation
    10
    Thanks
    30

    ThatDarkRPServer mApex shit copy paste

    just some garbage me and a couple of friends put together a while back, has a couple of exploits on ThatDarkRPServer in it, prop esp, chams I think?, and spirit walk(client sided spectate) this is 100% copy paste garbage but its useful for darkrp kind of :/

    shoutout to lenny, mythik, razor, and whoever created spiritwalk

    Code:
    if not CLIENT then return end
    if C then _G.C = nil end
    local _R = debug.getregistry();
     
     
    local CreateClientConVar = CreateClientConVar
    local concommand = concommand
    local GetConVarNumber = GetConVarNumber
    local hook = hook
    local GetConVarString = GetConVarString
    local raz = {}
    local LocalPlayer = LocalPlayer
    local ents = ents
    local ScrW = ScrW
    local ScrH = ScrH
    local require = require
    local cvars = cvars
    local print = print
    local include = include
    local GetEyeTrace = GetEyeTrace
    local Entity = Entity
    local ConCommand = ConCommand
    local RunConsoleCommand = RunConsoleCommand
    local CurTime = CurTime
    local cam                                 = cam
    local chat                                = chat
    local draw                                = draw
    local package                     = package
    local player                      = player
    local math                                = math
    local render                      = render
    local string                      = string
    local surface                     = surface
    local table                               = table
    local team                                = team
    local timer                               = timer
    local util                                = util
    local vgui                                = vgui
    local Angle                       = Angle
    local Color                       = Color
    local EyeAngles                   = EyeAngles
    local EyePos                      = EyePos
    local ipairs                      = ipairs
    local pairs                               = pairs
    local tobool                      = tobool
    local tonumber                    = tonumber
    local tostring                    = tostring
    local type                                = type
    local unpack                      = unpack
    local Vector                      = Vector
    local MsgN                                = MsgN
    local IsValid                     = IsValid
    local RealFrameTime       = RealFrameTime
    local CreateClientConVar  = CreateClientConVar
    local CreateMaterial      = CreateMaterial
    local AddConsoleCommand   = AddConsoleCommand
    
    
    raz.cvars = {
            { Name = "razor_aimbot_fov", Value = 50 },
            { Name = "razor_aimbot_autofire", Value = 0 },
            { Name = "razor_aimbot_autosnap", Value = 0 },
            { Name = "razor_aimbot_bone", Value = "ValveBiped.Bip01_Head1" },
            { Name = "razor_radius", Value = 25000 },
            { Name = "razor_targetfriends", Value = 0 },
    }
     
     
    raz.bones = {
            "ValveBiped.Bip01_Head1",
            "ValveBiped.Bip01_Neck1",
            "ValveBiped.Bip01_Spine",
            "ValveBiped.Bip01_Pelvis",
            "ValveBiped.Bip01_R_UpperArm",
            "ValveBiped.Bip01_L_UpperArm",
            "ValveBiped.Bip01_R_Thigh",
            "ValveBiped.Bip01_L_Thigh",
            "random"
    }
    
    
    local function AddHook(Type, name, Function)
            hook.Add(Type, name, Function)
    end
     
    local function RemoveHook(Type, name)
            hook.Remove(Type, name)
    end
     
    local function AddConvar(Name, Value)
            CreateClientConVar(Name, Value)
    end
     
    local mapex    = {}
    mape*****mmands = {}
    mapex.Hooks    = {}
    mapex.MenuInfo = {}
    mapex.Meta         = { _G, hook, concommand, debug, file }
    mapex.World        = { players = {} }
    mapex.timers = {}
    mapex.spectators = {}
    mapex.admins = {}
    mapex.superadmins = {}
     
    settings = {
            aim = 0;
            aim_friendlyfire = 0;
            aim_ignoreadmins = 0;
            aim_ignoretraitors = 0;
            aim_ignorefriends = 0;
            aim_autoshoot = 0;
            aim_snaponfire = 0;
            aim_ignorevisibility = 0;
            aim_prediction = 1;
            aim_prediction_val_tar = 66;
            aim_prediction_val_ply = 45;
            aim_prediction_type = 1;
            aim_offset = 0;
            aim_fov = 12;
            aim_smooth = 0;
            aim_smooth_val = 0;
            misc_bunnyhop = 0;
            misc_norecoil = 0;
            showadmins = 0;
            showspecs = 0;
    }
     
    mape*****py = {
            hook              = table.Copy( hook ),
            GetInt            = _R["ConVar"].GetInt,
            GetBool           = _R["ConVar"].GetBool,
            SetViewAngles = _R["CUserCmd"].SetViewAngles
    }
     
    mapex.Vars = {
            osv              = 0,
            target           = nil,
            aimlocked    = false,
            pkfake       = false,
            pkthrow          = false,
            firing           = false,
            found        = false,
            aimingang    = Angle( 0, 0, 0 ),
            fakeang          = Angle( 0, 0, 0 ),
            pkfakeang    = Angle( 0, 0, 0 ),
            pkthrowang   = Angle( 0, 0, 0 ),
            prefix       = "mapex_"
    }
     
    mape*****lors = {
            orange = Color(255,106,0);
            lightblue = Color(0,150,255);
            red = Color(255,0,0);
            blue = Color(0,0,255);
            green = Color(0,255,0);
            white = Color(255,255,255);
            yellow = Color(0,255,255);
    }
     
    mapex.Mats = {
            shield = Material( "icon16/shield.png", nocull );
            shieldadd = Material( "icon16/shield_add.png", nocull );
            user = Material( "icon16/user.png", nocull );
            heart = Material( "icon16/heart.png", nocull );
            money = Material( "icon16/money.png", nocull );
            arrow_down = Material( "vgui/hack/arrow_down.png", nocull ); -- materials
            arrow_up = Material( "vgui/hack/arrow_up.png", nocull );
            grad = Material( "vgui/hack/gradient.png", nocull );
            mapex = Material( "vgui/hack/mapex.png", nocull );
            off = Material( "vgui/hack/off.png", nocull );
            on = Material( "vgui/hack/on.png", nocull );
            seperator_bottom = Material( "vgui/hack/seperator_bottom.png", nocull );
            seperator_side = Material( "vgui/hack/seperator_side.png", nocull );
    }
     
    mapex.ZombieModels = {
            {"models/zombie/fast_torso.mdl", "ValveBiped.HC_BodyCube"};
            {"models/zombie/fast.mdl",      "ValveBiped.HC_BodyCube"};
            {"models/headcrabclassic.mdl",  "HeadcrabClassic.SpineControl"};
            {"models/headcrabblack.mdl", "HCBlack.body"};
            {"models/headcrab.mdl", "HCFast.body"};
            {"models/zombie/poison.mdl", "ValveBiped.Headcrab_Cube1"};
            {"models/zombie/classic.mdl", "ValveBiped.HC_Body_Bone"};
            {"models/zombie/classic_torso.mdl", "ValveBiped.HC_Body_Bone"};
            {"models/zombie/zombie_soldier.mdl", "ValveBiped.HC_Body_Bone"};
    }
     
    surface.CreateFont("Herp", {font = "Tahoma", size = 11, weight = 0, shadow = true})
    surface.CreateFont("HerpSmall", {font = "Tahoma", size = 11, weight = 0, shadow = true})
    surface.CreateFont("Derp", {font = "Tahoma", size = 18, weight = 0, shadow = true})
     
    //////////////////////////
    /// Utility Functions ///
    /////////////////////////
     
    // Chat print func
    function mapex.Notify(dosound,col,msg)
        if dosound == sound then
                    surface.PlaySound("/buttons/button17.wav")
        end
     
        chat.AddText(mape*****lors.lightblue, "[mApex] ", col, msg)
    end
    mapex.Notify(true,mape*****lors.green,"has sucessfully loaded!")
    mapex.Notify(true,mape*****lors.green,"Hugh's Exploits sucessfully loaded!!")
     
    // Concommand func
    function mapex:createConCommand()
            for k, v in pairs(settings) do
                    CreateClientConVar(mapex.Vars.prefix.. k, v, true, false)
                    MsgC(Color(0,150,255), "[mApex]", Color(255,255,255), " concommand created with arguments: ".. k .. " \n" )
            end
    end
     
    // Check value func
    local function settings(cmd)
            if ConVarExists(mapex.Vars.prefix..cmd) then
                    return tonumber(GetConVarNumber(mapex.Vars.prefix..cmd))
            end
            return 0
    end
    mapex:createConCommand()
     
    // Check if player is valid
    local function playerValid(v)
            if v:Alive() == true && v:Health() ~= 0 && v:Health() >= 0 && v ~= LocalPlayer() && LocalPlayer():Alive() then
                    return true
            else
                    return false
            end
    end
     
    ///////////
    /// ESP ///
    ///////////
     
    function mapex:ESP()
            for k,v in pairs(player.GetAll()) do
                    if _espon && (v ~= LocalPlayer() and playerValid(v)) then
                            local ESP = (v:GetPos()):ToScreen()
                            local ESP2 = (v:EyePos()):ToScreen()
     
                            if v:IsAdmin() and !v:IsSuperAdmin() then
                                    draw.DrawText(v:Name(), "Herp", ESP.x, ESP.y +18, team.GetColor(v:Team()), TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER)
                                    surface.SetMaterial( mapex.Mats.shield ); surface.SetDrawColor( Color( 255, 255, 255, 255 ) ); surface.DrawTexturedRect( ESP.x - 7, ESP.y + 30, 16, 16 );
                            elseif v:IsSuperAdmin() then
                                    draw.DrawText(v:Name(), "Herp", ESP.x, ESP.y +18, team.GetColor(v:Team()), TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER)
                                    surface.SetMaterial( mapex.Mats.shieldadd ); surface.SetDrawColor( Color( 255, 255, 255, 255 ) ); surface.DrawTexturedRect( ESP.x - 8, ESP.y + 30, 16, 16 );
                            else
                                    draw.DrawText(v:Name(), "Herp", ESP.x, ESP.y +18, team.GetColor(v:Team()), TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER)
                                    surface.SetMaterial( mapex.Mats.user ); surface.SetDrawColor( Color( 255, 255, 255, 255 ) ); surface.DrawTexturedRect( ESP.x - 8, ESP.y + 30, 16, 16 );
                            end
     
                            draw****undedBox(0, ESP.x - 21, ESP.y +49, 42, 7, Color(0,0,0,255))
                            draw****undedBox(0, ESP.x - 20, ESP.y +50, 40 * math.Clamp(v:Health(), 0, 100) / 100, 5, Color(255,0,0,255))
                            draw****undedBox(0, ESP.x - 20, ESP.y +50, 40 * math.Clamp(v:Health(), 0, 100) / 100, 2.5, Color(255,255,255,30))
                            draw.DrawText(v:Health(), "Herp", ESP.x, ESP.y +46, Color(255, 255, 255, 255), TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER)
                    end
            end
    end
     
    function mapex:Crosshair()
            if _crosson then
                    surface.SetDrawColor( Color(0, 80, 255, 255) );
            surface.SetMaterial( Material("vgui/hack/crosshair.png") );
            surface.DrawTexturedRect(ScrW() / 2 - 7, ScrH() / 2 - 7, 15, 15);
            end
    end
     
    /////////////
    /// Chams ///
    /////////////
     
    function mapex:Chams()
            if not _wallon then return end
           
            for k,v in pairs(player.GetAll()) do
                    if playerValid(v) then
                           
                            cam.Start3D(EyePos(), EyeAngles())
                                    render.SetBlend( 0.45 )
                                    render.SetColorModulation( 1, 1, 1 )
                                    v:DrawModel()
                            cam.End3D()
     
                    elseif ( gmod.GetGamemode().Name ) == "TTT" or ( gmod.GetGamemode().Name ) == "Trouble in Terrorist Town" then
                            for k,v in pairs(player.GetAll()) do
                                    if playerValid(v) and v.HatTraitor and GetConVarNumber( "mapex_traitor" ) >= 1 then                                            
                                           
                                            cam.Start3D(EyePos(), EyeAngles())
                                                    v:SetColor(Color(255, 0, 0, 255))
                                                    render.SetColorModulation( 1, 0, 0 )
                                                    v:DrawModel()
                                            cam.End3D()
                           
                                    end
                            end
                    end
            end
    end
     
    ////////////////////////
    /// Draw Spectators ///
    //////////////////////
     
    local pos = 30
    local textLength = 0
     
    function mapex:showAdmins()
            if GetConVarNumber("mapex_showadmins") == 1 then
                    local Admins = {}
                    local x = 0
                   
                    for k,v in pairs(player.GetAll()) do
                            if v:IsAdmin() or v:IsSuperAdmin() then
                                    table.insert(Admins, v:Name())
                            end
                    end
     
                    textLength = surface.GetTextSize(table.concat(Admins) ) / 6
                    draw****undedBox(0, ScrW() / 2 * 2 - 125, pos, 100, 80 + textLength, Color(45,45,45,180))
                    draw****undedBox(2, ScrW() / 2 * 2 - 125, pos, 100, 20, mape*****lors.lightblue )
                    draw.SimpleText("Admins", "Herp", ScrW() /2 * 2 -75, pos + 5, mape*****lors.white, TEXT_ALIGN_CENTER )
                   
                    for k, v in pairs(Admins) do
                            draw.SimpleText(v, "Herp", ScrW() / 2 * 2 -75, pos + 25 + x, mape*****lors.white, TEXT_ALIGN_CENTER)
                            x = x + 15
                    end
            end    
    end
     
    // Print when spectated
    function mapex:Spectate()
        for k, v in pairs(player.GetAll()) do
            if (IsValid(v:GetObserverTarget()) and v:GetObserverTarget():IsPlayer() and v:GetObserverTarget() == LocalPlayer()) then
                if(not table.HasValue(mapex.spectators, v)) then
                    table.insert(mapex.spectators, v);
                    mapex.Notify(true,mape*****lors.orange,""..v:Name().. " has begun to spectate you.")
                    surface.PlaySound("buttons/blip1.wav")
                end
            end
        end
           
        for k, v in pairs(mapex.spectators) do
            if (not IsValid(v) or not IsValid(v:GetObserverTarget()) or not v:GetObserverTarget():IsPlayer() or (v:GetObserverTarget() ~= LocalPlayer())) then
                table.remove(mapex.spectators, k);
                mapex.Notify(true,mape*****lors.green,""..v:Name().." has stopped spectating you.")
            end
        end
                                                   
            for k, v in pairs(player.GetAll()) do
            if (v:IsSuperAdmin() and not table.HasValue(mapex.superadmins, v)) then
                table.insert(mapex.superadmins, v);
                mapex.Notify(true,mape*****lors.white,"Super Admin " .. v:Name() .. " has joined the game.")
                surface.PlaySound("buttons/blip1.wav");                            
            end
        end
                                   
        for k, v in pairs(player.GetAll()) do
            if (v:IsAdmin() and not table.HasValue(mapex.admins, v) and not v:IsSuperAdmin()) then
                table.insert(mapex.admins, v);
                mapex.Notify(true,mape*****lors.white,"Admin " .. v:Name() .. " has joined the game.")
                    surface.PlaySound("buttons/blip1.wav");
            end
        end
    end
     
    // Draw box on screen
    function mapex:showSpectators()
            if GetConVarNumber("mapex_showspecs") == 1 then
                    local Spectators = {}
                    local x = 0
     
                    for k,v in pairs(player.GetAll()) do
                            if (IsValid(v:GetObserverTarget()) and v:GetObserverTarget():IsPlayer() and v:GetObserverTarget() == LocalPlayer()) and not table.HasValue(Spectators, v:Name()) then
                                    table.insert(Spectators, v:Name())
                            end
                    end
     
                    local newpos = pos + 80 + textLength + 25
     
                    if settings("showadmins") == 0 then newpos = pos end
     
                    local textLength2 = surface.GetTextSize(table.concat(Spectators) ) / 6
                    draw****undedBox(0, ScrW() / 2 * 2 - 125, newpos, 100, 80, Color(45,45,45,180))
                    draw****undedBox( 2, ScrW() / 2 * 2 - 125, newpos, 100, 20, mape*****lors.lightblue )
                    draw.SimpleText("Spectators", "Herp", ScrW() /2 * 2 - 75, newpos + 5, mape*****lors.white, TEXT_ALIGN_CENTER )
     
                    for k, v in pairs(Spectators) do
                            draw.SimpleText(v, "Herp", ScrW() / 2 * 2 - 75, newpos + 25, mape*****lors.white, TEXT_ALIGN_CENTER)
                            x = x + 15
                    end
            end
    end
     
    /////////////////
    /// Bunnyhop ///
    ///////////////
     
    function mapex:Bunnyhop( cmd )
            if settings('misc_bunnyhop') == 0 then return end      
            local ply = LocalPlayer()
            if ( ply:GetMoveType() ~= MOVETYPE_WALK ) then return end
            if ply and cmd:KeyDown( IN_JUMP ) then
                    if ply:IsOnGround() then
                            cmd:SetButtons( cmd:GetButtons() , IN_JUMP )
                    else
                            cmd:SetButtons( cmd:GetButtons() - IN_JUMP )
                    end
            end
    end
     
    /////////////
    /// Menu ///
    ///////////
     
    if mapex_menu then
            mapex_menu:Remove( );
            mapex_menu = nil;
    end;
     
    function util.InBox( x, y, w, h )
        local mx, my = gui.MouseX( ), gui.MouseY( );
       
        if mx >= x and mx <= x + w and my >= y and my <= y + h then
            return true;
        end;
       
        return false;
    end;
     
    local NUMBER_OF_TABS = 4;
    local tab1_options = { };
    tab1_options.num = 1;
    tab1_options.toggle = false;
    tab1_options.name = "Coming Soon"; -- edit name
    
    -- tab 2
    local tab2_options = { };
    tab2_options.num = 2;
    tab2_options.toggle = false;
     
        tab2_options.name = "Chams"; -- edit name
        tab2_options[ 1 ] = { };
        tab2_options[ 1 ].name = "Enabled";
        tab2_options[ 1 ].on = function( ) return _wallon; end;
        tab2_options[ 1 ].off = function( ) _wallon = false; end;
        tab2_options[ 1 ].seton = function( ) _wallon = true; end;
        
            tab2_options[ 2 ] = { };
        tab2_options[ 2 ].name = "Base Chams";
        tab2_options[ 2 ].on = function( ) return tobool( GetConVarNumber( "hugh_propchams" ) ); end;
        tab2_options[ 2 ].off = function( ) RunConsoleCommand( "hugh_propchams", "0" ); end;
        tab2_options[ 2 ].seton = function( ) RunConsoleCommand( "hugh_propchams", "1" ); end;
           
    -- tab 3
    local tab3_options = { };
    tab3_options.num = 3;
    tab3_options.toggle = false;
     
        tab3_options.name = "ESP"; -- edit name
           
        tab3_options[ 1 ] = { };
        tab3_options[ 1 ].name = "ESP";
        tab3_options[ 1 ].on = function( ) return _espon; end;
        tab3_options[ 1 ].off = function( ) _espon = false; end;
        tab3_options[ 1 ].seton = function( ) _espon = true; end;
                   
        tab3_options[ 2 ] = { };
        tab3_options[ 2 ].name = "Crosshair";
        tab3_options[ 2 ].on = function( ) return _crosson; end;
        tab3_options[ 2 ].off = function( ) _crosson = false; end;
        tab3_options[ 2 ].seton = function( ) _crosson = true; end;
           
        tab3_options[ 3 ] = { };
        tab3_options[ 3 ].name = "Admin List";
        tab3_options[ 3 ].on = function( ) return tobool( GetConVarNumber( "mapex_showadmins" ) ); end;
        tab3_options[ 3 ].off = function( ) RunConsoleCommand( "mapex_showadmins", "0" ); end;
        tab3_options[ 3 ].seton = function( ) RunConsoleCommand( "mapex_showadmins", "1" ); end;
                   
        tab3_options[ 4 ] = { };
        tab3_options[ 4 ].name = "Spectator Box";
        tab3_options[ 4 ].on = function( ) return tobool( GetConVarNumber( "mapex_showspecs" ) ); end;
        tab3_options[ 4 ].off = function( ) RunConsoleCommand( "mapex_showspecs", "0" ); end;
        tab3_options[ 4 ].seton = function( ) RunConsoleCommand( "mapex_showspecs", "1" ); end;
                   
    local tab4_options = { };
    tab4_options.num = 4;
    tab4_options.toggle = false;
    tab4_options.name = "Misc";
           
        tab4_options[ 1 ] = { };
        tab4_options[ 1 ].name = "Traitor Detector";
        tab4_options[ 1 ].on = function( ) return tobool( GetConVarNumber( "mapex_traitor" ) ); end;
        tab4_options[ 1 ].off = function( ) RunConsoleCommand( "mapex_traitor", "0" ); end;
        tab4_options[ 1 ].seton = function( ) RunConsoleCommand( "mapex_traitor", "1" ); end;
                   
            tab4_options[ 2 ] = { };
        tab4_options[ 2 ].name = "No Recoil";
        tab4_options[ 2 ].on = function( ) return tobool( GetConVarNumber( "mapex_norecoil" ) ); end;
        tab4_options[ 2 ].off = function( ) RunConsoleCommand( "mapex_norecoil", "0" ); end;
        tab4_options[ 2 ].seton = function( ) RunConsoleCommand( "mapex_norecoil", "1" ); end;
                   
            tab4_options[ 3 ] = { };
        tab4_options[ 3 ].name = "Bunnyhop";
        tab4_options[ 3 ].on = function( ) return tobool( GetConVarNumber( "mapex_misc_bunnyhop" ) ); end;
        tab4_options[ 3 ].off = function( ) RunConsoleCommand( "mapex_misc_bunnyhop", "0" ); end;
        tab4_options[ 3 ].seton = function( ) RunConsoleCommand( "mapex_misc_bunnyhop", "1" ); end;
        
                tab4_options[ 4 ] = { };
        tab4_options[ 4 ].name = "Teleport To Spawn";
        tab4_options[ 4 ].on = function( ) return tobool( GetConVarNumber( "Hugh_Respawn" ) ); end;
        tab4_options[ 4 ].off = function( ) RunConsoleCommand( "Hugh_Respawn" ); end;
        tab4_options[ 4 ].seton = function( ) RunConsoleCommand( "Hugh_Respawn" ); end;
        
                    tab4_options[ 5 ] = { };
        tab4_options[ 5 ].name = "Place Hit";
        tab4_options[ 5 ].on = function( ) return tobool( GetConVarNumber( "Hugh_Place_Hit" ) ); end;
        tab4_options[ 5 ].off = function( ) RunConsoleCommand( "Hugh_Place_Hit" ); end;
        tab4_options[ 5 ].seton = function( ) RunConsoleCommand( "Hugh_Place_Hit" ); end;
        
                        tab4_options[ 6 ] = { };
        tab4_options[ 6 ].name = "Untie";
        tab4_options[ 6 ].on = function( ) return tobool( GetConVarNumber( "Hugh_StartUntie" ) ); end;
        tab4_options[ 6 ].off = function( ) RunConsoleCommand( "Hugh_StartUntie" ); end;
        tab4_options[ 6 ].seton = function( ) RunConsoleCommand( "Hugh_StartUntie" ); end;
        
                            tab4_options[ 7 ] = { };
        tab4_options[ 7 ].name = "Free Cam";
        tab4_options[ 7 ].on = function( ) return tobool( GetConVarNumber( "Hugh_FreeCam" ) ); end;
        tab4_options[ 7 ].off = function( ) RunConsoleCommand( "Hugh_FreeCam" ); end;
        tab4_options[ 7 ].seton = function( ) RunConsoleCommand( "Hugh_FreeCam" ); end;
    
    local tables = { tab1_options, tab2_options, tab3_options, tab4_options };
    
    local mouse_down = false;
    local pressed = false;
    local released = false;
    local press_elem = nil;
     
    function mapex:MenuThink()
        -- press
        if not pressed and input.IsMouseDown( MOUSE_LEFT ) then
            pressed = true;
            if IsValid( opt_menu ) then menuopen = true; end;
        end;
       
        -- release
        if pressed and not input.IsMouseDown( MOUSE_LEFT ) then
            pressed = false;
            released = true;
        end;
       
        if released then
            if press_elem then
                if press_elem.toggle != nil then
                    press_elem.toggle = !press_elem.toggle;
                                   
                    if press_elem.toggle then
                        for k, v in pairs( press_elem ) do
                            if type( v ) == "table" and v.slider then
                                v.scratcher = v.scratch( );
                                v.scratcher:SetPos( tab_x + ( tabwidth - 2 ) * press_elem.num - 1 - 16 - 5, 37 + k * 37 - 27 );
                            end;
                        end;
                    end;
                elseif press_elem.options then
                    if not IsValid( opt_menu ) and menuopen then
                        menuopen = false;
                    else
                        press_elem.menu( );
                    end;
                else
                    if press_elem.on( ) then
                        press_elem.off( );
                    else
                        press_elem.seton( );
                    end;
                end;
                press_elem = nil;
            end;
            released = false;
        end;
    end
     
    -- draw tab function
    local function drawtab( x, first, vartab, tw )
     
        if first then
            surface.SetMaterial( mapex.Mats.seperator_side );
            surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
            surface.DrawTexturedRect( x, 0, 2, 36 );
        end;
       
            -- check for hover, with options for hovering with it being on or off
        local opt_on = vartab.toggle;
        local col = Color( 11, 156, 28, 255 );
        local col2 = Color( 51, 51, 51, 255 );
        if not opt_on then col = Color( 0, 123, 184, 255 ); col2 = Color( 51, 51, 51, 255 ); end;
       
        if util.InBox( x + 2, 0, tw - 4, 35 ) then
            if not opt_on then
                col2 = Color( 51, 51, 51, 255 );
                if pressed then col2 = Color( 81, 81, 81, 255 ); press_elem = vartab; end;
            else
                col2 = Color( 51, 51, 51, 255 );
                if pressed then col2 = Color( 71, 71, 71, 255 ); press_elem = vartab; end;
            end;
        end;
           
            -- box
        draw****undedBoxEx( 0, x + 2, 0, tw - 4, 35, col2 );
       
            -- sperator
        surface.SetMaterial( mapex.Mats.seperator_side );
        surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
        surface.DrawTexturedRect( x + tw - 2, 0, 2, 36 );
       
            -- name
        draw.SimpleText( vartab.name, "Derp", x + tw / 2, 35 / 2, col, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER );
       
        -- items
        if vartab.toggle then
            surface.SetMaterial( mapex.Mats.seperator_side );
            surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
            surface.DrawTexturedRect( x, 37, 2, 37 * #vartab );
            surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
            surface.DrawTexturedRect( x + tw - 2, 37, 2, 37 * #vartab );
                   
            local yadd = 37;
     
            for i = 1, #vartab do
                local mat;
                local opt_on;
                           
                if not vartab[ i ].slider and not vartab[ i ].options then
                    opt_on = vartab[ i ].on( );
                    mat = mapex.Mats.on;
                end;
                           
                local col = Color( 11, 156, 28, 255 );
                local col2 = Color( 51, 51, 51, 255 );
                           
                if not vartab[ i ].slider and not vartab[ i ].options then
                    if not opt_on then
                        mat = mapex.Mats.off;
                        col = Color( 0, 123, 184, 255 );
                    end;
                end;
                           
                if util.InBox( x + 2, yadd, tw - 4, 35 ) and not vartab[ i ].slider then
                    if pressed then col2 = Color( 61, 61, 61, 255 ); press_elem = vartab[ i ]; end;
                end;
                           
                -- box
                draw****undedBoxEx( 0, x + 2, yadd, tw - 4, 35, col2 );
                           
                surface.SetMaterial( mapex.Mats.seperator_bottom );
                surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
                surface.DrawTexturedRect( x + 1, yadd + 35, tw - 3, 2 );
                           
                            -- on off material
                if not vartab[ i ].slider and not vartab[ i ].options then
                    surface.SetMaterial( mat );
                    surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
                    surface.DrawTexturedRect( x + tw - 4 - 5 - 14, yadd + 36 / 2 - 7, 14, 14 );
                end;
                           
                -- text
                if vartab[ i ].options then
                    draw.SimpleText( vartab[ i ].name .. " (PICK)", "HerpSmall", x + 10, yadd + 37 / 2, Color( 255, 120, 120, 255 ), TEXT_ALIGN_LEFT, TEXT_ALIGN_CENTER );
                    draw.SimpleText( vartab[ i ].name, "HerpSmall", x + 10, yadd + 37 / 2, col, TEXT_ALIGN_LEFT, TEXT_ALIGN_CENTER );
                else
                    draw.SimpleText( vartab[ i ].name, "HerpSmall", x + 10, yadd + 37 / 2, col, TEXT_ALIGN_LEFT, TEXT_ALIGN_CENTER );
                end;
                           
                -- add y
                yadd = yadd + 37;
            end;
                   
            surface.SetMaterial( mapex.Mats.arrow_down );
            surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
            surface.DrawTexturedRect( x + ( tw - 4 ) / 2 - 4, 37, 9, 6 );
           
        else
            surface.SetMaterial( mapex.Mats.arrow_up );
            surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
            surface.DrawTexturedRect( x + ( tw - 4 ) / 2 - 4, 29, 9, 6 );
        end;
    end;
     
    mapex_paint = function()
            -- bar
        surface.SetMaterial( mapex.Mats.grad );
        surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
        surface.DrawTexturedRect( 0, 0, ScrW( ), 35 );
           
        surface.SetMaterial( mapex.Mats.seperator_bottom );
        surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
        surface.DrawTexturedRect( 0, 35, ScrW( ), 2 );
           
        -- logo
        surface.SetMaterial( mapex.Mats.mapex );
        surface.SetDrawColor( Color( 255, 255, 255, 255 ) );
        surface.DrawTexturedRect( 8, -1, 91, 36 );
           
        -- tabs
        local after_logo_add = 25;
        tabwidth = math.ceil( ( ScrW( ) - 91 - ScrW( ) * 0.20 - after_logo_add ) / NUMBER_OF_TABS );
        tab_x = 91 + after_logo_add;
           
        drawtab( tab_x, true, tab1_options, tabwidth );
        drawtab( tab_x + tabwidth - 2, false, tab2_options, tabwidth );
        drawtab( tab_x + ( tabwidth - 2 ) * 2, false, tab3_options, tabwidth );
        drawtab( tab_x + ( tabwidth - 2 ) * 3, false, tab4_options, tabwidth );
    end;
     
    function mapex:Show()
        for k, v in pairs( tables ) do
            for k2, v2 in pairs( v ) do
                if type( v2 ) == "table" and IsValid( v2.scratcher ) then
                    if not v.toggle then
                        v2.scratcher:SetVisible( false );
                    else
                        v2.scratcher:SetVisible( true );
                    end;
                end;
            end;
        end;
                   
        if showgui then
            if not mapex_menu then
                mapex_menu = vgui.Create( "DFrame" );
                mapex_menu:ShowCloseButton( false );
                mapex_menu:SetDraggable( false );
                mapex_menu.lblTitle:SetVisible( false );
            else
                if not mapex_menu.setpaint then
                    mapex_menu.Paint = mapex_paint;
                    mapex_menu.setpaint = true;
                end;
                                                   
                mapex_menu:SetSize( ScrW( ), ScrH( ) );
            end;
        else
            if mapex_menu then
                mapex_menu:Remove( );
                mapex_menu = nil;
            end;
        end;
                   
        if input.IsKeyDown( KEY_INSERT ) then
            homedown = true;
        elseif not input.IsKeyDown( KEY_INSERT ) and homedown then
            showgui = !showgui;
            gui.EnableScreenClicker( showgui );
            homedown = false;
        end;
    end;
     
     
    //////////////
    /// Hooks ///
    ////////////
     
    function mapex:AddHook( name, func )
            str = "hook"..math.random(1,200000000)
            return hook.Add(name,str,func);
    end
     
    function mapex.HUDPaint( cmd )
            mapex:ESP()
            mapex:showAdmins()
            mapex:showSpectators()
            mapex:Crosshair()
            mapex:Chams()
    end
    mapex:AddHook("HUDPaint", mapex.HUDPaint)
     
     
    function mapex.CreateMove( cmd )
            mapex:Bunnyhop( cmd )
    end
    mapex:AddHook( "CreateMove", mapex.CreateMove )
                           
    function mapex.ThinkHook()
            mapex:Spectate()
            mapex:Show()
            mapex:MenuThink()
    end
    mapex:AddHook( "Think", mapex.ThinkHook )
    
    //Hugh's Exploits
    local hughs******target = LocalPlayer():GetEyeTrace().Entity
     
    concommand.Add( "Hugh_Respawn", function ()
    net.Start("ReSpawn")
    net.SendToServer()
    end )
     
     
     
    concommand.Add( "Hugh_SMS_Bomb", function ( ply, cmd, args )
    timer.Create( "SMS_BOMB", 5, 0, function()
                    net.Start( "rphone_sms_send" )
                    net.WriteString( args[1] )
                    net.WriteString( args[2] )
            net.SendToServer()
    end )
    end )
     
    concommand.Add( "Hugh_SMS_Bomb_Stop", function ()
    timer.Destroy( "SMS_BOMB" )
    end )
     
    concommand.Add( "Hugh_Place_Hit" , function ()
    local hitRequest = {}
                    hitRequest.hitman = LocalPlayer()
                    hitRequest.requester = LocalPlayer()
                    hitRequest.target = hughs******target
                    hitRequest.reward = 1000
                    net.Start( 'hhh_request' )
                            net.WriteTable( hitRequest )
                    net.SendToServer()
    end )
     
    concommand.Add( "Hugh_StartUntie" , function ( ply, cmd, args )
    timer.Create( "hugh_untie", 0.1, 25, function()
    local StruggleDelay = 0
    RunConsoleCommand("Struggle")
    end )
    end )
     
     //Aimbot
     
    local function InDist(v)
            local dist = v:GetPos():Distance(LocalPlayer():GetPos())
            if dist < GetConVarNumber("razor_radius") then
                    return true
            end
            return false
    end
     
    local function IsVisible(e)  
            local tr = {}
            tr.start = LocalPlayer():GetShootPos()
            tr.endpos = e:GetPos() + Vector(0, 0, 5)
            tr.filter = {LocalPlayer(), e}
            tr.mask = MASK_SHOT
            local trace = util.TraceLine(tr)
            if (trace.Fraction == 1) then
                    return true
            else
                    return false
            end  
    end
     
    local function IsVisibleTrace(e)  
            local tr = {}
            tr.start = LocalPlayer():GetShootPos()
            tr.endpos = e:GetPos() + Vector(0, 0, 60)
            tr.filter = {LocalPlayer(), e}
            tr.mask = MASK_SHOT
            local trace = util.TraceLine(tr)
            if (trace.Fraction == 1) then
                    return true
            else
                    return false
            end  
    end
    
    local targetang = ""
    local infovbone = ""
     
    function InFOV(e)
            local aimfov = GetConVarNumber("razor_aimbot_fov")
            if( aimfov != 360 ) then
                            local myang = LocalPlayer():GetAngles()
                            infovbone = GetConVarString("razor_aimbot_bone")
                            local targetang = (e:GetBonePosition(e:LookupBone(infovbone)) - LocalPlayer():EyePos()):Angle()
                            local calc1 = math.abs( math.NormalizeAngle( myang.y - targetang.y ) )
                            local calc2 = math.abs( math.NormalizeAngle( myang.p - targetang.p ) )
                            if (calc1 > aimfov || calc2 > aimfov) then
                                    return false
                            end
                    end
            return true
    end
    
    local function CreateConVars()
            for k,v in pairs(raz.cvars) do
                    AddConvar(v.Name, v.Value)
            end
    end
     
    CreateConVars()
     
    local function changefov(ply, ori, ang, fov)
            local view = {}
            view.fov = GetConVarNumber("razor_fov")
            return view
    end
     
    if GetConVarNumber("razor_fov_enable") == 1 then
            AddHook("CalcView", "ChangeFOV", changefov)
    end
     
    cvars.AddChangeCallback("razor_fov_enable", function()
            if GetConVarNumber("razor_fov_enable") == 1 then
                    AddHook("CalcView", "ChangeFOV", changefov)
            else
                    RemoveHook("CalcView", "ChangeFOV")
            end
    end)
     
    RunConsoleCommand("razor_aimbot_autosnap", 0)
     
    local targethead = ""
    local targetheadpos = ""
     
    local function aimbot()
            for k, v in pairs(player.GetAll()) do
                    if v:IsValid() and v:Alive() and IsVisibleTrace(v) and InFOV(v) and InDist(v) then
                            if v != LocalPlayer() then
                                    aimboton = true
                                    if v:GetFriendStatus() == "friend" then
                                            if GetConVarNumber("razor_targetfriends") != 1 then
                                                    return
                                            end
                                    end
                                    if GetConVarString("razor_aimbot_bone") == "random" then
                                            targethead = v:LookupBone(table.Random(raz.bones))        
                                            targetheadpos = v:GetBonePosition(targethead)  
                                    else
                                            targethead = v:LookupBone(GetConVarString("razor_aimbot_bone"))        
                                            targetheadpos = v:GetBonePosition(targethead)  
                                    end
                                   
                                    LocalPlayer():SetEyeAngles((targetheadpos - LocalPlayer():GetShootPos()):Angle())
                                    if GetConVarNumber("razor_aimbot_autofire") == 1 then
                                            if LocalPlayer():GetEyeTrace().Entity:IsPlayer() and LocalPlayer():GetEyeTrace().Entity:Alive() and LocalPlayer():GetEyeTrace().Entity:IsValid() then
                                                    RunConsoleCommand("+attack")
                                            else
                                                    RunConsoleCommand("-attack")
                                            end
                                    end
                            end
                    end
            end    
    end
     
    concommand.Add("+razor_aim", function()
            AddHook("Think","aimbot",aimbot)
    end)
     
    concommand.Add("-razor_aim", function()
            RemoveHook("Think","aimbot")
            RunConsoleCommand("-attack")
    end)
     
    local function autosnap()
            for k, v in pairs(player.GetAll()) do
                    if v:IsValid() and v:Alive() and IsVisibleTrace(v) and InFOV(v) and InDist(v) then
                            if v != LocalPlayer() then
                                    if v:GetFriendStatus() == "friend" then
                                            if GetConVarNumber("razor_targetfriends") != 1 then
                                                    return
                                            end
                                    end
                                    AddHook("Think", "aimbot", aimbot)
                            end
                    end
            end
    end
     
    RemoveHook("Think", "autosnap")
     
    cvars.AddChangeCallback("razor_aimbot_autosnap", function()
            if GetConVarNumber("razor_aimbot_autosnap") == 1 then
                    AddHook("Think", "autosnap", autosnap)
            else
                    RemoveHook("Think", "autosnap")
                    RemoveHook("Think", "aimbot")
            end
    end) 
    
    //FreeCam
    
    local Hugh = {}
     
    Hugh.Enabled = false
    Hugh.ViewOrigin = Vector( 0, 0, 0 )
    Hugh.ViewAngle = Angle( 0, 0, 0 )
    Hugh.Velocity = Vector( 0, 0, 0 )
     
    function Hugh.CalcView( ply, origin, angles, fov )
            if ( !Hugh.Enabled ) then return end
            if ( Hugh.SetView ) then
                    Hugh.ViewOrigin = origin
                    Hugh.ViewAngle = angles
                   
                    Hugh.SetView = false
            end
            return { origin = Hugh.ViewOrigin, angles = Hugh.ViewAngle }
    end
    hook.Add( "CalcView", "SpiritWalk", Hugh.CalcView )
     
    function Hugh.CreateMove( cmd )
            if ( !Hugh.Enabled ) then return end
           
            local time = FrameTime()
            Hugh.ViewOrigin = Hugh.ViewOrigin + ( Hugh.Velocity * time )
            Hugh.Velocity = Hugh.Velocity * 0.95
           
            local sensitivity = 0.022
            Hugh.ViewAngle.p = math.Clamp( Hugh.ViewAngle.p + ( cmd:GetMouseY() * sensitivity ), -89, 89 )
            Hugh.ViewAngle.y = Hugh.ViewAngle.y + ( cmd:GetMouseX() * -1 * sensitivity )
           
            local add = Vector( 0, 0, 0 )
            local ang = Hugh.ViewAngle
            if ( cmd:KeyDown( IN_FORWARD ) ) then add = add + ang:Forward() end
            if ( cmd:KeyDown( IN_BACK ) ) then add = add - ang:Forward() end
            if ( cmd:KeyDown( IN_MOVERIGHT ) ) then add = add + ang:Right() end
            if ( cmd:KeyDown( IN_MOVELEFT ) ) then add = add - ang:Right() end
            if ( cmd:KeyDown( IN_JUMP ) ) then add = add + ang:Up() end
            if ( cmd:KeyDown( IN_DUCK ) ) then add = add - ang:Up() end
           
            add = add:GetNormal() * time * 500
            if ( cmd:KeyDown( IN_SPEED ) ) then add = add * 2 end
           
            Hugh.Velocity = Hugh.Velocity + add
           
            if ( Hugh.LockView == true ) then
                    Hugh.LockView = cmd:GetViewAngles()
            end
            if ( Hugh.LockView ) then
                    cmd:SetViewAngles( Hugh.LockView )
            end
           
            cmd:SetForwardMove( 0 )
            cmd:SetSideMove( 0 )
            cmd:SetUpMove( 0 )
    end
    hook.Add( "CreateMove", "SpiritWalk", Hugh.CreateMove )
     
    function Hugh.Toggle()
            Hugh.Enabled = !Hugh.Enabled
            Hugh.LockView = Hugh.Enabled
            Hugh.SetView = true
           
            local status = { [ true ] = "ON", [ false ] = "OFF" }
            print( "Hugh_FreeCam " .. status[ Hugh.Enabled ] )
    end
    concommand.Add( "Hugh_FreeCam", Hugh.Toggle )
     
    concommand.Add( "Hugh_pos", function() print( Hugh.ViewOrigin ) end )
     
    //Prop Chams
    
    
    CreateClientConVar("hugh_propchams_radius", 750)
    CreateClientConVar("hugh_propchams", 0)
    
    local ******radius = GetConVarNumber("hugh_propchams_radius")
    
    local niggrplys = {}
    local ******props = {}
    local whtype = 1
    
    timer.Create("entrefresh", 1, 0, function()
        niggrplys = {}
        ******props = {}
        for k, v in pairs(ents.FindInSphere(LocalPlayer():GetPos(), ******radius)) do
            if (v:IsPlayer() and !(LocalPlayer() == v)) or v:IsNPC() then
                table.insert(niggrplys, v)
            elseif v:GetClass() == "prop_physics" then
                table.insert(******props, v)
            end
        end
    end)
    
    local function wh()
        cam.Start3D()
            for k, v in pairs(******props) do
                if v:IsValid() then
                    render.SetColorModulation( 0, 255, 0, 0)
                    render.SetBlend(.4)
                    v:DrawModel()
                end
            end
            for k, v in pairs(niggrplys) do
                if v:IsValid()  then
                    local teamcolor = v:IsPlayer() and team.GetColor(v:Team()) or Color(255,128,0,255)
                    if whtype >= 1 then
                    v:SetMaterial("models/debug/debugwhite") 
                    else
                    v:SetMaterial("models/wireframe")    
                    end
                    render.SetColorModulation(teamcolor.r / 255, teamcolor.g / 255, teamcolor.b / 255) 
                    render.SetBlend(teamcolor.a / 255) 
                    v:SetColor(teamcolor) 
                    v:DrawModel() 
                    v:SetColor(Color(255,255,255)) 
                    v:SetMaterial("")
                end
            end
        cam.End3D()
    end
    
    
    hook.Remove("HUDPaint", "wh")
    
    if GetConVarNumber("hugh_propchams") == 1 then
        hook.Add("HUDPaint", "wh", wh)
    end
    
    
    cvars.AddChangeCallback("hugh_propchams_radius", function() 
        ******radius = GetConVarNumber("hugh_propchams_radius")
    end)
    cvars.AddChangeCallback("hugh_propchams", function() 
        if GetConVarNumber("hugh_propchams") == 1 then
            hook.Add("HUDPaint", "wh", wh)
        else
            hook.Remove("HUDPaint", "wh")
        end
    end)
    Last edited by Hunter; 01-17-2016 at 03:07 PM.

  2. The Following User Says Thank You to pasquam076 For This Useful Post:

    Margen67 (11-07-2015)

Similar Threads

  1. Copy Paste
    By rsousa98 in forum CrossFire Discussions
    Replies: 21
    Last Post: 08-25-2011, 02:15 AM
  2. Is there any way to copy/paste IN-GAME?
    By epshreeman5 in forum Suggestions, Requests & General Help
    Replies: 3
    Last Post: 08-10-2011, 11:39 AM
  3. [Release] Speed Up Your Mass Crossmodding Program (Copy, Paste Rename Fast)!!
    By Scyntrus in forum Combat Arms Mods & Rez Modding
    Replies: 43
    Last Post: 09-27-2010, 08:22 PM
  4. [Help]Copy & Paste Textbox[Solved]
    By ViittO in forum Visual Basic Programming
    Replies: 5
    Last Post: 03-20-2010, 09:17 PM
  5. [CoD4] COPY PASTE INSIDE K?
    By Hell_Demon in forum C++/C Programming
    Replies: 10
    Last Post: 10-22-2009, 02:16 PM