-
Posts
3,972 -
Joined
-
Last visited
-
Days Won
179
Everything posted by Lord Henry
-
Cara, se vc não sabe fazer painel em DX, faça em CEGUI pois é mais fácil.
-
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.
-
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
-
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
-
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.
-
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.
-
@AlvesMTA o código citado serve para fechar as portas de um veículo quando alguém entrar nele.
-
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.
-
Nesse caso abaixo, seu amigo que estava dirigindo viu a porta aberta também? Ou ela só fica aberta no seu cliente?
-
Um resource utilizado para anexar coisas nos ossos do personagem (por exemplo na mão, nas costas, na cabeça) é o Resource:Bone_attach.
-
setVehicleHandling
-
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.
-
Não vai funcionar com ACL Group, pois é um script client-side.
-
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.
-
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".
-
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:
-
@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?
-
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)
-
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.
-
Faltou usar getAccountName
-
Ele está reclamando que getElementData(localPlayer, "Materials") é igual a booleano. Provavelmente false. Ou seja, não é possível fazer a operação false/10.
-
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.
-
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.
-
@matheus11111 não reviva tópicos antigos.