Jump to content

[AYUDA] Nombre de vehículos


Neving

Recommended Posts

Hola buenas, estoy tratando de cambiar el nombre de los vehículos en mi server de DayZ pero soy incapaz.

Me refiero al nombre que sale cuando te acercas a los vehículos por ejemplo, no una vez que te metes en ellos y aparece el cartel en grande con el nombre del vehículo.

MAK3YFC.png

¿Qué debo hacer? Un saludo y gracias.

Link to comment

Creo que está en survivorSystem_c si mal no recuerdo. Puedes hacer una tabla con index el modelo o el nombre del vehículo.

vNames = { 
     ["Regina"] = "Caja con ruedas" 
} 

Y en el dxDraw pones

vNames[getVehicleNameFromModel(getElementModel(vehicle))] 

Link to comment
  AFK said:
Creo que está en survivorSystem_c si mal no recuerdo. Puedes hacer una tabla con index el modelo o el nombre del vehículo.
vNames = { 
     ["Regina"] = "Caja con ruedas" 
} 

Y en el dxDraw pones

vNames[getVehicleNameFromModel(getElementModel(vehicle))] 

He estado probando tu código aquÍ:

local x,y,z = getElementPosition(getLocalPlayer()) 
        for i,veh in ipairs(getElementsByType("vehicle")) do 
            local px,py,pz = getElementPosition (veh) 
            local vehID = getElementModel(veh) 
            local vehicle = getPedOccupiedVehicle(getLocalPlayer()) 
            if veh ~= vehicle then 
                if vehID ~= 548 then 
                    local pdistance = getDistanceBetweenPoints3D ( x,y,z,px,py,pz ) 
                    if pdistance <= 6 then 
                        --Get screenposition 
                        local sx,sy = getScreenFromWorldPosition ( px, py, pz+0.95, 0.06 ) 
                        if sx and sy then 
                            --Draw Vehicle 
                            vNames = { 
                            ["Sabre"] = "Cajaconruedas" 
                            } 
                            local w = dxGetTextWidth(getVehicleName(veh),1.02,"default-bold") 
                            dxDrawText ( vNames[getVehicleNameFromModel(getElementModel(vehicle))], sx-(w/2), sy, sx-(w/2), sy, tocolor ( 100, 255, 100, 200 ), 1.02, "default-bold" )   <---- 1322  
                        end 
                    end 
                end 
            end 
        end 
  

Y esto es lo que me muestra el debugscript3

NRlcPoL.png

He estado probando a cambiar el nombre por el modelo y a quitar la función de getVehicleNameFromModel pero tampoco hay solución.

Link to comment
local x,y,z = getElementPosition(getLocalPlayer()) 
        for i,veh in ipairs(getElementsByType("vehicle")) do 
            local px,py,pz = getElementPosition (veh) 
            local vehID = getElementModel(veh) 
            local vehicle = getPedOccupiedVehicle(getLocalPlayer()) 
            if veh ~= vehicle then 
                if vehID ~= 548 then 
                    local pdistance = getDistanceBetweenPoints3D ( x,y,z,px,py,pz ) 
                    if pdistance <= 6 then 
                        --Get screenposition 
                        local sx,sy = getScreenFromWorldPosition ( px, py, pz+0.95, 0.06 ) 
                        if sx and sy then 
                            --Draw Vehicle 
                            vNames = { 
                            ["Sabre"] = "Cajaconruedas" 
                            } 
                            local vName  = getVehicleName(veh) 
                            vName = vNames[vName] or vName 
                            local w = dxGetTextWidth(vName,1.02,"default-bold") 
                            dxDrawText ( vName, sx-(w/2), sy, sx-(w/2), sy, tocolor ( 100, 255, 100, 200 ), 1.02, "default-bold" )   <---- 1322  
                        end 
                    end 
                end 
            end 
        end 

Te recomiendo poner la tabla afuera de la funcion.

Link to comment
  Neving said:
  AFK said:
Creo que está en survivorSystem_c si mal no recuerdo. Puedes hacer una tabla con index el modelo o el nombre del vehículo.
vNames = { 
     ["Regina"] = "Caja con ruedas" 
} 

Y en el dxDraw pones

vNames[getVehicleNameFromModel(getElementModel(vehicle))] 

He estado probando tu código aquÍ:

local x,y,z = getElementPosition(getLocalPlayer()) 
        for i,veh in ipairs(getElementsByType("vehicle")) do 
            local px,py,pz = getElementPosition (veh) 
            local vehID = getElementModel(veh) 
            local vehicle = getPedOccupiedVehicle(getLocalPlayer()) 
            if veh ~= vehicle then 
                if vehID ~= 548 then 
                    local pdistance = getDistanceBetweenPoints3D ( x,y,z,px,py,pz ) 
                    if pdistance <= 6 then 
                        --Get screenposition 
                        local sx,sy = getScreenFromWorldPosition ( px, py, pz+0.95, 0.06 ) 
                        if sx and sy then 
                            --Draw Vehicle 
                            vNames = { 
                            ["Sabre"] = "Cajaconruedas" 
                            } 
                            local w = dxGetTextWidth(getVehicleName(veh),1.02,"default-bold") 
                            dxDrawText ( vNames[getVehicleNameFromModel(getElementModel(vehicle))], sx-(w/2), sy, sx-(w/2), sy, tocolor ( 100, 255, 100, 200 ), 1.02, "default-bold" )   <---- 1322  
                        end 
                    end 
                end 
            end 
        end 
  

Y esto es lo que me muestra el debugscript3

NRlcPoL.png

He estado probando a cambiar el nombre por el modelo y a quitar la función de getVehicleNameFromModel pero tampoco hay solución.

Prueba a sustituir:

  
getElementModel(vehicle) 
  

por esto:

  
getElementModel(veh) 
  

Link to comment
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...