DNL291 Posted December 1, 2018 Posted December 1, 2018 Sim, a tabela 'veh' também estava armazenando o elemento player. Meu último código tem um 'end' extra na linha 8, remova ele. 1
#Horus Posted December 1, 2018 Author Posted December 1, 2018 (edited) 12 hours ago, DNL291 said: Sim, a tabela 'veh' também estava armazenando o elemento player. Meu último código tem um 'end' extra na linha 8, remova ele. Eu poderia usar este mesmo script para quando o player morresse, perdesse o trabalho ? Ou o "onVehicleExit" já atende a quando o player morre pois sai do veículo ? Edited December 1, 2018 by #Horus
Other Languages Moderators Lord Henry Posted December 1, 2018 Other Languages Moderators Posted December 1, 2018 Você poderia testar isso colocando um output na função de sair do veículo e então dando /kill no emprego pra ver se aparece o output no chat.
#Horus Posted December 1, 2018 Author Posted December 1, 2018 (edited) 6 minutes ago, Lord Henry said: Você poderia testar isso colocando um output na função de sair do veículo e então dando /kill no emprego pra ver se aparece o output no chat. E assim ? Um exemplo: addEventHandler ( "kill", getRootElement(), teste ) Edited December 1, 2018 by #Horus
Other Languages Moderators Lord Henry Posted December 1, 2018 Other Languages Moderators Posted December 1, 2018 Não cara. Só usar /kill pra se matar e testar. (se estiver usando Freeroam)
#Horus Posted December 1, 2018 Author Posted December 1, 2018 (edited) 16 minutes ago, Lord Henry said: Não cara. Só usar /kill pra se matar e testar. (se estiver usando Freeroam) Ah, para ver se o onVehicleExit já atende quando o player morre certo ? Aí se não atender, eu uso o mesmo script do onPlayerQuit, só que configuro pra kill certo ? Edited December 1, 2018 by #Horus
Other Languages Moderators Lord Henry Posted December 2, 2018 Other Languages Moderators Posted December 2, 2018 é
#Horus Posted December 2, 2018 Author Posted December 2, 2018 4 hours ago, Lord Henry said: é Obrigado! Henry meu servidor é Freeroam/RPG, mas assim, antigamente muita gente entrava e saía porque não tinha nada para eles fazerem, aí resolvi fazer uma atualização que já faz mais de 2 meses e ainda estou atualizando, já coloquei várias coisas legais, mais assim, voce me dá uma ideia de mods para colocar ? Mods que possam animar aos players sabe ?
#Horus Posted December 2, 2018 Author Posted December 2, 2018 5 hours ago, Lord Henry said: é setei um onPlayerWasted e deu certo! obrigado henry e galerinha do forum, amo vcs <
#Horus Posted December 2, 2018 Author Posted December 2, 2018 7 hours ago, Lord Henry said: é function kill3 () if isElement(Bfim3[source]) then destroyElement (Bfim3[source]) end if isElement(Mfim3[source]) then destroyElement (Mfim3[source]) end if isElement(veh[source]) then destroyElement(veh[source]) end Bfim3[source] = nil Mfim3[source] = nil veh[source] = nil end addEventHandler("onPlayerWasted", getRootElement(), kill3) Henry, eu tentei colocar um outputChatBox, mas quando coloco, mesmo nao estando na data do trabalho, aparece o outputChatBox toda hora que me mato
Other Languages Moderators Lord Henry Posted December 2, 2018 Other Languages Moderators Posted December 2, 2018 (edited) O output era só pra testes. Deixe sem o output mesmo. E ele está executando sempre pois o evento funciona quando qualquer um morre. Edited December 2, 2018 by Lord Henry
#Horus Posted December 2, 2018 Author Posted December 2, 2018 (edited) 2 hours ago, Lord Henry said: O output era só pra testes. Deixe sem o output mesmo. E ele está executando sempre pois o evento funciona quando qualquer um morre. Obrigado novamente mano! Deu certo!! Mas eu usei o script que vc praticamente fez por completo pra mim, para fazer um trabalho de papai Noel, E esse trabalho ficará como um trabalho extra sabe ? Aí eu queira colocar um output apenas nele, porque aí ficaria meio que moderno sabe ? Aí pra colocar este output oque é necessário ? Eu tentei coloca-lo, aí no argumento dele, coloquei source, mas não deu, depois coloquei thePlayer e também não deu , assim a mensagem aparece normalmente mas aparecem toda hora que me mato mesmo não estando na data do trabalho sabe ? Edited December 2, 2018 by #Horus
Other Languages Moderators Lord Henry Posted December 3, 2018 Other Languages Moderators Posted December 3, 2018 function kill3 () if isElement(Bfim3[source]) then destroyElement (Bfim3[source]) end if isElement(Mfim3[source]) then destroyElement (Mfim3[source]) outputChatBox ("Você perdeu o emprego porque morreu.", source) end if isElement(veh[source]) then destroyElement(veh[source]) end Bfim3[source] = nil Mfim3[source] = nil veh[source] = nil end addEventHandler("onPlayerWasted", getRootElement(), kill3)
#Horus Posted December 3, 2018 Author Posted December 3, 2018 26 minutes ago, Lord Henry said: function kill3 () if isElement(Bfim3[source]) then destroyElement (Bfim3[source]) end if isElement(Mfim3[source]) then destroyElement (Mfim3[source]) outputChatBox ("Você perdeu o emprego porque morreu.", source) end if isElement(veh[source]) then destroyElement(veh[source]) end Bfim3[source] = nil Mfim3[source] = nil veh[source] = nil end addEventHandler("onPlayerWasted", getRootElement(), kill3) Vendo seu código, Acabei de descobrir meu erro... Eu coloquei o output em baixo do veh[source] = nil.. foi isso mesmo que fiz de errado né ?
DNL291 Posted December 3, 2018 Posted December 3, 2018 Esse código vai executar pra qualquer player não vai? Precisa de uma verificação pra saber se a pessoa está no emprego. 1
#Horus Posted December 3, 2018 Author Posted December 3, 2018 12 minutes ago, DNL291 said: Esse código vai executar pra qualquer player não vai? Precisa de uma verificação pra saber se a pessoa está no emprego. Eu testei e realmente deu certo!!
Other Languages Moderators Lord Henry Posted December 3, 2018 Other Languages Moderators Posted December 3, 2018 (edited) 11 hours ago, DNL291 said: Esse código vai executar pra qualquer player não vai? Precisa de uma verificação pra saber se a pessoa está no emprego. Se a pessoa não estiver no emprego, não vai existir o Mfim3[source] e então o output não irá aparecer pra ela. Edited December 3, 2018 by Lord Henry
DNL291 Posted December 3, 2018 Posted December 3, 2018 (edited) 6 hours ago, Lord Henry said: Se a pessoa não estiver no emprego, não vai existir o Mfim3[source] e então o output não irá aparecer pra ela. Verdade. Por algum motivo eu pensei que o jogador poderia continuar na tabela sem estar no emprego e sair do jogo, mas o script já remove ele quando sai do emprego. Edited December 3, 2018 by DNL291
Vazern Posted December 4, 2018 Posted December 4, 2018 22 hours ago, #Horus said: Vendo seu código, Acabei de descobrir meu erro... Eu coloquei o output em baixo do veh[source] = nil.. foi isso mesmo que fiz de errado né ? Não tem nada haver, o erro, é que você não fez uma verificação (como esta do @Lord Henry om o Mfim3[elemento]).
#Horus Posted December 4, 2018 Author Posted December 4, 2018 1 hour ago, VazErn said: Não tem nada haver, o erro, é que você não fez uma verificação (como esta do @Lord Henry om o Mfim3[elemento]). Então assim, Quando passa no marker do Mfim3 e digita o comando, ele ganha a data do trabalho automaticamente, e essa verificação serve pra quando ele se matar, sair do Mfim3 que já tem a data, mais não terá mais ?
Other Languages Moderators Lord Henry Posted December 4, 2018 Other Languages Moderators Posted December 4, 2018 11 hours ago, #Horus said: Então assim, Quando passa no marker do Mfim3 e digita o comando, ele ganha a data do trabalho automaticamente, e essa verificação serve pra quando ele se matar, sair do Mfim3 que já tem a data, mais não terá mais ? Quando o player inicia o trabalho, é criado um marker com esse player. Logo, se não existir o marker com esse player, significa que ele não está no emprego, pois quando o emprego é cancelado ou concluído, o marker é destruído. O marker com esse player só vai existir enquanto ele estiver no emprego.
#Horus Posted December 5, 2018 Author Posted December 5, 2018 14 hours ago, Lord Henry said: Quando o player inicia o trabalho, é criado um marker com esse player. Logo, se não existir o marker com esse player, significa que ele não está no emprego, pois quando o emprego é cancelado ou concluído, o marker é destruído. O marker com esse player só vai existir enquanto ele estiver no emprego. Henry, me informa oque fiz de errado ? apliquei um setTimer pra quando o player chegar em qualquer marker das tables, aparecer "Entregando as Pizzas, Aguarde..." Mas apareçe a mensagem e depois some e não aparece o proximo destino, vou deixar a função abaixo, fiz algumas modificações com a ajuda de vcs! function fim3 (hitElement) if (hitElement == getElementData (source, "owner")) then -- Se o elemento que colidiu for o dono do marker, então: if veh[hitElement] and isElement(veh[hitElement]) then -- Se existe o veículo do trampo do jogador, então: if (getElementData (source, "trip") < #destinos) then -- Se a data do marker é menor que a quantidade de destinos, então: (indicando que não é a última viagem) local x, y, z = unpack (destinos[getElementData (source, "trip") + 1]) -- x, y, z recebem a próxima coordenada da table destinos. dxMsg(hitElement, "Entregando as Pizzas, Aguarde...", "info") setTimer(function() setElementPosition (source, x, y, z) -- Coloca o marker de objetivo nessa nova coordenada. setElementData (source, "trip", getElementData (source, "trip") + 1) -- Seta a nova viagem nesse marker. outputChatBox ("Você entregou as Pizzas no destino. Siga para o próximo. ("..getElementData (source, "trip").."/"..#destinos..")", hitElement) -- Avisa o jogador quantas viagens ele fez e quantas são no total, pra ele não pensar que está trabalhando de graça. end, 5000, 1) else -- Se o marker de objetivo colidido não tem data menor que a quantidade de viagens, então: (indicando que esse é o último objetivo) dxMsg(hitElement, "Recebendo Pagamento Agurde...", "info") setTimer(function() removeEventHandler ("onMarkerHit", Mfim3[hitElement], fim3) -- Remove o evento que ativa este marker, pois ele não será mais usado. destroyElement (veh[hitElement]) -- Destroi o veículo do trampo do jogador. givePlayerMoney (hitElement, 2000) -- Dá o dinheiro do trampo. destroyElement (Bfim3[hitElement]) -- Destroi o blip anexado ao marker de objetivo. Bfim3[hitElement] = nil destroyElement (Mfim3[hitElement]) -- Destroi o marker de objetivo. Mfim3[hitElement] = nil dxMsg(hitElement, "Pagamento recebido campeão (R$ 2000)!", "sucess") -- Avisa o jogador que ele completou o trampo. end, 5000, 1) end end end end
Other Languages Moderators Lord Henry Posted December 5, 2018 Other Languages Moderators Posted December 5, 2018 Aparece alguma mensagem de erro no /debugscript 3?
#Horus Posted December 5, 2018 Author Posted December 5, 2018 10 minutes ago, Lord Henry said: Aparece alguma mensagem de erro no /debugscript 3? Vou ver aqui agora
#Horus Posted December 5, 2018 Author Posted December 5, 2018 5 hours ago, Lord Henry said: Aparece alguma mensagem de erro no /debugscript 3? Perdão, Acabei de chegar do meu curso e mais tarde vou ir trabalhar, vou testar o /debugsript 3 , mas o código que fiz esta certo ?
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now