FelipeMallmann Posted April 20, 2015 Posted April 20, 2015 Fala pessoal, estou com duvida em como restringir esse comando apenas para vips usarem: o comando é esse: function vehGUI() vehicleGUI = guiCreateWindow(477, 384, 301, 194, " || VEICULO ||", false) guiWindowSetSizable(vehicleGUI, false) vehMemo = guiCreateMemo(9, 18, 157, 133, "Obrigado por ser VIP, voce pode\n\n- Ligar/Desligar Luzes\n- Ligar/Desligar Motor\n- Trancar/Destrancar Veiculo", false, vehicleGUI) guiMemoSetReadOnly(vehMemo, true) vehLights = guiCreateButton(178, 30, 107, 26, "Luzes", false, vehicleGUI) vehEngine = guiCreateButton(178, 70, 107, 26, "Motor", false, vehicleGUI) vehLock = guiCreateButton(178, 115, 107, 26, "Tranca", false, vehicleGUI) vehClose = guiCreateButton(12, 158, 71, 26, "Sair", false, vehicleGUI) showCursor ( true ) end bindKey ( "m", "down", vehGUI ) addCommandHandler("vehmanager",vehGUI) Criei encima dele uma funçao local: local function isVip(thePlayer) local accName = getAccountName(getPlayerAccount (thePlayer)) return isObjectInACLGroup("user."..accName, aclGetGroup( "Vip" )) end Porem nao sei aonde colocar os IFs dentro do codigo
#RooTs Posted April 20, 2015 Posted April 20, 2015 é mais ou menos assim server.lua function isVip(thePlayer) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then --code end end addEventHandler( "onResourceStart", root, isVip ) mais informações acesse: https://wiki.multitheftauto.com/wiki/IsObjectInACLGroup
n3wage Posted April 21, 2015 Posted April 21, 2015 Como a função isObjectInACLGroup é usada apenas no lado do servidor vc tera que usar element datas (modo inseguro) ou um triggerClientEvent, assim: -- Script type="server" local function isVip(thePlayer) local accName = getAccountName(getPlayerAccount (thePlayer)) return isObjectInACLGroup("user."..accName, aclGetGroup( "Vip" )) end function abrirJanela (player) if isVip ( player ) then triggerClientEvent ( player, "showVIPGUI", player ) else outputChatBox ( "Apenas vips podem usar o painel !", player, 255, 0, 0 ) end end addCommandHandler ( "vehmanager", abrirJanela, false, false ) -- Script type="client" function vehGUI() vehicleGUI = guiCreateWindow(477, 384, 301, 194, " || VEICULO ||", false) guiWindowSetSizable(vehicleGUI, false) vehMemo = guiCreateMemo(9, 18, 157, 133, "Obrigado por ser VIP, voce pode\n\n- Ligar/Desligar Luzes\n- Ligar/Desligar Motor\n- Trancar/Destrancar Veiculo", false, vehicleGUI) guiMemoSetReadOnly(vehMemo, true) vehLights = guiCreateButton(178, 30, 107, 26, "Luzes", false, vehicleGUI) vehEngine = guiCreateButton(178, 70, 107, 26, "Motor", false, vehicleGUI) vehLock = guiCreateButton(178, 115, 107, 26, "Tranca", false, vehicleGUI) vehClose = guiCreateButton(12, 158, 71, 26, "Sair", false, vehicleGUI) showCursor ( true ) end addEvent ( "showVIPGUI", true ) addEventHandler ( "showVIPGUI", root, vehGUI ) Veja isso se quiser saber porque n usar element data: Script security
FelipeMallmann Posted April 21, 2015 Author Posted April 21, 2015 é mais ou menos assim server.lua function isVip(thePlayer) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then --code end end addEventHandler( "onResourceStart", root, isVip ) mais informações acesse: https://wiki.multitheftauto.com/wiki/IsObjectInACLGroup Ai que tá, estou me atrapalhando nisso, pois o code tmb é uma funçao, eu devo remover a funçao: function vehGUI() e no final retirar o vehGUI addCommandHandler("vehmanager",vehGUI) ??
#RooTs Posted April 21, 2015 Posted April 21, 2015 da uma olhada no exemplo do @FuSioN_ .... se não entender, pode voltar aqui!
FelipeMallmann Posted April 21, 2015 Author Posted April 21, 2015 Entendi! em partes kk, nao sabia que essa funçao so podia ser chamada em server-side, criei um novo arquivo do tipo server agora, só que mesmo estando no grupo acl 'Vip' ele fala que preciso ser vip.. erro: [Expected acl-group at argument 2, got boolean o que é esse erro?
FelipeMallmann Posted April 21, 2015 Author Posted April 21, 2015 client: function vehGUI() vehicleGUI = guiCreateWindow(477, 384, 301, 194, " || VEICULO ||", false) guiWindowSetSizable(vehicleGUI, false) vehMemo = guiCreateMemo(9, 18, 157, 133, "Obrigado por ser VIP, voce pode\n\n- Ligar/Desligar Luzes\n- Ligar/Desligar Motor\n- Trancar/Destrancar Veiculo", false, vehicleGUI) guiMemoSetReadOnly(vehMemo, true) vehLights = guiCreateButton(178, 30, 107, 26, "Luzes", false, vehicleGUI) vehEngine = guiCreateButton(178, 70, 107, 26, "Motor", false, vehicleGUI) vehLock = guiCreateButton(178, 115, 107, 26, "Tranca", false, vehicleGUI) vehClose = guiCreateButton(12, 158, 71, 26, "Sair", false, vehicleGUI) showCursor ( true ) end addEvent ( "showVIPGUI", true ) addEventHandler ( "showVIPGUI", root, vehGUI ) server: local function isVip(thePlayer) local accName = getAccountName(getPlayerAccount (thePlayer)) return isObjectInACLGroup("user."..accName, aclGetGroup( "Vip" )) end function abrirJanela (player) if isVip ( player ) then triggerClientEvent ( player, "showVIPGUI", player ) else outputChatBox ( "Apenas vips podem usar o painel !", player, 255, 0, 0 ) end end addCommandHandler ( "meucarro", abrirJanela, false, false )
DNL291 Posted April 21, 2015 Posted April 21, 2015 erro: [Expected acl-group at argument 2, got boolean o que é esse erro? O nome do grupo tá errado, ou não tem esse grupo. Tenta com "VIP". A propósito, recomendo que você crie a interface no evento "onClientResourceStart", e apenas use guiSetVisible para mostrar/ocultar a janela.
FelipeMallmann Posted April 21, 2015 Author Posted April 21, 2015 Cara, verifiquei diversas vezes, o nome nao está errado, e fica dando esse erro sempre, o que é isso?
DNL291 Posted April 22, 2015 Posted April 22, 2015 Bem, tudo o que sei é que no 2º argumento da função isObjectInACLGroup que deve ser o grupo da ACL, deve estar retornando false. O grupo da ACL não está retornando. Se realmente não há erro no nome do grupo, tente executando a função aclReload e reinicie o script.
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