Jump to content

Pedrow

Members
  • Posts

    13
  • Joined

  • Last visited

Details

  • Gang
    None
  • Location
    Brazil
  • Occupation
    Developer
  • Interests
    Development

Recent Profile Visitors

507 profile views

Pedrow's Achievements

Square

Square (6/54)

4

Reputation

  1. E aí, você não especificou qual linha é a 44, mas este erro acontece pelo fato de você comparar um numero com um valor booleano, que normalmente acontece ao chamar funções e não obter sucesso.
  2. E aí, para fazer isso, você precisaria de um script de editbox, para que habilite o teclado para digitação.
  3. E aí @ton1nho, perceba que no argumento para mudar a cor do retângulo, você colocou apenas tocolor(155) sendo que o tocolor pede 3 argumentos obrigatórios, sendo eles (r, g, b), para quando a voz ficar ativada ficar verde, deverá ficar assim: dxDrawText(""..ID.." - VOZ ATIVADA - FPS: 70 -", x*1600, y*752, x*1193, y*775, tocolor(0, 255, 0), 1.00, "default", "right", "top", false, false, false, false, false) E para ficar vermelha quando desativada: dxDrawText(""..ID.." - VOZ DESLIGADA - FPS: 70 -", x*1600, y*752, x*1193, y*775, tocolor(255, 0, 0), 1.00, "default", "right", "top", false, false, false, false, false)
  4. E aí @ABR, para fazer isso, você pode utilizar o loop for em uma tabela armazenando as acls que serão permitidas de executar o comando, exemplo: local allowedAcls = {'PCC', 'CV', 'NH'} function isPlayerInTableAclGroup(player, groupsTable) local playerAccountName = getAccountName(getPlayerAccount(player)) for k = 1, #groupsTable do local indexedGroup = groupsTable[k] if isObjectInACLGroup('user.' .. playerAccountName, aclGetGroup(indexedGroup)) then return true end end return false end addCommandHandler('dominar', function(player) local acc = getPlayerAccount ( player ) if acc and not isGuestAccount ( acc ) then local accName = getAccountName (acc) if isPlayerInTableAclGroup(player, allowedAcls) then triggerClientEvent (player, 'MST.sendPlayerNotification', player, 'Você dominou o local com sucesso', 'success') triggerClientEvent (player, 'MST.sendPlayerNotification', root, '(Aqui seria a fac que estpa dominando) está dominando o Jacarézinho', 'warning') end end end) OBS: Atente-se a indentação do seu código, para facilitar a leitura do código, você pode ver como indentar seu código clicando aqui.
  5. E aí @Dandnix, em primeiro lugar, arrume a indentação do seu código, tornando mais fácil a leitura do mesmo, para facilitar o trabalho de quem te ajudar e até mesmo facilitar a sua leitura do seu próprio código. Você pode ver como faz isso com um tutorial do @Lord Henry: Clique aqui para acessar o tutorial.
  6. E aí @Cabrito, para fazer isso, você deve verificar se o player está em determinada acl, utilizando isObjectInAclGroup ou até isPlayerInAcl: https://wiki.multitheftauto.com/wiki/IsPlayerInACL, caso a verificação seja verdadeira, coloque para apenas esse player poder ver o nome do remetente da mensagem enviada.
  7. E aí @Archz, para pegar um elemento pelo id, você pode usar a própria função "getPlayerID" do seu sistema de ID, assim, ela retorna um elemento do player com o id inserido (caso seja válido), mas há outras formas mais viáveis para se fazer.
  8. E aí @Ferreira, detalhe mais o seu problema e mande apenas a parte do código em que precisa de ajuda, sendo melhor para quem irá te ajudar.
  9. Ea í, @MKZ não sei como você fez, mas para quando o player morrer e quer tirar um elementData dele, utilizamos onPlayerWasted mesmo. Pode fazer desta forma: addEventHandler('onPlayerWasted', root, function() if not getElementData(source, 'onProt') then -- Se o player que morreu não ter o elementData de key `onProt` não executará. return false end removeElementData(source, 'onProt') -- Remove o elementData de key `onProt` do player. end)
  10. E aí, @Lipee Lima, para organizar uma tabela em uma certa ordem, você pode utilizar a função table.sort.
  11. local antiflood = { } local currentflood = { } local timer = { } mutado = false function antiFlood( mtaz ) if mutado then outputChatBox ("Você está mutado, aguarde um pouco para enviar mensagens novamente.", source, 0, 255, 0, true) cancelEvent( ) return false end plr_source = source if isTimer( timer[source] ) then killTimer( timer[source] ) end if not currentflood[source] then currentflood[source] = 0 elseif currentflood[source] <= -1 then currentflood[source] = 0 end if currentflood[source] >= 3 then setPlayerMuted( source, true ) outputChatBox ("Você foi mutado, aguarde 1 minuto para enviar mensagens novamente!", source, 0, 255, 0, true) mutado = true else if antiflood[source] == true then cancelEvent() currentflood[source] = currentflood[source] + 1 outputChatBox("Aguarde 1 segundo!", source, 255, 0, 0, true) else currentflood[source] = currentflood[source] - 1 end antiflood[source] = true timer[source] = setTimer ( function() antiflood[plr_source] = false end, 900, 1 ) end end addEventHandler( "onPlayerChat", root, antiFlood ) Você colocou um setTimer fora da função atrelada ao evento "onPlayerChat", e também, o "chatbox" não é um control em si, e sim um comando, da maneira acima, se a variável "mutado" for verdadeira, a mensagem que o player enviar será cancelada e enviará um outputChatBox o avisando que ele está mutado.
×
×
  • Create New...