السلآم عليكم ورحمة الله وبركاتة
عنــدي طلب بسيط لاهنتم
الحين عندي قيم مود
ولكن لما للاعب يسجل الدخول وتمام التمام
يوديه علي سباون واحد
يعني لو فيه 5 في السيرفر وسجلو دخولهم راح يرسبنو في نفس السباون
مع العلم اني سويت تيبل في السيرفر سايد
هذي الاكواد
Client
font = guiCreateFont("Font.ttf", 10)
local sm = {}
sm.moov = 0
sm.object1, sm.object2 = nil, nil
local function removeCamHandler ()
if(sm.moov == 1) then
sm.moov = 0
removeEventHandler ( "onClientPreRender", getRootElement(), camRender )
end
end
function camRender ()
if sm.object1 and isElement(sm.object1) then
local x1, y1, z1 = getElementPosition ( sm.object1 )
local x2, y2, z2 = getElementPosition ( sm.object2 )
setCameraMatrix ( x1, y1, z1, x2, y2, z2 )
end
end
function smoothMoveCamera ( x1, y1, z1, x1t, y1t, z1t, x2, y2, z2, x2t, y2t, z2t, time )
if(sm.moov == 1) then return false end
sm.object1 = createObject ( 1337, x1, y1, z1 )
sm.object2 = createObject ( 1337, x1t, y1t, z1t )
setElementAlpha ( sm.object1, 0 )
setElementAlpha ( sm.object2, 0 )
setObjectScale(sm.object1, 0.01)
setObjectScale(sm.object2, 0.01)
moveObject ( sm.object1, time, x2, y2, z2, 0, 0, 0, "InOutQuad" )
moveObject ( sm.object2, time, x2t, y2t, z2t, 0, 0, 0, "InOutQuad" )
addEventHandler ( "onClientPreRender", getRootElement(), camRender )
sm.moov = 1
setTimer ( removeCamHandler, time, 1 )
setTimer ( destroyElement, time, 1, sm.object1 )
setTimer ( destroyElement, time, 1, sm.object2 )
return true
end
function centerWindow(center_window)
local screenW,screenH=guiGetScreenSize()
local windowW,windowH=guiGetSize(center_window,false)
local x,y = (screenW-windowW)/2,(screenH-windowH)/2
guiSetPosition(center_window,x,y,false)
end
function guiCreateWindow( x2, y2, width2, height2, titleBarText2, relative2 )
mainBackground = guiCreateStaticImage ( x2, y2, width2, height2, "img.png", relative2 )
mainBackgroundLabel = guiCreateLabel ( 55, 0, 450, 100, titleBarText2, false, mainBackground )
guiSetFont ( mainBackgroundLabel, Font )
font = guiCreateFont("Font.ttf", 10)
guiLabelSetColor(mainBackgroundLabel, 0, 233, 255)
guiSetEnabled ( mainBackgroundLabel, false )
return mainBackground
end
addEventHandler("onClientResourceStart",resourceRoot,
function ()
setTimer(function ()
if isPedInVehicle(localPlayer) then destroyElement(getPedOccupiedVehicle(localPlayer)) end
dx = true
setCameraMatrix(2070.6166992188 ,1007.6680908203 ,60.8203125 ,2060.6166992188 ,1007.6680908203 ,60.8203125)
showCursor(true)
guiSetInputEnabled(true)
showChat(false)
setElementDimension(localPlayer,0)
setElementData(localPlayer,"new",false)
end,500,1)
end
)
guiSetFont(mainBackgroundLabel, font)
wnd = guiCreateWindow(247, 138, 789, 522, "",false,wnd)
guiSetFont(wnd, font)
guiCreateWindow(wnd, 66, 240, 12)
guiSetProperty(wnd,"CaptionColour","ff0069c7")
logownd = guiCreateStaticImage(20, 25, 759, 291, "logo.png", false, wnd)
user_l = guiCreateLabel(336, 358, 91, 15, "♥ اسـم الحـسـاب ♥", false, wnd)
guiSetFont(user_l, font)
guiLabelSetColor(user_l, 147, 229, 51)
user = guiCreateEdit(290, 379, 184, 27, "", false, wnd)
remember = guiCreateCheckBox(0.36, 0.96, 0.23, 0.04, "تذكر حسابي والرقم السري", false, true, wnd)
guiSetProperty(remember, "NormalTextColour", "FF7EFE00")
guiCheckBoxSetSelected(remember,false)
guiSetFont(remember, font)
pass_l = guiCreateLabel(336, 413, 91, 15, "♥ كلمة السر ♥", false, wnd)
guiSetFont(pass_l, font)
guiLabelSetColor(pass_l, 241, 71, 207)
pass = guiCreateEdit(289, 431, 184, 27, "", false, wnd)
guiEditSetMasked(pass,true)
Flaver = guiCreateLabel(0.63, 0.73, 0.35, 0.05, "حــياكم الله فــي سيرفر أكشــنها الرسمي", true, wnd)
guiLabelSetColor(Flaver, 0, 24, 254)
reg = guiCreateButton(270, 465, 87, 23, "♥ تـسـجيل ♥", false, wnd)
guiSetFont(reg, font)
guiSetProperty(reg, "NormalTextColour", "FF26D5CB")
english = guiCreateButton(0.04, 0.90, 0.11, 0.04, "♥ English ♥", true, wnd)
guiSetProperty(english, "NormalTextColour", "FFFD0000")
arabic = guiCreateButton(0.04, 0.81, 0.11, 0.04, "♥ عـربي ♥", true, wnd)
guiSetProperty(arabic, "NormalTextColour", "FFFD0000")
guiSetFont(english, font)
guiSetFont(arabic, font)
guiSetFont(LABLAB, font)
guiSetFont(lebleb, font)
LABLAB = guiCreateLabel(0.15, 0.68, 0.05, 0.32, "*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*\n*", true, wnd)
guiLabelSetColor(LABLAB, 0, 29, 252)
guiLabelSetHorizontalAlign(LABLAB, "center", false)
guiLabelSetVerticalAlign(LABLAB, "center")
lebleb = guiCreateLabel(0.01, 0.68, 0.16, 0.03, "* * * * * * * * * * * * *", true, wnd)
guiLabelSetColor(lebleb, 0, 29, 252)
setTimer(function ()
guiSetVisible(Flaver,not guiGetVisible(Flaver))
end,2000, 0)
---------------------------------------------------------------------------------
login = guiCreateButton(399, 465, 87, 23, "♥ دخــول ♥", false, wnd)
guiSetFont(login, font)
guiSetProperty(login, "NormalTextColour", "FF26D5CB")
centerWindow(wnd)
triggerServerEvent("onGetSave",localPlayer)
addEventHandler("onClientMouseEnter",guiRoot,function()
if ( source == login ) then
guiSetText(login,"♥ دخــول ♥")
elseif ( source == reg ) then
guiSetText(reg,"♥ تـسـجيل ♥")
elseif ( source == ex ) then
guiSetText(ex,"")
end
end)
addEventHandler("onClientGUIClick",root,
function ()
if ( source == ex ) then
guiSetVisible(wnd,false)
showCursor(false)
guiSetInputEnabled(false)
Show()
elseif ( source == english ) then
setElementData(english, "tooltip-text", "انجليزي", false)
guiSetText(user_l,"UserName")
guiSetText(pass_l,"Password")
guiSetText(login,"Login")
guiSetText(reg,"Register")
guiSetText(remember,"Remember Me !!")
guiSetText(Flaver,"Welcome to Actionha Server")
elseif ( source == arabic ) then
guiSetText(user_l,"♥ اسـم الحـسـاب ♥")
setElementData(arabic, "tooltip-text", "Arabic", false)
guiSetText(pass_l,"♥ كلمة السر ♥")
guiSetText(login,"♥ دخــول ♥")
guiSetText(reg,"♥ تـسـجيل ♥")
guiSetText(remember,"تذكر حسابي والرقم السري")
guiSetText(Flaver,"حــياكم الله فــي سيرفر أكشــنها الرسمي")
end
end
)
showPlayerHudComponent('radar',false)
addEventHandler("onClientMouseLeave",guiRoot,function()
if ( source == login ) then
guiSetText(login,"♥ دخــول ♥")
elseif ( source == reg ) then
guiSetText(reg,"♥ تـسـجيل ♥")
elseif ( source == ex ) then
guiSetText(ex,"")
end
end)
showPlayerHudComponent('radar',false)
addEvent("onPutSave",true)
addEventHandler("onPutSave",root,
function (puser,ppass)
guiSetText(user,puser)
guiSetText(pass,ppass)
end
)
addEventHandler("onClientGUIClick",root,
function ()
local user = guiGetText(user)
local pass = guiGetText(pass)
if ( source == login ) then
if user ~= "" and pass ~= "" then
if guiCheckBoxGetSelected(remember) then
triggerServerEvent("onLoginWith",localPlayer,user,pass)
else
triggerServerEvent("onLogin",localPlayer,user,pass)
end
else
outputChatBox ("~| You Must Write Username Or Password |~" ,255, 255,0,true )
end
elseif ( source == reg ) then
if user ~= "" and pass ~= "" then
triggerServerEvent("onReg",localPlayer,user,pass)
else
triggerEvent("addNotification", getLocalPlayer()," الرجاء التأكد من كلمة المرور او اسم المستخدم",2)
end
end
end
)
addEvent("onCl",true)
addEventHandler("onCl",root,
function ()
guiSetVisible(wnd,false)
showCursor(false)
guiSetInputEnabled(false)
triggerEvent("addNotification", getLocalPlayer(),"",1)
triggerEvent("addNotification", getLocalPlayer(),"",1)
Show()
end
)
function setPlayerXYZ(x,y,z)
local player = getLocalPlayer()
setElementData(player,"x",x)
setElementData(player,"y",y)
setElementData(player,"z",z)
end
text = ""
dx = false
skin = {{46,"الثوب الابيض لتغير الشخصية ضغط ع السهام"},{0,"سي جي لتغير الشخصية ضغط ع السهام"},{124,"الثوب الاسود لتغير الشخصية ضغط ع السهام"}}
num = 1
place = {
{"البداية الرئيسية",-3646.76245, -3009.02002 ,5.09375,-3650.08887, -2994.87109, 5.09375, -3647.9655761719,-3006.0402832031,7.080500125885,-3647.6218261719,-3006.8916015625,6.6842565536499},
}
function Show()
smoothMoveCamera(2070.6166992188 ,1007.6680908203 ,60.8203125 ,2060.6166992188 ,1007.6680908203 ,60.8203125 ,2025.6166992188 ,1007.6680908203 ,10.8203125,2021.6166992188 ,1007.6680908203 ,10.8203125,6000)
ped = createPed(skin[1][1],2021.6166992188 ,1007.6680908203 ,10.1 ,370)
bindKey("arrow_l","down",left)
bindKey("arrow_r","down",right)
bindKey("enter","down",enter)
text = skin[1][2]
end
function left()
if num == 1 then
num = #skin
else
num = num - 1
end
setElementModel(ped,skin[num][1])
text = skin[num][2]
playSoundFrontEnd(32)
end
function right()
if num == #skin then
num = 1
else
num = num + 1
end
setElementModel(ped,skin[num][1])
text = skin[num][2]
playSoundFrontEnd(32)
end
addEventHandler('onClientRender',root,re)
function r_s()
if ( getElementModel(ped) == 1 ) then
setElementModel(ped,2)
model = 2
else
model = getElementModel(ped) + 1
setElementModel(ped,model)
end
end
function l_s()
if ( getElementModel(ped) == 2 ) then
setElementModel(ped,1)
model = 1
else
model = getElementModel(ped) - 1
setElementModel(ped,model)
end
end
function enter()
triggerEvent("addNotification", getLocalPlayer(),"",1)
playSoundFrontEnd(33)
destroyElement(ped)
unbindKey("arrow_l")
unbindKey("arrow_r")
unbindKey("enter")
setTimer(fadeCamera, 1000, 1, true)
setElementData(localPlayer,"skin",skin[num][1])
num = 1
text = place[num][1]
setCameraMatrix(place[num][2],place[num][3],place[num][4],place[num][5],place[num][6],place[num][7])
dx = true
bindKey("arrow_l","down",Pleft)
bindKey("arrow_r","down",Pright)
bindKey("enter","down",Penter)
end
addEventHandler("onClientRender",root,
function ()
local size = {guiGetScreenSize()}
if dx == true then
dxDrawText("\n( " .. text .. " )",1,0,size[1] + 1,size[2],tocolor(0,0,0,255),3,"default-bold","center","top",false,false,false,true)
dxDrawText("\n( " .. text .. " )",0,0,size[1],size[2],tocolor(255,166,0,255),3,"default-bold","center","top",false,false,false,true)
end
end
)
function Pleft()
if num == 1 then
num = #place
else
num = num - 1
end
text = place[num][1]
setCameraMatrix(place[num][2],place[num][3],place[num][4],place[num][5],place[num][6],place[num][7])
playSoundFrontEnd(32)
end
function Pright()
if num == #place then
num = 1
else
num = num + 1
end
text = place[num][1]
setCameraMatrix(place[num][2],place[num][3],place[num][4],place[num][5],place[num][6],place[num][7])
playSoundFrontEnd(32)
end
function Penter()
playSoundFrontEnd(33)
unbindKey("enter")
triggerEvent("addNotification", getLocalPlayer(),"",1)
triggerEvent("addNotification", getLocalPlayer(),"",3)
showPlayerHudComponent('radar',true)
showChat(true)
dx = false
text = ""
unbindKey("arrow_l")
unbindKey("arrow_r")
setPlayerXYZ(place[num][8],place[num][9],place[num][10])
triggerServerEvent("SpawnPlayer",localPlayer)
end
fileDelete("Client.lua")
Server@
local Table = {
{-3650.08887, -2994.87109, 5.09375},
{-3661.73584, -2992.81836, 5.01564},
{-3671.70752, -3010.65649, 4.94320},
{-3657.67114, -3012.18628, 5.09375}
}
function randomPositions()
for _,v in ipairs(Table) do
local x, y, z = unpack( Table[math.random(#Table)] )
return x, y, z
end
end
addEventHandler("onPlayerJoin",root,
function ()
local x, y, z = randomPositions()
setElementPosition(source, x, y, z)
setCameraTarget(source,source)
fadeCamera(source,true)
setElementData(source,"new",true)
end
)
-- الي تحت هاد حطو مكان مكان الي يحط لك احداثيات اللاعب ,, +
-- فوق بدل x, y, z
-- لي احداثياتك
function getPlayerSkin(player)
return getElementData(player,"skin")
end
function getPlayerXYZ(player)
local x,y,z = getElementData(player,"x"),getElementData(player,"y"),getElementData(player,"z")
return x,y,z
end
-- Login Register System
executeSQLQuery("CREATE TABLE IF NOT EXISTS players_save( serial TEXT, user TEXT, pass TEXT)")
function AddPlayer(serial,user,pass)
executeSQLQuery("INSERT INTO players_save(serial,user,pass) VALUES(?,?,?)",serial,user,pass)
end
function isPlayerSave(serial)
local sel = executeSQLQuery("SELECT serial FROM players_save WHERE serial=?",serial)
if sel == 0 then
return false
else
return true
end
end
function getUserAndPass(serial)
local user,pass = "",""
if isPlayerSave(serial) then
local sel = executeSQLQuery("SELECT * FROM players_save WHERE serial=?",serial)
for i,player in ipairs(sel) do
if i == 1 then
user = player.user
pass = player.pass
end
end
return user,pass
end
return false
end
addEvent("onGetSave",true)
addEventHandler("onGetSave",root,
function ()
local serial = getPlayerSerial(source)
if isPlayerSave(serial) then
local user,pass = getUserAndPass(serial)
triggerClientEvent(source,"onPutSave",source,user,pass)
end
end
)
addEvent("onLoginWith",true)
addEventHandler("onLoginWith",root,
function (user,pass)
local acc = getAccount(user,pass)
local serial = getPlayerSerial(source)
if acc then
logIn(source,acc,pass)
outputChatBox ("~| You have Logged In| تم تسجيل الدخول |~" ,255, 255,0,true )
AddPlayer(serial,user,pass)
triggerClientEvent(source,"onCl",source)
else
outputChatBox ("~| Wrong Username Or Password| رقم سري خطأ او اسم الحساب خطأ |~" ,255, 255,0,true )
end
end
)
addEvent("onLogin",true)
addEventHandler("onLogin",root,
function (user,pass)
local acc = getAccount(user,pass)
if acc then
logIn(source,acc,pass)
outputChatBox ("~| You Have Logged in Completly |~" ,255, 255,0,true )
triggerClientEvent(source,"onCl",source)
else
outputChatBox ("~| ** Wrong Username Or Password |~" ,255, 255,0,true )
end
end
)
addEvent("onReg",true)
addEventHandler("onReg",root,
function (user,pass)
local acc = getAccount(user,pass)
if acc then
outputChatBox ("~| يوجد اسم بهذا الحساب. حاول استخدام اسم حساب اخر |~" ,255, 255,0,true )
else
addAccount(user,pass)
outputChatBox("* Username = " .. user .. "",source,0,255,0)
outputChatBox("* Password = " .. pass .. "",source,0,255,0)
end
end
)
-- End
addEventHandler("onPlayerWasted",root,
function ()
if getElementData(source,"new") == true then
setTimer(function(player)
local x, y, z = randomPositions()
setElementPosition(source, x, y, z)
setCameraTarget(player,player)
fadeCamera(player,true)
end,3500,1,source)
else
setTimer(function(player)
local x, y, z = randomPositions()
setElementPosition(source, x, y, z)
setCameraTarget(player,player)
fadeCamera(player,true)
end,3500,1,source)
end
end
)
addEvent("SpawnPlayer",true)
addEventHandler("SpawnPlayer",root,
function ()
local x,y,z = getPlayerXYZ(source)
spawnPlayer(source,x,y,z,0,getPlayerSkin(source),0,0)
setCameraTarget(source,source)
fadeCamera(source,true)
showChat(source,true)
end
)