ythalo04 Posted June 22, 2021 Share Posted June 22, 2021 (edited) Estou tentando criar um script, que torne um certo veiculo blindado... Verificando se o jogador está nesse veiculo em especifico, e também verificando se o veiculo já está blindado, para não tirar a blindagem do mesmo, caso ele já esteja blindado... Também quero tornar o jogador "imortal" enquanto estiver dentro do veiculo!! Alguém pode me ajudar?? Muito obrigado Este é o código: function blindar() local blindar = getPedOccupiedVehicle ( localPlayer ) local verificar = isVehicleDamageProof( localPlayer ) if (blindar) then if getElementModel(blindar) == 601 then if (verificar) then outputChatBox ( "Este Veiculo é blindado!", source, 255,255,255,true) elseif (verificar) == false and (blindar) == 601 then setVehicleDamageProof(blindar, true) end end end end addEventHandler("onPlayerVehicleEnter", getRootElement(), blindar) function DanoBlindado ( attacker, weapon, bodypart ) local blindadocar = getPedOccupiedVehicle ( localPlayer ) if (blindadocar) then if getElementModel(blindadocar) == 601 then cancelEvent() setElementHealth(localPlayer, 100) end end end addEventHandler ( "onClientPlayerDamage", getLocalPlayer(), DanoBlindado ) alguém me ajuda, onde estou errando... sou novo em programação! Valeu Edited June 22, 2021 by ythalo04 Link to comment
Other Languages Moderators Lord Henry Posted June 24, 2021 Other Languages Moderators Share Posted June 24, 2021 Utilize o botão <> do fórum para postar scripts. Não cole ele direto no texto. 1 Link to comment
ythalo04 Posted June 25, 2021 Author Share Posted June 25, 2021 23 hours ago, Lord Henry said: Utilize o botão <> do fórum para postar scripts. Não cole ele direto no texto. ah okay, sou novo, valeuu function blindar() local blindar = getPedOccupiedVehicle ( localPlayer ) local verificar = isVehicleDamageProof( localPlayer ) if (blindar) then if getElementModel(blindar) == 601 then if (verificar) then outputChatBox ( "Este Veiculo é blindado!", source, 255,255,255,true) elseif (verificar) == false and (blindar) == 601 then setVehicleDamageProof(blindar, true) end end end end addEventHandler("onPlayerVehicleEnter", getRootElement(), blindar) function DanoBlindado ( attacker, weapon, bodypart ) local blindadocar = getPedOccupiedVehicle ( localPlayer ) if (blindadocar) then if getElementModel(blindadocar) == 601 then cancelEvent() setElementHealth(localPlayer, 100) end end end addEventHandler ( "onClientPlayerDamage", getLocalPlayer(), DanoBlindado ) Link to comment
Jonas^ Posted June 25, 2021 Share Posted June 25, 2021 Você esta usando eventos server-side em client-side ou ao contrário. 1 Link to comment
ythalo04 Posted June 27, 2021 Author Share Posted June 27, 2021 On 25/06/2021 at 19:06, Jonas^ said: Você esta usando eventos server-side em client-side ou ao contrário. Então meu código está correto? Só a parte client, servidor que está errada? Vou testar aqui agora... mas queria saber se o código da forma que fiz se está correta kkkkkkkk valeuuu Link to comment
Other Languages Moderators Lord Henry Posted June 28, 2021 Other Languages Moderators Share Posted June 28, 2021 Veículos criados client-side servem apenas para visualização. Eles não podem ser usados por jogadores. O evento onPlayerVehicleEnter é server-side, então não vai funcionar em scripts client-side. 1 Link to comment
ythalo04 Posted June 28, 2021 Author Share Posted June 28, 2021 (edited) 3 hours ago, Lord Henry said: Veículos criados client-side servem apenas para visualização. Eles não podem ser usados por jogadores. O evento onPlayerVehicleEnter é server-side, então não vai funcionar em scripts client-side. Eu fui ver o arquivo meta e ele está em server-side... Então no caso, eu terei que ter 2 arquivos, 1 client-side para a função DanoBlindado e outro server-side para o Blindar, seria isso? Me perdoem, eu estou realmente confuso kkk Muito obrigado pela atenção de vocês Pois assim, eu testei diversas vezes e de várias formas, e estou realmente quebrando a cabeça para realizar este script... Tinha vezes que o carro blindava, mas ai ao entrar novamente no veiculo ele desblindava... sabe?! Edited June 28, 2021 by ythalo04 Link to comment
Other Languages Moderators Lord Henry Posted June 30, 2021 Other Languages Moderators Share Posted June 30, 2021 (edited) A blindagem do veículo faça server-side. A imortalidade do jogador dentro do veículo faça client-side. -- SERVER-SIDE function blindar(thePlayer) if (getElementModel(source) == 601) then -- (source = veículo que o jogador entrou) Se o modelo do veículo é o 601 (S.W.A.T.) então: if (isVehicleDamageProof(source)) then -- Se o veículo que o jogador entrou já estiver blindado, então: outputChatBox ("Este veículo já está blindado!", thePlayer, 255, 255, 255) else -- Se o veículo que o jogador entrou não está blindado, então: setVehicleDamageProof (source, true) -- Blinda o veículo. outputChatBox ("Este veículo ficou blindado.", thePlayer, 255, 255, 255) end end end addEventHandler("onVehicleEnter", root, blindar) -- Ativa a função blindar quando alguém entrar em algum veículo. -- CLIENT-SIDE function danoBlindado() local blindadocar = getPedOccupiedVehicle (localPlayer) -- blindadocar recebe o veículo que o jogador está dentro. (será false caso o jogador esteja a pé) if (blindadocar) then -- Se o jogador está em um veículo, então: (blindadocar não é false) if (getElementModel(blindadocar) == 601) then -- Se o modelo do veículo que o jogador está é o 601 (S.W.A.T.) então: cancelEvent() -- Cancela o dano no jogador. end end end addEventHandler("onClientPlayerDamage", localPlayer, danoBlindado) -- Ativa sempre que o localPlayer tomar dano. Edited June 30, 2021 by Lord Henry Códigos comentados. 1 Link to comment
ythalo04 Posted July 1, 2021 Author Share Posted July 1, 2021 (edited) 22 hours ago, Lord Henry said: A blindagem do veículo faça server-side. A imortalidade do jogador dentro do veículo faça client-side. -- SERVER-SIDE function blindar(thePlayer) if (getElementModel(source) == 601) then -- (source = veículo que o jogador entrou) Se o modelo do veículo é o 601 (S.W.A.T.) então: if (isVehicleDamageProof(source)) then -- Se o veículo que o jogador entrou já estiver blindado, então: outputChatBox ("Este veículo já está blindado!", thePlayer, 255, 255, 255) else -- Se o veículo que o jogador entrou não está blindado, então: setVehicleDamageProof (source, true) -- Blinda o veículo. outputChatBox ("Este veículo ficou blindado.", thePlayer, 255, 255, 255) end end end addEventHandler("onVehicleEnter", root, blindar) -- Ativa a função blindar quando alguém entrar em algum veículo. -- CLIENT-SIDE function danoBlindado() local blindadocar = getPedOccupiedVehicle (localPlayer) -- blindadocar recebe o veículo que o jogador está dentro. (será false caso o jogador esteja a pé) if (blindadocar) then -- Se o jogador está em um veículo, então: (blindadocar não é false) if (getElementModel(blindadocar) == 601) then -- Se o modelo do veículo que o jogador está é o 601 (S.W.A.T.) então: cancelEvent() -- Cancela o dano no jogador. end end end addEventHandler("onClientPlayerDamage", localPlayer, danoBlindado) -- Ativa sempre que o localPlayer tomar dano. Muito obrigado cara! Muito obrigado mesmo de coração, que Deus lhe abençoe valeuuuuuuuuuu Acredito que isso irá ajudar muitas pessoas !!!!!!! Edited July 1, 2021 by ythalo04 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