1
0
mirror of https://github.com/metrostroi-repo/MetrostroiAddon.git synced 2026-05-04 00:52:33 +00:00

Бортовые номера.

Установка моделей цифр бортовых номеров в modelcallback из-за бага, когда моделька улетает в центр вагона.
This commit is contained in:
kosmik641
2025-12-09 08:32:45 +03:00
parent 8a6855f35b
commit 11c124e791
24 changed files with 569 additions and 435 deletions

View File

@@ -468,20 +468,26 @@ ENT.ButtonMap["AirDistributor"] = {
for i=0,3 do
ENT.ClientProps["TrainNumberL"..i] = {
model = "models/metrostroi_train/81-714_mmz/bortnumber_0.mdl",
pos = Vector(295+i*6.6-4*6.6/2,69.07,-25.5),
pos = Vector(0,0,0),
ang = Angle(0,90,0),
hide = 1.5,
callback = function(ent)
ent.WagonNumber = false
callback = function(ent,cent)
Metrostroi.BortNumberMMZCallback(ent,cent,"TrainNumberL",i,Vector(306, 69.07,-25.5),TEXT_ALIGN_LEFT)
end,
modelcallback = function(ent)
return Metrostroi.BortNumberMMZCallbackModel(ent,"TrainNumberL",i,4,false)
end,
}
ENT.ClientProps["TrainNumberR"..i] = {
model = "models/metrostroi_train/81-714_mmz/bortnumber_0.mdl",
pos = Vector(-280-i*6.6-3*6.6/2,-66.37,-25.5),
pos = Vector(0,0,0),
ang = Angle(0,-90,0),
hide = 1.5,
callback = function(ent)
ent.WagonNumber = false
callback = function(ent,cent)
Metrostroi.BortNumberMMZCallback(ent,cent,"TrainNumberR",i,Vector(-317,-66.37,-25.5),TEXT_ALIGN_LEFT)
end,
modelcallback = function(ent)
return Metrostroi.BortNumberMMZCallbackModel(ent,"TrainNumberR",i,4,true)
end,
}
end
@@ -982,22 +988,17 @@ function ENT:Initialize()
self.EmergencyBrakeValveRamp = 0
end
function ENT:UpdateWagonNumber()
self.TrainNumberR = false
self.TrainNumberL = false
for i=0,3 do
local leftNum,rightNum = self.ClientEnts["TrainNumberL"..i],self.ClientEnts["TrainNumberR"..i]
local num = math.floor(self.WagonNumber%(10^(i+1))/10^i)
if IsValid(leftNum) then
leftNum:SetPos(self:LocalToWorld(Vector(295+i*6.6-3*6.6/2,69.07,-25.5)))
leftNum:SetModel("models/metrostroi_train/81-714_mmz/bortnumber_"..num..".mdl")
end
if IsValid(rightNum) then
rightNum:SetPos(self:LocalToWorld(Vector(-280-i*6.6-3*6.6/2,-66.37,-25.5)))
rightNum:SetModel("models/metrostroi_train/81-714_mmz/bortnumber_"..num..".mdl")
end
local cent = self.ClientEnts["TrainNumberR"..i]
if IsValid(cent) then cent:Remove() end
cent = self.ClientEnts["TrainNumberL"..i]
if IsValid(cent) then cent:Remove() end
end
end
--------------------------------------------------------------------------------
function ENT:Think()
self.BaseClass.Think(self)