Maaster Posted December 9, 2020 Share Posted December 9, 2020 Bom, todas proteções de bases e portões que achei funcionavam por acl, mais tem como fazer a proteção da base e o portão funcionarem apenas para algum team especifico? Link to comment
Boechat Posted December 10, 2020 Share Posted December 10, 2020 Tem sim, você só precisa atribuir um time aos usuários com acesso com o setPlayerTeam e depois fazer a verificação com o getPlayerTeam, em vez de verificar com a ACL 1 Link to comment
Maaster Posted December 10, 2020 Author Share Posted December 10, 2020 2 hours ago, Boechat said: Tem sim, você só precisa atribuir um time aos usuários com acesso com o setPlayerTeam e depois fazer a verificação com o getPlayerTeam, em vez de verificar com a ACL setPlayerTeam eh apenas para setar o team certo? e o getPlayerTeam e para fazer algo assim? local playerTeam = getTeamName(getPlayerTeam(PlayerID)) Link to comment
Boechat Posted December 10, 2020 Share Posted December 10, 2020 (edited) 32 minutes ago, Maaster342 said: setPlayerTeam eh apenas para setar o team certo? e o getPlayerTeam e para fazer algo assim? local playerTeam = getTeamName(getPlayerTeam(PlayerID)) O setPlayerTeam atribui um time ao player, lembrando que antes de setar você deve criar um time com o createTeam. O getPlayerTeam você pega o time do player, afim de comparação ou alguma checagem. Exemplo de uso: server-side local cv = createTeam ( "CV" , 255, 0, 0 ) local markerEntrarCV = createMarker ( 1213, -500, 13, "cylinder", 1.5, 255, 255, 0, 170 ) local markerChecarCV = createMarker ( 1213, -400, 13, "cylinder", 1.5, 255, 255, 0, 170 ) function setTeam (player, team) setPlayerTeam ( player, team ) outputChatBox ('Você entrou para '..getTeamName(team), player) end function checkTeam (player, team) local teamPlayer = getPlayerTeam (player) if teamPlayer == team then return true else outputChatBox ('Você não faz parte do '..getTeamName(team), player) end return false end addEventHandler ("onMarkerHit", markerEntrarCV, function(hitElement, matchingDimension) if isElement (hitElement) and getElementType(hitElement) == 'player' then setTeam (hitElement, cv) end end) addEventHandler ("onMarkerHit", markerChecarCV, function(hitElement, matchingDimension) if isElement (hitElement) and getElementType(hitElement) == 'player' then if checkTeam (hitElement, cv) then outputChatBox ('Você é do CV', hitElement) else outputChatBox ('Você não é do CV', hitElement) end end end) Lembrando que eu não testei, digitei tudo pelo fórum mesmo e nunca mexi com times também, pode haver algum errinho ou outro mas acho que assim funcionará, teste e qualquer coisa posta aí. Edited December 10, 2020 by Boechat 2 Link to comment
Otavio Posted December 11, 2020 Share Posted December 11, 2020 Olha, o getPlayerTeam, é só pra executar tais funções que você queira se ele tiver em tal grupo certo? Vamo supostamente, que você queira que só o Grupo A entre em tal área, você terá que setar a ele Grupo A. E na próxima função, vc usa o getPlayerTeam para ver se está no grupo, caso esteja, ele deixará entrar em tais bases. 1 Link to comment
Boechat Posted December 16, 2020 Share Posted December 16, 2020 On 11/12/2020 at 10:36, Otavio said: Olha, o getPlayerTeam, é só pra executar tais funções que você queira se ele tiver em tal grupo certo? Vamo supostamente, que você queira que só o Grupo A entre em tal área, você terá que setar a ele Grupo A. E na próxima função, vc usa o getPlayerTeam para ver se está no grupo, caso esteja, ele deixará entrar em tais bases. Isso aí. Você deve usar o getPlayerTeam em um if comparando com o time desejado para verificar se a pessoa tem acesso. Um detalhe que eu não sei é se quando o player relogar ele vai continuar no time, tem que testar isso aí... 1 Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now