DNL291

Moderators
  • Content Count

    3,726
  • Joined

  • Days Won

    55

Posts posted by DNL291


  1. localplayer é a variável predefinida para getLocalPlayer() - Para obter o elemento-cliente, isto é, o jogador local.
    Se ainda não entendeu bem você precisa aprender melhor sobre a diferença entre server-side e client-side
    Enquanto que thePlayer/player não é nada além de parâmetro ou variável que é definido pelo programador, e não tem nenhuma definição nem em Lua nem no MTA.

     

    2 hours ago, Boechat said:

    Aproveitando o post, queria perguntar se alguém sabe como cancelar o efeito de morte do player, achei que essa função funcionaria

     addEventHandler ( "onPlayerWasted", getRootElement(), cancelEvent(true) )

    Esse evento não é cancelável, você vai precisar do evento onClientPlayerDamage para funcionar o cancelEvent.

    • Like 1

  2. Olá e bem-vindo ao fórum. Para manter o local organizado temos os respectivos sub-fóruns, por isso, sempre que criar um tópico por favor crie-o dentro do sub-fórum Portuguese / Português 

    Você pode encontrá-lo pela página inicial do fórum da forma mostrada abaixo:  

    MJDsq2U.png

    Isso evitará o trabalho que os moderadores têm diariamente de mover posts para os locais certos.  

    Sempre que criar um novo tópico, certifique-se que esteja na devida categoria. No sub-fórum Português ficam todas postagens na linguagem portuguesa, enquanto que fora da categoria Other languages só é permitido posts em inglês, por isso, sempre que responder um tópico, preste atenção a isso. 


  3. Onde esse evento é chamado? Mostre o código.
    Coloque uma saída de chat para ver se a função é executada:
     

    function Porte()
    outputChatBox("Função 'Porte' chamada!")
    local Porte = getAccountData ( source, "PorteHRPArma" ) or "Nao"
    if ( getPlayerMoney (source) >= 10000) then
    outputChatBox("@Porte: dinheiro >= 10000") 
    if Porte == "Nao" then
    	takePlayerMoney(source, 10000) 
    	setAccountData(source,"PorteArma",Porte + 1)
    	setAccountData(source,"PorteHRPArma","Sim")
    	setElementData(source,"PorteHRPArma","Sim")
    	exports.Scripts_Dxmessages:outputDx(source,"Você Comprou Um Porte de Armas por R$:10,000 ","success",source, true)
    else 
    	exports.Scripts_Dxmessages:outputDx(source,"Você Ja Possui Porte","error",source, true) 
    end 
    else
        outputChatBox("@Porte: dinheiro < 10000") 
    	exports.Scripts_Dxmessages:outputDx(source,"Você Não Possui DInheiro suficiente Para Comprar o Porte","error",source, true) 
    end 
    end 
    addEvent("Porte", true)
    addEventHandler("Porte", root, Porte) 

    Sempre use o comando debugscript 3 para ver erros/avisos.

    • Thanks 1

  4. 4 hours ago, Campos said:

    Ola, estou com problema do meu voice no all, em vez de escutar somente pessoas no voice local está dando pra escutar todos do servidor seja onde estiver. me ajude 

    Ola, estou com problema do meu voice no all, em vez de escutar somente pessoas no voice local está dando pra escutar todos do servidor seja onde estiver. me ajude 

     

    Porque o script já foi programado para transmitir a voz para todos, se quiser a versão local você precisa editar ou baixar o resource modificado.


  5. onPlayerCommand pode sobrecarregar além do esperado o servidor/arquivo de log; se for um server com 300 player pra cima, acho que o dono deve pensar bem antes de fazer um log com esse evento, embora eu nunca tenha feito testes então não sei qual as reais consequências.


    Se optar por utilizar: tenha em mente também que esse evento é chamado mesmo que tal comando não exista no jogo; fazer uma verificação com wasEventCancelled e definir um cooldown na execução para cada jogador.

    • Thanks 1

  6. MTA AC is detecting some ilegal program. Make sure that no cheat tools/programs are running.
    Trainer can be a cheat for MTA/GTA:SA or forbidden cheat tools.


  7. print e outputConsole mostram a saída no console (do servidor), se não tiver mostrando algo de errado tem aí.
    Faça uma output com a função iprint na tabela retornada em getElementData para verificar se tá tudo certo; se tiver como deve, vá para o próximo passo.
     

    4 hours ago, Mickey2 said:

    pois o getElementData está me retornando uma tabela de armas guardadas no veículo, e não dá pra armazenar tabelas em setAccountData certo? eu descobri isso ontem, então eu tentei ao invés de setar uma tabela na conta do usuário, simplesmente colocar uma string qualquer

    Não salva tabelas, mas você pode converter ela para JSON com a função toJSON. E quando puxar o valor com getAccountData usar fromJSON,

     

    4 hours ago, Mickey2 said:

    mesmo assim não funcionou, como se não estivesse armazenando nada na conta do usuário quando o mesmo quitasse

    Criar outputs em todo o processo da execução irá ajudar você a descobrir onde supostamente está o problema.
    Se você constatar que no onPlayerQuit não há problemas, pode fazer o seguinte: Depois do quit, abra a internal.db e verifique se o valor salvo referente a essa conta está como deveria.
    Se tiver tudo certo, provavelmente tem um problema no carregamento dos dados (getAccountData -> setElementData).

    • Thanks 1