-
Posts
515 -
Joined
-
Last visited
-
Days Won
32
androksi last won the day on December 20 2021
androksi had the most liked content!
About androksi
- Birthday 23/12/1999
Member Title
- Portuguese Section Moderator
Details
-
Gang
CHASING STAR
-
Location
Brasil
-
Occupation
Scripter
-
Interests
Programming, art, nature & music
Recent Profile Visitors
5,534 profile views
androksi's Achievements
-
androksi changed their profile photo
-
Colocar todos os mods no mtaserver.conf
androksi replied to SciptNovato's topic in Programação em Lua
E aí, @SciptNovato! Sim, tem como você gerar uma lista pronta com o nome de todos os recursos do seu servidor. Mas, para uma melhor organização, considere usar um nome ou sigla antes, fica muito mais fácil e você tem um controle maior. Daí basta criar um recurso para ligar todos de uma só vez. Com considere usar um nome ou sigla antes eu quis dizer isto, por exemplo: sn_vehicles. Sempre separando por underline, aquele traço inferior. -
Dúvida: Script para aumentar velocidade dos disparos.
androksi replied to XablauzinFT's topic in Programação em Lua
E aí, @XablauzinFT. Tudo beleza? Você pode usar a função setWeaponProperty para obter esse resultado. Há algumas propriedades, você irá utilizar as seguintes: anim_loop_start anim_loop_stop ...para diminuir o tempo entre um tiro e outro. Se não me engano, essas são as únicas propriedades que você necessita. P.S: irá mudar globalmente, ou seja, para todo o servidor, todos os players. Há uma forma de realizar isso individualmente, mas você teria de fazer bastante modificações. -
Sobre o código acima, prefira verificar se o elemento que acertou o marcador foi realmente um player, caso contrário irá dar um aviso no debug. Para isso, use a função getElementType. Para fins de boas práticas de programação, tente sempre colocar bons nomes em variáveis, parâmetros de funções e outros — thePlayer não faz sentido ali, pois o que irá tocar será um elemento, seja ele um player, veículo, objeto, tanto faz. Altere para hitElement.
-
Erro com getElementData(targetPlayer, "ID")
androksi replied to SciptNovato's topic in Programação em Lua
E aí, @SciptNovato. Belezinha? Quando o código é server-side, o elemento do player precisa estar vindo de algum lugar para o servidor reconhecer. Aquele todo seu primeiro código (para referência, veja abaixo) não faz sentido nesse caso — playerSource, targetPlayer e thePlayer não existem ali. Eles precisam estar dentro de alguma função que o player faça sentido. Além disso, prefira usar variáveis locais em vez de globais, irá poupar recursos do seu servidor e irá manter o escopo global do seu servidor limpo. Jogador1 = getPlayerName(playerSource) Jogador2 = getPlayerName(targetPlayer) Jogador3 = getPlayerName(thePlayer) IP1 = getPlayerIP(playerSource) IP2 = getPlayerIP(targetPlayer) IP3 = getPlayerIP(thePlayer) Serial1 = getPlayerSerial(playerSource) Serial2 = getPlayerSerial(targetPlayer) Serial3 = getPlayerSerial(thePlayer) ID1 = getElementData(playerSource, "ID") ID2 = getElementData(targetPlayer, "ID") ID3 = getElementData(playerSource, "ID") players = getElementsByType("player") -
E aí, @Guilherme Mendes! Primeiramente, remova aquele else e return false. Segundamente, o i é referência de cada entrada da tabela de veículos, enquanto o v é o elemento do veículo. Um exemplo mais prático: -- A função getElementsByType retorna uma tabela ordenada de elementos. Ela é semelhante a esta: local vehicles = { [1] = vehicle, [2] = vehicle, [3] = vehicle } -- E assim por diante, dependendo de quantos veículos há no servidor. -- Então, quando fazemos um for loop, a primeira coisa que ele irá pegar é o índice (index), enquanto a segunda é o seu valor. for index, value in pairs(vehicles) do -- Index: 1, 2, 3... -- Value: cada elemento 'vehicle' mostrado naquela tabela de exemplo. -- Como boas práticas de programação, é bom deixar claro o que cada coisa recebe. Então em vez de 'value', eu colocaria 'vehicle'. -- Já que é um carro. end
-
@carlinloko — para cada dano que o player tomar, você pode enviar para o servidor, sem problemas algum. Isso não irá acarretar problemas de desempenho ou qualquer coisa relacionada. Poderia ter 10 players atirando em outro, mas aquele que atirar por último pra matar mesmo, e quando processar essas informações, é que vai de fato contar quem o matou. Pode não ter sido essa sua dúvida. Me diga se eu estiver errado.
-
Gustavo Freire started following androksi
-
E aí, @Muskzeera, de boa? Você precisa obter as informações sobre o dano dado de acordo com quem tá atirando, e não recebendo os tiros. Para isso, você deve usar o evento onClientPlayerDamage, obter os dados que vêm dos parâmetros da função e enviá-los para o servidor, através da função triggerServerEvent.
-
E aí, @L0KZERATV! O seu tópico está agora trancado para futuras respostas, pois ele contém poucas informações sobre o que o comando citado irá fazer e causar no PC do usuário que usá-lo. Por favor, numa próxima vez, adicione detalhes sobre a execução de um comando.
-
Como faço pra deixar o headshot instantaneo
androksi replied to dextzone's topic in Programação em Lua
E aí, @dextzone! Para fazer isso, você precisa levar em consideração o que a pessoa que atira está vendo. Neste caso, é feito o uso do evento onClientPlayerDamage. Pegando as informações que vêm desse evento, basta mandá-las para o servidor, através de um triggerServerEvent. Só tome cuidado pois você terá de cancelar esse evento, usando cancelEvent. Isso significa que todos os jogadores ficarão invencíveis, mas ainda ocorrerá o tratamento dos dados lá no servidor. Sendo assim, haverá uma perfeita sincronia. Qualquer dúvida, basta deixá-la aqui! -
Help sniper mta dayz ( me ajudem pfv)
androksi replied to Kelvenbrryan's topic in Programação em Lua
E aí, @Kelvenbrryan! Corrigi o código pra você. local alpha = 255 bindKey ( "aim_weapon", "both", function ( _, state ) if getPedWeaponSlot ( localPlayer ) == 6 then if ( state == "down" ) then alpha = 0 elseif ( state == "up" ) then alpha = 255 end for _, v in ipairs ( getElementsByType ( "object", root, true ) ) do if isElementAttachedToBone ( v ) then local id = getElementModel ( v ) if ( id == 2584 ) then setElementAlpha ( v, alpha ) setElementDimension(v, alpha == 0 and 9999 or getElementDimension(localPlayer)) end end end end end Peço que por favor, nas próximas vezes que postar algo, use a ferramenta Code (<>) e indente o seu código. -
E aí, @ajobr! Não funciona pois a função que você usou para criar o veículo (createVehicle) não retorna uma instância. Você precisa usar desta forma: local vehicle = Vehicle(411, Vector3(0, 0, 3)) vehicle:setColor(255, 0, 0) Agora, usando a classe Vehicle, você está apto a usar todos métodos disponíveis. Test: cat.zip
-
BoltzDev32 started following androksi
-
E aí, @BruXo! Antes tarde do que nunca, você pode realizar essa checagem usando a função engineGetVisibleTextureNames. Ela retornará uma tabela. Sendo assim, se o tamanho dela for igual a zero, quer dizer que o player usou aquela opção. Exemplo: local screenWidth, screenHeight = guiGetScreenSize() addEventHandler("onClientRender", root, function() if #engineGetVisibleTextureNames() == 0 then dxDrawRectangle(0, 0, screenWidth, screenHeight, tocolor(0, 0, 0, 255)) dxDrawText("Desabilite a função de remover os gráficos.", 0, 0, screenWidth, screenHeight, tocolor(255, 255, 255, 240), 1.5, "unifont", "center", "center") end end) Assim que ele ativar aquela opção, a tela ficará preta e mostrando aquela mensagem encontrada no código acima.
-
E aí, @koshe! No terceiro parâmetro da função guiGridListAddColumn você define a largura da coluna. Pode ser um valor real de 0 a 1. Tente diminuir o do ID para 0.15, o nome do item para 0.48, preço e quantidade para 0.4. Foi apenas um chute. Vá configurando e testando novos valores.
- 6 replies
-
- português-forum
- painel
-
(and 2 more)
Tagged with:
-
É Possível pegar todos nomes de zona?
androksi replied to KiritoAguiar's topic in Programação em Lua
E aí, @KiritoAguiar! Fiz um algoritmo pra você, e também já deixarei a lista, em formato de tabela, com todas as localizações. Basicamente, o que o meu algoritmo vai fazer, é passar por cada parte do mapa e, conforme o nome da zona muda, ele salva na tabela. No final, ele gera um arquivo. Se quiser ter ainda mais precisão nos nomes, diminua a velocidade. Você pode fazer isso alterando o valor da variável speed. Quanto menor o valor, demorará mais. Só um aviso: durante o processo, ele requer um alto uso de processamento. Algoritmo: Tabela gerada: -
Carlos Dorelli started following androksi
-
O tutorial de hoje é sobre tabelas! Tabelas irão facilitar a sua vida na hora de programar. Além de economizar dezenas de linhas de código, ele ficará muito mais fácil de ser lido por outras pessoas, e também por você mesmo, depois de um certo tempo sem ter contato com o código. Não só essas coisas, como irá te abrir um mar de possibilidades. Clique no texto abaixo para ir diretamente ao site onde o tutorial está. Optei por escrevê-lo no Gist (do GitHub), como uma forma de organizar um pouco melhor. Ir para o tutorial