# DHwROk ~ Posted August 7, 2015 Share Posted August 7, 2015 =[ سلآم عليـككمء و رححمة آلله و بركآتههَ ]= =[ كيفككم آن ششآء آلله بخير ؟ ]= =[ كيف آقفل بوتون آلاسسل ]= =[ و تآب آلبآند \ و كلمة السر هي : acl-mm ]= =[ قروب وآحد آلي يقدر يفتحها | قروب | Managers | بس ]= =[ لو وآحد رتبتههَ آدمن وكتب آلبآس في آف 8 م يفتح معهه ]= =[ آتمنى آنككم تسآعدونيء " 3> ]= Link to comment
Naif Posted August 7, 2015 Share Posted August 7, 2015 م فهمت عليك .. اذا انك مسوي الكود آطرحه . Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 م فهمت عليك .. اذا انك مسوي الكود آطرحه . لآ م سويت قصدي كيف آقفل الازرآر آلي دآخل آلاسل مثل / aACLCreateGroup / aACLCreateACL / aACLDestroyGroup / aACLDestroyACL / aACLAddACL / ذولي آلي آبي آقفلهم يعني آحط لهم بآس و تآب آلبآند , البآند آلي بلوحة آبي آقفله آحط له بآس و آلي يقدر يفتح البآس بس قروب Managers آتمنى آنك فهمت Link to comment
Naif Posted August 7, 2015 Share Posted August 7, 2015 triggerServerEvent addCommandHandler guiSetEnabled isObjectInACLGroup aclGetGroup isGuestAccount Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 triggerServerEvent addCommandHandler guiSetEnabled isObjectInACLGroup aclGetGroup isGuestAccount كيف ؟ ممكن تسويهآ لي ؟ Link to comment
; Mr.T76eM # Posted August 7, 2015 Share Posted August 7, 2015 امم شف سويتلك شيء عـ السريع جربه ورد خبر سيرفر : addCommandHandler('command', function (player) if isObjectInACLGroup('user.'..getAccountName(getPlayerAccount(player)),aclGetGroup('Console')) then triggerClientEvent(player,'enabled',player) end end ) كلينت : admin/client/gui/admin main addEvent('enabled',true) addEventHandler('enabled',root, function () guiSetEnabled(buttunName,true) outputChatBox('done',255,255,255,true) end ) اذا فيه خطأ يصححوه الشباب انا بروحـ مشوار Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 امم شف سويتلك شيء عـ السريع جربه ورد خبرسيرفر : addCommandHandler('command', function (player) if isObjectInACLGroup('user.'..getAccountName(getPlayerAccount(player)),aclGetGroup('Console')) then triggerClientEvent(player,'enabled',player) end end ) كلينت : admin/client/gui/admin main addEvent('enabled',true) addEventHandler('enabled',root, function () guiSetEnabled(buttunName,true) outputChatBox('done',255,255,255,true) end ) اذا فيه خطأ يصححوه الشباب انا بروحـ مشوار كيف سيرفر ؟ Link to comment
; Mr.T76eM # Posted August 7, 2015 Share Posted August 7, 2015 يمديك تفتح ملف سيرفر جديد وتحط الكود فيه وطبعاً لازم تضيفه للميتا او رح مجلد سيرفر /admin_server وضيفه اخر شيء Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 امم شف سويتلك شيء عـ السريع جربه ورد خبرسيرفر : addCommandHandler('command', function (player) if isObjectInACLGroup('user.'..getAccountName(getPlayerAccount(player)),aclGetGroup('Console')) then triggerClientEvent(player,'enabled',player) end end ) كلينت : admin/client/gui/admin main addEvent('enabled',true) addEventHandler('enabled',root, function () guiSetEnabled(buttunName,true) outputChatBox('done',255,255,255,true) end ) اذا فيه خطأ يصححوه الشباب انا بروحـ مشوار كيف سيرفر ؟ ذي آلكودآت سوهآء . --[[********************************** * * Multi Theft Auto - Admin Panel * * gui\admin_acl.lua * * Original File by lil_Toady * **************************************]] aAclForm = nil aAclData = {} function aManageACL () if ( aAclForm == nil ) then aAclData["group_objects"] = {} aAclData["group_acls"] = {} aAclData["acl_rights"] = {} local x, y = guiGetScreenSize() aAclForm = guiCreateWindow ( x / 2 - 230, y / 2 - 250, 460, 500, "ACL Management", false ) aACLList = guiCreateGridList ( 0.03, 0.05, 0.50, 0.90, true, aAclForm ) guiGridListSetSortingEnabled ( aACLList, false ) guiGridListAddColumn( aACLList, "", 0.10 ) guiGridListAddColumn( aACLList, "", 0.85 ) aACLCreateGroup = guiCreateButton ( 0.55, 0.05, 0.40, 0.04, "Create group", true, aAclForm ) aACLCreateACL = guiCreateButton ( 0.55, 0.10, 0.40, 0.04, "Create ACL", true, aAclForm ) aACLLabel = guiCreateLabel ( 0.55, 0.19, 0.40, 0.04, "", true, aAclForm ) aACLSeparator = guiCreateStaticImage ( 0.55, 0.235, 0.40, 0.0025, "client\\images\\dot.png", true, aAclForm ) aACLDestroyGroup = guiCreateButton ( 0.55, 0.25, 0.40, 0.04, "Destroy group", true, aAclForm ) aACLDestroyACL = guiCreateButton ( 0.55, 0.25, 0.40, 0.04, "Destroy ACL", true, aAclForm ) aACLAddObject = guiCreateButton ( 0.55, 0.30, 0.40, 0.04, "Add Object", true, aAclForm ) aACLRemoveObject = guiCreateButton ( 0.55, 0.35, 0.40, 0.04, "Remove Object", true, aAclForm ) aACLAddACL = guiCreateButton ( 0.55, 0.40, 0.40, 0.04, "Add ACL", true, aAclForm ) aACLRemoveACL = guiCreateButton ( 0.55, 0.45, 0.40, 0.04, "Remove ACL", true, aAclForm ) aACLActionLabel = guiCreateLabel ( 0.55, 0.31, 0.40, 0.04, "", true, aAclForm ) aACLDropCurrent = guiCreateEdit ( 0.55, 0.35, 0.40, 0.04, "", true, aAclForm ) guiSetEnabled ( aACLDropCurrent, false ) aACLDropDown = guiCreateStaticImage ( 0.91, 0.35, 0.04, 0.04, "client\\images\\dropdown.png", true, aAclForm ) aACLDropList = guiCreateGridList ( 0.55, 0.35, 0.40, 0.30, true, aAclForm ) guiGridListAddColumn( aACLDropList, "", 0.85 ) guiSetVisible ( aACLDropList, false ) aACLOk = guiCreateButton ( 0.55, 0.40, 0.19, 0.04, "Ok", true, aAclForm ) aACLCancel = guiCreateButton ( 0.76, 0.40, 0.19, 0.04, "Cancel", true, aAclForm ) aACLAddRight = guiCreateButton ( 0.55, 0.30, 0.40, 0.04, "Add Right", true, aAclForm ) aACLExit = guiCreateButton ( 0.75, 0.90, 0.27, 0.04, "Close", true, aAclForm ) aclDisplayOptions ( "", "" ) addEvent ( "aAdminACL", true ) addEventHandler ( "aAdminACL", getLocalPlayer(), aAdminACL ) addEventHandler ( "onClientGUIClick", aAclForm, aClientACLClick ) addEventHandler ( "onClientGUIDoubleClick", aAclForm, aClientACLDoubleClick ) --Register With Admin Form aRegister ( "ACLManage", aAclForm, aManageACL, aACLClose ) triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclgroups" ) end guiSetVisible ( aAclForm, true ) guiBringToFront ( aAclForm ) end function aACLClose ( destroy ) if ( ( destroy ) or ( aPerformanceACL and guiCheckBoxGetSelected ( aPerformanceACL ) ) ) then if ( aAclForm ) then removeEventHandler ( "onClientGUIClick", aAclForm, aClientACLClick ) removeEventHandler ( "onClientGUIDoubleClick", aAclForm, aClientACLDoubleClick ) destroyElement ( aAclForm ) aAclForm = nil end else guiSetVisible ( aAclForm, false ) end end function aAdminACL ( type, acltable ) guiGridListClear ( aACLList ) if ( type == "aclgroups" ) then aAclData["viewing"] = nil aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) aAclData["groups"] = acltable["groups"] for id, name in ipairs ( acltable["groups"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end local row = guiGridListAddRow ( aACLList ) aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) aAclData["acl"] = acltable["acl"] for id, name in ipairs ( acltable["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end aclDisplayOptions ( "", "" ) elseif ( type == "aclobjects" ) then aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) for i, group in ipairs ( aAclData["groups"] ) do local group_row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, group_row, 2, group, false, false ) if ( group == acltable["name"] ) then aclDisplayOptions ( "Group", acltable["name"] ) aAclData["objects_row"] = guiGridListAddRow ( aACLList ) aAclData["group_objects"][group] = acltable["objects"] guiGridListSetItemText ( aACLList, aAclData["objects_row"], 2, " objects:", true, false ) for j, object in ipairs ( acltable["objects"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..object, false, false ) end aAclData["acls_row"] = guiGridListAddRow ( aACLList ) aAclData["group_acls"][group] = acltable["acl"] guiGridListSetItemText ( aACLList, aAclData["acls_row"], 2, " acl:", true, false ) for j, acl in ipairs ( acltable["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..acl, false, false ) end guiGridListSetItemText ( aACLList, group_row, 1, "-", false, false ) else guiGridListSetItemText ( aACLList, group_row, 1, "+", false, false ) end end aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) for id, name in ipairs ( aAclData["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end elseif ( type == "aclrights" ) then aAclData["viewing"] = "rights" aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) for id, name in ipairs ( aAclData["groups"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) for i, acl in ipairs ( aAclData["acl"] ) do local acl_row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, acl_row, 2, acl, false, false ) if ( acl == acltable["name"] ) then aAclData["acl_rights"][acl] = acltable["rights"] aclDisplayOptions ( "ACL", acltable["name"] ) aAclData["rights_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["rights_row"], 2, " rights:", true, false ) for name, access in pairs ( acltable["rights"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..name, false, false ) if guiGridListSetItemColor then guiGridListSetItemColor ( aACLList, row, 2, access and 0 or 255, access and 255 or 0, 0, 255) end end guiGridListSetItemText ( aACLList, acl_row, 1, "-", false, false ) else guiGridListSetItemText ( aACLList, acl_row, 1, "+", false, false ) end end end end function aClientACLDoubleClick ( button ) if ( button == "left" ) then if ( source == aACLList ) then local row = guiGridListGetSelectedItem ( aACLList ) if ( row ~= -1 ) then local clicked = guiGridListGetItemText ( aACLList, row, 2 ) local state = guiGridListGetItemText ( aACLList, row, 1 ) if ( row > aAclData["acl_row"] ) then for i, acl in ipairs ( aAclData["acl"] ) do if ( acl == clicked ) then if ( state == "-" ) then triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclgroups" ) else triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclrights", clicked ) end return end end else for i, group in ipairs ( aAclData["groups"] ) do if ( group == clicked ) then if ( state == "-" ) then triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclgroups" ) else triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclobjects", clicked ) end return end end end end elseif ( source == aACLDropList ) then local row = guiGridListGetSelectedItem ( aACLDropList ) if ( row ~= -1 ) then local clicked = guiGridListGetItemText ( aACLDropList, row, 1 ) guiSetText ( aACLDropCurrent, clicked ) guiSetVisible ( aACLDropList, false ) end end end end function aClientACLClick ( button ) if ( source ~= aACLDropList ) then guiSetVisible ( aACLDropList, false ) end if ( button == "left" ) then if ( source == aACLExit ) then aACLClose ( false ) elseif ( source == aACLCreateGroup ) then aInputBox ( "Create ACL Group", "Enter group name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"aclcreate\", \"group\", $value )" ) elseif ( source == aACLCreateACL ) then aInputBox ( "Create ACL", "Enter acl name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"aclcreate\", \"acl\", $value )" ) elseif ( source == aACLAddObject ) then aInputBox ( "Create ACL Group", "Enter object name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acladd\", \"object\", \""..aAclData["current"].."\", $value )" ) elseif ( source == aACLAddRight ) then aInputBox ( "Create ACL", "Enter right name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acladd\", \"right\", \""..aAclData["current"].."\", $value )" ) elseif ( source == aACLDestroyGroup ) then aMessageBox ( "warning", "Are you sure to destroy "..aAclData["current"].." group?", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acldestroy\", \"group\", \""..aAclData["current"].."\" )" ) elseif ( source == aACLDestroyACL ) then aMessageBox ( "warning", "Are you sure to destroy "..aAclData["current"].." ACL?", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acldestroy\", \"acl\", \""..aAclData["current"].."\" )" ) elseif ( ( source == aACLRemoveObject ) or ( source == aACLAddACL ) or ( source == aACLRemoveACL ) ) then guiSetVisible ( aACLAddObject, false ) guiSetVisible ( aACLRemoveObject, false ) guiSetVisible ( aACLAddACL, false ) guiSetVisible ( aACLRemoveACL, false ) guiSetVisible ( aACLDropCurrent, true ) guiSetVisible ( aACLDropDown, true ) guiSetVisible ( aACLOk, true ) guiSetVisible ( aACLCancel, true ) guiSetVisible ( aACLActionLabel, true ) guiGridListClear ( aACLDropList ) local table = {} guiSetText ( aACLActionLabel, guiGetText ( source )..":" ) if ( source == aACLRemoveObject ) then table = aAclData["group_objects"][aAclData["current"]] elseif ( source == aACLAddACL ) then table = aAclData["acl"] elseif ( source == aACLRemoveACL ) then table = aAclData["group_acls"][aAclData["current"]] end if ( #table >= 1 ) then guiSetText ( aACLDropCurrent, table[1] ) end for id, object in ipairs ( table ) do guiGridListSetItemText ( aACLDropList, guiGridListAddRow ( aACLDropList ), 1, object, false, false ) end elseif ( source == aACLDropDown ) then guiSetVisible ( aACLDropList, true ) guiBringToFront ( aACLDropList ) elseif ( source == aACLCancel ) then aclDisplayOptions ( aAclData["viewing"], aAclData["current"] ) elseif ( source == aACLOk ) then local action = guiGetText ( aACLActionLabel ) if ( action == "Remove Object:" ) then Link to comment
; Mr.T76eM # Posted August 7, 2015 Share Posted August 7, 2015 امم شف سويتلك شيء عـ السريع جربه ورد خبرسيرفر : addCommandHandler('command', function (player) if isObjectInACLGroup('user.'..getAccountName(getPlayerAccount(player)),aclGetGroup('Console')) then triggerClientEvent(player,'enabled',player) end end ) كلينت : admin/client/gui/admin main addEvent('enabled',true) addEventHandler('enabled',root, function () guiSetEnabled(buttunName,true) outputChatBox('done',255,255,255,true) end ) اذا فيه خطأ يصححوه الشباب انا بروحـ مشوار كيف سيرفر ؟ ذي آلكودآت سوهآء . --[[********************************** * * Multi Theft Auto - Admin Panel * * gui\admin_acl.lua * * Original File by lil_Toady * **************************************]] aAclForm = nil aAclData = {} function aManageACL () if ( aAclForm == nil ) then aAclData["group_objects"] = {} aAclData["group_acls"] = {} aAclData["acl_rights"] = {} local x, y = guiGetScreenSize() aAclForm = guiCreateWindow ( x / 2 - 230, y / 2 - 250, 460, 500, "ACL Management", false ) aACLList = guiCreateGridList ( 0.03, 0.05, 0.50, 0.90, true, aAclForm ) guiGridListSetSortingEnabled ( aACLList, false ) guiGridListAddColumn( aACLList, "", 0.10 ) guiGridListAddColumn( aACLList, "", 0.85 ) aACLCreateGroup = guiCreateButton ( 0.55, 0.05, 0.40, 0.04, "Create group", true, aAclForm ) aACLCreateACL = guiCreateButton ( 0.55, 0.10, 0.40, 0.04, "Create ACL", true, aAclForm ) aACLLabel = guiCreateLabel ( 0.55, 0.19, 0.40, 0.04, "", true, aAclForm ) aACLSeparator = guiCreateStaticImage ( 0.55, 0.235, 0.40, 0.0025, "client\\images\\dot.png", true, aAclForm ) aACLDestroyGroup = guiCreateButton ( 0.55, 0.25, 0.40, 0.04, "Destroy group", true, aAclForm ) aACLDestroyACL = guiCreateButton ( 0.55, 0.25, 0.40, 0.04, "Destroy ACL", true, aAclForm ) aACLAddObject = guiCreateButton ( 0.55, 0.30, 0.40, 0.04, "Add Object", true, aAclForm ) aACLRemoveObject = guiCreateButton ( 0.55, 0.35, 0.40, 0.04, "Remove Object", true, aAclForm ) aACLAddACL = guiCreateButton ( 0.55, 0.40, 0.40, 0.04, "Add ACL", true, aAclForm ) aACLRemoveACL = guiCreateButton ( 0.55, 0.45, 0.40, 0.04, "Remove ACL", true, aAclForm ) aACLActionLabel = guiCreateLabel ( 0.55, 0.31, 0.40, 0.04, "", true, aAclForm ) aACLDropCurrent = guiCreateEdit ( 0.55, 0.35, 0.40, 0.04, "", true, aAclForm ) guiSetEnabled ( aACLDropCurrent, false ) aACLDropDown = guiCreateStaticImage ( 0.91, 0.35, 0.04, 0.04, "client\\images\\dropdown.png", true, aAclForm ) aACLDropList = guiCreateGridList ( 0.55, 0.35, 0.40, 0.30, true, aAclForm ) guiGridListAddColumn( aACLDropList, "", 0.85 ) guiSetVisible ( aACLDropList, false ) aACLOk = guiCreateButton ( 0.55, 0.40, 0.19, 0.04, "Ok", true, aAclForm ) aACLCancel = guiCreateButton ( 0.76, 0.40, 0.19, 0.04, "Cancel", true, aAclForm ) aACLAddRight = guiCreateButton ( 0.55, 0.30, 0.40, 0.04, "Add Right", true, aAclForm ) aACLExit = guiCreateButton ( 0.75, 0.90, 0.27, 0.04, "Close", true, aAclForm ) aclDisplayOptions ( "", "" ) addEvent ( "aAdminACL", true ) addEventHandler ( "aAdminACL", getLocalPlayer(), aAdminACL ) addEventHandler ( "onClientGUIClick", aAclForm, aClientACLClick ) addEventHandler ( "onClientGUIDoubleClick", aAclForm, aClientACLDoubleClick ) --Register With Admin Form aRegister ( "ACLManage", aAclForm, aManageACL, aACLClose ) triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclgroups" ) end guiSetVisible ( aAclForm, true ) guiBringToFront ( aAclForm ) end function aACLClose ( destroy ) if ( ( destroy ) or ( aPerformanceACL and guiCheckBoxGetSelected ( aPerformanceACL ) ) ) then if ( aAclForm ) then removeEventHandler ( "onClientGUIClick", aAclForm, aClientACLClick ) removeEventHandler ( "onClientGUIDoubleClick", aAclForm, aClientACLDoubleClick ) destroyElement ( aAclForm ) aAclForm = nil end else guiSetVisible ( aAclForm, false ) end end function aAdminACL ( type, acltable ) guiGridListClear ( aACLList ) if ( type == "aclgroups" ) then aAclData["viewing"] = nil aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) aAclData["groups"] = acltable["groups"] for id, name in ipairs ( acltable["groups"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end local row = guiGridListAddRow ( aACLList ) aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) aAclData["acl"] = acltable["acl"] for id, name in ipairs ( acltable["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end aclDisplayOptions ( "", "" ) elseif ( type == "aclobjects" ) then aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) for i, group in ipairs ( aAclData["groups"] ) do local group_row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, group_row, 2, group, false, false ) if ( group == acltable["name"] ) then aclDisplayOptions ( "Group", acltable["name"] ) aAclData["objects_row"] = guiGridListAddRow ( aACLList ) aAclData["group_objects"][group] = acltable["objects"] guiGridListSetItemText ( aACLList, aAclData["objects_row"], 2, " objects:", true, false ) for j, object in ipairs ( acltable["objects"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..object, false, false ) end aAclData["acls_row"] = guiGridListAddRow ( aACLList ) aAclData["group_acls"][group] = acltable["acl"] guiGridListSetItemText ( aACLList, aAclData["acls_row"], 2, " acl:", true, false ) for j, acl in ipairs ( acltable["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..acl, false, false ) end guiGridListSetItemText ( aACLList, group_row, 1, "-", false, false ) else guiGridListSetItemText ( aACLList, group_row, 1, "+", false, false ) end end aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) for id, name in ipairs ( aAclData["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end elseif ( type == "aclrights" ) then aAclData["viewing"] = "rights" aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) for id, name in ipairs ( aAclData["groups"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) for i, acl in ipairs ( aAclData["acl"] ) do local acl_row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, acl_row, 2, acl, false, false ) if ( acl == acltable["name"] ) then aAclData["acl_rights"][acl] = acltable["rights"] aclDisplayOptions ( "ACL", acltable["name"] ) aAclData["rights_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["rights_row"], 2, " rights:", true, false ) for name, access in pairs ( acltable["rights"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..name, false, false ) if guiGridListSetItemColor then guiGridListSetItemColor ( aACLList, row, 2, access and 0 or 255, access and 255 or 0, 0, 255) end end guiGridListSetItemText ( aACLList, acl_row, 1, "-", false, false ) else guiGridListSetItemText ( aACLList, acl_row, 1, "+", false, false ) end end end end function aClientACLDoubleClick ( button ) if ( button == "left" ) then if ( source == aACLList ) then local row = guiGridListGetSelectedItem ( aACLList ) if ( row ~= -1 ) then local clicked = guiGridListGetItemText ( aACLList, row, 2 ) local state = guiGridListGetItemText ( aACLList, row, 1 ) if ( row > aAclData["acl_row"] ) then for i, acl in ipairs ( aAclData["acl"] ) do if ( acl == clicked ) then if ( state == "-" ) then triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclgroups" ) else triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclrights", clicked ) end return end end else for i, group in ipairs ( aAclData["groups"] ) do if ( group == clicked ) then if ( state == "-" ) then triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclgroups" ) else triggerServerEvent ( "aAdmin", getLocalPlayer(), "sync", "aclobjects", clicked ) end return end end end end elseif ( source == aACLDropList ) then local row = guiGridListGetSelectedItem ( aACLDropList ) if ( row ~= -1 ) then local clicked = guiGridListGetItemText ( aACLDropList, row, 1 ) guiSetText ( aACLDropCurrent, clicked ) guiSetVisible ( aACLDropList, false ) end end end end function aClientACLClick ( button ) if ( source ~= aACLDropList ) then guiSetVisible ( aACLDropList, false ) end if ( button == "left" ) then if ( source == aACLExit ) then aACLClose ( false ) elseif ( source == aACLCreateGroup ) then aInputBox ( "Create ACL Group", "Enter group name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"aclcreate\", \"group\", $value )" ) elseif ( source == aACLCreateACL ) then aInputBox ( "Create ACL", "Enter acl name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"aclcreate\", \"acl\", $value )" ) elseif ( source == aACLAddObject ) then aInputBox ( "Create ACL Group", "Enter object name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acladd\", \"object\", \""..aAclData["current"].."\", $value )" ) elseif ( source == aACLAddRight ) then aInputBox ( "Create ACL", "Enter right name:", "", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acladd\", \"right\", \""..aAclData["current"].."\", $value )" ) elseif ( source == aACLDestroyGroup ) then aMessageBox ( "warning", "Are you sure to destroy "..aAclData["current"].." group?", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acldestroy\", \"group\", \""..aAclData["current"].."\" )" ) elseif ( source == aACLDestroyACL ) then aMessageBox ( "warning", "Are you sure to destroy "..aAclData["current"].." ACL?", "triggerServerEvent ( \"aAdmin\", getLocalPlayer(), \"acldestroy\", \"acl\", \""..aAclData["current"].."\" )" ) elseif ( ( source == aACLRemoveObject ) or ( source == aACLAddACL ) or ( source == aACLRemoveACL ) ) then guiSetVisible ( aACLAddObject, false ) guiSetVisible ( aACLRemoveObject, false ) guiSetVisible ( aACLAddACL, false ) guiSetVisible ( aACLRemoveACL, false ) guiSetVisible ( aACLDropCurrent, true ) guiSetVisible ( aACLDropDown, true ) guiSetVisible ( aACLOk, true ) guiSetVisible ( aACLCancel, true ) guiSetVisible ( aACLActionLabel, true ) guiGridListClear ( aACLDropList ) local table = {} guiSetText ( aACLActionLabel, guiGetText ( source )..":" ) if ( source == aACLRemoveObject ) then table = aAclData["group_objects"][aAclData["current"]] elseif ( source == aACLAddACL ) then table = aAclData["acl"] elseif ( source == aACLRemoveACL ) then table = aAclData["group_acls"][aAclData["current"]] end if ( #table >= 1 ) then guiSetText ( aACLDropCurrent, table[1] ) end for id, object in ipairs ( table ) do guiGridListSetItemText ( aACLDropList, guiGridListAddRow ( aACLDropList ), 1, object, false, false ) end elseif ( source == aACLDropDown ) then guiSetVisible ( aACLDropList, true ) guiBringToFront ( aACLDropList ) elseif ( source == aACLCancel ) then aclDisplayOptions ( aAclData["viewing"], aAclData["current"] ) elseif ( source == aACLOk ) then Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 (edited) اها فهمتكك ^ مو كذآ قصدي قصدي الي دآخل الاسل آلازرآر آلي بلاسل مثل الي اعطي رتب و آسحب رتب Edited August 7, 2015 by Guest Link to comment
; Mr.T76eM # Posted August 7, 2015 Share Posted August 7, 2015 اها فهمتكك ^مو كذآ قصدي قصدي الي دآخل الاسل آلازرآر آلي بلاسل مثل الي اعطي رتب و آسحب رتب إذا معك سكآيب ضيفني : alm1098 ايه يمديكـ تقفل اي زر تبيه بس دور على اسمه وحط تحته guiSetEnabled(اسم الزر,false) بعدين تضيف الكود حق الكلينت تحت وتحط نفس اسم الزر ويفتح الزر بـ كوماند إذا معك سكآيب ضيفني : alm1098 اي شيء تبيه هنا مو سكايب عشان غيركـ يتعلم ! Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 اها فهمتكك ^مو كذآ قصدي قصدي الي دآخل الاسل آلازرآر آلي بلاسل مثل الي اعطي رتب و آسحب رتب إذا معك سكآيب ضيفني : alm1098 ايه يمديكـ تقفل اي زر تبيه بس دور على اسمه وحط تحته guiSetEnabled(اسم الزر,false) بعدين تضيف الكود حق الكلينت تحت وتحط نفس اسم الزر ويفتح الزر بـ كوماند إذا معك سكآيب ضيفني : alm1098 اي شيء تبيه هنا مو سكايب عشان غيركـ يتعلم ! طيب إذا ابي اضيف زر آحطه ب آي مسار ؟ ولا عآدي ب آي مسآر آو بمسار gui\admin_main.lua Link to comment
; Mr.T76eM # Posted August 7, 2015 Share Posted August 7, 2015 طيب إذا ابي اضيف زر آحطه ب آي مسار ؟ ولا عآدي ب آي مسآر آو بمسار gui\admin_main.lua انت تبي تضيف زر ولا تبي تقفل زر ولا وش الي تبيه كل شوي تجي بطلب اخر ؟ الازرار كلها اظن موجودة في هذا الملف client/gui/admin_main على ما اعتقد Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 طيب إذا ابي اضيف زر آحطه ب آي مسار ؟ ولا عآدي ب آي مسآر آو بمسار gui\admin_main.lua انت تبي تضيف زر ولا تبي تقفل زر ولا وش الي تبيه كل شوي تجي بطلب اخر ؟ الازرار كلها اظن موجودة في هذا الملف client/gui/admin_main على ما اعتقد اقفل Link to comment
; Mr.T76eM # Posted August 7, 2015 Share Posted August 7, 2015 اقفل اي زر تبي تقفله ؟ Link to comment
# DHwROk ~ Posted August 7, 2015 Author Share Posted August 7, 2015 اقفل اي زر تبي تقفله ؟ متشتغل ليه ؟ aACLAddObject انا قفلتهم بس ولا تجي الرتبه ok لو آضغط عليها يجي و م آقدر آضغط ذي آلكودآت --[[********************************** * * Multi Theft Auto - Admin Panel * * gui\admin_acl.lua * * Original File by lil_Toady * **************************************]] aAclForm = nil aAclData = {} function aManageACL () if ( aAclForm == nil ) then aAclData["group_objects"] = {} aAclData["group_acls"] = {} aAclData["acl_rights"] = {} local x, y = guiGetScreenSize() aAclForm = guiCreateWindow ( x / 2 - 230, y / 2 - 250, 460, 500, "ACL Management", false ) aACLList = guiCreateGridList ( 0.03, 0.05, 0.50, 0.90, true, aAclForm ) guiGridListSetSortingEnabled ( aACLList, false ) guiGridListAddColumn( aACLList, "", 0.10 ) guiGridListAddColumn( aACLList, "", 0.85 ) aACLCreateGroup = guiCreateButton ( 0.55, 0.05, 0.40, 0.04, "Create group", true, aAclForm ) guiSetEnabled ( aACLCreateGroup, false ) aACLCreateACL = guiCreateButton ( 0.55, 0.10, 0.40, 0.04, "Create ACL", true, aAclForm ) guiSetEnabled ( aACLCreateACL, false ) aACLLabel = guiCreateLabel ( 0.55, 0.19, 0.40, 0.04, "", true, aAclForm ) aACLSeparator = guiCreateStaticImage ( 0.55, 0.235, 0.40, 0.0025, "client\\images\\dot.png", true, aAclForm ) aACLDestroyGroup = guiCreateButton ( 0.55, 0.25, 0.40, 0.04, "Destroy group", true, aAclForm ) guiSetEnabled ( aACLDestroyGroup, false ) aACLDestroyACL = guiCreateButton ( 0.55, 0.25, 0.40, 0.04, "Destroy ACL", true, aAclForm ) guiSetEnabled ( aACLDestroyACL, false ) aACLAddObject = guiCreateButton ( 0.55, 0.30, 0.40, 0.04, "Add Object", true, aAclForm ) guiSetEnabled ( aACLAddObject, false ) aACLRemoveObject = guiCreateButton ( 0.55, 0.35, 0.40, 0.04, "Remove Object", true, aAclForm ) guiSetEnabled ( aACLRemoveObject, false ) aACLAddACL = guiCreateButton ( 0.55, 0.40, 0.40, 0.04, "Add ACL", true, aAclForm ) guiSetEnabled ( aACLAddACL, false ) aACLRemoveACL = guiCreateButton ( 0.55, 0.45, 0.40, 0.04, "Remove ACL", true, aAclForm ) guiSetEnabled ( aACLRemoveACL, false ) aACLActionLabel = guiCreateLabel ( 0.55, 0.31, 0.40, 0.04, "", true, aAclForm ) aACLDropCurrent = guiCreateEdit ( 0.55, 0.35, 0.40, 0.04, "", true, aAclForm ) aACLDropDown = guiCreateStaticImage ( 0.91, 0.35, 0.04, 0.04, "client\\images\\dropdown.png", true, aAclForm ) aACLDropList = guiCreateGridList ( 0.55, 0.35, 0.40, 0.30, true, aAclForm ) guiGridListAddColumn( aACLDropList, "", 0.85 ) guiSetVisible ( aACLDropList, false ) aACLOk = guiCreateButton ( 0.55, 0.40, 0.19, 0.04, "Ok", true, aAclForm ) aACLCancel = guiCreateButton ( 0.76, 0.40, 0.19, 0.04, "Cancel", true, aAclForm ) aACLAddRight = guiCreateButton ( 0.55, 0.30, 0.40, 0.04, "Add Right", true, aAclForm ) aACLExit = guiCreateButton ( 0.75, 0.90, 0.27, 0.04, "Close", true, aAclForm ) aclDisplayOptions ( "", "" ) addEvent ( "aAdminACL", true ) addEventHandler ( "aAdminACL", localPlayer, aAdminACL ) addEventHandler ( "onClientGUIClick", aAclForm, aClientACLClick ) addEventHandler ( "onClientGUIDoubleClick", aAclForm, aClientACLDoubleClick ) --Register With Admin Form aRegister ( "ACLManage", aAclForm, aManageACL, aACLClose ) triggerServerEvent ( "aAdmin", localPlayer, "sync", "aclgroups" ) end guiSetVisible ( aAclForm, true ) guiBringToFront ( aAclForm ) end function aACLClose ( destroy ) if ( ( destroy ) or ( aPerformanceACL and guiCheckBoxGetSelected ( aPerformanceACL ) ) ) then if ( aAclForm ) then removeEventHandler ( "onClientGUIClick", aAclForm, aClientACLClick ) removeEventHandler ( "onClientGUIDoubleClick", aAclForm, aClientACLDoubleClick ) destroyElement ( aAclForm ) aAclForm = nil end else guiSetVisible ( aAclForm, false ) end end function aAdminACL ( type, acltable ) guiGridListClear ( aACLList ) if ( type == "aclgroups" ) then aAclData["viewing"] = nil aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) aAclData["groups"] = acltable["groups"] for id, name in ipairs ( acltable["groups"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end local row = guiGridListAddRow ( aACLList ) aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) aAclData["acl"] = acltable["acl"] for id, name in ipairs ( acltable["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end aclDisplayOptions ( "", "" ) elseif ( type == "aclobjects" ) then aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) for i, group in ipairs ( aAclData["groups"] ) do local group_row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, group_row, 2, group, false, false ) if ( group == acltable["name"] ) then aclDisplayOptions ( "Group", acltable["name"] ) aAclData["objects_row"] = guiGridListAddRow ( aACLList ) aAclData["group_objects"][group] = acltable["objects"] guiGridListSetItemText ( aACLList, aAclData["objects_row"], 2, " objects:", true, false ) for j, object in ipairs ( acltable["objects"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..object, false, false ) end aAclData["acls_row"] = guiGridListAddRow ( aACLList ) aAclData["group_acls"][group] = acltable["acl"] guiGridListSetItemText ( aACLList, aAclData["acls_row"], 2, " acl:", true, false ) for j, acl in ipairs ( acltable["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..acl, false, false ) end guiGridListSetItemText ( aACLList, group_row, 1, "-", false, false ) else guiGridListSetItemText ( aACLList, group_row, 1, "+", false, false ) end end aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) for id, name in ipairs ( aAclData["acl"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end elseif ( type == "aclrights" ) then aAclData["viewing"] = "rights" aAclData["group_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["group_row"], 2, "Groups:", true, false ) for id, name in ipairs ( aAclData["groups"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 1, "+", false, false ) guiGridListSetItemText ( aACLList, row, 2, name, false, false ) end aAclData["acl_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["acl_row"], 2, "ACL:", true, false ) for i, acl in ipairs ( aAclData["acl"] ) do local acl_row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, acl_row, 2, acl, false, false ) if ( acl == acltable["name"] ) then aAclData["acl_rights"][acl] = acltable["rights"] aclDisplayOptions ( "ACL", acltable["name"] ) aAclData["rights_row"] = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, aAclData["rights_row"], 2, " rights:", true, false ) for name, access in pairs ( acltable["rights"] ) do local row = guiGridListAddRow ( aACLList ) guiGridListSetItemText ( aACLList, row, 2, " "..name, false, false ) if guiGridListSetItemColor then guiGridListSetItemColor ( aACLList, row, 2, access and 0 or 255, access and 255 or 0, 0, 255) end end guiGridListSetItemText ( aACLList, acl_row, 1, "-", false, false ) else guiGridListSetItemText ( aACLList, acl_row, 1, "+", false, false ) end end end end function aClientACLDoubleClick ( button ) if ( button == "left" ) then if ( source == aACLList ) then local row = guiGridListGetSelectedItem ( aACLList ) if ( row ~= -1 ) then local clicked = guiGridListGetItemText ( aACLList, row, 2 ) local state = guiGridListGetItemText ( aACLList, row, 1 ) if ( row > aAclData["acl_row"] ) then for i, acl in ipairs ( aAclData["acl"] ) do if ( acl == clicked ) then if ( state == "-" ) then triggerServerEvent ( "aAdmin", localPlayer, "sync", "aclgroups" ) else triggerServerEvent ( "aAdmin", localPlayer, "sync", "aclrights", clicked ) end return end end else for i, group in ipairs ( aAclData["groups"] ) do if ( group == clicked ) then if ( state == "-" ) then triggerServerEvent ( "aAdmin", localPlayer, "sync", "aclgroups" ) else triggerServerEvent ( "aAdmin", localPlayer, "sync", "aclobjects", clicked ) end return end end end end elseif ( source == aACLDropList ) then local row = guiGridListGetSelectedItem ( aACLDropList ) if ( row ~= -1 ) then local clicked = guiGridListGetItemText ( aACLDropList, row, 1 ) guiSetText ( aACLDropCurrent, clicked ) guiSetVisible ( aACLDropList, false ) end end end end function aClientACLClick ( button ) if ( source ~= aACLDropList ) then guiSetVisible ( aACLDropList, false ) end if ( button == "left" ) then if ( source == aACLExit ) then aACLClose ( false ) elseif ( source == aACLCreateGroup ) then aInputBox ( "Create ACL Group", "Enter group name:", "", "aclCreateGroup" ) elseif ( source == aACLCreateACL ) then aInputBox ( "Create ACL", "Enter acl name:", "", "aclCreate" ) elseif ( source == aACLAddObject ) then aInputBox ( "Create ACL Group", "Enter object name:", "", "aclAddObject", aAclData["current"] ) elseif ( source == aACLAddRight ) then aInputBox ( "Create ACL", "Enter right name:", "", "aclAddRight", aAclData["current"] ) elseif ( source == aACLDestroyGroup ) then aMessageBox ( "warning", "Are you sure to destroy "..aAclData["current"].." group?", "aclDestroyGroup", aAclData["current"]) elseif ( source == aACLDestroyACL ) then aMessageBox ( "warning", "Are you sure to destroy "..aAclData["current"].." ACL?", "aclDestroy", aAclData["current"]) elseif ( ( source == aACLRemoveObject ) or ( source == aACLAddACL ) or ( source == aACLRemoveACL ) ) then guiSetVisible ( aACLAddObject, false ) guiSetVisible ( aACLRemoveObject, false ) guiSetVisible ( aACLAddACL, false ) guiSetVisible ( aACLRemoveACL, false ) guiSetVisible ( aACLDropCurrent, true ) guiSetVisible ( aACLDropDown, true ) guiSetVisible ( aACLOk, true ) guiSetVisible ( aACLCancel, true ) guiSetVisible ( aACLActionLabel, true ) guiGridListClear ( aACLDropList ) local table = {} guiSetText ( aACLActionLabel, guiGetText ( source )..":" ) if ( source == aACLRemoveObject ) then table = aAclData["group_objects"][aAclData["current"]] elseif ( source == aACLAddACL ) then table = aAclData["acl"] elseif ( source == aACLRemoveACL ) then table = aAclData["group_acls"][aAclData["current"]] end if ( #table >= 1 ) then guiSetText ( aACLDropCurrent, table[1] ) end for id, object in ipairs ( table ) do guiGridListSetItemText ( aACLDropList, guiGridListAddRow ( aACLDropList ), 1, object, false, false ) end 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