DNL291

Other Languages Moderators
  • Content count

    1,772
  • Joined

  • Last visited

Community Reputation

47 Good

About DNL291

  • Rank
    Portuguese Section Moderator
  • Birthday 06/05/94

Details

  • Gang
    SAF
  • Location
    Brazil
  • Interests
    Programming/Scripting

Recent Profile Visitors

1,807 profile views
  1. Você poderia fazer assim, 1º passo: ter o controle de todos elementos dentro da colshape. Adicione na tabela os elementos que colidirem e remova quando sair da colshape (onClientColShapeHit/Leave). Aí vem aquele porém que você citou, e a solução é com "onClientRender". Acho que a melhor alternativa é usar getElementsWithinColShape mas ao mesmo tempo não seria muito bom pra performance dar loop na tabela a cada frame - só que é a única solução, o quão negativo deve ser, isso eu não sei porque depende do volume de jogadores/veículos no servidor e requer um teste pra saber mais precisamente se vale a pena. Talvez também tenham outras formas lidar com os outros veículos criados, por exemplo, um evento que é chamado quando cria um veículo por meio de um painel. Não entendi muito bem o uso dessas tabela no código, fora isso, vejo algumas coisas que precisam de otimização. Você está usando setElementCollidableWith mesmo quando não há necessidade, te recomendo usar uma verificação antes: if isElementCollidableWith( theElement, withElement ) then setElementCollidableWith( theElement, withElement, bool ) end O que você tá fazendo é quase o mesmo que isto: addEventHandler( "onClientRender", root, function() setElementCollidableWith( localPlayer, elem, false ) end ) Outro conselho também, sempre use variáveis locais sempre que puder. Também, muitos dizem que usar pairs é pouca coisa mais rápido pra executar do que ipairs (deve ser uma diferença realmente baixa).
  2. Erro guiSetText

    getControl por algum motivo retorna o valor booleano false que por sua vez causa esse erro quando usado em guiSetText.
  3. Erro guiSetText

    Use uma verificação pra saber se o elemento-GUI existe: function setControlNumber(...) local args = {...} local num = table.remove(args) if getControl(unpack(args)) then guiSetText(getControl(unpack(args)), tostring(num)) end end
  4. Open by marker help pls

    createMarker 'onClientMarkerHit' guiSetVisible showCursor
  5. HELP SYSTEM LIFE

    Type /debugscript 3 and make sure there's no errors with your code. Also, please show your code here so we can see what's wrong.
  6. Se você usa o resource scores, você pode salvar na conta usando getElementData(player, "deaths") e getElementData(player, "kills"); você vai precisar destas funções e eventos: addEventHandler "onPlayerQuit" "onPlayerLogout" getElementData setAccountData "onPlayerLogin" getAccountData setElementData
  7. No deathmatch with VehicelDamageProof

    You're welcome.
  8. No deathmatch with VehicelDamageProof

    Replace 'player' with 'localPlayer'.
  9. Devia ser isso mesmo que o Raynner disse, porque você usou getElementsByType um tempo antes (1 hora) de quando a função do setTimer deveria executar, e o recomendado é usar no mesmo momento da execução. Sobre o outro problema, lá no onClientMarkerHit, coloque uma condição hitElement == localPlayer, parece que por algum motivo, esse evento é acionado pra todos jogadores se me lembro bem.
  10. save skills

    Os argumentos em setPedStat estão errados e o uso de isGuestAccount não é necessário.
  11. Ninguém vai descobrir porque não abre se você não dar informações. O que acontece quando você abre o jogo?
  12. press h to open marker

    Use addEventHandler + "onClientRender" when player hits the marker in order to keep the text visible. And removeEventHandler when player leaves the mark or when player opens the window.
  13. sorteio kit armas no bau

    Como não conheço muito bem como o gamemode DayZ funciona, não sei como essa parte do setElementData deve funcionar. De qualquer forma, mostre o código aqui se puder.
  14. press h to open marker

    If you don't want it to work with marker, then just remove it from the code and all codes related to the marker as well.
  15. press h to open marker

    bindKey( "h", "down", function() if isElement(ammugui) and guiGetVisible(ammugui) then destroyElement( ammugui ) showCursor( false ) elseif not isElement(ammugui) then startSale() end end ) Try that.