i S6O Posted July 24, 2015 Share Posted July 24, 2015 السلام عليكم ورحمة الله وبركااته إبي طريقه حفظ الداتا بالاكونت داتا وابيه الطريقه الصحيحه : يعني كذا مثال setElementData ( 'Data', .. getElementData ( 'Data', ... --بخليه يصير بحساب الاعب يصير كذا setAccountData getAccountData ابي مثال واضح وبتفصيل الممل Link to comment
#CroSs Posted July 24, 2015 Share Posted July 24, 2015 مثال يحفظ قيمة الداتا لما تتغير على حساب اللاعب #--Client Side addEventHandler("onClientElementDataChange", root, function(dataName) triggerServerEvent( "Data", localPlayer, dataName ) end) #--Server Side addEvent("Data", true) addEventHandler("Data", root, function(dataName) local Acc = getPlayerAccount( source ) if not ( isGuestAccount ( Acc ) ) then local NewV = getElementData ( source, dataName ) setAccountData ( Acc, dataName, NewV ) end end) Link to comment
i S6O Posted July 24, 2015 Author Share Posted July 24, 2015 ابي اوضح من كذا + فيه حدث الخروج و الدخول ويكون مشروح عشان افهم زين Link to comment
#CroSs Posted July 24, 2015 Share Posted July 24, 2015 مدري إذا فيه غلط او لا جربه ورد لي خبر addEventHandler("onPlayerQuit" , root, --- حدث عند خروج اللاعب function() --- بداية الوظيفة local Acc = getPlayerAccount( source ) --- نجيب حساب اللاعب if not (isGuestAccount(Acc)) then --- نتحقق إذا ما كان حساب غير مسجل for k,v in ipairs ( getAllElementData(source) ) do --- نجيب كل الداتا إلي عند اللاعب setAccountData( Acc, "Data;"..k.."", v ) --- نسوي أكاونت داتا لكل داتا بالمفتاح والقيمة end --- اند اللوب end --- اند التحقق end) --- نهاية الوظيفة وقوس إغلاق الحدث addEventHandler("onPlayerLogin" , root, --- حدث عند دخول اللاعب حسابه function() --- بداية الوظيفة for k,v in ipairs ( getAllAccountData(getPlayerAccount(source)) ) do --- نجيب كل الأكاونت داتا if ( string.find( k, "Data" ) ) then --- (Data) نسوي تحقق إذا في اسم مفتاح الداتا local Data = split ( k, ";" ) --- عن المفتاح (Data) نفصل كلمة setElementData ( source, Data[2], v ) --- تحط الداتا end --- اند التحقق end --- اند اللوب end) --- نهاية الوظيفة وقوس إغلاق الحدث Link to comment
i S6O Posted July 24, 2015 Author Share Posted July 24, 2015 طيب اقدر استخدم الطريقه ذي بدون مشاكل ElementsData = { [1] = { 'Data1' }, [2] = { 'Data2' }, [3] = { 'Data3' }, [4] = { 'Data4' }, } addEventHandler ( 'onPlayerJoin', root, function ( ) for i, v in ipairs ( ElementsData ) do setElementData ( source, v[1], 0 ) setElementData ( source, v[1], false ) end end ) addEventHandler ( 'onResourceStart', resourceRoot, function ( ) for i, plr in ipairs ( getElementsByType 'player' ) do for i, v in ipairs ( ElementsData ) do local gAcc = getPlayerAccount ( plr ) if isGuestAccount ( gAcc ) then setElementData ( plr, v[1], 0 ) else if ( getAccountData ( gAcc, v[1] ) ) then setElementData ( plr, v[1], getAccountData ( gAcc, v[1] ) ) end if not ( getAccountData ( gAcc, v[1] ) ) then setElementData ( plr, v[1], 0 ) end end end end end ) addEventHandler ( 'onPlayerLogout', root, function ( gAcc ) for i, v in ipairs ( ElementsData ) do setAccountData ( gAcc, v[1], getElementData ( source, v[1] ) ) setElementData ( source, v[1], 0 ) end end ) addEventHandler ( 'onPlayerLogin', root, function ( _, theCurrentAccount ) for i, v in ipairs ( ElementsData ) do if ( getAccountData ( theCurrentAccount, v[1] ) ) then setElementData ( source, v[1], getAccountData ( theCurrentAccount, v[1] ) ) end end end ) طبعاً الداتا لها قيم بالارقام و الاستعمال Link to comment
E4rTh|.. Posted July 24, 2015 Share Posted July 24, 2015 شوف يعقيد افضل شيء تعمله انك تحفظه sql وانتهينا طريقته سهلة وافضل من الحوسة داتا Link to comment
i S6O Posted July 24, 2015 Author Share Posted July 24, 2015 sql ماعرفه له ولا حتى 0 من 100% انا ابي اتعلم الداتا مع اكونت داتا sql ثم اتعلم ابي اتعلم البرمجه خطوه بخطوه Link to comment
E4rTh|.. Posted July 24, 2015 Share Posted July 24, 2015 اها ^ موفق الكود على حسب خبرتي صحيح, جربه انت اذا اشتغل ولا لا Link to comment
i S6O Posted July 24, 2015 Author Share Posted July 24, 2015 بشوف اهل الخبره وش يقولون فيه .. ؟ 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