Jump to content

Lord Henry

Other Languages Moderators
  • Posts

    3,972
  • Joined

  • Last visited

  • Days Won

    179

Everything posted by Lord Henry

  1. Cara, se vc não sabe fazer painel em DX, faça em CEGUI pois é mais fácil.
  2. Na função setPlayerhlpp, o parâmetro thePlayer agora é uma account. Pois você definiu lá em cima o receiver como sendo uma conta e não como um jogador.
  3. Utilize essa função para obter jogadores que possuem determinada accountData. function getPlayersFromAccountData (data) if (not data) then return false end -- Se não tiver data no parâmetro, retorna false. local dataPlayers = {} -- Inicia uma table vazia. for i, player in ipairs (getElementsByType ("player")) do -- Para cada jogador conectado no servidor, faça: if (getAccountData (getPlayerAccount(player), data)) then -- Se o jogador possui a accountData específica, então: table.insert (dataPlayers, player) -- Adiciona esse jogador na table dataPlayers end end return dataPlayers -- Retorna uma lista de jogadores que possuem a accountData específica. Retornará uma lista vazia se ninguém possuir tal accountData. end E depois no seu script, passe um loop por essa tabela, mandando a mensagem pra cada jogador nela. local helpers = getPlayersFromAccountData ("Helper") if (#helpers > 0) then -- Se existe algum jogador com essa accountData, então: for i, player in ipairs (helpers) do -- Para cada jogador na lista, manda isso no chat dele: outputChatBox ("Mensagem exclusiva para helpers.", player) end end
  4. Coloque isso no seu script, fora da função. function getAccountFromID (id) if (tonumber (id)) then for i, acc in ipairs (getAccounts()) do if (getAccountID (acc) == tonumber (id)) then return acc end end end return false end E depois lá na sua função, troque o getAccountID por getAccountFromID
  5. addCommandHandler ("novasenha", function (theStaff, cmd, accname, pass) if (isObjectInACLGroup ("user."..getAccountName (getPlayerAccount (theStaff)), aclGetGroup ("Console"))) then -- Se o jogador que executou o comando estiver na ACL Group Console, então: if (hasObjectPermissionTo (resource, "function.setAccountPassword", false)) then -- Se este resource possui permissão para alterar senhas de contas, então: if (accname and pass) then -- Se o jogador informou um login e uma senha após o comando, então: local acc = getAccount (accname) -- Obtém a conta com este login. if (acc) then -- Se existe uma conta com este login, então: if (setAccountPassword (acc, pass) then -- Se foi possível mudar a senha dessa conta, então: outputChatBox ("Senha da conta '"..accname.."' foi alterada para '"..pass.."' com sucesso.", theStaff, 0, 255, 0) -- Manda isso pro jogador que executou o comando. else -- Se não foi possível mudar a senha da conta, então: outputChatBox ("Não foi possível alterar a senha da conta especificada.", theStaff, 255, 0, 0) -- Manda isso. end else -- Se não existe uma conta com o login informado, então: outputChatBox ("Conta "..accname.." não existe.", theStaff, 255, 0, 0) end else -- Se o jogador não informou um login ou não informou uma senha após o comando, então: outputChatBox ("Erro de sintaxe: /novasenha <login> <senha>", theStaff, 255, 0, 0) end else -- Se este resource não tem permissão para mudar senhas de contas, então: (pode ser resolvido dando permissão Admin ao resource) outputChatBox ("ERRO: Resource "..getResourceName(resource).." precisa de acesso ao 'function.setAccountPassword' para funcionar.", theStaff, 255, 0, 0) end else -- Se o jogador que executou o comando não estiver na ACL Group Console, então: outputChatBox ("Acesso negado.", theStaff, 255, 0, 0) end end) Tá ae. De nada.
  6. Sim, é possível. Mas quando você se refere a Console, você se refere ao Server Console (aquele prompt de comando)? Ou você se refere a alguém com permissão de Console (usuário que está na ACL Group Console)? Pois eles são tratados de maneiras diferentes. Um é um elemento console e o outro é um jogador com permissão de console. Ambos podem realizar comandos.
  7. @AlvesMTA o código citado serve para fechar as portas de um veículo quando alguém entrar nele.
  8. Antes não estava, o tópico foi movido para cá pois você havia postado no local incorreto. Ele quis dizer pra você postar nessa seção na próxima vez, para não precisar mover o tópico novamente. Sobre a sua pergunta em si, você precisa de um resource de superman no servidor.
  9. Nesse caso abaixo, seu amigo que estava dirigindo viu a porta aberta também? Ou ela só fica aberta no seu cliente?
  10. Um resource utilizado para anexar coisas nos ossos do personagem (por exemplo na mão, nas costas, na cabeça) é o Resource:Bone_attach.
  11. Crie a janela fora da função e logo em seguida torne ela invisível com guiSetVisible. Dai dentro da função vc apenas mostra/oculta essa janela com guiSetVisible também.
  12. Não vai funcionar com ACL Group, pois é um script client-side.
  13. Tópico movido para a seção OffTopic. Mesmo caso do tópico do outro membro: Solicitações de Staffs devem ser feitos na seção Offtopic e não na seção de Servidores para Jogar. Para postar na seção de Servidores para Jogar, é necessário que o servidor tenha um IP público e acessível para jogar.
  14. Tópico movido para Offtopic. Para ser considerado servidor, é necessário possuir um IP público e acessível. Caso contrário, é apenas um projeto e portanto não se encaixa na seção "Servidores pra jogar".
  15. Utilize o botão <> do fórum para postar códigos. Não cole direto no texto. E também não abuse no uso do Caps Lock. Veja as regras do fórum aqui:
  16. @Baguera você está usando elementData para especificar se um jogador é admin ou não? Isso é bem fácil de burlar e nada otimizado. Mas supondo que seja isso, no caso se o jogador TEM a data "aduty" ele deve ser considerado admin? Ou é ao contrário? Se ele NÃO TEM essa data, ele é admin?
  17. Ele está reclamando que thePlayer não é um jogador. Isso acontece quando vc colide no marker com um veículo ou qualquer outro objeto que não seja um jogador. Em vez disso, faça a função assim: function moveGate (hitElement, matchingDimension) if (getElementType (hitElement) == "player" and matchingDimension) then -- Se o elemento que colidiu no marker for um jogador e ele estiver na mesma dimensão que o marker, então: if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount (hitElement)) , aclGetGroup("BOPE")) then -- Se o jogador que colidiu no marker estiver na ACL Group BOPE, então: moveObject (gate, 3000, 1810.9, -1891.2, 9.6) -- Move o portão para essa posição. end end end addEventHandler ("onMarkerHit", marker, moveGate)
  18. setWorldSoundEnabled (20, false, true) -- Vozes de Peds. setWorldSoundEnabled (21, false, true) setWorldSoundEnabled (22, false, true) setWorldSoundEnabled (23, false, true) setWorldSoundEnabled (24, false, true) setWorldSoundEnabled (25, false, true) -- Voz do CJ.
  19. Ele está reclamando que getElementData(localPlayer, "Materials") é igual a booleano. Provavelmente false. Ou seja, não é possível fazer a operação false/10.
  20. Seu sistema é falho. A função getAccountsBySerial só retorna as contas que foram logadas pelo serial especificado no último login. Se o jogador criar uma conta e não logar nela, ela vai continuar sem o serial registrado, podendo criar outras contas. Ou então se o cara pedir pra outro amigo logar na conta, o serial do amigo vai ficar registrado no lugar do seu serial, podendo assim registrar outras contas. Você precisa registrar o serial de quem criou a conta com um setAccountData e depois verificar essa data com getAccountData.
  21. Não vi nada de errado nela. Exceto pelo fato de estar usando elementData em vez de table, que é bem mais leve e otimizado do que elementData.
  22. @matheus11111 não reviva tópicos antigos.
×
×
  • Create New...