DNL291 Posted December 1, 2018 Share 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 Link to comment
#Horus Posted December 1, 2018 Author Share 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 Link to comment
Other Languages Moderators Lord Henry Posted December 1, 2018 Other Languages Moderators Share 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. Link to comment
#Horus Posted December 1, 2018 Author Share 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 Link to comment
Other Languages Moderators Lord Henry Posted December 1, 2018 Other Languages Moderators Share Posted December 1, 2018 Não cara. Só usar /kill pra se matar e testar. (se estiver usando Freeroam) Link to comment
#Horus Posted December 1, 2018 Author Share 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 Link to comment
Other Languages Moderators Lord Henry Posted December 2, 2018 Other Languages Moderators Share Posted December 2, 2018 é Link to comment
#Horus Posted December 2, 2018 Author Share 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 ? Link to comment
#Horus Posted December 2, 2018 Author Share Posted December 2, 2018 5 hours ago, Lord Henry said: é setei um onPlayerWasted e deu certo! obrigado henry e galerinha do forum, amo vcs < Link to comment
#Horus Posted December 2, 2018 Author Share 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 Link to comment
Other Languages Moderators Lord Henry Posted December 2, 2018 Other Languages Moderators Share 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 Link to comment
#Horus Posted December 2, 2018 Author Share 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 Link to comment
Other Languages Moderators Lord Henry Posted December 3, 2018 Other Languages Moderators Share 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) Link to comment
#Horus Posted December 3, 2018 Author Share 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é ? Link to comment
DNL291 Posted December 3, 2018 Share 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 Link to comment
#Horus Posted December 3, 2018 Author Share 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!! Link to comment
Other Languages Moderators Lord Henry Posted December 3, 2018 Other Languages Moderators Share 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 Link to comment
DNL291 Posted December 3, 2018 Share 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 Link to comment
Vazern Posted December 4, 2018 Share 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]). Link to comment
#Horus Posted December 4, 2018 Author Share 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 ? Link to comment
Other Languages Moderators Lord Henry Posted December 4, 2018 Other Languages Moderators Share 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. Link to comment
#Horus Posted December 5, 2018 Author Share 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 Link to comment
Other Languages Moderators Lord Henry Posted December 5, 2018 Other Languages Moderators Share Posted December 5, 2018 Aparece alguma mensagem de erro no /debugscript 3? Link to comment
#Horus Posted December 5, 2018 Author Share Posted December 5, 2018 10 minutes ago, Lord Henry said: Aparece alguma mensagem de erro no /debugscript 3? Vou ver aqui agora Link to comment
#Horus Posted December 5, 2018 Author Share 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 ? Link to comment
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