هذآ هو سويته لككـ وما عليك من الي يقرقرون فوق ذول ^
-- # Client Side :
Message = ""
local screenW, screenH = guiGetScreenSize()
addEvent ( "SetAdminMsg", true )
addEventHandler ( "SetAdminMsg", getRootElement( ),
function ( message )
Message = message
end )
GUIEditor = {
button = {}
}
Set_BTN = guiCreateButton(0.36, 0.48, 0.11, 0.04, "", true)
guiSetAlpha(Set_BTN, 0.00)
Delete_BTN = guiCreateButton(0.53, 0.48, 0.11, 0.04, "", true)
guiSetAlpha(Delete_BTN, 0.00)
Close_BTN = guiCreateButton(0.59, 0.68, 0.11, 0.04, "", true)
guiSetAlpha(Close_BTN, 0.00)
notVis_edit = guiCreateEdit(0.36, 0.37, 0.28, 0.04, "", true)
guiSetAlpha(notVis_edit, 0.00)
guiSetProperty(notVis_edit, "NormalTextColour", "FEFD0000")
guiEditSetReadOnly(notVis_edit, true)
Message_edit = guiCreateEdit(0.36, 0.39, 0.28, 0.04, "# Message ...", true)
guiSetProperty(Message_edit, "NormalTextColour", "FEFD0000")
guiSetVisible(Set_BTN,false)
guiSetVisible(Delete_BTN,false)
guiSetVisible(Close_BTN,false)
guiSetVisible(notVis_edit,false)
guiSetVisible(Message_edit,false)
local screenW, screenH = guiGetScreenSize()
function DXR()
dxDrawLine((screenW * 0.2914) - 1, (screenH * 0.2630) - 1, (screenW * 0.2914) - 1, screenH * 0.7370, tocolor(253, 0, 0, 254), 1, false)
dxDrawLine(screenW * 0.7086, (screenH * 0.2630) - 1, (screenW * 0.2914) - 1, (screenH * 0.2630) - 1, tocolor(253, 0, 0, 254), 1, false)
dxDrawLine((screenW * 0.2914) - 1, screenH * 0.7370, screenW * 0.7086, screenH * 0.7370, tocolor(253, 0, 0, 254), 1, false)
dxDrawLine(screenW * 0.7086, screenH * 0.7370, screenW * 0.7086, (screenH * 0.2630) - 1, tocolor(253, 0, 0, 254), 1, false)
dxDrawRectangle(screenW * 0.2914, screenH * 0.2630, screenW * 0.4173, screenH * 0.4740, tocolor(0, 239, 254, 158), false)
dxDrawLine(406, 426, 406, 426, tocolor(255, 255, 255, 255), 1, false)
dxDrawLine(screenW * 0.2914, screenH * 0.3047, screenW * 0.7094, screenH * 0.3047, tocolor(253, 0, 0, 254), 3, false)
dxDrawText("=[ Admin Message System ]=", screenW * 0.2914, screenH * 0.2630, screenW * 0.7086, screenH * 0.3047, tocolor(253, 0, 0, 254), 1.00, "bankgothic", "center", "center", false, false, false, false, false)
dxDrawText("# - Put message in edit box ...", screenW * 0.2943, screenH * 0.3125, screenW * 0.4575, screenH * 0.3424, tocolor(253, 0, 0, 254), 1.10, "default-bold", "left", "center", false, false, false, false, false)
dxDrawRectangle(137, 420, 2, 0, tocolor(255, 255, 255, 255), false)
dxDrawLine((screenW * 0.3551) - 1, (screenH * 0.4766) - 1, (screenW * 0.3551) - 1, screenH * 0.5195, tocolor(249, 251, 0, 254), 1, false)
dxDrawLine(screenW * 0.4627, (screenH * 0.4766) - 1, (screenW * 0.3551) - 1, (screenH * 0.4766) - 1, tocolor(249, 251, 0, 254), 1, false)
dxDrawLine((screenW * 0.3551) - 1, screenH * 0.5195, screenW * 0.4627, screenH * 0.5195, tocolor(249, 251, 0, 254), 1, false)
dxDrawLine(screenW * 0.4627, screenH * 0.5195, screenW * 0.4627, (screenH * 0.4766) - 1, tocolor(249, 251, 0, 254), 1, false)
dxDrawRectangle(screenW * 0.3551, screenH * 0.4766, screenW * 0.1076, screenH * 0.0430, tocolor(252, 0, 0, 254), false)
dxDrawLine((screenW * 0.5264) - 1, (screenH * 0.4766) - 1, (screenW * 0.5264) - 1, screenH * 0.5195, tocolor(249, 251, 0, 254), 1, false)
dxDrawLine(screenW * 0.6340, (screenH * 0.4766) - 1, (screenW * 0.5264) - 1, (screenH * 0.4766) - 1, tocolor(249, 251, 0, 254), 1, false)
dxDrawLine((screenW * 0.5264) - 1, screenH * 0.5195, screenW * 0.6340, screenH * 0.5195, tocolor(249, 251, 0, 254), 1, false)
dxDrawLine(screenW * 0.6340, screenH * 0.5195, screenW * 0.6340, (screenH * 0.4766) - 1, tocolor(249, 251, 0, 254), 1, false)
dxDrawRectangle(screenW * 0.5264, screenH * 0.4766, screenW * 0.1076, screenH * 0.0430, tocolor(252, 0, 0, 254), false)
dxDrawText("", 134, 420, 134, 420, tocolor(255, 255, 255, 255), 1.00, "default", "left", "top", false, false, false, false, false)
dxDrawText("Set Message", (screenW * 0.3551) - 1, (screenH * 0.4766) - 1, (screenW * 0.4627) - 1, (screenH * 0.5195) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Set Message", (screenW * 0.3551) + 1, (screenH * 0.4766) - 1, (screenW * 0.4627) + 1, (screenH * 0.5195) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Set Message", (screenW * 0.3551) - 1, (screenH * 0.4766) + 1, (screenW * 0.4627) - 1, (screenH * 0.5195) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Set Message", (screenW * 0.3551) + 1, (screenH * 0.4766) + 1, (screenW * 0.4627) + 1, (screenH * 0.5195) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Set Message", screenW * 0.3551, screenH * 0.4766, screenW * 0.4627, screenH * 0.5195, tocolor(0, 250, 242, 254), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawLine((screenW * 0.5937) - 1, (screenH * 0.6810) - 1, (screenW * 0.5937) - 1, screenH * 0.7240, tocolor(249, 241, 0, 254), 1, false)
dxDrawLine(screenW * 0.7013, (screenH * 0.6810) - 1, (screenW * 0.5937) - 1, (screenH * 0.6810) - 1, tocolor(249, 241, 0, 254), 1, false)
dxDrawLine((screenW * 0.5937) - 1, screenH * 0.7240, screenW * 0.7013, screenH * 0.7240, tocolor(249, 241, 0, 254), 1, false)
dxDrawLine(screenW * 0.7013, screenH * 0.7240, screenW * 0.7013, (screenH * 0.6810) - 1, tocolor(249, 241, 0, 254), 1, false)
dxDrawRectangle(screenW * 0.5937, screenH * 0.6810, screenW * 0.1076, screenH * 0.0430, tocolor(252, 0, 0, 254), false)
dxDrawText("Delete Message", (screenW * 0.5264) - 1, (screenH * 0.4766) - 1, (screenW * 0.6340) - 1, (screenH * 0.5195) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Delete Message", (screenW * 0.5264) + 1, (screenH * 0.4766) - 1, (screenW * 0.6340) + 1, (screenH * 0.5195) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Delete Message", (screenW * 0.5264) - 1, (screenH * 0.4766) + 1, (screenW * 0.6340) - 1, (screenH * 0.5195) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Delete Message", (screenW * 0.5264) + 1, (screenH * 0.4766) + 1, (screenW * 0.6340) + 1, (screenH * 0.5195) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Delete Message", screenW * 0.5264, screenH * 0.4766, screenW * 0.6340, screenH * 0.5195, tocolor(0, 250, 242, 254), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Close Window", (screenW * 0.5937) - 1, (screenH * 0.6810) - 1, (screenW * 0.7013) - 1, (screenH * 0.7240) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Close Window", (screenW * 0.5937) + 1, (screenH * 0.6810) - 1, (screenW * 0.7013) + 1, (screenH * 0.7240) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Close Window", (screenW * 0.5937) - 1, (screenH * 0.6810) + 1, (screenW * 0.7013) - 1, (screenH * 0.7240) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Close Window", (screenW * 0.5937) + 1, (screenH * 0.6810) + 1, (screenW * 0.7013) + 1, (screenH * 0.7240) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("Close Window", screenW * 0.5937, screenH * 0.6810, screenW * 0.7013, screenH * 0.7240, tocolor(0, 250, 242, 254), 1.00, "default-bold", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.2943) - 1, (screenH * 0.3294) - 1, (screenW * 0.3045) - 1, (screenH * 0.7031) - 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.2943) + 1, (screenH * 0.3294) - 1, (screenW * 0.3045) + 1, (screenH * 0.7031) - 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.2943) - 1, (screenH * 0.3294) + 1, (screenW * 0.3045) - 1, (screenH * 0.7031) + 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.2943) + 1, (screenH * 0.3294) + 1, (screenW * 0.3045) + 1, (screenH * 0.7031) + 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||\n||", screenW * 0.2943, screenH * 0.3294, screenW * 0.3045, screenH * 0.7031, tocolor(249, 241, 0, 254), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.6984) - 1, (screenH * 0.3047) - 1, (screenW * 0.7086) - 1, (screenH * 0.6354) - 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.6984) + 1, (screenH * 0.3047) - 1, (screenW * 0.7086) + 1, (screenH * 0.6354) - 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.6984) - 1, (screenH * 0.3047) + 1, (screenW * 0.7086) - 1, (screenH * 0.6354) + 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||", (screenW * 0.6984) + 1, (screenH * 0.3047) + 1, (screenW * 0.7086) + 1, (screenH * 0.6354) + 1, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("\n||\n||\n||\n||\n||\n||\n||\n||\n||", screenW * 0.6984, screenH * 0.3047, screenW * 0.7086, screenH * 0.6354, tocolor(249, 241, 0, 254), 1.00, "pricedown", "center", "center", false, false, false, false, false)
dxDrawText("2015", (screenW * 0.3067) - 1, (screenH * 0.7031) - 1, (screenW * 0.4700) - 1, (screenH * 0.7331) - 1, tocolor(0, 248, 234, 254), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("2015", (screenW * 0.3067) + 1, (screenH * 0.7031) - 1, (screenW * 0.4700) + 1, (screenH * 0.7331) - 1, tocolor(0, 248, 234, 254), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("2015", (screenW * 0.3067) - 1, (screenH * 0.7031) + 1, (screenW * 0.4700) - 1, (screenH * 0.7331) + 1, tocolor(0, 248, 234, 254), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("2015", (screenW * 0.3067) + 1, (screenH * 0.7031) + 1, (screenW * 0.4700) + 1, (screenH * 0.7331) + 1, tocolor(0, 248, 234, 254), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("2015", screenW * 0.3067, screenH * 0.7031, screenW * 0.4700, screenH * 0.7331, tocolor(23, 247, 0, 254), 1.00, "default-bold", "left", "center", false, false, false, false, false)
end
function SHOW()
if removeEventHandler( "onClientRender",root, DXR) then
removeEventHandler( "onClientRender", root, DXR)
guiSetInputEnabled(false)
guiSetVisible(Set_BTN,false)
guiSetVisible(Delete_BTN,false)
guiSetVisible(Close_BTN,false)
guiSetVisible(notVis_edit,false)
guiSetVisible(Message_edit,false)
showCursor(false)
else
addEventHandler( "onClientRender", root, DXR)
guiSetInputEnabled(true)
guiSetVisible(Set_BTN,true)
guiSetVisible(Delete_BTN,true)
guiSetVisible(Close_BTN,true)
guiSetVisible(notVis_edit,true)
guiSetVisible(Message_edit,true)
showCursor(true)
end
end
bindKey("F5","down", SHOW)
function Empty()
dxDrawText("# Admin : "..Message, (screenW * 0.0073) - 1, (screenH * 0.2305) - 1, (screenW * 0.0483) - 1, (screenH * 0.2578) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..Message, (screenW * 0.0073) + 1, (screenH * 0.2305) - 1, (screenW * 0.0483) + 1, (screenH * 0.2578) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..Message, (screenW * 0.0073) - 1, (screenH * 0.2305) + 1, (screenW * 0.0483) - 1, (screenH * 0.2578) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..Message, (screenW * 0.0073) + 1, (screenH * 0.2305) + 1, (screenW * 0.0483) + 1, (screenH * 0.2578) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..Message, screenW * 0.0073, screenH * 0.2305, screenW * 0.0483, screenH * 0.2578, tocolor(0, 251, 254, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
end
addEventHandler ("onClientRender",root,Empty)
function dx2( )
dxDrawText("# Admin : "..guiGetText(notVis_edit), (screenW * 0.0073) - 1, (screenH * 0.2305) - 1, (screenW * 0.0483) - 1, (screenH * 0.2578) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..guiGetText(notVis_edit), (screenW * 0.0073) + 1, (screenH * 0.2305) - 1, (screenW * 0.0483) + 1, (screenH * 0.2578) - 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..guiGetText(notVis_edit), (screenW * 0.0073) - 1, (screenH * 0.2305) + 1, (screenW * 0.0483) - 1, (screenH * 0.2578) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..guiGetText(notVis_edit), (screenW * 0.0073) + 1, (screenH * 0.2305) + 1, (screenW * 0.0483) + 1, (screenH * 0.2578) + 1, tocolor(0, 0, 0, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
dxDrawText("# Admin : "..guiGetText(notVis_edit), screenW * 0.0073, screenH * 0.2305, screenW * 0.0483, screenH * 0.2578, tocolor(0, 251, 254, 255), 1.00, "default-bold", "left", "center", false, false, false, false, false)
end
addEventHandler ( "onClientResourceStart", resourceRoot, function ( )
triggerServerEvent ( "SetMessage", localPlayer )
end
)
addEventHandler("onClientGUIClick", root,
function()
if source == Delete_BTN then
removeEventHandler('onClientRender', root, dx2)
addEventHandler("onClientRender", root, Empty )
end
end
)
addEventHandler("onClientGUIClick", root,
function ()
if source == Set_BTN then
GET = guiGetText(Message_edit)
if ( guiGetText (Message_edit) ~= " " ) then
removeEventHandler('onClientRender',root, Empty)
addEventHandler("onClientRender", root, dx2 )
triggerServerEvent ( "SetMessage", localPlayer )
guiSetText(notVis_edit, GET)
elseif source == Close_BTN then
removeEventHandler( "onClientRender", root, DXR)
removeEventHandler('onClientRender',root, Empty)
removeEventHandler("onClientRender", root, dx2 )
guiSetInputEnabled(false)
guiSetVisible(Set_BTN,false)
guiSetVisible(Delete_BTN,false)
guiSetVisible(Close_BTN,false)
guiSetVisible(notVis_edit,false)
guiSetVisible(Message_edit,false)
showCursor(false)
end
end
end
)
-- # Server Side :
Groups = {
"Admin",
"Console",
}
function check ( thePlayer, commandName, ... )
local accName = getAccountName ( getPlayerAccount ( thePlayer ) )
local veve = { ... }
local message = table.concat ( veve, " " )
for i, v in ipairs ( Groups ) do
if isObjectInACLGroup ( "user."..accName, aclGetGroup ( v ) ) then
setElementData ( resourceRoot, "MessageAdmin", message )
SaveMessage ( )
triggerClientEvent ( "SetAdminMsg", getRootElement( ), getElementData ( resourceRoot, "MessageAdmin" ) )
end
end
end
addCommandHandler( "Admin", check )
addEventHandler ( "onResourceStart", resourceRoot, function ( )
executeSQLQuery("CREATE TABLE IF NOT EXISTS SaveMessages (Message, Server)")
end
)
addEvent ( "SetMessage", true )
addEventHandler ( "SetMessage", root, function ( )
getMessage ( )
end
)
SaveMessage = function ( )
local msg = executeSQLQuery ( "SELECT * FROM SaveMessages WHERE Server = '" .. getServerName ( ) .."'" )
if ( #msg ~= 0 ) then
return executeSQLQuery("UPDATE SaveMessages SET Message=? WHERE Server=? ", tostring ( getElementData ( resourceRoot, "MessageAdmin" ) ), getServerName ( ) )
else
return executeSQLQuery("INSERT INTO SaveMessages (Message,Server) VALUES(?,?)", tostring ( getElementData ( resourceRoot, "MessageAdmin" ) ), getServerName ( ) )
end
end
getMessage = function ( )
local msg = executeSQLQuery ( "SELECT * FROM SaveMessages" )
if ( #msg ~= 0 ) then
setElementData ( resourceRoot, "MessageAdmin", msg[1]["Message"] )
return setTimer ( triggerClientEvent, 1000, 1, "SetAdminMsg", getRootElement( ), getElementData ( resourceRoot, "MessageAdmin" ) )
else
return setTimer ( triggerClientEvent, 1000, 1, "SetAdminMsg", getRootElement( ), " " )
end
end