-- # Server Side !
local groupsNotCan = { "Head.Admin" }
function isPlayerInGroup ( player )
for k,v in ipairs ( groupsNotCan ) do
if ( isObjectInACLGroup("user." .. getAccountName( getPlayerAccount ( player ) ), aclGetGroup(v)) ) then
return true
end
end
end
addEventHandler("onPlayerLogin", root,
function ()
if ( isPlayerInGroup ( source ) ) then
setElementData ( source, "closeunMute", true )
else
setElementData ( source, "closeunMute", false )
end
end
)
-- # Client Side
function aAdminRefresh ()
if ( guiGridListGetSelectedItem ( aTab1.PlayerList ) ~= -1 ) then
local player = getPlayerFromNick ( guiGridListGetItemPlayerName ( aTab1.PlayerList, guiGridListGetSelectedItem( aTab1.PlayerList ), 1 ) )
if ( player and aPlayers[player] ) then
guiSetText ( aTab1.Name, "Name: "..aPlayers[player]["name"] )
guiSetText ( aTab1.Mute, iif ( aPlayers[player]["mute"], "Unmute", "Mute" ) )
if ( guiGetText ( aTab1.Mute ) == "Unmute" ) then
if ( getElementData ( localPlayer, "closeunMute" ) == true ) then
guiSetEnabled ( aTab1.Mute, false )
end
else
guiSetEnabled ( aTab1.Mute, true )
end
guiSetText ( aTab1.Freeze, iif ( aPlayers[player]["freeze"], "Unfreeze", "Freeze" ) )
--guiSetText ( aTab1.Username, "Community Username: "..( aPlayers[player]["username"] or "" ) )
guiSetText ( aTab1.Version, "Version: "..( aPlayers[player]["version"] or "" ) )
guiSetText ( aTab1.Accountname, "Account Name: "..( aPlayers[player]["accountname"] or "" ) )
guiSetText ( aTab1.Groups, "Groups: "..( aPlayers[player]["groups"] or "None" ) )
if ( isPlayerDead ( player ) ) then guiSetText ( aTab1.Health, "Health: Dead" )
else guiSetText ( aTab1.Health, "Health: "..math.ceil ( getElementHealth ( player ) ).."%" ) end
guiSetText ( aTab1.Armour, "Armour: "..math.ceil ( getPedArmor ( player ) ).."%" )
guiSetText ( aTab1.Skin, "Skin: "..iif ( getElementModel ( player ), getElementModel ( player ), "N/A" ) )
if ( getPlayerTeam ( player ) ) then guiSetText ( aTab1.Team, "Team: "..getTeamName ( getPlayerTeam ( player ) ) )
else guiSetText ( aTab1.Team, "Team: None" ) end
guiSetText ( aTab1.Ping, "Ping: "..getPlayerPing ( player ) )
guiSetText ( aTab1.Money, "Money: "..( aPlayers[player]["money"] or 0 ) )
if ( getElementDimension ( player ) ) then guiSetText ( aTab1.Dimension, "Dimension: "..getElementDimension ( player ) ) end
if ( getElementInterior ( player ) ) then guiSetText ( aTab1.Interior, "Interior: "..getElementInterior ( player ) ) end
guiSetText ( aTab1.JetPack, iif ( doesPedHaveJetPack ( player ), "Remove JetPack", "Give JetPack" ) )
if ( getPedWeapon ( player ) ) then guiSetText ( aTab1.Weapon, "Weapon: "..getWeaponNameFromID ( getPedWeapon ( player ) ).." (ID: "..getPedWeapon ( player )..")" ) end
local x, y, z = getElementPosition ( player )
guiSetText ( aTab1.Area, "Area: "..iif ( getZoneName ( x, y, z, false ) == getZoneName ( x, y, z, true ), getZoneName ( x, y, z, false ), getZoneName ( x, y, z, false ).." ("..getZoneName ( x, y, z, true )..")" ) )
guiSetText ( aTab1.PositionX, "X: "..x )
guiSetText ( aTab1.PositionY, "Y: "..y )
guiSetText ( aTab1.PositionZ, "Z: "..z )
local vehicle = getPedOccupiedVehicle ( player )
if ( vehicle ) then
guiSetText ( aTab1.Vehicle, "Vehicle: "..getVehicleName ( vehicle ).." (ID: "..getElementModel ( vehicle )..")" )
guiSetText ( aTab1.VehicleHealth, "Vehicle Health: "..math.ceil ( getElementHealth ( vehicle ) ).."%" )
else
guiSetText ( aTab1.Vehicle, "Vehicle: Foot" )
guiSetText ( aTab1.VehicleHealth, "Vehicle Health: 0%" )
end
if ( aPlayers[player]["admin"] ) then
guiSetText(aTab1.Admin, "Revoke admin rights")
else
guiSetText(aTab1.Admin, "Give admin rights")
end
return player
end
end
end
* لا هنت إطرح لي ملف الكلنت admin_main.lua حق الادمنية عشان اكمل الكود
* طبعا ها الكود تدمجه مع الادمنية نفسها في ملف سيرفر
* في السيرفر سطر 2 يمكنك زيادة القروبات بحيث م تريد
* إبحث عن الوظيفة اللي عدلت عليها بالكلنت واستبدلها