diff --git a/entities/weapons/quantum_tool/shared.lua b/entities/weapons/quantum_tool/shared.lua new file mode 100644 index 0000000..041b9de --- /dev/null +++ b/entities/weapons/quantum_tool/shared.lua @@ -0,0 +1,122 @@ +-- __ _ _______ _ __ +-- / / /\ | | |__ __| | | \ \ +-- / / / \ | |_ __ ___ | | ___ ___| |__ \ \ +-- < < / /\ \ | | '_ ` _ \| |/ _ \/ __| '_ \ > > +-- \ \ / ____ \| | | | | | | | __/ (__| | | | / / +-- \_\ /_/ \_\_|_| |_| |_|_|\___|\___|_| |_| /_/ +AddCSLuaFile() + +if CLIENT then + SWEP.PrintName = "Hands" + SWEP.Slot = 0 + SWEP.SlotPos = 0 + SWEP.DrawAmmo = false + SWEP.DrawCrosshair = false + + local devmode = GetConVar( "developer" ) + function SWEP:DrawHUD() + if( devmode:GetBool() == true && !Quantum.Client.IsInMenu ) then + surface.SetTextPos( 10, 150 ) + surface.SetTextColor( Color( 200, 200, 200, 200 ) ) + surface.SetFont( "Default" ) + surface.DrawText( "Developer Mode" ) + + surface.SetTextPos( 10, 165 ) + surface.DrawText( "Hitpos: " .. tostring( self:GetOwner():GetEyeTrace().HitPos ) ) + + surface.SetTextPos( 10, 180 ) + surface.DrawText( "Angle: " .. tostring( self:GetOwner():GetAngles() ) ) + end + end + + local cubeMat = Material( "vgui/white" ) + + hook.Add( "PostDrawOpaqueRenderables", "Quantum_Client_DeveloperHands_HitPos", function() + if( devmode:GetBool() == true && !Quantum.Client.IsInMenu ) then + if( IsValid( LocalPlayer():GetActiveWeapon() ) ) then + if( LocalPlayer():GetActiveWeapon():GetClass() == "quantum_hands" ) then + local trace = LocalPlayer():GetEyeTrace() + local angle = trace.HitNormal:Angle() + + render.SetMaterial( cubeMat ) + render.DrawBox( trace.HitPos, Angle( 0, 0, 0), Vector( 0, 0, 0 ), Vector( 2, 2, 2 ), Color( 255, 25, 25, 100 ) ) + + render.DrawLine( trace.HitPos, trace.HitPos + 12 * angle:Forward(), Color( 255, 0, 0 ), true ) + render.DrawLine( trace.HitPos, trace.HitPos + 12 * -angle:Right(), Color( 0, 255, 0 ), true ) + render.DrawLine( trace.HitPos, trace.HitPos + 12 * angle:Up(), Color( 0, 0, 255 ), true ) + end + end + end + end) +end + +SWEP.WorldModel = "" +SWEP.UseHands = true + +SWEP.Primary.ClipSize = -1 +SWEP.Primary.DefaultClip = 0 +SWEP.Primary.Automatic = false +SWEP.Primary.Ammo = "" +SWEP.Primary.Delay = 0.25 + +SWEP.Secondary.ClipSize = -1 +SWEP.Secondary.DefaultClip = 0 +SWEP.Secondary.Automatic = false +SWEP.Secondary.Ammo = "" +SWEP.Secondary.Delay = 0.25 + +function SWEP:Initialize() + self:SetHoldType( "normal" ) +end + +function SWEP:Deploy() + if( CLIENT || !IsValid(self:GetOwner()) ) then return true end + self:GetOwner():DrawWorldModel( false ) + return true +end + +function SWEP:Holster() + return true +end + +function SWEP:PreDrawViewModel() + return true +end + +local function translateVector( pre, vec ) + return pre .. "( " .. tostring(vec.x) .. ", " .. tostring(vec.y) .. ", " .. tostring(vec.z) .. " )" +end + +function SWEP:PrimaryAttack() + if SERVER then + local ent = self:GetOwner():GetEyeTraceNoCursor().Entity + if( IsValid( ent ) && ent:GetPos():Distance( self:GetOwner():GetPos() ) < 100 ) then + if ( ent:IsPlayerHolding() ) then return end + self:GetOwner():PickupObject( ent ) + end + else + local devmode = GetConVar( "developer" ) + if( devmode:GetBool() == true ) then + LocalPlayer():ChatPrint( "Check console for output.\n" ) + Quantum.Debug( "--Hitpos Data--" ) + print( translateVector( "Vector", LocalPlayer():GetEyeTrace().HitPos ) ) + print( translateVector( "Angle", LocalPlayer():GetAngles() ) ) + end + end +end + +function SWEP:SecondaryAttack() + if CLIENT then + local devmode = GetConVar( "developer" ) + if( devmode:GetBool() == true ) then + LocalPlayer():ChatPrint( "Check console for output.\n" ) + Quantum.Debug( "--Camera Data--" ) + print( translateVector( "Vector", LocalPlayer():GetBonePosition( LocalPlayer():LookupBone( "ValveBiped.Bip01_Head1" ) ) ) ) + print( translateVector( "Angle", LocalPlayer():GetAngles() ) ) + end + end +end + +function SWEP:Reload() + return false +end \ No newline at end of file diff --git a/plugins/plugin_spawnvehicles.lua b/plugins/plugin_spawnvehicles.lua index 8e7e21b..1abe36c 100644 --- a/plugins/plugin_spawnvehicles.lua +++ b/plugins/plugin_spawnvehicles.lua @@ -3,8 +3,6 @@ -- You may remove this if you want. if SERVER then local plugin = {} - print("loaded beta stuff") - plugin.vechilesTypes = { ["jeep"] = function( pos, ang ) local ent = simfphys.SpawnVehicleSimple( "sim_fphys_jeep", pos, ang )