Jump to content

[AYUDA] El trailer no desaparece


UserToDelete

Recommended Posts

Ando creando un trabajo de camionero y al testarlo vi un error que no doy solucionado, trata de que el trailer al que esta sujeto al camion, no desaparece, sino que se queda sin el camion (sin el camion solamente, el trailer no desaparece), Cual puede ser el error?

function destroyVehicle (jugador, seat) 
    if seat == 0 then 
        if isElementAttached then  
        trailerD = getElementAttachedTo(source) 
        outputChatBox(tostring(trailerD)) --outputs False 
        destroyElement(trailerD) --Esta es la linea donde echa el error 
        end 
    destroyElement(source) 
    end 
end 
addEventHandler("onVehicleExit", root, destroyVehicle) 

El error que suelta del debugscript 3 es el siguiente

forum_84454_1.jpg

WARNING: [Trabajos]/vD_job_trucker/server.lua:18:Bad argument @ 'destroyElement' [Expected element at argument 1,got boolean]

El trailer solitario

forum_84454_2.png

Link to comment
addEventHandler("onClientVehicleExit", root, 
    function (player, seat) 
        if player == localPlayer then 
            if seat == 0 then 
                checkJobCamionero = getElementData(localPlayer, "trabajo") 
                if checkJobCamionero == "camionero" then 
                    if isElementAttached then  
                        trailerD = getElementAttachedTo(source) 
                        outputChatBox(tostring(trailerD)) --outputs False 
                        --detachTrailerFromVehicle(source) 
                    end 
                    destroyElement(trailerD) 
                    destroyElement(source) 
                    setElementData(localPlayer, "trabajo", "ninguno") 
                    outputChatBox("complete") 
                else outputChatBox("checkJob indica ningun trabajo") 
                end 
            else outputChatBox("no eres el conductor") 
            end 
        else outputChatBox("no localPlayer") 
        end 
    end 
) 

Con tu codigo no funciona, ahor alo pase a cliente, y pasa lo mismo, (A veces se buggea con el tema de "setElementData" y dice al bajar del camion que no tengo trabajo

El resto de las funciones que varian eso son estas:

addEventHandler("onClientResourceStart", root, 
    function () 
        setElementData(localPlayer, "trabajo", "ninguno") 
    end 
) 

function startJob () 
    checkJobL = getElementData(localPlayer, "trabajo") 
    if checkJobL == "ninguno" then 
    triggerServerEvent("camioneroStart", localPlayer, localPlayer) 
    setElementData(localPlayer, "trabajo", "camionero") 
    guiSetInputMode("allow_binds") 
    showCursor(false) 
    destroyElement(ventana) 
    end 
end 

Solamente la primera vez me sale "false" y "Complete" , en el resto de los test que hago sin reiniciar el resource me sale "checkJob indica ningun trabajo"

Log:

Trabajo de camionero empezado 
checkJob indica ningun trabajo 
checkJob indica ningun trabajo 
Trabajo de camionero empezado [Comienzo el trabajo] 
false [bajo del primer camion la primera vez, ni el camion ni el trailer desaparecen] 
complete [bajo del primer camion la primera vez, ni el camion ni el trailer desaparecen] 
Trabajo de camionero empezado [Cojo por segunda vez] 
false [bajo del segundo camion, ni el camion ni el trailer desaparecen] 
complete [bajo del segundo camion, ni el camion ni el trailer desaparecen] 
checkJob indica ningun trabajo [Me subo al segundo camion y me bajo, ni el camion ni el trailer desaparecen] 
Trabajo de camionero empezado [Cojo el trabajo por tercera vez] 
checkJob indica ningun trabajo [bajo del tercer camion, ni el cambion ni el trailer desaparecen] 
checkJob indica ningun trabajo [subo y bajo del tercer camion, ni el cambion ni el trailer desaparecen] 

Link to comment

En server.

Este es todo el script de servidor, se que en cliente cuando el trailer desaparezca, no lo hará para todos los jugadores, pero el argumento de fallo es el mismo.

Todo server.lua

function jobTruckStart(source) 
    outputChatBox("Trabajo de camionero empezado",source, 255, 255, 0, true) 
    playername = getPlayerName(source) 
    camion = createVehicle ( 515,-1571.5654296875, -2745.900390625, 49, 0, 0, 45, tostring(playername)) 
    trailer = createVehicle ( 435, 990, 990, 400, 0, 0, 45, tostring(playername) ) 
    attachTrailerToVehicle ( camion, trailer ) 
    warpPlayerIntoVehicle(source, camion, 0) 
    setVehicleLocked(camion, true) 
end 
addEvent("camioneroStart", true) 
addEventHandler("camioneroStart", root, jobTruckStart) 

Debo poner el código en server con el argumento de destroy de "camión" y "trailer"?

He tenido en cuenta de que "camión" y "trailer" es una global y al hacer un destroy se destruirían todos los camiones que haya en ese momento.

Admito que cuando empecé este post el script era en servidor

Link to comment
  • Recently Browsing   0 members

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