SAM!! Posted June 21, 2018 Share Posted June 21, 2018 السلام عليكم الحين انا مسوي مود مثلا زر يقفل ويفتح بعد 5 دقائق لما اضغط علية لكن المشلكة ننتظر ومانعرف متي بيفتح ابي يجي تايمر (عد تنازلي علي الزر) حتي يفتح الزر مرة اخرة وشكرا elseif ( source == btn.mp5 ) then playSound("open.wav") guiSetEnabled (btn.mp5 ,false) setTimer(guiSetEnabled, 300000, 0 ,btn.mp5 ,true) triggerServerEvent('giveWeapon_', localPlayer , 0 , 29, 1000 , "MP5" ) ياريت يكون بسيط وشكررا Link to comment
Doffy Posted June 21, 2018 Share Posted June 21, 2018 setTimer getTimerDetails guiSetText Link to comment
,#Savage Posted June 21, 2018 Share Posted June 21, 2018 (edited) 1 hour ago, SAM!! said: السلام عليكم الحين انا مسوي مود مثلا زر يقفل ويفتح بعد 5 دقائق لما اضغط علية لكن المشلكة ننتظر ومانعرف متي بيفتح ابي يجي تايمر (عد تنازلي علي الزر) حتي يفتح الزر مرة اخرة وشكرا elseif ( source == btn.mp5 ) then playSound("open.wav") guiSetEnabled (btn.mp5 ,false) setTimer(guiSetEnabled, 300000, 0 ,btn.mp5 ,true) triggerServerEvent('giveWeapon_', localPlayer , 0 , 29, 1000 , "MP5" ) ياريت يكون بسيط وشكررا addEventHandler("onClientGUIClick",root, function ( Test ) if ( source == btn.mp5 ) then playSound("open.wav") local Test = guiGetText( btn.mp5 ) guiSetEnabled( btn.mp5 , true ) guiSetText ( source, "الكلام التبيه يظهر والزر مغلق" ) TimerEnabled = setTimer ( guiSetText, 300000, 1, source, "الكلام التبيه يظهر لما الزر يرجع" ) guiSetEnabled(source, false) setTimer(guiSetEnabled, 300000 , 1 , btn.mp5, true ) end end ) -- ملاحظة لو تبي تجرب وتشوف شغالة ولا لا شيل 300000 وحط اول شي 5000 5ثواني وجرب جرب وان شاء الله تظبط نفس ماظبطت معي Edited June 21, 2018 by ,#Savage Link to comment
Rockyz Posted June 22, 2018 Share Posted June 22, 2018 سويت لك فنكشن مفيد يساعدك guiEnable = {}; local types = {['second']=1000, ['minute']=1000*60, ['hour']=1000*60*60, ['ms']=1}; function guiSetDelay(gui, delay) assert(getElementType(gui):find('gui-'), 'bad argument guiSetDelay @1 gui-element expected got '..(isElement(gui) and getElementType(gui) or type(gui))) assert(type(delay)=='table', 'bad argument guiSetDelay @2 table expected got '..type(delay)) local canContinue for key in pairs(types) do if delay[key] then canContinue = true; break end end if canContinue then guiSetEnabled(gui, false); guiEnable[gui] = {oldString = guiGetText(gui), element = gui} local ms = 0; for key, value in pairs(delay) do if types[key] then ms=ms+(types[key]*value) end end guiEnable[gui].timer = setTimer(function() guiSetEnabled(gui, true) if isTimer(guiEnable[gui].timer) then killTimer(guiEnable[gui].timer);guiSetText(gui,guiEnable[gui].oldString);guiEnable[gui]=nil;end; local newTable = {}; for _, value in pairs(guiEnable) do table.insert(newTable, value) end if #newTable == 0 and isTimer(timerCheck) then killTimer(timerCheck) end end, ms, 1) timer(true) if not isTimer(timerCheck) then timerCheck = setTimer(timer, 1000, 0);end; setTimer(function() local details = getTimerDetails(guiEnable[gui].timer);guiSetText(guiEnable[gui].element, msToString(details)); end, 50, 1) end end function timer(b) for _, value in pairs(guiEnable) do if isTimer(value.timer) then local details = getTimerDetails(value.timer);guiSetText(value.element, msToString(details)); end end end function msToString(ms) if ms and type(ms)=='number' then local second = (ms and (ms>=1000 and ms) or 1000)/1000 local minute = second/60 return ('%02d:%02d:%02d'):format(math.floor(minute/24), math.floor(minute%60), math.floor(second%60)) end return false end كودك يصير كذا : elseif ( source == btn.mp5 ) then guiSetDelay(source, {ms = 300000}) playSound("open.wav") triggerServerEvent('giveWeapon_', localPlayer , 0 , 29, 1000 , "MP5" ) 1 Link to comment
SAM!! Posted June 22, 2018 Author Share Posted June 22, 2018 #,+( _xiRoc[K]; > elseif ( source == btn.mp5 ) then guiSetDelay(source, {ms = 300000}) playSound("open.wav") triggerServerEvent('giveWeapon_', localPlayer , 0 , 29, 1000 , "MP5" ) يعني اكتب الكود ذا فقط؟؟ ولا اكتب ذا ة والي فوقة في الكلنت؟ Link to comment
,#Savage Posted June 22, 2018 Share Posted June 22, 2018 (edited) 1 minute ago, SAM!! said: #,+( _xiRoc[K]; > elseif ( source == btn.mp5 ) then guiSetDelay(source, {ms = 300000}) playSound("open.wav") triggerServerEvent('giveWeapon_', localPlayer , 0 , 29, 1000 , "MP5" ) يعني اكتب الكود ذا فقط؟؟ ولا اكتب ذا ة والي فوقة في الكلنت؟ انت جربت الكود حقي ؟ Edited June 22, 2018 by ,#Savage Link to comment
SAM!! Posted June 22, 2018 Author Share Posted June 22, 2018 ,#Savage اخوي كودك يجيب كلام علي الزر انا ابي تايمر عد تنازلي علي التايمر ,#Savage كودك تمام شغال بس مشكلتي مابي يجي كلام علي الزر ابي يجي تايمر #,+( _xiRoc[K]; > نجح كودك شكرا شكرا شكرا شكرا شكرا شكرا #,+( _xiRoc[K]; > شوف كمان طلب معلش ابي لما ينتهي الوقت يرسل رسالة في الشات يقولة يمكنك الشراء مرة اخري او يجيب صوت مثلا للشخص كتنبية لة وشكرا مقدما Link to comment
,#Savage Posted June 22, 2018 Share Posted June 22, 2018 15 minutes ago, SAM!! said: ,#Savage اخوي كودك يجيب كلام علي الزر انا ابي تايمر عد تنازلي علي التايمر ,#Savage كودك تمام شغال بس مشكلتي مابي يجي كلام علي الزر ابي يجي تايمر #,+( _xiRoc[K]; > نجح كودك شكرا شكرا شكرا شكرا شكرا شكرا اها ماكنت فاهم طلبك المهم بالتوفيق 1 Link to comment
Rockyz Posted June 22, 2018 Share Posted June 22, 2018 غير السورس كود لـ: guiEnable = {}; local types = {['second']=1000, ['minute']=1000*60, ['hour']=1000*60*60, ['ms']=1}; addEvent('onClientGUIDelayStart', true); addEvent('onClientGUIDelayEnd', true); function guiSetDelay(gui, delay) assert(getElementType(gui):find('gui-'), 'bad argument guiSetDelay @1 gui-element expected got '..(isElement(gui) and getElementType(gui) or type(gui))) assert(type(delay)=='table', 'bad argument guiSetDelay @2 table expected got '..type(delay)) local canContinue for key in pairs(types) do if delay[key] then canContinue = true; break end end if canContinue then guiSetEnabled(gui, false); guiEnable[gui] = {oldString = guiGetText(gui), element = gui} local ms = 0; for key, value in pairs(delay) do if types[key] then ms=ms+(types[key]*value) end end guiEnable[gui].timer = setTimer(function() guiSetEnabled(gui, true) if isTimer(guiEnable[gui].timer) then killTimer(guiEnable[gui].timer);guiSetText(gui,guiEnable[gui].oldString);guiEnable[gui]=nil;end; triggerEvent('onClientGUIDelayEnd', guiEnable[gui].element) local newTable = {}; for _, value in pairs(guiEnable) do table.insert(newTable, value) end if #newTable == 0 and isTimer(timerCheck) then killTimer(timerCheck) end end, ms, 1) if guiEnable[gui].timer then timer() if not isTimer(timerCheck) then timerCheck = setTimer(timer, 1000, 0);end; setTimer(function() local details = getTimerDetails(guiEnable[gui].timer);guiSetText(guiEnable[gui].element, msToString(details)); end, 50, 1) triggerEvent('onClientGUIDelayStart', guiEnable[gui].element) end end end function timer() for _, value in pairs(guiEnable) do if isTimer(value.timer) then local details = getTimerDetails(value.timer);guiSetText(value.element, msToString(details)); end end end function msToString(ms) if ms and type(ms)=='number' then local second = (ms and (ms>=1000 and ms) or 1000)/1000 local minute = second/60 return ('%02d:%02d:%02d'):format(math.floor(minute/24), math.floor(minute%60), math.floor(second%60)) end return false end اذا تبي تضيف شي عندما يبدء المؤقت addEventHandler('onClientGUIDelayStart', resourceRoot, function() --Your code end) واذا تبي تضيف شي عندما ينتهي المؤقت addEventHandler('onClientGUIDelayEnd', resourceRoot, function() --Your code end) 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