mirror of
https://github.com/metrostroi-repo/MetrostroiAddon.git
synced 2026-05-02 00:42:29 +00:00
Added ConVar metrostroi_signal_distance
This commit is contained in:
@@ -198,14 +198,30 @@ net.Receive("metrostroi-signal", function()
|
|||||||
if ent.RemoveModels then ent:RemoveModels() end
|
if ent.RemoveModels then ent:RemoveModels() end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
local C_RenderDistance = GetConVar("metrostroi_signal_distance")
|
||||||
|
|
||||||
|
local timer = CurTime()
|
||||||
|
hook.Add("Think","MetrostroiRenderSignals", function()
|
||||||
|
if CurTime() - timer < 1.5 or not IsValid(LocalPlayer()) then return end
|
||||||
|
timer = CurTime()
|
||||||
|
local plyPos = LocalPlayer():GetPos()
|
||||||
|
local dist = C_RenderDistance:GetInt()
|
||||||
|
for _,sig in pairs(ents.FindByClass("gmod_track_signal")) do
|
||||||
|
if not IsValid(sig) then continue end
|
||||||
|
local sigPos = sig:GetPos()
|
||||||
|
sig.RenderDisable = sigPos:Distance(plyPos) > dist or math.abs(plyPos.z - sigPos.z) > 1500
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
|
||||||
function ENT:Think()
|
function ENT:Think()
|
||||||
local CurTime = CurTime()
|
local CurTime = CurTime()
|
||||||
self:SetNextClientThink(CurTime + 0.0333)
|
self:SetNextClientThink(CurTime + 0.0333)
|
||||||
self.PrevTime = self.PrevTime or RealTime()
|
self.PrevTime = self.PrevTime or RealTime()
|
||||||
self.DeltaTime = (RealTime() - self.PrevTime)
|
self.DeltaTime = (RealTime() - self.PrevTime)
|
||||||
self.PrevTime = RealTime()
|
self.PrevTime = RealTime()
|
||||||
if self:IsDormant() or Metrostroi and Metrostroi.ReloadClientside then
|
if (self:IsDormant() or Metrostroi and Metrostroi.ReloadClientside or self.RenderDisable) and not self.ReloadModels then
|
||||||
if not self.ReloadModels and self.ModelsCreated then
|
if self.ModelsCreated then
|
||||||
self:RemoveModels()
|
self:RemoveModels()
|
||||||
end
|
end
|
||||||
return true
|
return true
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ local function ClientPanel(panel)
|
|||||||
panel:NumSlider(Metrostroi.GetPhrase("Panel.FOV"),"metrostroi_cabfov",65,100)
|
panel:NumSlider(Metrostroi.GetPhrase("Panel.FOV"),"metrostroi_cabfov",65,100)
|
||||||
panel:NumSlider(Metrostroi.GetPhrase("Panel.Z"),"metrostroi_cabz",-10,10)
|
panel:NumSlider(Metrostroi.GetPhrase("Panel.Z"),"metrostroi_cabz",-10,10)
|
||||||
panel:NumSlider(Metrostroi.GetPhrase("Panel.RenderDistance"),"metrostroi_renderdistance",960,3072)
|
panel:NumSlider(Metrostroi.GetPhrase("Panel.RenderDistance"),"metrostroi_renderdistance",960,3072)
|
||||||
|
panel:NumSlider(Metrostroi.GetPhrase("Panel.RenderSignals"),"metrostroi_signal_distance",6144,16384)
|
||||||
panel:Button(Metrostroi.GetPhrase("Panel.ReloadClient"),"metrostroi_reload_client",true)
|
panel:Button(Metrostroi.GetPhrase("Panel.ReloadClient"),"metrostroi_reload_client",true)
|
||||||
|
|
||||||
function DRouteNumber:OnChange()
|
function DRouteNumber:OnChange()
|
||||||
|
|||||||
@@ -101,6 +101,7 @@ CreateClientConVar("metrostroi_debugger_data_timeout",2,true,false)
|
|||||||
|
|
||||||
CreateClientConVar("metrostroi_disablehud",0,true)
|
CreateClientConVar("metrostroi_disablehud",0,true)
|
||||||
CreateClientConVar("metrostroi_renderdistance",1024,true)
|
CreateClientConVar("metrostroi_renderdistance",1024,true)
|
||||||
|
CreateClientConVar("metrostroi_signal_distance",8192,true)
|
||||||
CreateClientConVar("metrostroi_screenshotmode",0,true)
|
CreateClientConVar("metrostroi_screenshotmode",0,true)
|
||||||
CreateClientConVar("metrostroi_disableseatshadows",0,true)
|
CreateClientConVar("metrostroi_disableseatshadows",0,true)
|
||||||
CreateClientConVar("metrostroi_softdrawmultipier",100,true)
|
CreateClientConVar("metrostroi_softdrawmultipier",100,true)
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ Panel.RouteNumber = Route number #NEW
|
|||||||
Panel.FOV = FOV
|
Panel.FOV = FOV
|
||||||
Panel.Z = Výška kamery
|
Panel.Z = Výška kamery
|
||||||
Panel.RenderDistance = Vykreslovací\nvzdálenost
|
Panel.RenderDistance = Vykreslovací\nvzdálenost
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = Znovu načíst klienta
|
Panel.ReloadClient = Znovu načíst klienta
|
||||||
|
|
||||||
Panel.ClientAdvanced = Klient (pokročilý)
|
Panel.ClientAdvanced = Klient (pokročilý)
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ Panel.RouteNumber = Route number #NEW
|
|||||||
Panel.FOV = Sichtfeld
|
Panel.FOV = Sichtfeld
|
||||||
Panel.Z = Camera height #NEW
|
Panel.Z = Camera height #NEW
|
||||||
Panel.RenderDistance = Render distanz
|
Panel.RenderDistance = Render distanz
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = Clientseitig neuladen
|
Panel.ReloadClient = Clientseitig neuladen
|
||||||
|
|
||||||
Panel.ClientAdvanced = Client (Fortgeschritten)
|
Panel.ClientAdvanced = Client (Fortgeschritten)
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ Panel.RouteNumber = Route number #NEW
|
|||||||
Panel.FOV = FOV
|
Panel.FOV = FOV
|
||||||
Panel.Z = Camera height #NEW
|
Panel.Z = Camera height #NEW
|
||||||
Panel.RenderDistance = Render distance
|
Panel.RenderDistance = Render distance
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = Reload client side
|
Panel.ReloadClient = Reload client side
|
||||||
|
|
||||||
Panel.ClientAdvanced = Client (advanced)
|
Panel.ClientAdvanced = Client (advanced)
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ Panel.RouteNumber = Route number #NEW
|
|||||||
Panel.FOV = Champ de vision (FOV)
|
Panel.FOV = Champ de vision (FOV)
|
||||||
Panel.Z = Hauteur de caméra
|
Panel.Z = Hauteur de caméra
|
||||||
Panel.RenderDistance = Rendu à distance
|
Panel.RenderDistance = Rendu à distance
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = Redémarrer le client
|
Panel.ReloadClient = Redémarrer le client
|
||||||
|
|
||||||
Panel.ClientAdvanced = Client (avancé)
|
Panel.ClientAdvanced = Client (avancé)
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ Panel.MinimizedShow = Ne töltse be az elemeket, \nha a program tálcán van
|
|||||||
Panel.FOV = FOV
|
Panel.FOV = FOV
|
||||||
Panel.Z = Kamera magassága
|
Panel.Z = Kamera magassága
|
||||||
Panel.RenderDistance = Renderelési távolság
|
Panel.RenderDistance = Renderelési távolság
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = Kliens oldal újraindítása
|
Panel.ReloadClient = Kliens oldal újraindítása
|
||||||
|
|
||||||
Panel.ClientAdvanced = Kliens (haladó)
|
Panel.ClientAdvanced = Kliens (haladó)
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ Panel.MinimizedShow = Non scaricare nessun elemento\nwhen minimizzato
|
|||||||
Panel.FOV = FOV
|
Panel.FOV = FOV
|
||||||
Panel.Z = Altezza della videocamera
|
Panel.Z = Altezza della videocamera
|
||||||
Panel.RenderDistance = Distanza di rendering
|
Panel.RenderDistance = Distanza di rendering
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = Ricarica lato utente
|
Panel.ReloadClient = Ricarica lato utente
|
||||||
|
|
||||||
Panel.ClientAdvanced = Utente (Avanzato)
|
Panel.ClientAdvanced = Utente (Avanzato)
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ Panel.MinimizedShow = 창 최소화시 구성요소 언로드 하지 않기
|
|||||||
Panel.FOV = 시야각(FOV)
|
Panel.FOV = 시야각(FOV)
|
||||||
Panel.Z = 시점 높이
|
Panel.Z = 시점 높이
|
||||||
Panel.RenderDistance = 렌더링 거리
|
Panel.RenderDistance = 렌더링 거리
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = 사용자 시스템 다시 불러오기
|
Panel.ReloadClient = 사용자 시스템 다시 불러오기
|
||||||
|
|
||||||
Panel.ClientAdvanced = 사용자 (고급설정)
|
Panel.ClientAdvanced = 사용자 (고급설정)
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ Panel.RouteNumber = Route number #NEW
|
|||||||
Panel.FOV = FOV (pole widzenia)
|
Panel.FOV = FOV (pole widzenia)
|
||||||
Panel.Z = Camera height #NEW
|
Panel.Z = Camera height #NEW
|
||||||
Panel.RenderDistance = Odległość rysowania
|
Panel.RenderDistance = Odległość rysowania
|
||||||
|
Panel.RenderSignals = Traced signals #NEW #FIXME
|
||||||
Panel.ReloadClient = Przeładuj zasoby (klient)
|
Panel.ReloadClient = Przeładuj zasoby (klient)
|
||||||
|
|
||||||
Panel.ClientAdvanced = Klient (zaawansowane)
|
Panel.ClientAdvanced = Klient (zaawansowane)
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ Panel.RouteNumber = Номер маршрута
|
|||||||
Panel.FOV = Поле зрения
|
Panel.FOV = Поле зрения
|
||||||
Panel.Z = Высота камеры
|
Panel.Z = Высота камеры
|
||||||
Panel.RenderDistance = Дальность прорисовки
|
Panel.RenderDistance = Дальность прорисовки
|
||||||
|
Panel.RenderSignals = Прорисовка светофоров
|
||||||
Panel.ReloadClient = Перезагрузить клиентскую часть
|
Panel.ReloadClient = Перезагрузить клиентскую часть
|
||||||
|
|
||||||
Panel.ClientAdvanced = Клиент (дополнительно)
|
Panel.ClientAdvanced = Клиент (дополнительно)
|
||||||
|
|||||||
Reference in New Issue
Block a user