Jump to content

Verificar ID do veiculo que o jogador esta dentro


Recommended Posts

Estou tentando verificar se o veiculo que o jogador esta no momento que pisar no marker, é o Andromada ou o AT-400, mas não esta dando certo, esta ai meu código:

 

Spoiler

function finalizartrab (source, theVehicle)
	if getElementData(source,"trabAviaoParte3") == true then
		if veh[source] and isElement(veh[source]) then
			if getPedOccupiedVehicle ( source ) then
				local playerVehicle = getPlayerOccupiedVehicle ( source )
				local currentFreezeStatus = isElementFrozen ( playerVehicle )
				local newFreezeStatus = not currentFreezeStatus
				
				setElementPosition(playerVehicle, 1477.443, 1712.498, 11.2 + 1.5)
				setElementRotation(veh[source], -0, 0, 359.225)
				setElementFrozen ( playerVehicle, true )
				outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Os passageiros estao deembarcando, aguarde...", source, 0, 0, 0, true )
				setElementVisibleTo ( entraga3final, source, false )
				setElementVisibleTo ( blipentrega3, source, false )
				setElementData(source, "trabAviaoParte3", false)
				setElementData(source, "emTrabalho", false)
				setTimer (function()
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Voce terminou seu trabalho com sucesso!", source, 0, 0, 0, true )
					destroyElement (veh[source])
					outputDebugString("[TrabAviao] "..getPlayerName(source):gsub("#%x%x%x%x%x%x","").." Completou o trabalho de aviao!",3,0,255,0)
					local theVehicle = getPedOccupiedVehicle(source)
					local model = getElementModel(theVehicle)
					if model == 592 or model == 577 then
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$45.000#FFFFFF por entregar com o Andromada ou AT-400, totalizando #00FF00R$75.000", source, 0, 0, 0, true )
						givePlayerMoney (source, 45000)
					else
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$30.000#FFFFFF, totalizando #00FF00R$60.000", source, 0, 0, 0, true )
						givePlayerMoney (source, 30000)
					end
				end, 5000, 1)
			end
		end
	end
end
addEventHandler( "onMarkerHit", entraga3final, finalizartrab )

 

Ocorre o WARNING: Bad argument @ 'getElementModel' [Expected element at argument 1, got boolean]

 

Link to post

Olá.

Não se usa source como parâmetro de função. Além do mais, o source do evento é o marker. Use player naquele primeiro parâmetro e substitua todos esses source por player.

  • Thanks 1
Link to post

Ficou assim:

Spoiler

function finalizartrab (player, theVehicle)
	if getElementData(player,"trabAviaoParte3") == true then
		if veh[source] and isElement(veh[source]) then
			if getPedOccupiedVehicle ( player ) then
				local playerVehicle = getPlayerOccupiedVehicle ( player )
				local currentFreezeStatus = isElementFrozen ( playerVehicle )
				local newFreezeStatus = not currentFreezeStatus
				
				setElementPosition(playerVehicle, 1477.443, 1712.498, 11.2 + 1.5)
				setElementRotation(veh[source], -0, 0, 359.225)
				setElementFrozen ( playerVehicle, true )
				outputChatBox ( "#000000", player, 0, 0, 0, true )
				outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Os passageiros estao deembarcando, aguarde...", player, 0, 0, 0, true )
				outputChatBox ( "#000000", player, 0, 0, 0, true )
				setElementVisibleTo ( entraga3final, player, false )
				setElementVisibleTo ( blipentrega3, player, false )
				setElementData(player, "trabAviaoParte3", false)
				setElementData(player, "emTrabalho", false)
				setTimer (function()
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Voce terminou seu trabalho com sucesso!", player, 0, 0, 0, true )
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					destroyElement (veh[source])
					outputDebugString("[TrabAviao] "..getPlayerName(player):gsub("#%x%x%x%x%x%x","").." Completou o trabalho de aviao!",3,0,255,0)
					local theVehicle = getPedOccupiedVehicle(player)
					local model = getElementModel(theVehicle)
					if model == 592 or model == 577 then
						outputChatBox ( "#000000", player, 0, 0, 0, true )
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$45.000#FFFFFF por entregar com o Andromada ou AT-400, totalizando #00FF00R$75.000", player, 0, 0, 0, true )
						outputChatBox ( "#000000", player, 0, 0, 0, true )
						givePlayerMoney (player, 45000)
					else
						outputChatBox ( "#000000", player, 0, 0, 0, true )
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$30.000#FFFFFF, totalizando #00FF00R$60.000", player, 0, 0, 0, true )
						outputChatBox ( "#000000", player, 0, 0, 0, true )
						givePlayerMoney (player, 30000)
					end
				end, 5000, 1)
			end
		end
	end
end
addEventHandler( "onMarkerHit", entraga3final, finalizartrab )

 

e agora não acontece nada quando piso no marker

Link to post

Ainda há alguns source. Inclusive, a função setTimer precisa ter os parâmetros definidos, senão o funcionamento será afetado. Deixe assim:

Spoiler

setTimer (function(p)
    outputChatBox ( "#000000", p, 0, 0, 0, true )
    outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Voce terminou seu trabalho com sucesso!", p, 0, 0, 0, true )
    outputChatBox ( "#000000", p, 0, 0, 0, true )
    destroyElement (veh[p])
    outputDebugString("[TrabAviao] "..getPlayerName(p):gsub("#%x%x%x%x%x%x","").." Completou o trabalho de aviao!",3,0,255,0)
    local theVehicle = getPedOccupiedVehicle(p)
    local model = getElementModel(theVehicle)
    if model == 592 or model == 577 then
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$45.000#FFFFFF por entregar com o Andromada ou AT-400, totalizando #00FF00R$75.000", p, 0, 0, 0, true )
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        givePlayerMoney (p, 45000)
    else
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$30.000#FFFFFF, totalizando #00FF00R$60.000", p, 0, 0, 0, true )
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        givePlayerMoney (p, 30000)
    end
end, 5000, 1, player)

 

 

  • Thanks 1
Link to post
2 minutes ago, andr0xy said:

Ainda há alguns source. Inclusive, a função setTimer precisa ter os parâmetros definidos, senão o funcionamento será afetado. Deixe assim:

  Hide contents


setTimer (function(p)
    outputChatBox ( "#000000", p, 0, 0, 0, true )
    outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Voce terminou seu trabalho com sucesso!", p, 0, 0, 0, true )
    outputChatBox ( "#000000", p, 0, 0, 0, true )
    destroyElement (veh[p])
    outputDebugString("[TrabAviao] "..getPlayerName(p):gsub("#%x%x%x%x%x%x","").." Completou o trabalho de aviao!",3,0,255,0)
    local theVehicle = getPedOccupiedVehicle(p)
    local model = getElementModel(theVehicle)
    if model == 592 or model == 577 then
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$45.000#FFFFFF por entregar com o Andromada ou AT-400, totalizando #00FF00R$75.000", p, 0, 0, 0, true )
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        givePlayerMoney (p, 45000)
    else
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$30.000#FFFFFF, totalizando #00FF00R$60.000", p, 0, 0, 0, true )
        outputChatBox ( "#000000", p, 0, 0, 0, true )
        givePlayerMoney (p, 30000)
    end
end, 5000, 1, player)

o 'veh[source]' tem em varias partes do codigo, é o veiculo do trabalho, tenho que modificado para 'veh[p]' em todos?

 

 

Link to post

Você indexou o jogador naquela tabela. Então você deve usar o elemento-jogador. Depende de como você definiu em cada parte do seu código. :) 

  • Thanks 1
Link to post
2 minutes ago, andr0xy said:

Você indexou o jogador naquela tabela. Então você deve usar o elemento-jogador. Depende de como você definiu em cada parte do seu código. :) 

Bom... ta escrito 'veh = {}' la, eu tenho que deixar como 'veh = {p}'?

Link to post
veh[player]

-- O índice é o player.

Então, digamos que você tenha uma função ou evento desta forma:

addCommandHandler("nada", function(CarlosAlbertoDeNobrega)
    if veh[CarlosAlbertoDeNobrega] then

    end
end)

addCommandHandler("tudo", function(user)
    if veh[user] then

    end
end)

addEventHandler("onMarkerHit", marker, function(AnaMariaBraga)
    if veh[AnaMariaBraga] then

    end
end)

Em todos daria certo, pois cada parâmetro daquele recebe o jogador, e você indexou o jogador desde o começo. O nome não importa, e sim o elemento passado.

  • Thanks 1
Link to post
1 hour ago, andr0xy said:

veh[player]

-- O índice é o player.

Então, digamos que você tenha uma função ou evento desta forma:


addCommandHandler("nada", function(CarlosAlbertoDeNobrega)
    if veh[CarlosAlbertoDeNobrega] then

    end
end)

addCommandHandler("tudo", function(user)
    if veh[user] then

    end
end)

addEventHandler("onMarkerHit", marker, function(AnaMariaBraga)
    if veh[AnaMariaBraga] then

    end
end)

Em todos daria certo, pois cada parâmetro daquele recebe o jogador, e você indexou o jogador desde o começo. O nome não importa, e sim o elemento passado.

Mudei ele para 'veh[player]' e todos os source para player, o mod voltou a funcionar, mas o problema continua, ainda n verefica se esta com o andromada ou AT-400 e da o msm warning

Link to post
4 hours ago, andr0xy said:

Mande o código como está. Eu não vejo erros da forma que deixei o código.

Spoiler

--Markers:
trabaviao = createMarker ( 1715.163, 1616.396, 9 , "cylinder", 1.5, 255,140,0, 255)  -- Marker para inciar o trabalho 

blip3 = createBlipAttachedTo(trabaviao, 5, 3, 255, 0, 0, 255, 0, 325)  --- Blip do trabalho

--
entraga1 = createMarker ( -1538.733, -46.08, 14.148, "corona", 8.5, 255,140,0, 255)   -- Primeiro lugar que você deixa o veiculo
setElementVisibleTo ( entraga1, root, false )

entraga2 = createMarker ( 1794.107, -2593.336, 13.547 , "corona", 8.5, 255,140,0, 255)  -- 2 lugar que você deixa o veiculo
setElementVisibleTo ( entraga2, root, false )

entraga3final = createMarker ( 1477.387, 1713.464, 10.5 , "corona", 8.5, 255,140,0, 255)  -- Lugar final onde você deixa o veiculo 
setElementVisibleTo ( entraga3final, root, false )

--blips das entregas:
blipentrega1 = createBlipAttachedTo(entraga1, 53, 3, 255, 0, 0, 255, 0, 65535, source)      -- Blip do Primeiro lugar que você deixa o veiculo
setElementVisibleTo ( blipentrega1, root, false )

blipentrega2 = createBlipAttachedTo(entraga2, 53, 3, 255, 0, 0, 255, 0, 65535, source)    -- Blip do 2 lugar que você deixa o veiculo
setElementVisibleTo ( blipentrega2, root, false )

blipentrega3 = createBlipAttachedTo(entraga3final, 53, 3, 255, 0, 0, 255, 0, 65535, source)     -- Blip do Lugar final onde você deixa o veiculo 
setElementVisibleTo ( blipentrega3, root, false )

--Ao pisar no marker do trampo:
veh = {player}
function pegartrab ( player )
	local aviao = {519, 511, 553, 592, 577}
	
	if getElementType(player) == "player" then
		if not (getElementData(player, "emTrabalho", true)) then 
			if getPedOccupiedVehicle(player) == false then
				if veh[player] and isElement( veh[player] ) then destroyElement(veh[player] )
					veh[player] = nil
				end
				local x,y,z = getElementPosition(player)
				local Avioes = aviao[math.random(#aviao)]
				veh[player] = createVehicle(Avioes ,1477.556, 1500.241, 10.828 + 1.5) -- Id e local onde o veiculo que você usa pro trabalho
				setElementRotation(veh[player], -0, 0, 179.67) -- define a rotacao 
				setTimer (outputChatBox, 6000, 1, "[#FF0000 Aeronauta #000000]#FFFFFF Precione #FF00002#FFFFFF para abaixar as rodas.",player, 0, 0, 0, true)
				warpPedIntoVehicle (player,veh[player])
				setElementVisibleTo ( blipentrega1, player, true )
				setElementVisibleTo ( entraga1, player, true )
				outputChatBox ( "#000000", player, 0, 0, 0, true )
				outputChatBox ('[#FF0000 Aeronauta #000000]#FFFFFF Vooe ate o aeroporto de San Fierro para entregar os passageiros. #FF0000[ F11 ]',player,0 ,0 ,0 ,true)
				outputChatBox ( "#000000", player, 0, 0, 0, true )
				setElementData(player, "emTrabalho", true)
				setElementData(player, "trabAviaoParte1", true)
				outputDebugString("[TrabAviao] "..getPlayerName(player):gsub("#%x%x%x%x%x%x","").." iniciou o trabalho de aviao!",3,0,255,0)
			else
				outputChatBox ( "[#FF0000 Erro #000000]#FFFFFF Voce esta em um veiculo!", player, 0, 0, 0, true )
			end
		else
			outputChatBox ( "[#FF0000 Erro #000000]#FFFFFF Voce ja iniciou um trabalho!", player, 0, 0, 0, true )
		end
	end
end
addEventHandler( "onMarkerHit", trabaviao, pegartrab )

--Ao chegar na primeira parte do trampo:
function parte2 (player)
	if getElementData(player,"trabAviaoParte1") == true then
		if veh[player] and isElement(veh[player]) then
			setElementVisibleTo ( entraga1, player, false )
			setElementVisibleTo ( blipentrega1, player, false )
			setElementData(player, "trabAviaoParte1", false)
				if getPedOccupiedVehicle ( player ) then
					local playerVehicle = getPlayerOccupiedVehicle ( player )
					local currentFreezeStatus = isElementFrozen ( playerVehicle )
					local newFreezeStatus = not currentFreezeStatus
					
					setElementPosition(playerVehicle, -1537.46313,-45.0077857,14.5 + 1.5)
					setElementRotation(veh[player], -0, 0, 316.55)
					setElementFrozen ( playerVehicle, true )
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Os passageiros estao deembarcando, aguarde...", player, 0, 0, 0, true )
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					setTimer (function()
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Novos passageiros estao embarcando, aguarde...", player, 0, 0, 0, true )
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					setTimer (function()
					setElementFrozen ( playerVehicle, false )
					setElementVisibleTo ( blipentrega2, player, true )
					setElementVisibleTo ( entraga2, player, true )
					setElementData(player, "trabAviaoParte2", true)
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros embarcaram, agora de a volta e leve-os até Los Santos e pegue novos passageiros!", player, 0, 0, 0, true )
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Voce recebeu #00FF00R$10.000#FFFFFF", player, 0, 0, 0, true )
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					outputDebugString("[TrabAviao] "..getPlayerName(player):gsub("#%x%x%x%x%x%x","").." completou a parte 1 do trabalho!",3,0,255,0)
					givePlayerMoney (player, 10000)
					end, 10000, 1)
				end, 5000, 1)
			end
		end
	end
end
addEventHandler( "onMarkerHit", entraga1, parte2 )

--Ao chegar a segunda parte do trampo:
function finalizar (player)
	if getElementData(player,"trabAviaoParte2") == true then
		if veh[player] and isElement(veh[player]) then
			setElementVisibleTo ( blipentrega2, player, false )
			setElementVisibleTo ( entraga2, player, false )
			setElementData(player, "trabAviaoParte2", false)
				if getPedOccupiedVehicle ( player ) then
					local playerVehicle = getPlayerOccupiedVehicle ( player )
					local currentFreezeStatus = isElementFrozen ( playerVehicle )
					local newFreezeStatus = not currentFreezeStatus
					setElementPosition(playerVehicle, 1792.28466,-2593.63818,14 + 1.5 )
					setElementRotation(veh[player], -0, 0, 269.556)
					setElementFrozen ( playerVehicle, true )
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Os passageiros estao deembarcando, aguarde...", player, 0, 0, 0, true )
					outputChatBox ( "#000000", player, 0, 0, 0, true )
					setTimer (function()
						outputChatBox ( "#000000", player, 0, 0, 0, true )
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Novos passageiros estao embarcando, aguarde...", player, 0, 0, 0, true )
						outputChatBox ( "#000000", player, 0, 0, 0, true )
					setTimer (function()
						setElementFrozen ( playerVehicle, false )
						setElementVisibleTo ( entraga3final, player, true )
						setElementVisibleTo ( blipentrega3, player, true )
						setElementData(player, "trabAviaoParte3", true)
						outputChatBox ( "#000000", player, 0, 0, 0, true )
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros embarcaram, agora leve-os até Las Vegas Para finalizar o trabalho!", player, 0, 0, 0, true )
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Voce recebeu #00FF00R$20.000#FFFFFF", player, 0, 0, 0, true )
						outputChatBox ( "#000000", player, 0, 0, 0, true )
						
						outputDebugString("[TrabAviao] "..getPlayerName(player):gsub("#%x%x%x%x%x%x","").." completou a parte 2 do trabalho!",3,0,255,0)
						
						givePlayerMoney (player, 20000)
					end, 10000, 1)
				end, 5000, 1)
			end
		end
	end
end
addEventHandler( "onMarkerHit", entraga2, finalizar )

--Ao chegar na terceira parte e finalizar o trampo:
function finalizartrab (player, theVehicle)
	if getElementData(player,"trabAviaoParte3") == true then
		if veh[player] and isElement(veh[player]) then
			if getPedOccupiedVehicle ( player ) then
				local playerVehicle = getPlayerOccupiedVehicle ( player )
				local currentFreezeStatus = isElementFrozen ( playerVehicle )
				local newFreezeStatus = not currentFreezeStatus
				setElementPosition(playerVehicle, 1477.443, 1712.498, 11.2 + 1.5)
				setElementRotation(veh[player], -0, 0, 359.225)
				setElementFrozen ( playerVehicle, true )
				outputChatBox ( "#000000", player, 0, 0, 0, true )
				outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Os passageiros estao deembarcando, aguarde...", player, 0, 0, 0, true )
				outputChatBox ( "#000000", player, 0, 0, 0, true )
				setElementVisibleTo ( entraga3final, player, false )
				setElementVisibleTo ( blipentrega3, player, false )
				setElementData(player, "trabAviaoParte3", false)
				setElementData(player, "emTrabalho", false)
				setTimer (function(p)
					outputChatBox ( "#000000", p, 0, 0, 0, true )
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Voce terminou seu trabalho com sucesso!", p, 0, 0, 0, true )
					outputChatBox ( "#000000", p, 0, 0, 0, true )
					destroyElement (veh[player])
					outputDebugString("[TrabAviao] "..getPlayerName(p):gsub("#%x%x%x%x%x%x","").." Completou o trabalho de aviao!",3,0,255,0)
					local theVehicle = getPedOccupiedVehicle(p)
					local model = getElementModel(theVehicle)
					if model == 592 or model == 577 then
						outputChatBox ( "#000000", p, 0, 0, 0, true )
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$45.000#FFFFFF por entregar com o Andromada ou AT-400, totalizando #00FF00R$75.000", p, 0, 0, 0, true )
						outputChatBox ( "#000000", p, 0, 0, 0, true )
						givePlayerMoney (p, 45000)
					else
						outputChatBox ( "#000000", p, 0, 0, 0, true )
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$30.000#FFFFFF, totalizando #00FF00R$60.000", p, 0, 0, 0, true )
						outputChatBox ( "#000000", p, 0, 0, 0, true )
						givePlayerMoney (p, 30000)
					end
				end, 5000, 1, player)
			end
		end
	end
end
addEventHandler( "onMarkerHit", entraga3final, finalizartrab )

--ao sair do aviao:
function exitAviao (player)
	if (veh[player]) and isElement(veh[player]) then
		outputChatBox ( "#000000", player, 0, 0, 0, true )
		outputChatBox ('[#FF0000 AVISO #000000]#FFFFFF Você tem #FF000010 #FFFFFFsegundos parar voltar ao aviao ou perdera o emprego!', player, 0, 0, 0, true)
		outputChatBox ( "#000000", player, 0, 0, 0, true )
		TimeAviao = setTimer (function()
			Trabalho = false
			setElementData(player, "emTrabalho", false)
			setElementData(player, "trabAviaoParte1", false)
			setElementData(player, "trabAviaoParte2", false)
			setElementData(player, "trabAviaoParte3", false)
			setElementVisibleTo ( entraga1, player, false )
			setElementVisibleTo ( blipentrega1, player, false )
			setElementVisibleTo ( entraga2, player, false )
			setElementVisibleTo ( blipentrega2, player, false )
			setElementVisibleTo ( entraga3final, player, false )
			setElementVisibleTo ( blipentrega3, player, false )
			outputChatBox ('[#FF0000 Aeronauta #000000]#FFFFFF Você saiu do avião e perdeu o trabalho',player, 0 ,0 ,0 ,true)
			if veh[player] and isElement(veh[player]) then
				destroyElement (veh[player])
			end
		end, 10000, 1)
	end
end
addEventHandler ("onVehicleExit", root, exitAviao)

--Ao entrar novamente no veiculo:
function enterAviao (player)
local theVehicle = getPedOccupiedVehicle(player)
local model = getElementModel(theVehicle)
	if (getElementData(player, "emTrabalho", true)) then
		if model == 519 or model == 511 or model == 553 or model == 592 or model == 577 then
			killTimer (TimeAviao)
		end
	end
end
addEventHandler ("onVehicleEnter", root, enterAviao)

--Ao morrer:
function DeathAviao (player)
	if veh[player] and isElement(veh[player]) and getElementData (player, "emTrabalho", true) then
		outputChatBox ('[#FF0000 Aeronauta #000000]#FFFFFF Você perdeu o emprego!', player, 0, 0, 0, true)
		if (veh[player]) then
			destroyElement (veh[player])
			setElementData(player, "emTrabalho", false)
			setElementData(player, "trabAviaoParte1", false)
			setElementData(player, "trabAviaoParte2", false)
			setElementData(player, "trabAviaoParte3", false)
			setElementVisibleTo ( entraga1, player, false )
			setElementVisibleTo ( blipentrega1, player, false )
			setElementVisibleTo ( entraga2, player, false )
			setElementVisibleTo ( blipentrega2, player, false )
			setElementVisibleTo ( entraga3final, player, false )
			setElementVisibleTo ( blipentrega3, player, false )
			if (isTimer(TimeAviao)) then
				killTimer (TimeAviao)
			end
		end
	end
end
addEventHandler ("onPlayerWasted", root, DeathAviao)

--Ao desconectar:
function QuitTrabAviao (player)
	if veh[player] and isElement(veh[player]) and getElementData (player, "emTrabalho", true) then
		destroyElement (veh[player])
			if (isTimer(TimeAviao)) then
				killTimer (TimeAviao)
		end
	end
end
addEventHandler ("onPlayerQuit", root, QuitTrabAviao)

ta ai

 

Link to post
function finalizartrab (player, dimension) -- <-- NÃO EXISTE O PARAMETRO THE VEHICLE NO ONMARKERHIT, AQUI SERIA DIMENSÃO
	if getElementData(player,"trabAviaoParte3") then
		if veh[player] and isElement(veh[player]) then
			local vehicle = getPedOccupiedVehicle(player) -- NÃO PRECISA COLOCAR VARIAS VARIAVEIS DE VEICULO PQ 1 JÁ BASTA
            if vehicle then
				local currentFreezeStatus = isElementFrozen ( vehicle )
				local newFreezeStatus = not currentFreezeStatus
				setElementPosition(vehicle, 1477.443, 1712.498, 11.2 + 1.5)
				setElementRotation(vehicle, -0, 0, 359.225)
				setElementFrozen ( vehicle, true )
				outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Os passageiros estao deembarcando, aguarde...", player, 0, 0, 0, true )
				setElementVisibleTo ( entraga3final, player, false )
				setElementVisibleTo ( blipentrega3, player, false )
				setElementData(player, "trabAviaoParte3", false)
				setElementData(player, "emTrabalho", false)
				setTimer (function()
					outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF Todos os passageiros deembarcaram. Voce terminou seu trabalho com sucesso!", sourplayerce, 0, 0, 0, true )
					outputDebugString("[TrabAviao] "..getPlayerName(player):gsub("#%x%x%x%x%x%x","").." Completou o trabalho de aviao!",3,0,255,0)
					local model = getElementModel(vehicle)
					if model == 592 or model == 577 then
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$45.000#FFFFFF por entregar com o Andromada ou AT-400, totalizando #00FF00R$75.000", player, 0, 0, 0, true )
						givePlayerMoney (player, 45000)
					else
						outputChatBox ( "[#FF0000 Aeronauta #000000]#FFFFFF E Recebeu mais #00FF00R$30.000#FFFFFF, totalizando #00FF00R$60.000", player, 0, 0, 0, true )
						givePlayerMoney (player, 30000)
					end
                    destroyElement(veh[player])
                    veh[player] = nil
				end, 5000, 1)
			end
		end
	end
end
addEventHandler( "onMarkerHit", entraga3final, finalizartrab )

Você Estava Destruindo o Veiculo Dps Conferindo o Modelo Dele, Sendo que ele Não Existe Mais, Assim Causando o Erro.

Edited by LucasST
Erro Ortográfico
  • Thanks 1
Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...