Jump to content

Boechat

Members
  • Posts

    214
  • Joined

  • Last visited

  • Days Won

    7

Boechat last won the day on December 16 2021

Boechat had the most liked content!

3 Followers

About Boechat

  • Birthday 13/07/2000

Details

  • Gang
    Cidade dos Cria
  • Location
    Itaperuna - RJ
  • Occupation
    Vagabundo responsável
  • Interests
    Maconha e mulher

Recent Profile Visitors

1,183 profile views

Boechat's Achievements

Chump

Chump (17/54)

72

Reputation

  1. Boa tarde! Como você está rodando do lado do servidor, a função requer 1 elemento player como 1° argumento (no seu caso, nomeado de source). Está acusando que o argumento 1 está vazio, pois source não tem nenhum valor... Você usou a função no contexto global, onde source não é declarado nem possui valor (nil). Vou passar um exemplo em que source teria o valor de um player: function engine ( src, cmd) if getPedOccupiedVehicle (src) and getPedOccupiedVehicleSeat (src) == 0 then local vehicle = getPedOccupiedVehicle (src) if getVehicleEngineState (vehicle) then setVehicleEngineState (vehicle, false) else setVehicleEngineState (vehicle, true) end else return false end end addCommandHandler ("engine", engine) addEventHandler ( "onPlayerVehicleEnter", root, function ( theVehicle, seat, jacked ) --Quando o jogador entrar no veículo bindKey (source, "z", "down", engine) --Atribui a bindkey a ele. Nesse caso o source representa o jogador que entrou no veículo! end) Você também pode atribuir a bind assim que um player logar, etc...
  2. Salve galera, gostaria da opinião de vocês das funcionalidades que não pode faltar em um bom RP.
  3. Voce pode colocar um campo "tipo" na tabela e na hora de exibir fazer esse filtro.
  4. Não recomendo que você faça com timer infinito, o desempenho não fica legal. Você pode usar a função onPlayerDamage e checar se o dano será fatal, se for, você cancela o dano, derruba o player e faz todo o resto... function playerDamage ( attacker, weapon, bodypart, loss ) if ((getElementHealth(source) - loss) <= 0) then cancelEvent() --Faz a animação etc... end end addEventHandler ( "onPlayerDamage", root, playerDamage )
  5. Então, difícil te ensinar como fazer do 0, recomendo que você passe por alguns tutoriais antes. Mas basicamente você usará a função addPedClothes para modificar a roupa e setElementModel para modificar a skin do personagem. Como você é iniciante, recomendo que comece fazendo com comandos no chat usando o addCommandoHandler e depois faça uma interface gráfica usando as funções dx ou GUI. Vou dar um exemplo de como mudar a skin, depois você pode se aventurar aí function mudarSkin ( player, comando, id ) --quando uma função é chamada com addCommandHandler é passado por parametro o player que a chamou, o comando e logo em seguida os parâmetros (o que você digitar depois do comando). Por exemplo: /skin 1 (player = jogador que deu o comando, comando = skin, id = 1) setElementModel(player, id) end addCommandHandler("skin", mudarSkin) --Ao dar o comando /skin vai executar a função "mudarSkin"
  6. Use o evento onClientElementStreamIn nos players mortos para ativar a animação assim que ele for streamado. Esse evento é acionado quando o elemento (no caso o jogador morto) é carregado no client, ou seja, quando chega perto.
  7. Salve rapaziada! Estou criando um mod de minigun em cima de um veículo, para isso eu crio uma arma com o createWeapon mas o range está muito curtinho, pra tentar aumentar esse range eu usei a função setWeaponProperty aumentado o "weapon_range" mas o range não muda. Até muda teoricamente se eu der um output com o getWeaponProperity, mas na prática os tiros não pegam e somem ainda com um range pequeno... Alguém sabe como arrumar isso?
  8. Olá, boa tarde! Primeiramente, sempre que adicionar um código no fórum, use o botão <code> para facilitar a visualização. O triggerClientEvent tem como 1° argumento opcional o client que você deseja acionar o evento. No caso, como você não definiu um destinatário, por padrão vai para todos os players (root). Para corrigir, mude de: triggerClientEvent ("OpenPanel", getRootElement()) Para: triggerClientEvent (player, "OpenPanel", getRootElement()) Leia mais na página da wiki triggerClientEvent
  9. No lugar de setElementFrozen(targetPlayer, true) coloque setElementFrozen(targetPlayer, not isElementFrozen(targetPlayer)) Obs: pode ter ficado meio bagunçado pq opção <code> do fórum não está funcionando pra mim
  10. Pra você criar uma conexão no banco de dados você deve fornecer o diretório do arquivo no 2° argumento. Veja mais detalhes do comando dbConnect na wiki. exemplo: conexao_teste = dbConnect( "sqlite", ":NomeDaResource/BancoDeDados.db" )
  11. Acredito que não de um jeito tão simples, mas você pode usar o fileGetSize para ver o tamanho dos arquivos e o fileExists para checar os arquivos baixados.
  12. INTERFACE.blips é uma tabela que a posição deve ser o diretório da imagem dos blips, por exemplo: INTERFACE.blips[1] = ":ModDeMapa/blips/1.png" Encontre onde essa tabela INTERFACE.blips é preenchida porque o erro pode estar nela...
  13. Possivelmente é problema no INTERFACE.blips[ blip_icon ]. Acho que não tem uma imagem ou textura salva nessa posição da tabela, por isso o "got nil". A função esperava um material no argumento 5 porém obteve um valor nulo.
  14. Desculpa mais um comentário, mas agora que me toquei que coloquei as funções mas não fiz o comando KKKK Adicione esse código: addCommandoHandler("setskin", function(playerSource, cmd, id, skin) --Quando der o comando setskin id = tonumber(id) --Por padrão, os comandos vem como string. Nós temos que converter para number (int) para funcionar corretamente. skin = tonumber(skin) setPlayerSkinByID (id, skin, playerSource) --Chamando a função de setar skin end) Aproveitando o post, o 1° código que eu postei ele coloca um sistema de ID no seu servidor que facilita usos futuros, mas se quiser fazer de uma forma mais simples pode fazer assim:
  15. Mas não é possível sobrescrever funções nativas? Pelo que eu li nesse tópico sobre proteção de scripts achei que fosse possível...
×
×
  • Create New...