Maaster Posted December 9, 2020 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?
Boechat Posted December 10, 2020 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
Maaster Posted December 10, 2020 Author 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))
Boechat Posted December 10, 2020 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
Otavio Posted December 11, 2020 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
Boechat Posted December 16, 2020 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
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