Jump to content

#Gubiani

Members
  • Posts

    68
  • Joined

  • Last visited

Everything posted by #Gubiani

  1. local groups = { { name = "YKZ", spawnData = { 2340.81323, 553.25513, 18.75537, 90, 120 } }, { name = "EB", spawnData = { 205.75940, 1866.97839, 13.14063, 90, 287 } } -- aqui é os dados dos grupos; spawnData tem todos valores da função spawnPlayer -- x, y, z, rotação, skin } function spawn( player ) if not player or not isElement(player) or getElementType(player) ~= "player" then return end -- Aqui, to fazendo uma validação pra saber se 'player' é de fato um jogador local spawned = false -- Variável 'spawned' que tem um valor booleano indicando se spawnPlayer já foi chamado -- ali em: spawned = spawnPlayer local acc = getPlayerAccount( player ) for i=1, #groups do -- loop na tabela 'groups' if isObjectInACLGroup ( "user.".. getAccountName( acc ), aclGetGroup ( groups[i].name ) ) then outputChatBox("Você foi teleportado", player, 255, 255, 255, true) -- verifica se o jogador é de algum desses grupos spawned = spawnPlayer ( player, unpack(groups[i].spawnData)) -- O jogador é de um dos dois grupos, então spawna ele, e define spawned = true -- spawnPlayer retorna true se for bem-sucedida end end if spawned ~= true then spawnPlayer (player, 1177.12634, -1327.09448, 14.05530, 90, 0) end --[[ aqui já é fora do loop, então vamos saber se o jogador já foi gerado no jogo por aqui. Como disse, 'spawned' retorna true se o jogador já nasceu, Mas caso retorne false, então o jogador não pertence a nenhum grupo e spawna ele normalmente ]] showChat( player, true ) fadeCamera( player, true ) setCameraTarget( player, player ) end addEventHandler( "onPlayerJoin", root, function( ) spawn(player) end) addEventHandler( "onPlayerWasted", root, function( ) setTimer( spawn, 3000, 1, player ) end) Não funcionou, nem apareceu a mensagem do outputChatBox.
  2. Vou dar uma verificada aqui, do que possa ser. Será que não está faltando o: addEventHandler( "onPlayerJoin", root, function( ) spawnPlayer( player ) end) addEventHandler( "onPlayerWasted", root, function( ) setTimer( spawn, 3000, 1, player ) end)
  3. Será que é por causa do gamemode desligado?
  4. Ok vou abrir no servidor local novamente ja te digo. Como eu vejo se há algum erro no debug? ja dei /debugscript 3 só mostra que foi setado para o modo "3" E não aparece mais nada.
  5. Ok, obrigado Fui testar agora esse script mais avançado que o DNL criou e acabou que não funcionou, testei em todos os grupo da acl EB e a YKZ e tentei dar o /logout e buga você fica com a camera bugada infinitamente no mapa.
  6. Me desculpe, se for pedir de mais, tem como tu deixar um comentário a cada linha, para eu entender melhor para que serve cada condição?
  7. Funciona para os players guest e everyone?
  8. Sim, eu deixei o autorun em false pela mtaserver.
  9. Pessoal, tem algum problema se deixar o gamemode desligado, no caso o gamemode play, tive que desligar para funcionar esse script de respawn por ACL, se eu deixar o gamemode play ligado ele da respawn padrão do gamemode.
  10. Olha só quando eu não coloquei o " if acc then " bugou até para quem está logado, porém, quando eu coloquei funcionou. Até para os usuarios em /logout (guest) Muito obrigado.
  11. Ok, obrigado vou testar Bom, fiz o teste tirei a condição da linha 14, e agora até mesmo quem está logado em alguma conta fica bugado. Ah eu esqueci de por " if acc then "
  12. addEventHandler( "onResourceStart", resourceRoot, function() resetMapInfo() for _,player in ipairs( getElementsByType 'player' ) do spawn( player ) end end ) function spawn( player ) if not isElement( player ) then return end showChat( player, true ) local acc = getPlayerAccount( player ) if acc and not isGuestAccount( acc ) then if isObjectInACLGroup ( "user.".. getAccountName( acc ), aclGetGroup ( "YKZ" ) ) then spawnPlayer ( player, 2340.81323, 553.25513, 18.75537, 90, 120) elseif isObjectInACLGroup ( "user.".. getAccountName( acc ), aclGetGroup ( "EB" ) ) then spawnPlayer ( player, 205.75940, 1866.97839, 13.14063, 90, 287) elseif isObjectInACLGroup ( "user.".. getAccountName( acc ), aclGetGroup ( "Everyone" ) ) then spawnPlayer ( player, 1177.12634, -1327.09448, 14.05530, 90, 0) elseif isGuestAccount (getPlayerAccount (player)) then spawnPlayer (player, 1177.12634, -1327.09448, 14.05530, 90, 0) end end fadeCamera( player, true ) setCameraTarget( player, player ) end addEventHandler( "onPlayerJoin", root, function( ) spawn( source ) end) addEventHandler( "onPlayerWasted", root, function( ) setTimer( spawn, 500, 1, source ) end) Eu fiz como você pediu, mas não funcionou...
  13. Obrigado, desculpe não sabia mas agora vou tomar cuidado!
  14. Olá boa noite, estou com uma dúvida sobre um script que peguei aqui na comunidade do MTA esse script muda o respawn do player para determinado ACL por exemplo eu sou do exército e acabo morrendo e eu respawno na base. Até por ai tudo bem, bom como todos devem saber o grupo chamado "Everyone" seria todos os players, certo só que o player que está fazendo download ele não respawna em nenhum lugar, quando morre ele simplesmente fica bugado no chão e a camera dele fica infinitamente subindo, só relogando do servidor para tirar este bug, e aí que entra minha dúvida. Como eu faço para adicionar os players "guest" para respawna em tal coordenada quando morre? Segue abaixo o script usado. addEventHandler( "onResourceStart", resourceRoot, function() resetMapInfo() for _,player in ipairs( getElementsByType 'player' ) do spawn( player ) end end ) function spawn( player ) if not isElement( player ) then return end showChat( player, true ) local acc = getPlayerAccount( player ) if acc and not isGuestAccount( acc ) then if isObjectInACLGroup ( "user.".. getAccountName( acc ), aclGetGroup ( "YKZ" ) ) then spawnPlayer ( player, 2340.81323, 553.25513, 18.75537, 90, 120) elseif isObjectInACLGroup ( "user.".. getAccountName( acc ), aclGetGroup ( "EB" ) ) then spawnPlayer ( player, 205.75940, 1866.97839, 13.14063, 90, 287) elseif isObjectInACLGroup ( "user.".. getAccountName( acc ), aclGetGroup ( "Everyone" ) ) then spawnPlayer ( player, 1177.12634, -1327.09448, 14.05530, 90, 0) end end fadeCamera( player, true ) setCameraTarget( player, player ) end addEventHandler( "onPlayerJoin", root, function( ) spawn( source ) end) addEventHandler( "onPlayerWasted", root, function( ) setTimer( spawn, 500, 1, source ) end)
  15. Muito obrigado, gostei mais dessa função mais complexa. Tenho uma duvida por exemplo: function exemplo (thePlayer) no caso esse thePlayer é uma variável padrão da programação do game ou eu posso usar Jogador ou qualquer outra coisa? tem casos que eu já vi que tem em vez de thePlayer ter source, se tiver como me explicar como funciona isso eu agradeço desde já.
  16. Bom, eu fiz o esquema em que vocês explicaram a cima, porém, eu tirei o outputChatBox no else e criei outra função para outro grupo da ACL que seria a Yakuza, porém, só está funcionando a função do exército. Como eu posso arrumar que os dois funcionam? E futuramente adicionar mais grupos abaixo? function darSkin (thePlayer) local nomeAcc = getAccountName (getPlayerAccount (thePlayer)) if isObjectInACLGroup ("user."..nomeAcc, aclGetGroup("EB")) then setElementModel (thePlayer, 287) else end end addCommandHandler ("skin", darSkin) function darSkin2(thePlayer) local nomeAcc = getAccountName (getPlayerAccount(thePlayer)) if isObjectInACLGroup ("user."..nomeAcc, aclgetGroup("YKZ")) then setElementModel (thePlayer, 140) else end end addCommandHandler ("skin", darSkin2)
  17. Muito obrigado a todos! Como eu sou novo em script o que vocês me recomenda aprender primeiro de tudo? Para eu começar uma linha de estudos, sem se perder ou pular alguma função?
  18. O que há de errado? Objetivo: o jogador que estiver no grupo acl "EB" tem acesso ao comando /skin que por sua função tem de setar a skin do jogador para a skin 287, caso contrário aparece uma mensagem para ele dizendo que apenas membros do exercito podem executar o comando. Quem poder me ajudar fico grato, sou novato em desenvolver scripts mas ja tenho uma noção, pois, eu edito bastante scripts por ai. Ah eu gostaria que no outputChatBox("") o comando da cor #FF0000 funcionasse. Obrigado. function darSkin( thePlayer ) local nomeAcc = getAccountName(getPlayerAccount(thePlayer)) if not isObjectInACLGroup("user."..nomeAcc, aclGetGroup("EB")) then outputChatBox("Somente membros do Exercito Brasileiro podem pegar a skin!") else setPlayerSkin(thePlayer, 287) end addCommandHandler("skin", darSkin)
×
×
  • Create New...