MaligNos

Members
  • Content Count

    262
  • Joined

  • Last visited

Community Reputation

65 Popular

2 Followers

About MaligNos

  • Rank
    Peon

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. MaligNos

    Alugar bike por 10 minutos

    Dei uma olhada rápida (talvez tenha mais erros), deixo abaixo melhorias: -- Linha 17: table.thePlayer = setTimer( function(tempPlayer) removeTempOwner(tempPlayer) exports.dxmsgs:outputDx(tempPlayer, "Seu tempo para usar as bikes acabou.", "warning") end, 10000, 1, thePlayer) -- Linha 70: local tempVeh = getPedOccupiedVehicle(thePlayer) if tempVeh then for _, v in ipairs(veh) do if (v == tempVeh) then removePedFromVehicle(thePlayer) break end end end -- Linha 77: addEventHandler( "onPlayerQuit", root, function() if table.source then if isTimer(table.source) then killTimer(table.source) end table.source = nil end end)
  2. MaligNos

    Script marker remover carro

    Troque sua linha 11, por: destroyElement(getPedOccupiedVehicle(player))
  3. MaligNos

    [VÍDEO] Tudo sobre este fórum

    Muito bom! Gostei da dublação: "SOCORRO AJUDAAAAA" "Responda urgenteeeee" sensacional.
  4. Exemplo do LordHenry deve funcionar, pois com onClientChatMessage (lado cliente), mensagens nativas também são captadas. “This event is triggered when any text is output to chatbox, including MTA's hardcoded messages.” by: WIKI
  5. MaligNos

    Contagem de rows mysql

    Pensando em otimização de memória, eu utilizaria a própria função COUNT do SQL: local qh = dbQuery (connection, "SELECT COUNT(*) AS TOTAL FROM table_name") local result = dbPoll (qh, -1) local rows = result[1]["TOTAL"]
  6. É, não muito! Eu acho que ele quer executar o comando /uber quando clicar em um botão: function ChamarTaxista () executeCommandHandler ( "uber", client ) addEvent( "ChamarOTaxista", true ) addEventHandler( "ChamarOTaxista", root, ChamarTaxista) addCommandHandler ( "uber", function(player) -- código uber end end * Precisa conceder privilégios de admin ao resource na ACL
  7. MaligNos

    Ajuda Especificar o Player no Lado Server

    Achei meio confuso seu código... Aparece algum erro no /debugscript 3 ? Esse "funcionou2" executou quando testou ? Quem chama o zm_onZoneLiberated ?
  8. MaligNos

    como eu uso o triggerClientEvent

    O seu código está muito repetitivo, como você tem interesse em aprender, deixo abaixo um código otimizado usando tabelas, com ele fica muito mais fácil fazer manutenção no código. local armas = { ["brinquedo"] = {id = 12, municao = 1, preco = 500, nome = "Brinquedo"}, ["colt"] = {id = 12, municao = 300, preco = 1400, nome = "Colt 45"}, ["deagle"] = {id = 12, municao = 300, preco = 2000, nome = "Deagle"}, ["shotgun"] = {id = 12, municao = 300, preco = 2300, nome = "Shotgun"}, ["uzi"] = {id = 12, municao = 300, preco = 3200, nome = "Uzi"}, ["ak"] = {id = 12, municao = 300, preco = 4000, nome = "AK-47"}, ["sniper"] = {id = 12, municao = 300, preco = 5200, nome = "Sniper"}, ["rifle"] = {id = 12, municao = 300, preco = 9200, nome = "Rifle"} } markerWeapon = createMarker(2678.94214, -1430.34009, 15.25723, "cylinder", 1.5, 25,25,112,200) function msg(hitElement, matchingDimension) if getElementType(hitElement) == "player" and matchingDimension then outputChatBox("Olá, AMIGO,SOU DONO DO MERCADO NEGRO SE NÃO VEIO COMPRAR ALGO VAZA!.", hitElement, 255,255,255,true) for cmd,tbl in pairs(armas) do outputChatBox("/"..cmd.." = #727272 "..tbl.preco, hitElement, 255,255,255,true) end end end addEventHandler("onMarkerHit", markerWeapon, msg) function pegarArma(player, cmd) if not armas[cmd] then return end if isElementWithinMarker(player,markerWeapon) then local acc = getPlayerAccount(player) if acc and not isGuestAccount(acc) then if isObjectInACLGroup("user."..getAccountName(acc), aclGetGroup("WP")) then if getPlayerMoney(player) >= armas[cmd].preco then takePlayerMoney(player, armas[cmd].preco) giveWeapon(player, armas[cmd].id, armas[cmd].municao, true) outputChatBox("Você comprou uma "..armas[cmd].nome.." com "..armas[cmd].municao.." munições.", player, 255,255,255,true) else outputChatBox("Você não tem dinheiro suficiente para comprar.", player, 255,0,0,true) end end end end end for cmd,tbl in pairs(armas) do addCommandHandler ( cmd, pegarArma ) end * não testado
  9. Seguindo a lógica que imaginei seria utilizado algo como fft[ 512 ] no lugar do fft[ 1 ]. Mas se está pegando como queria então não sei de mais nada kkk Pois imaginava que conforme fosse aumentando o iBand(n), juntamente com o fft [ n ], fosse perdendo frequências cada vez mais altas
  10. Sim, a questão de conseguir separar o vocal das batidas é algo bem complexo. Sugeri ali um meio de conseguir trabalhar apenas com as frequências mais altas (pode ter voz), pois ali no exemplo em que ele coloca 2 (iBands) ocorre essa “junção”, por isso o ícone de auto-falante dele mexe mesmo com frequências não tão altas.
  11. Dei uma lida na wiki e vi que ele já ordena por frequência: da mais baixa, para a mais alta (de determinado quadro em execução do som): “A fast fourier transform generates a table of all the frequencies of the current audio frame which starts at the bass end of the spectrum to mids to highs in that order“ - by Wiki Possivelmente se você fizer isso: local tbl = getSoundFFTData ( som, 512 ) --retorna o total de samples/2 = 512/2 => 256 print(tbl[256]) Ele retornará o valor mais alto dessa amostra de 512 “faixas”. Agora, quando a gente define o iBands, se você usar um valor baixo, ex: 2, ele “junta” essas 512 faixas em apenas duas, e por isso dá essa “mistura” da batida com a voz, pois foram colocadas em um mesmo conjunto (possivelmente metade com frequência mais baixa, e outra com a mais alta). Se eu fosse você, eu tentaria aumentar o número de iBands e utilizaria esse valor definido para trabalhar apenas com as frequências mais altas. p.s. Existe a função getSoundWaveData que talvez dê também para usar.
  12. MaligNos

    Exite outra maneira ?

    wordsCopy = guiCreateMemo(9, 32, 175, 196, janela.memo, false, wnd) btnExit = guiCreateButton(10, 280, 174, 40, "EXIT", false, wnd) btnCopy = guiCreateButton(9, 233, 175, 37, "COPY", false, wnd) elementos.btns[btnExit] = {wnd,"exit"} elementos.btns[btnCopy] = {wnd,"copy",wordsCopy} --- addEventHandler ("onClientGUIClick", resourceRoot, function (button, state, absoluteX, absoluteY) if (elementos.btns[source]) then if (elementos.btns[source][2] == "copy") then local title = guiGetText(elementos.btns[source][1]) local memo = guiGetText(elementos.btns[source][3]) -- Exemplo copiando os dois setClipboard ( title.." : "..memo ) end end end)
  13. MaligNos

    [AJUDA] Uso de Vector3

    JSON passa longe de ser uma linguagem de programação. Ele é um formato hierárquico de dados (como XML) muito utilizado no armazenamento e transferência de dados @Vazern vamos supor que eu tenha o seguinte arquivo: info.txt ou info.json { "player1" : { "nick" : "zLastink", "mail" : "exemple@email.com", "pass" : "1234", }, "player2" : { "nick" : "Jonnut", "mail" : "exemple2@email.com", "pass" : "4321", } } Eu consigo facilmente carrega-lo como uma tabela no MTA: file = fileOpen("info.txt") json = fileRead(file, fileGetSize(file) tbl = fromJSON(json) print(tbl["player1"]["nick"]) print(tbl["player2"]["nick"]) fileClose(file) E o mesmo pode ser feito transformando uma tabela do MTA em JSON (toJSON) e salvando como se fosse uma "string".
  14. Isso não é minha área, não sei nem o que é iSamples ou iBands . Mas creio que com essas funções não tem essa separação de batida e voz, provavelmente seja por frequência/amplitude, ou seja, em diferentes sons tais valores serão alterados, não tendo um padrão específico para conseguir diferenciar a voz de uma batida. Imagino que para conseguir fazer o que quer, seja necessário estudar muito sobre acústica, além de deter conhecimento para conseguir implementar algum algoritmo bem complexo que faça essa identificação (ou encontrar algum).
  15. MaligNos

    Ajuda Com Script Carro Vip

    addEventHandler("onPlayerQuit", root, function() if (veh[source] and isElement(veh[source])) then destroyElement(veh[source]) end end )