Jump to content

Angelo Pereira

Members
  • Posts

    251
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by Angelo Pereira

  1. Explique com detalhes, o que você quer dizer em adicionar +1 elementoData? Para você adicionar +1 Element, basta seta-lo, utilizando setElementData(_,"Nome_do_Elemento", _) Crie um veiculo pelo editor de maps, e salve-o no local que você o deseja, é a melhor forma de fazer, ou terá que fazer por meio de script.
  2. --/> 1º Jeito / Dentro do Veiculo. addCommandHandler("destruir", function ( source ) local veiculo = getPedOccupiedVehicle(source) if veiculo then local id = getElementModel (veiculo) if (id == 598) or (id == 597) then destroyElement(veiculo) end end end) --/> 2º Jeito / Você precisará ir até o painel lado server-side que spwana o veiculo. local veh = {} --/> Haverá uma tabela para veiculos (Claramente pode ser qualquer nome[AQUI É EX]) --/> Então faça o seguinte : addCommandHandler("destruir", function ( source ) if isElement(veh[source]) then --/> Verifica se este elemento (no caso veiculo) é verdadeiro. destroyElement(veh[source]) --/> Então Destruirá. veh[source] = nil --/> Removerá da tabela. end end)
  3. local tempo = 2000 --/> 2s function desaparecer() setTimer( destroyElement, tempo, 1, source ) end addEventHandler("onVehicleExplode", getRootElement(), desaparecer) Caso tiver problemas, utilize este.
  4. Precisa informa o código do dinheiro sujo, apenas da função givePlayerDirty é o suficiente 1. Essa exportação apenas server basicamente para enviar o valor do roubo e calcular com o que já tem, isto é descompilado? 2. Você esta tentando utilizar-se de uma exportação de uma função para obter valores (Claramente a função não foi feita para isto). 3. Você esta tentando fazer de qualquer jeito, obviamente não vai funcionar, precisamos saber qual o elemento que seu dinheiro sujo é definido. 4. Eu fiz alterações no server-side e no client-side, ao fazer tais correções, informe elas, para saber se fez da forma correta. Vamos pelo inicio, precisamos saber qual elemento realmente seu dinheiro sujo fornece para obtermos os valores. Depois, verificar-lo, e adicionar no player que esta revistando. Faço isso que eu disse, que vamos ter resultados. Esta retornando em zero, por talvez, o elemento do lado server-side ao ser puxado com getElementData("Elemento"), pode esta incorreto e então ele é definido como 0.
  5. Não aconselharia a criar um resource para disparar uma função a cada 1s setTimer ( function () for i, veh in ipairs(getElementsByType("vehicle")) do if isElement(veh) then for seat, player in pairs(getVehicleOccupants(veh)) do return true end destroyElement(veh) end end end, 1000, 0) --/> Algo que você pode partir dai para aperfeiçoar, ou, alguém do fórum ajuda-lo a aperfeiçoar o código
  6. Como você esta fazendo? após eu falar? e por favor, envia o elemento que o dinheiro sujo é setado.
  7. Sim, da agencia. Os erros de exportação, você precisa adicionar o resource Blur.
  8. 1. Você precisa verificar no /debugscript 3 para saber o motivo pelo qual o resource não esta funcionando da melhor forma. 2. setTimer(upLevel,9000,0) --/> 9 segundos / setTimer(upLevel,60000,0) --/> 60 segundos. 3. Aparentemente, esta certo, o problema, é que falta ainda uma parte do server-side no script.
  9. Você deixa o dinheiro sujo da HUD e ele mostra corretamente o valor? verifique o elemento se é o mesmo elemento informado na revista.
  10. Código muito bagunçado, da próxima vez, ao enviar aqui da uma ajeitadinha... Basicamente ao da o comando, ele faz uma cópia do jogador, com elementos. -- Server-side ! --/> O jeito que você fez : local DinheiroSujo = exports.dinheirosujo:getPlayerDirty(localPlayer, "Suspeito:MoneySujo")or "0" --/> Correção : local DinheiroSujo = getElementData(cliente, "Suspeito:MoneySujo") or "0" --/> Aqui você adiciona o ELEMENTO do seu DINHEIRO SUJO. setElementData(source, "Suspeito:DinheiroSujo", DinheiroSujo) --/> Aqui adicionará um novo Elemento, Para Então : -- Client-side ! --/> o jeito que você fez : local DinheiroSujo = exports.dinheirosujo:getPlayerDirty(localPlayer, "Suspeito:DinheiroSujo") or "0" --/> Correção : local DinheiroSujo = getElementData(localPlayer, "Suspeito:DinheiroSujo") or "0" --/> o ELEMENTO ser Verificado AQUI.
  11. Salve Pessoal ! Venho convida-los a jogarem em nosso servidor de MTA ! Nome : [BR] BRASIL RODANDO NA FIXA 4.0 Gamemod : PLAY IP : mtasa://51.81.110.252:22003 TeamSpeak3 : brfoficial.ts3games.top Nossa Página : https://www.facebook.com/BrasilRodandoNaFixaOficial/ Imagem : mta-screen_2020-01-26_21-31-03 OBS : Desconsidere os erros no debugscript 3 ! Eu tinha acabado de Baixa o Servidor.
  12. Oque você já tentou? if parent and fuel and armor then Provavelmente esteja faltando algo no scritp "fuel" e "armor" Você precisará enviar o server-side para nós ter uma ideia do que esteja errado. details = { {"Tire_inVehicle"}, {"Engine_inVehicle"}, {"Parts_inVehicle"}, } Existe uma tabela que não esta sendo utilizada, para o que ela serviria neste script?
  13. Ângelo Pereira#4059 Caso seu ID for contado pelo ID por conta, faça assim : addCommandHandler("curar", function(source, cmd, id) local player = getPlayerFromID(id) if player then end end) function getPlayerFromID ( id ) for _, player in ipairs ( getElementsByType ( "player" ) ) do local id_account = getAccountID(getPlayerAccount(player)) if ( id_account == tonumber(id) ) then player_nick = getPlayerName ( player ) return player_nick end end end
  14. -- UTILIZE : createMarker (x,y,z,"cylinder", size, 0, 0, 0, 0) --/> Deixa o Marker Invisivel. DxDrawImage (x,y,width,height, "galao.png") or dxDrawImage3D() --/> Cria a Imagem. addEventHandler ("onClientRender", getRootElement(), _)
  15. 1. Postagem em local errado. 2. Se tentou, envie já o que fez, não fique com vergonha, todos um dia erramos, não espere alguém te da de mão beijada porquê tentou e não conseguiu.
  16. Em vez de busca nick do jogador, busque o ID, um exemplo : --/> Busca Pelo Nome ! addCommandHandler("curar", function(source, cmd, nome) local player = getPlayerFromPartialName(nome) end) --/> Busca Pelo ID ! Lembrando, precisa o jogador ser setado o ID por Elemento / ou aplicar conforme seu script. addCommandHandler("curar", function(source, cmd, id) local player = getPlayerFromID(id) end) function getPlayerFromID ( id ) for _, player in ipairs ( getElementsByType ( "player" ) ) do local player_id = getElementData ( player, "ID" ) if ( player_id == tonumber(id) ) then player_nick = getPlayerName ( player ) return player_nick end end end
  17. Não dois scripts e sim dois arquivos no mesmo recurso, um para o server, outro para o client.
  18. Algo improvável está ocorrendo com conflito de outro resource, impossível, ele ao cair do servidor, salvar em 0,0,0. Porem, até não descobrir o problema, daria de fazer uma correção temporária, caso verificasse em x,y,z em 0, teleporta-lo para o hospital Este isElement(source) é realmente necessário? o jogador sempre será verdadeiro ao da quit do servidor, mas, testei em um servidor teste, e funciona, mesmo caindo do servidor. ou seja, possa ser um conflito, e muito artificial, teria que saber como realmente isso ocorre
  19. 1. Você precisa criar outro arquivo server.Lua e então adicionar o server-side e não adicionar isto no client (Obviamente o erro já esta ai). 2. Você esta enviando códigos para o server, não existe mais localPlayer no server-side. 2. Não sou bom com explicações, enfim : Deixarei um 1 exemplo que te ajudará a entender, e você intendera seus erros. -- EXEMPLO [1] -- client-side local aberto = false function abrircelular () if aberto == false then aberto = true triggerServerEvent("openPhone", getLocalPlayer(), localPlayer) --setPedAnimation (localPlayer, "ped","phone_in", 1000, false, false, false, true) --setPedAnimationProgress(localPlayer, "phone_in", 0.8) setPedWeaponSlot(localPlayer, 0) phone = createObject(330, 0, 0, 0, 0, 0, 0) exports.bone_attach:attachElementToBone(phone, localPlayer, 12, 0, 0.01, 0.03, -15, 270, -15) setElementDimension(phone, getElementDimension(localPlayer)) setElementInterior(phone, getElementInterior(localPlayer)) --animTimer = setTimer(function() -- setPedAnimationProgress(localPlayer, "phone_in", 0.8) --end, 500, 0) else removePhone() end end bindKey ( "F1", "down", abrircelular) addCommandHandler ( "celular", abrircelular) function removePhone () if aberto == true then if isElement(phone) then destroyElement(phone) end if isTimer(animTimer) then killTimer(animTimer) end aberto = false --setPedAnimation (localPlayer, "ped", "phone_out", 50, false, false, false, false) triggerServerEvent("closePhone", getLocalPlayer(), localPlayer) end end addEvent("remover_celular", true) addEventHandler("remover_celular", getRootElement(), removePhone ) -- server-side ( Você preciar criar outra pasta e não adiciona no client ). local animTimer = {} --/> e disto? function animacao_open_phone ( source ) setPedAnimation (source, "ped","phone_in", 1000, false, false, false, true) setPedAnimationProgress(source, "phone_in", 0.8) animTimer[source] = setTimer(function ( ) --/> Realmente precisa desse tempo em 0,5s?... setPedAnimationProgress(source, "phone_in", 0.8) --/> Disto? end, 500, 0) --/> E disto? end addEvent("openPhone", true) addEventHandler("openPhone", getRootElement(), animacao_open_phone) function desativar_animacao ( source ) if isTimer(animTimer[source]) then killTimer(animTimer[source]) end setPedAnimation ( source , "ped", "phone_out", 50, false, false, false, false) end addEvent("closePhone", true) addEventHandler("closePhone", getRootElement(), desativar_animacao) -- Esse tempo precisa ser verifica em um onPlayerQuit (Se não o joãozinho sai do servidor com o celular aberto, será 0,5s de floods :( Bom, deixarei explicações, e um melhor jeito de fazer, mais organizado e que não prejudique no desempenho, com os especialista @Lord Henry
  20. -- Client triggerServerEvent("openPhone", localPlayer) -- Server function animacao_open_phone () -- addEvent("openPhone", true) addEventHandler("openPhone", getRootElement(), animacao_open_phone) ---/> Caso não funcionar, tente : -- Client triggerServerEvent("openPhone", getLocalPlayer(), localPlayer) -- Server function animacao_open_phone (source) -- addEvent("openPhone", true) addEventHandler("openPhone", getRootElement(), animacao_open_phone)
  21. Já tentou colocar verificações de outputDebugString() das coordenadas x,y,z ao cair do servidor? e ao logar? para saber se as coordenadas estão sendo salva ao cair? e ao logar se são verdadeiras?
  22. addEventHandler("onClientRender",getRootElement(), function() local inVehicle = getPedOccupiedVehicle(getLocalPlayer()) if inVehicle and isPedInVehicle(localPlayer) and getVehicleController(inVehicle) then local parent = getElementData(inVehicle,"parent") --/> Adicionado if parent and fuel and armor then ---/> Adicione o resto do script Tente isso
  23. A animação só vai sincronizar do lado server, então se você utilizar triggerServerEvent e executa a animação lá, dará certo.
  24. Crie uma pasta chamada "animacao_chorar", então faça dentro desta pasta : Crie um meta.xml e adicione dentro : <meta> <info author="Amanda" type="animation" name="choro" description="Script de chorar" /> <script src="script.Lua" type="server"/> </meta> Então dentro da pasta "animacao_chorar" crie outro chamado "script.Lua" (Sem Aspas) e adicione dentro : addCommandHandler ("sit", function (thePlayer, cmd) if getElementData (thePlayer, "sitting") then -- Se a data já existir, então: setPedAnimation (thePlayer) -- Faz com que o jogador pare s animação. removeElementData (thePlayer, "sitting") -- Remove a data do jogador. else -- Se ele não possuir a data, então: setPedAnimation (thePlayer, "ped", "seat_down", -1, false, false, false, false) -- Seta a animação no jogador. setElementData (thePlayer, "sitting", true) -- Seta a data no jogador indicando que ele esta com a animação ativa. end end) da refresh no F8 e de um start no resource animacao_chorar. Lembrando, xml e Lua são extensões, ou copie de outro resource já pronto, apenas o meta e o server-side, caso não consiga.
×
×
  • Create New...