Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- print( "HVH-CHEAT" )
- require( "dickwrap" )
- require( "bsendpacket" )
- local _G = table.Copy( _G )
- local _R = _G.debug.getregistry( )
- local fakelag_var = 0
- local Auto = true
- local Lag = false
- local ply = LocalPlayer( )
- fakelag = function( )
- if Lag then
- if fakelag_var >= 14 then
- bSendPacket = true
- fakelag_var = 0
- else
- bSendPacket = false
- fakelag_var = fakelag_var + 1
- end
- else
- bSendPacket = true
- end
- end
- local nullvec = Vector( ) * -1
- local OldFireBullets = _R.Entity.FireBullets
- FixAngle = function( angle )
- angle.x = math.NormalizeAngle( angle.x )
- angle.p = math.Clamp( angle.p , -89 , 89 )
- return angle
- end
- cones = { }
- function _R.Entity.FireBullets( p , data )--EntityM.FireBullets
- local spread = data.Spread * -1
- local class = p:GetActiveWeapon( ):GetClass( )
- if ( spread != cones[class] and spread != nullvec ) then
- cones[class] = spread
- end
- return( OldFireBullets( p , data ) )
- end
- PredictSpread = function( cmd , ang )
- local w = ply:GetActiveWeapon( )
- if ( not w or not w:IsValid( ) or not cones[w:GetClass( )] ) then return ang; end
- local ang = (dickwrap.Predict( cmd , ang:Forward( ) , cones[w:GetClass( )] ) ):Angle( )
- ang.y , ang.x = math.NormalizeAngle( ang.y ) , math.NormalizeAngle( ang.x )
- return( ang );
- end
- --[[
- FixMove = function( cmd , aa )
- local angle = cmd:GetViewAngles()
- local ang = angle - FakeAng
- local move = Vector( cmd:GetForwardMove(), cmd:GetSideMove(), 0 )
- local vec = ( move:Angle() + ( cmd:GetViewAngles() - FakeAng ) ):Forward() * move:Length()
- cmd:SetForwardMove( vec[1] )
- cmd:SetSideMove( vec[2] * ( aa and -1 or 1 ))
- end]]
- FixMove = function( cmd , aa )
- local move = Vector(cmd:GetForwardMove(), cmd:GetSideMove(), cmd:GetUpMove());
- local speed = math.sqrt(move.x * move.x + move.y * move.y);
- local ang = move:Angle()
- local yaw = math.rad(cmd:GetViewAngles().y - FakeAng.y + ang.y)
- cmd:SetForwardMove((math.cos(yaw) * speed) * ( aa && -1 || 1 ));
- cmd:SetSideMove( math.sin(yaw) * speed);
- end
- AAA = function( )
- local aaaang = Target:EyeAngles( )
- if aaaang.p == 90 then Target:SetPoseParaplyter( "aim_pitch", -90 )
- elseif aaaang.p == -90 then Target:SetPoseParaplyter( "aim_pitch", 90 )
- end
- end
- IsVisible = function( self )
- if (!IsValid(self)) then return false end --if player isnt Valid
- local vecPos, _ = self:GetBonePosition( self:GetHitBoxBone( 0 , 0 ) ) --get the vector to check
- local TraceRes = util.TraceLine({ start = ply:EyePos( ), endpos = vecPos, filter = ply, mask = 1174421507 })--MASK_SHOT
- if ( TraceRes.HitWorld or TraceRes.Entity != self ) then return false end; --if trace not hit world and not himselfe
- return true;
- end
- CheckV = function( v )
- if not ( v:Health( ) >= 1) or !v:IsValid( ) or v == ply or !IsVisible( v ) then return false end
- --if v:GetFriendStatus( ) == "friend" then return false end
- if v:Team( ) == ply:Team( ) then return false end
- --if v:Team( ) != ply:Team( ) then return false end
- if v:Team( ) == TEAM_SPECTATOR then return false end
- return true
- end
- GetTarget = function( )
- local pplayer = nil
- local backup = 9999999
- local dist = nil
- for k , v in next, player.GetAll( ) do
- if !CheckV( v ) then continue end
- pplayer = v
- end
- Target = pplayer
- end
- AimVec = function( )
- return Target:GetBonePosition( Target:GetHitBoxBone( 0 , 0 ) )
- end
- Silent = function( cmd )
- if( !FakeAng ) then FakeAng = cmd:GetViewAngles( ) end
- FakeAng = FixAngle( FakeAng + Angle( cmd:GetMouseY( ) * .022 , cmd:GetMouseX( ) * -.022 , 0 ) )
- if ( cmd:CommandNumber( ) == 0 ) then
- cmd:SetViewAngles( FakeAng )
- return
- end
- end
- local AntiAimX=170;
- local AntiAimY=0;
- AA = function( cmd )
- if cmd:KeyDown( IN_ATTACK ) or cmd:CommandNumber( ) == 0 then return end
- AntiAimY = FakeAng.y + 270 + math.random(-91, 91);
- cmd:SetViewAngles( Angle( AntiAimX , AntiAimY , 0 ) )
- FixMove( cmd , true )
- end
- Aimbot = function( cmd )
- --local obs = bSendPacket
- local wep = ply:GetActiveWeapon( )
- if cmd:CommandNumber( ) == 0 or !IsValid( wep ) or ( wep:Clip1( ) <= 0 ) then return; end
- GetTarget( )
- if Target then
- bSendPacket = true
- local pos = AimVec( )
- local ang = FixAngle( ( pos - ply:GetShootPos( ) ):Angle( ) )
- ang = PredictSpread( cmd , ang )
- AAA( )
- cmd:SetViewAngles( ang )
- if Auto and ply:GetActiveWeapon( ) then cmd:SetButtons( bit.bor( cmd:GetButtons( ) , IN_ATTACK ) ) end
- end
- FixMove( cmd )
- --bSendPacket =obs
- end
- bSendPacket = true
- hook.Add("CreateMove", "", function(cmd)
- Silent ( cmd ) --Getting ouer fake angle for aa , silentaim , calcview
- Aimbot ( cmd )
- AA( cmd )
- fakelag( )
- end )
- hook.Add("HUDPaint","",function( )
- for k, v in next, player.GetAll( ) do
- surface.SetFont ( "trebuchet18" )
- if v:Team() != ply:Team( ) then
- surface.SetTextColor( Color( 255,14,31,255 ) )
- surface.SetDrawColor( Color( 255,0,140,255 ) )
- else
- surface.SetTextColor( Color( 36,255,75,255 ) )
- end
- if v:Health( ) >= 1 and v:IsValid( ) and v != ply then
- local pos = v:GetPos( );
- local pos, pos2 = (pos - Vector(0, 0, 5)):ToScreen(), ( pos + Vector(0, 0, 70 ) ):ToScreen();
- local h = pos.y - pos2.y;
- local w = h / 2.2;
- surface.DrawOutlinedRect( pos.x - w / 2, pos.y - h, w, h);
- surface.SetDrawColor(0, 0, 0, 220);
- surface.DrawOutlinedRect( pos.x - w / 2 - 1, pos.y - h - 1, w + 2, h + 2);
- surface.DrawOutlinedRect( pos.x - w / 2 + 1, pos.y - h + 1, w - 2, h - 2);
- end
- end
- if Target then
- local targetheadpos = AimVec( )
- local hit = (targetheadpos+ Vector(0,0,3)):ToScreen()
- surface.SetDrawColor( Color( 0,0,255,255 ) )
- surface.DrawLine(ScrW( )/2 , ScrH( )/2 , hit.x , hit.y)
- surface.SetTextPos( 1650, 500)
- surface.DrawText("next aimbot target: " ..Target:Name( ) )
- end
- end )
- --[[
- hook.Add("CalcView", "viewfix", function(ply, pos, angles, fov)
- local view = {}
- view.origin = pos
- view.angles = FakeAng or angles
- view.fov = fov
- return view
- end)
- hook.Add("CalcViewModelView", "viewfix2", function(wep, vm, oldPos, oldAng, pos, ang)
- return pos, FakeAng
- end)]]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement