Jump to content

DNL291

Retired Staff
  • Posts

    3,875
  • Joined

  • Days Won

    67

Everything posted by DNL291

  1. Quando comprar a skin vai passar pelo server, só lá a skin vai de fato estar comprada, aí você vai salvar a skin comprada. Pra mostrar as skins, faça uma chamada no lado server e retorne novamente ao client para adicioná-las no painel. E o mesmo quando acabar de comprar uma skin, atualize no lado client.
  2. Acho que esqueceu de falar como é esse painel. É uma gridList, DX.. o que é? setAccountData não vai funcionar no lado client, você vai ter que passar usando evento ou setElementData. Fora isso, não vou poder te ajudar em como adicionar no painel, até porque não tenho como adivinhar qual código você tá usando.
  3. Passe os dados com o(s) skin(s) pro client; no lado client vai receber o skin no parâmetro do evento e você adiciona ele no painel.
  4. O que exatamente não vai? Mostre o que você está tentando fazer por favor.
  5. Você já postou aqui: Não precisa criar outro tópico, use o tópico acima por favor.
  6. Se você for usar o script no seu servidor hospedado, pra pra economizar a largura de banda, te recomendo usar o código da função exportada do Admin: E se quiser reconhecido como "BR" no local, mesmo com outro IP, você pode fazer uma edição no código e definir seu local com base na conta, nick, IP.
  7. Sobre o loop, usar a função exportada, etc: function getPlayerCountFromCountry( c ) local players = 0 for _, p in pairs( getElementsByType("player") ) do country = exports.admin:getPlayerCountry( p ) if country == tostring(c) then players = players + 1 end end return players end
  8. O resource Admin tem a função getPlayerCountry. Use getElementsByType e faça um loop obtendo o país de cada jogador; use uma variável pra fazer a contagem.
  9. Não é assim, essas são variáveis que você precisam definir antes usando a resolução nativa e a obtida com guiGetScreenSize.
  10. Procure em community.multitheftauto.com ou algum script relacionado pelo fórum.
  11. Esse mod é um script ou textura? Você pode usar setElementData no jogadores com a tag pra ter uma identificação e usar getElementData pra fazer a verificação necessária.
  12. Acho que é isto que você quer dizer: local addtSecs = 0 addEventHandler( "onMarkerHit", root, function ( hitPlayer ) if getElementType(hitPlayer) == "player" then addtSecs = addtSecs + 1000 -- 1000ms : 1 segundo end end ) addEventHandler( "onMarkerLeave", root, function ( hitPlayer ) if getElementType(hitPlayer) == "player" then addtSecs = addtSecs - 1000 end end )
  13. Esses gráficos provavelmente são os shaders, mods, se você pesquisar na Wiki, vai encontrar funções pra desativar o shader, textura e pode criar seu código. Ou pesquisar em community.multitheftauto.com
  14. Ninguém vai ajudar sem saber qual script se trata, mostre o código.
  15. Você deveria usar: bindKey("m", "down", "chatbox", "ac") Chamando o nome do comando e não a função.
  16. Para liberar para todos jogadores, primeiro, corrija sua função, tem uma vírgula depois de "Everyone" essa verificação só verifica esse grupo, talvez você você queira de outra forma. Pra fazer a checagem em todos jogadores, use a função getElementsByType.
  17. A textura carregada com funções Lua no MTA só executa na máquina virtual do próprio ambiente, isto é, no servidor. Não sei se realmente existe essa possibilidade, pode ser um bug do MTA ou outro tipo de problema como a textura no próprio GTA. A propósito, use a função engineRestoreModel quando desativar a textura / sair do servidor, pode ser que corrija.
  18. Use o evento "onClientRender". Dentro desse evento, você pode verificar se está ou não num veículo com a função getPedOccupiedVehicle e dxDrawText pra mostrar o texto.
  19. Basta saber usar a função de comando "addCommandHandler" e obter os jogadores do grupo conforme foi dito acima. Aqui um código que fiz: local grupo = "BOPE" addCommandHandler( "vida", function( player ) local BOPEPlayers = getPlayersFromACL( grupo ) or {} -- avisa o jogador que digitou o comando se não tiver ninguém da ACL no server if #BOPEPlayers == 0 then return outputChatBox( "Não há jogadores nesse grupo!", player ) end -- loop nos jogadores do grupo for i, aclPlayer in ipairs( BOPEPlayers ) do setElementHealth( aclPlayer, getPedMaxHealth(aclPlayer) ) end end ) -- retorna uma tabela com todos jogadores online em uma ACL function getPlayersFromACL( g ) local players = {} for _, player in pairs( getElementsByType("player") ) do if isPlayerInACL( player, tostring(g) ) then table.insert( players, player ) end end return players end -- Função útil que verifica se o jogador está em determinada ACL -- https://wiki.multitheftauto.com/wiki/IsPlayerInACL function isPlayerInACL(player, acl) local accountName = getAccountName( getPlayerAccount(player) ) if accountName ~= "guest" and type( aclGetGroup(acl) ) == "userdata" then return isObjectInACLGroup( "user."..accountName, aclGetGroup(acl) ) end return false end -- https://wiki.multitheftauto.com/wiki/GetPedMaxHealth function getPedMaxHealth(ped) -- Output an error and stop executing the function if the argument is not valid assert(isElement(ped) and (getElementType(ped) == "ped" or getElementType(ped) == "player"), "Bad argument @ 'getPedMaxHealth' [Expected ped/player at argument 1, got " .. tostring(ped) .. "]") -- Grab his player health stat. local stat = getPedStat(ped, 24) -- Do a linear interpolation to get how many health a ped can have. -- Assumes: 100 health = 569 stat, 200 health = 1000 stat. local maxhealth = 100 + (stat - 569) / 4.31 -- Return the max health. Make sure it can't be below 1 return math.max(1, maxhealth) end
  20. "onPlayerWasted" -- quando morre "onPlayerJoin" -- quando entra no servidor "onPlayerLogin" -- quando faz login, caso você use painel de login setTimer spawnPlayer setElementInterior Use essas funções.
  21. DNL291

    Cor Nick

    Olá, por favor use o sub-fórum Portuguese / Português para criar tópicos em português. setPlayerNametagColor ( player thePlayer, int r, int g, int b ) Exemplo setPlayerNametagColor ( getPlayerFromName("meu_nick"), 0, 200, 0 )
  22. Imagino que essa função seja do próprio gamemode. Pode ser que tenha sido removida por engano ou esteja por algum equivoco com nome diferente.
  23. O Hud deve estar configurado pra isso. E em relação ao resto, tenha em mente que quando qualquer elemento é criado em um interior, deve ser definido o id do interior correspondente com a função setElementInterior. Pode ser também que você esteja visualizando, digamos a marca da loja, mas o painel não está abrindo por algum motivo, nesse caso, você precisa mostrar o código.
  24. Evento onClientGUIClick; triggerServerEvent setPlayerTeam onPlayerWasted getPlayerTeam spawnPlayer
  25. Você vai precisar da função guiGetScreenSize pra ajustar em outras resoluções. Aqui no fórum tem tutoriais sobre isso. Se quiser, também pode mostrar aqui o seu código e a resolução que você usou pra posicionar os elementos na tela.
×
×
  • Create New...