Jump to content

DNL291

Moderators
  • Posts

    3,875
  • Joined

  • Days Won

    67

Everything posted by DNL291

  1. thePlayer na linha 22 irá retornar nil; o valor não foi definido em nenhum lugar. Você deve usar o primeiro parâmetro do evento para obter o hitElement (elemento que encostou na marker). Além disso, vai precisar também verificar se esse elemento é um player, faça isso com getElementByType(source) == "player" em uma condição if. E nunca use source como parâmetro; este é uma variável predefinida do MTA e que dependendo da ocasião pode gerar erros no seu código. Fora esses problemas na sua função, você também irá precisar adicionar o evento para cada marker que for criada, e isso não vai acontecer pois o loop está armazenando as markers numa só variável. Isso vai fazer com que só a última marker do loop continue salva. Uma solução seria o seguinte código: local tMarkers = {} function markerInicial (x,y,z,Painel_droga) for i, v in ipairs (markers) do tMarkers[ createMarker (v[1], v[2],v[3], "cylinder", 255, 0, 157, 50) ] = i -- armazenar o índice referente ao da tabela dos locais end end Função Open_Painel: function Open_Painel (hitElement) if tMarkers[source] and getElementType(hitElement) == "player" then if isPlayerInACL(hitElement, "trafico") then triggerClientEvent(hitElement, "Abrir_Painel", hitElement) else outputChatBox("Você não faz parte de nenhuma gang!", hitElement) end end end addEventHandler("onMarkerHit", resourceRoot, Open_Painel) -- adicionar esse evento só para markers neste resource Edit: O erro que você menciona, ocorre porque a linha do evento "onMarkerHit" irá chamar assim que ligar o resource, e nesse momento o valor da variável ainda não foi definido; só será definido quando a função 'markerInicial' for chamada. Edit #2: Você não precisa criar a sub-tabela com uma variável na tabela 'markers', assim já basta: markers = { {352.43173217773, 2540.5510253906, 15.72790145874}, -- sub-tabela 1 {x, y, z}, -- sub-tabela 2 } Isso na verdade faria seu loop com ipairs falhar, já que este é um loop para índices numéricos.
  2. Moved. @Baguera Next time remember to post in Scripting section: https://forum.multitheftauto.com/forum/71-scripting/
  3. 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: 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. @Natan[019]
  4. O erro tem origem no argumento que é passado na função penz_darabolas, procure pelos usos dessa função pelo código, e depure o valor do argumento passado. Linhas 199 e 233 é onde tem a função.
  5. Olá, seu curso está aqui: Você precisa aprender correndo atrás vocês mesmo, esse tópico tem links que irão te ajudar.
  6. Movido para Offtopic - lembre-se de postar lá da próxima vez.
  7. @felipebaidoloko Não esqueça que o local para perguntas de scripting é https://forum.multitheftauto.com/forum/127-programação-em-Lua/ Se você postar no local errado, o moderador terá o trabalho de ter que mover depois.
  8. Não. O servidor te baniu por um motivo e se quiser recorrer é entre você e o servidor; mudar serial pode levar a consequências maiores, se é que é fácil mudar.
  9. getPlayerName já retorna o nick do joagdor, não precisa salvar em elementData. @Arantes faça com esta lógica: local NickBoxText = guiCreateEdit(...) local vNick = guiGetText(NickBoxText) if (haveOtherNick(vNick)) then outputChatBox ("Já tem alguém com esse nome online.") else setElementData ( localPlayer, "playername", vNick ) end
  10. Skins você poder ver nesse resource como funciona: https://community.multitheftauto.com/index.php?p=resources&s=details&id=16502 Nunca testei, me parece que ele muda as texturas com shader.
  11. Jogar o getElementData direto e com a divisão é pedir por possíveis warnings no debug. Uma prática boa é você usar o operador lógico or para caso o primeiro resultado não for bem-sucedido. No entanto, se não for possível prosseguir sem o resultado da elementData, você pode fazer isto: local materiais = getElementData(localPlayer, "Materials") if materiais then setElementData(localPlayer, "pPecas", getElementData(localPlayer, "Materials")/10) end Se puder utilizar outro valor em caso de falha: local materiais = getElementData(localPlayer, "Materials") or 0 setElementData(localPlayer, "pPecas", materiais/10) Como já foi dito acima, é sempre melhor optar por tables em vez de elementData, mas claro que há um preço por isso, que é a dificuldade em fazer com tabelas; elementData é bem mais newbie-friendly. Quanto ao seu código, te recomendo a nos dizer qual tarefa deseja alcançar com esse código, pode ser que não seja necessário estar sincronizando esses valores com todo o servidor, assim usando mais tráfego de rede, e é isso que o setElementData estará fazendo.
  12. Uma forma é um loop em getElementsByType "team" e salvá-los seja numa conta do servidor, banco de dados ou de outra maneira. O carregamento com o evento onResourceStart, em seguida obter os teams e criar com createTeam.
  13. Você pode utilizar a função setVehicleHandling para isso, essa irá aplicar no elemento-veículo; se quiser aplicar em um modelo específico use setModelHandling Testar as handlings com o hedit in-game irá te ajudar como funciona essas propriedades.
  14. 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: 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.
  15. Recomendo assistir essa playlist: https://www.youtube.com/playlist?list=PLOgWUGOesjtSo8Hx7gucHfY4E3KwtnoZm loop for: https://www.youtube.com/watch?v=W_NgkjPyIck&list=
  16. Vai depender do mod que você colocar no jogo, mas em geral, o MTA não permite um GTA com modificações
  17. DNL291

    Random crashes

    If the server is really using all that amount of vram this is crazy .. What server you're facing these issues? (If it's a specific server) @Kiztrum Type the command showmemstat in that server and send here a screenshot. This may also be due to another program requiring a high use of vram. It depends on the server you are playing on, from what you said, it can be abuse and misuse of things in general on that server. If you don't have this kind of issue on other servers, it definitely has to do with a particular server - in that case, your only option is to play on a better server, unless you want to face these issues again and again.
  18. Nada te impede de te fazer isso, apenas tenha em mente que para uma função/variável poder ser acessada por outro arquivo de script ela não pode ser local.
  19. 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: 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. @JoaoRlk O MTA está detectando um trainer (cheat). Não utilize programas maliciosos ou você pode ser banido do jogo.
  20. 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: 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.
  21. Please make sure you have a clean and unmodified version of GTA:SA.
  22. Talvez seja só um warning que não afeta o funcionamento do script. Coloque uma verificação if isTimer(...) then killTimer(...) end.
  23. INSERT INTO : https://www.w3resource.com/sqlite/sqlite-insert-into.php
×
×
  • Create New...