AboShanab Posted May 24, 2013 Share Posted May 24, 2013 السسلام عليككم ورحمة الله وبرككاته !! اليوم معي مششكلة مع ذا المود حق حفظ الوقت !! https://community.multitheftauto.com/in ... ls&id=4784 مشككلته ان اذا سويت ريستارت للمود يقوم يرجع الكل وقته 0 ...! ابيه يحفظ عن طريق SQL عشان ما يروح الوقت ..! وشككرا ..!! Link to comment
AboShanab Posted May 24, 2013 Author Share Posted May 24, 2013 ججربت اسووي اكثر من مرة ما عرفت من القهر حذفته Link to comment
кιηg-αвα∂у Posted May 24, 2013 Share Posted May 24, 2013 الوقت ينحفض في حساب الاعب يعني لما تشغل المود سجل خروج بعدها سجل دخول واتوقع يرجع الوقت Link to comment
iPrestege Posted May 24, 2013 Share Posted May 24, 2013 https://forum.multitheftauto.com/viewtopic.php?f=164&t=56729 Link to comment
AboShanab Posted May 24, 2013 Author Share Posted May 24, 2013 كنق عباددي نفس الححالةة ي اخي !! جربنا اكثر من مرةة ينممسسح !! يمقن لازم اضيف user.Console لان ماسسحه انا !! Link to comment
AboShanab Posted May 24, 2013 Author Share Posted May 24, 2013 بريستيج عاد ضبطنا ذذ ساعدنا ضبطه لي لا هنت ..! ي اخي احسسه معقد SQL ..! ع العموم اذا تقدر سوه لي لبى قلبك ..! Link to comment
iPrestege Posted May 24, 2013 Share Posted May 24, 2013 الوقت تمام مافية شيء يحفظ عندي بالحساب / = Link to comment
AboShanab Posted May 24, 2013 Author Share Posted May 24, 2013 الوقت تمام مافية شيء يحفظ عندي بالحساب / = طيب ليه اذا سويت ريستارت يرجع من جديد =/ Link to comment
iPrestege Posted May 24, 2013 Share Posted May 24, 2013 انت لا تسوي ريستارت وخلاص لول Link to comment
AboShanab Posted May 24, 2013 Author Share Posted May 24, 2013 ي اخي مثلا غيرت acl وسويت ريستارت للسيرفر راح ينمسح كل شي Link to comment
xX|KeMo|Xx Posted May 24, 2013 Share Posted May 24, 2013 (edited) السلام عليكم اذا سويتـ رستارات للمود بتروح عند كل الي مسجلين دخولهمـ بســـ او اذا سويت رستاراتـ من الاستضافهـ ورحتـ انت تشغلهـ بتروح عندك انتـ بس الحلــ >< لاتخلي احد يسوي رستارات للمودات + ضيفه للملف ام تي اي سيرفر الي هو به اسم السيرفر تضيفه تحت مع الموداــت او تعدل عليهـ Edited June 7, 2013 by Guest Link to comment
iPrestege Posted May 25, 2013 Share Posted May 25, 2013 (edited) -- # Server Side : --[[ ------------------------------------------------- original script credits to Yakuza.Real and solidsnake and kenix viewtopic.php?f=91&t=40132 ------------------------------------------------- booo just fix it Mr.Pres[T]ege : Remake the script using ( SQL ) To Save it . ]] exports.scoreboard:addScoreboardColumn('PlayTime') addEventHandler("onResourceStart",resourceRoot, function ( ) executeSQLQuery ( "CREATE TABLE IF NOT EXISTS Prestege_Save_Time ( PlayerSerial,Hours,Minuts,Seconds,PlayAllTime )" ) outputDebugString ("Execute SQL Loadded !") end ) local t = { } function checkValues( source,arg1,arg2) if (arg2 >= 60) then t[ source ][ 'min' ] = tonumber( t[ source ][ 'min' ] or 0 ) + 1 t[ source ][ 'sec' ] = 0 end if (arg1 >= 60) then t[ source ][ 'min' ] = 0 t[ source ][ 'hour' ] = tonumber( t[ source ][ 'hour' ] or 0 ) + 1 end return arg1, arg2 end setTimer( function( ) for _, v in pairs( getElementsByType( "player" ) ) do if (not t[ v ]) then t[ v ] = { ["hour"] = 0, ["min"] = 0, ["sec"] = 0 } end t[ v ][ 'sec' ] = tonumber( t[ v ][ 'sec' ] or 0 ) + 1 local min,sec = checkValues ( v, t[ v ][ 'min' ] or 0, t[ v ][ 'sec' ] or 0 ) local hour = tonumber( t[ v ][ 'hour' ] or 0 ) setElementData( v, "PlayTime", tostring( hour )..':'..tostring( min )..':'..tostring( sec ) ) end end, 1000, 0 ) function SaveDataOnQuit ( ) local sValue = getElementData( source,'PlayTime' ) local hour = tonumber( t[ source ][ 'hour' ] or 0 ) local min = tonumber( t[ source ][ 'min' ] or 0 ) local sec = tonumber( t[ source ][ 'sec' ] or 0 ) local serial = getPlayerSerial ( source ) local Results = executeSQLQuery("SELECT * FROM Prestege_Save_Time WHERE PlayerSerial=?",serial) if ( type ( Results ) == "table" and #Results == 0 or not Results ) then executeSQLQuery ( "INSERT INTO Prestege_Save_Time ( PlayerSerial,Hours,Minuts,Seconds,PlayAllTime ) VALUES(?,?,?,?,?)",serial,hour,min,sec,sValue ) else executeSQLQuery('UPDATE Prestege_Save_Time SET Hours =?, Minuts =?, Seconds =?, PlayAllTime =? WHERE PlayerSerial =?', hour, min, sec, sValue, serial) end t[ source ] = nil end addEventHandler("onPlayerQuit",root,SaveDataOnQuit) function SaveDataOnStop ( ) for k,v in ipairs ( getElementsByType("player") ) do local playeraccount = getPlayerAccount ( v ) local sValue = getElementData( v,'PlayTime' ) if not ( t [ v ] ) then t [ v ] = { } end local hour = tonumber( t[ v ][ 'hour' ] or 0 ) local min = tonumber( t[ v ][ 'min' ] or 0 ) local sec = tonumber( t[ v ][ 'sec' ] or 0 ) local serial = getPlayerSerial ( v ) local Results = executeSQLQuery("SELECT * FROM Prestege_Save_Time WHERE PlayerSerial=?",getPlayerSerial ( v ) ) if ( type ( Results ) == "table" and #Results == 0 or not Results ) then executeSQLQuery ( "INSERT INTO Prestege_Save_Time ( PlayerSerial,Hours,Minuts,Seconds,PlayAllTime ) VALUES(?,?,?,?,?)",serial,hour,min,sec,sValue ) else executeSQLQuery('UPDATE Prestege_Save_Time SET Hours =?, Minuts =?, Seconds =?, PlayAllTime =? WHERE PlayerSerial =?', hour, min, sec, sValue, serial) end end end addEventHandler("onResourceStop",resourceRoot,SaveDataOnStop) function GetDataOnStart ( ) for _,v in ipairs ( getElementsByType ( "player" ) ) do local Results = executeSQLQuery("SELECT * FROM Prestege_Save_Time WHERE PlayerSerial=?",getPlayerSerial ( v ) ) if ( type ( Results ) == "table" and #Results == 0 or not Results ) then return end if not t[ v ] then t[ v ] = {} end t[ v ]["hour"] = tonumber(Results[1]["Hours"]) t[ v ]["min"] = tonumber(Results[1]["Minuts"]) t[ v ]["sec"] = tonumber(Results[1]["Seconds"]) end end addEventHandler("onResourceStart",resourceRoot,GetDataOnStart) function GetDataOnJoin ( ) local Results = executeSQLQuery("SELECT * FROM Prestege_Save_Time WHERE PlayerSerial=?",getPlayerSerial ( source ) ) if ( type ( Results ) == "table" and #Results == 0 or not Results ) then return end setElementData ( source, "PlayTime", Results[1]["PlayAllTime"] ) if not t[ source ] then t[ source ] = {} end t[ source ]["hour"] = tonumber(Results[1]["Hours"]) t[ source ]["min"] = tonumber(Results[1]["Minuts"]) t[ source ]["sec"] = tonumber(Results[1]["Seconds"]) end addEventHandler("onPlayerJoin",root,GetDataOnJoin) تنبية بسيط # اتصال بالقاعدهـ فـ من الممكن بـ نسبة 85 % انة يسبب لاق يعني مو لازم حساب يحفظ بـ السريال عدلت المود بـ نسبة 60 % Edited May 25, 2013 by Guest Link to comment
PaiN^ Posted May 25, 2013 Share Posted May 25, 2013 SaveDataOnQuit مو معرفة في وظيفة Results Link to comment
PaiN^ Posted May 25, 2013 Share Posted May 25, 2013 طيب سؤال serial دامك جايب السيريال تحت المتغير ليه ما تستخدمه في القاعدة local serial = getPlayerSerial ( source ) local Results = executeSQLQuery("SELECT * FROM Prestege_Save_Time WHERE PlayerSerial=?",getPlayerSerial ( source ) ) Link to comment
iPrestege Posted May 25, 2013 Share Posted May 25, 2013 طيب سؤالserial دامك جايب السيريال تحت المتغير ليه ما تستخدمه في القاعدة local serial = getPlayerSerial ( source ) local Results = executeSQLQuery("SELECT * FROM Prestege_Save_Time WHERE PlayerSerial=?",getPlayerSerial ( source ) ) لاني ناسية عدلتة بـ سرعه # تم التعديل و تسلم عـ التنبيهات ي الغالي .. 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