From 9efdfbc918bb8220102045ae2e3c24461262398f Mon Sep 17 00:00:00 2001 From: kosmik641 Date: Thu, 6 Nov 2025 09:59:01 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=90=20=D0=BC=D0=B0=D1=80=D0=BA=D0=B5?= =?UTF-8?q?=D1=80=20=D0=A3=D0=B1=D1=80=D0=B0=D0=BB=20=D0=BA=D1=83=D1=87?= =?UTF-8?q?=D1=83=20=D0=BB=D0=B8=D1=88=D0=BD=D0=B5=D0=B3=D0=BE,=20=D0=B4?= =?UTF-8?q?=D0=B2=D0=B8=D0=B6=D0=BE=D0=BA=20=D1=81=D0=B0=D0=BC=20=D0=B2?= =?UTF-8?q?=D1=8B=D0=B7=D1=8B=D0=B2=D0=B0=D0=B5=D1=82=20Draw=20=D0=B8=20Dr?= =?UTF-8?q?awTranslucent,=20=D0=BA=D0=BE=D0=B3=D0=B4=D0=B0=20=D1=8D=D0=BD?= =?UTF-8?q?=D1=82=D0=B8=D1=82=D0=B8=20=D0=B2=20=D0=BA=D0=B0=D0=B4=D1=80?= =?UTF-8?q?=D0=B5=20=D0=9E=D1=81=D1=82=D0=B0=D0=B2=D0=B8=D0=BB=20cvars.Add?= =?UTF-8?q?ChangeCallback,=20=D1=87=D1=82=D0=BE=D0=B1=D1=8B=20=D0=B2=D0=BA?= =?UTF-8?q?=D0=BB=D1=8E=D1=87=D0=B8=D1=82=D1=8C=20=D0=BE=D1=82=D1=80=D0=B8?= =?UTF-8?q?=D1=81=D0=BE=D0=B2=D0=BA=D1=83=20=D0=B2=20=D0=BC=D0=BE=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D1=82,=20=D0=BA=D0=BE=D0=B3=D0=B4=D0=B0=20=D0=B3?= =?UTF-8?q?=D0=B0=D0=BB=D0=BA=D0=B0=20=D0=B2=D0=BA=D0=BB=D1=8E=D1=87=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=B8=20=D1=8D=D0=BD=D1=82=D0=B8=D1=82=D0=B8=20?= =?UTF-8?q?=D0=B2=D1=81=D1=91=20=D0=B5=D1=89=D1=91=20=D0=B2=20=D0=BA=D0=B0?= =?UTF-8?q?=D0=B4=D1=80=D0=B5=20=D1=81=20=D0=B2=D1=8B=D0=BA=D0=BB=D1=8E?= =?UTF-8?q?=D1=87=D0=B5=D0=BD=D0=BD=D0=BE=D0=B9=20=D0=BE=D1=82=D1=80=D0=B8?= =?UTF-8?q?=D1=81=D0=BE=D0=B2=D0=BA=D0=BE=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lua/entities/gmod_track_pa_marker/cl_init.lua | 65 ++++++------------- 1 file changed, 21 insertions(+), 44 deletions(-) diff --git a/lua/entities/gmod_track_pa_marker/cl_init.lua b/lua/entities/gmod_track_pa_marker/cl_init.lua index 8140fdc..b1f5e05 100644 --- a/lua/entities/gmod_track_pa_marker/cl_init.lua +++ b/lua/entities/gmod_track_pa_marker/cl_init.lua @@ -1,49 +1,26 @@ include("shared.lua") +local C_SignalDebug = GetConVar("metrostroi_drawsignaldebug") local mat = Material("vgui/bg-lines") ---[[ -function ENT:Draw() - if not self.CanDraw then return end - cam.Start3D() - render.SetMaterial(mat) - --render.DrawQuadEasy(self:GetPos(),self:GetAngles():Forward(),600,600,Color(255,255,255),0) - - render.DrawQuadEasy(self:GetPos(),-self:GetAngles():Forward(),600,300,Color(255,0,0),0) - render.DrawLine( self:GetPos(), self:LocalToWorld(Vector(50,0,0)), Color(255,0,0)) - render.DrawLine( self:GetPos(), self:LocalToWorld(Vector(0,50,0)), Color(0,255,0)) - render.DrawLine( self:GetPos(), self:LocalToWorld(Vector(0,0,50)), Color(0,0,255)) - --render.DrawSprite( pos, 16, 16, white ) - cam.End3D() - self:DrawModel() -end]] - -function ENT:Draw() -end - -local debug = GetConVar("metrostroi_drawsignaldebug") -local function enableDebug() - if debug:GetBool() then - hook.Add("PostDrawTranslucentRenderables","MetrostroiPAMarkerDebug",function(bDrawingDepth,bDrawingSkybox) - for _,ent in pairs(ents.FindByClass("gmod_track_autodrive_plate")) do - if bDrawingDepth and LocalPlayer():GetPos():DistToSqr(sig:GetPos()) < 262144 then - cam.Start3D() - render.SetMaterial(mat) - --render.DrawQuadEasy(self:GetPos(),self:GetAngles():Forward(),600,600,Color(255,255,255),0) - - render.DrawQuadEasy(ent:GetPos(),-ent:GetAngles():Forward(),600,300,Color(255,0,0),0) - render.DrawLine( ent:GetPos(), ent:LocalToWorld(Vector(50,0,0)), Color(255,0,0)) - render.DrawLine( ent:GetPos(), ent:LocalToWorld(Vector(0,50,0)), Color(0,255,0)) - render.DrawLine( ent:GetPos(), ent:LocalToWorld(Vector(0,0,50)), Color(0,0,255)) - --render.DrawSprite( pos, 16, 16, white ) - cam.End3D() - ent:DrawModel() - end - end - end) - else - hook.Remove("PostDrawTranslucentRenderables","MetrostroiPAMarkerDebug") +function ENT:DrawTranslucent(flags) + if not C_SignalDebug:GetBool() then + self:SetNoDraw(true) + return end + + self:DrawModel(flags) + + cam.Start3D() + render.SetMaterial(mat) + render.DrawQuadEasy(self:GetPos(),-self:GetAngles():Forward(),600,300,Color(255,0,0),0) + render.DrawLine(self:GetPos(), self:LocalToWorld(Vector(50,0,0)), Color(255,0,0)) + render.DrawLine(self:GetPos(), self:LocalToWorld(Vector(0,50,0)), Color(0,255,0)) + render.DrawLine(self:GetPos(), self:LocalToWorld(Vector(0,0,50)), Color(0,0,255)) + cam.End3D() end -hook.Remove("PostDrawTranslucentRenderables","MetrostroiPAMarkerDebug") -cvars.AddChangeCallback( "metrostroi_drawsignaldebug", enableDebug) -enableDebug() \ No newline at end of file + +cvars.AddChangeCallback("metrostroi_drawsignaldebug", function (name, oldValue, newValue) + for _,ent in pairs(ents.FindByClass("gmod_track_pa_marker")) do + ent:SetNoDraw(newValue == 0) + end +end) \ No newline at end of file