Jump to content

#مشكلة بكود التايمر


Recommended Posts

انتا ايش المشكله يلي تواحهك ؟ ^^

الزر اللي يعطي جيت باك بدي اياه ما يشتغل غير كل ساعة

بس مو يكون مقفول ويفتح كل ساعة لا بدي اياه يكون مفتوح عادي ولما ييجي اللاعب يضغط عليه ما يعطيه شي ويقله مثلا [You can use this every one hour]

يعني يقدر يستعمل الزر كل ساعة مرة واحدة فقط

Link to comment
  • Replies 62
  • Created
  • Last Reply

Top Posters In This Topic

طيب وش العيب انك تخليه مقفول لمده معينه ؟

او تخلي الزر يختفي لمده ساعه

مدري حاب يكون كذا احلى : D

طب خلاص بعمله يختفي وخلص

طب شوفلي هالكود ايش المشكلة فيه ؟؟

حاطه بهاد الموضوع

https://forum.multitheftauto.com/viewtopic.php?f=160&t=100633

ا

ابو العذاب لو تبي كدا استعمل كودي

+ كودي مو غلط انا نسيت اضيف شي

روح لناحية سيرفر

و انزل لعند

--Your Code

و ضيف دي

lastPressOnBTN[Serial] = getTickCount() 

+ شو فيها يا بست لو خليتو بالسريال -_-

احسن من الداتا الي تستهلك من الخادم

Link to comment
طيب وش العيب انك تخليه مقفول لمده معينه ؟

او تخلي الزر يختفي لمده ساعه

مدري حاب يكون كذا احلى : D

طب خلاص بعمله يختفي وخلص

طب شوفلي هالكود ايش المشكلة فيه ؟؟

حاطه بهاد الموضوع

https://forum.multitheftauto.com/viewtopic.php?f=160&t=100633

ا

ابو العذاب لو تبي كدا استعمل كودي

+ كودي مو غلط انا نسيت اضيف شي

روح لناحية سيرفر

و انزل لعند

--Your Code

و ضيف دي

lastPressOnBTN[Serial] = getTickCount() 

+ شو فيها يا بست لو خليتو بالسريال -_-

احسن من الداتا الي تستهلك من الخادم

ما زبط احمد الرسالة تطلع بالشات بس الزر لسا عم يعطي جيت باك مو مثل ما بدي مرة وحدة كل ساعة

Link to comment

معلش ماكنت منتبه لموضوعك

تدري شحصل بالقسم اليوم وكنت مشغول

تفضل شوف هذا اليوزفل فانكشن من صنع الاخ ميزو

مافيه داتا ولاشي

واعتقد بيضبطً١٠٠٪‏ بأذن الله

تفضل

guiAntiFlood

فائدتها تقوم بقفل الزر بحسب الوقت الذي تريده :fadein:

guiAntiFlood(int element , timer) 

Required Arguments

---element: the GUI element you wish to enable or disable

---timer: a time to Enable the element (true)

Code :

function guiAntiFlood(element, timer) 
    if getElementType ( element ) == "gui-button" then 
        guiSetEnabled(element,false) 
        local atimer = tonumber(timer) 
        if atimer == nil or atimer == '' or not tonumber(atimer) then  
            error("Bad Argument the Argument 2 must number") 
        else 
        end 
        setTimer(function() 
        guiSetEnabled(element,true) 
        end,tonumber(atimer),1) 
    else 
        error("Bad Argument 1 the element must button") 
  end 
end 

Example :

  
addEventHandler("onClientGUIClick",button, 
function() 
setElementHealth(localPlayer,100) 
guiAntiFlood(button,2000) 
end)   
--للتوضيح  
--2000 هيك خليت البوتون يغلق لمدة ثانيتين 
--10000 = ثانية  
--10000 دقيقة 
-- تقدر تضرب عدد الدقايق او الثواني مثال  
--guiAntiFlood(button,2*10000) هيك يقفل لمدة دقيقتين 
  

طبعا الكود سهل وبسيط ولكن بعض المبرمجين المبتدئين سئلوني كيف اخلي اللاعب م يكرر الضغط مشان بياخد كل شوي دم من الزر

والسلام عليكم ورحمة الله وبركاته :D

Link to comment
معلش ماكنت منتبه لموضوعك

تدري شحصل بالقسم اليوم وكنت مشغول

تفضل شوف هذا اليوزفل فانكشن من صنع الاخ ميزو

مافيه داتا ولاشي

واعتقد بيضبطً١٠٠٪‏ بأذن الله

تفضل

guiAntiFlood

فائدتها تقوم بقفل الزر بحسب الوقت الذي تريده :fadein:

guiAntiFlood(int element , timer) 

Required Arguments

---element: the GUI element you wish to enable or disable

---timer: a time to Enable the element (true)

Code :

function guiAntiFlood(element, timer) 
    if getElementType ( element ) == "gui-button" then 
        guiSetEnabled(element,false) 
        local atimer = tonumber(timer) 
        if atimer == nil or atimer == '' or not tonumber(atimer) then  
            error("Bad Argument the Argument 2 must number") 
        else 
        end 
        setTimer(function() 
        guiSetEnabled(element,true) 
        end,tonumber(atimer),1) 
    else 
        error("Bad Argument 1 the element must button") 
  end 
end 

Example :

  
addEventHandler("onClientGUIClick",button, 
function() 
setElementHealth(localPlayer,100) 
guiAntiFlood(button,2000) 
end)   
--للتوضيح  
--2000 هيك خليت البوتون يغلق لمدة ثانيتين 
--10000 = ثانية  
--10000 دقيقة 
-- تقدر تضرب عدد الدقايق او الثواني مثال  
--guiAntiFlood(button,2*10000) هيك يقفل لمدة دقيقتين 
  

طبعا الكود سهل وبسيط ولكن بعض المبرمجين المبتدئين سئلوني كيف اخلي اللاعب م يكرر الضغط مشان بياخد كل شوي دم من الزر

والسلام عليكم ورحمة الله وبركاته :D

وعليكم السلام ,,, ما ضبط الزر لسا شغال :D

Link to comment
ايش الهرجه بالضبط

اطرح الكود اشوف

وايش يجيك بالديبق

وهل وضعت السورس كود حق هذا اليوزفل فانكشن ؟

عملت كذا بالضبط

سيرفر

addEvent("HB",true) 
addEventHandler("HB",root, 
function() 
    setPedStat ( source, 24, 710 ) 
    setElementHealth ( source,  120 ) 
    guiAntiFlood(Health_Button,2000) 
end) 

كلينت

addEventHandler('onClientGUIClick', root, 
   function ( ) 
if ( source == Health_Button ) then  
    triggerServerEvent('HB', localPlayer) 
   end 
end 
) 
  

عامل ترايقر مشان في اكثر من زر بالكود وفي اكواد ما تشتغل غير سيرفر ,,,

Link to comment

افتح ملف الكلاينت وضيف هذا الكود فيه

ضيفه اول شي

بالسطر الاول

function guiAntiFlood(element, timer) 
    if getElementType ( element ) == "gui-button" then 
        guiSetEnabled(element,false) 
        local atimer = tonumber(timer) 
        if atimer == nil or atimer == '' or not tonumber(atimer) then 
            error("Bad Argument the Argument 2 must number") 
        else 
        end 
        setTimer(function() 
        guiSetEnabled(element,true) 
        end,tonumber(atimer),1) 
    else 
        error("Bad Argument 1 the element must button") 
  end 
end 

Link to comment
افتح ملف الكلاينت وضيف هذا الكود فيه

ضيفه اول شي

بالسطر الاول

function guiAntiFlood(element, timer) 
    if getElementType ( element ) == "gui-button" then 
        guiSetEnabled(element,false) 
        local atimer = tonumber(timer) 
        if atimer == nil or atimer == '' or not tonumber(atimer) then 
            error("Bad Argument the Argument 2 must number") 
        else 
        end 
        setTimer(function() 
        guiSetEnabled(element,true) 
        end,tonumber(atimer),1) 
    else 
        error("Bad Argument 1 the element must button") 
  end 
end 

خلاص تم حل المشكلة استعملت

guiSetEnabled(GUIEditor.button[8], false) 
    setTimer( guiSetEnabled, 10000, 1,GUIEditor.button[8], true ) 

Link to comment
guiSetVisible(اسم الزر, true) 
setTimer(guiSetVisible, 50000, 1, اسم الزر, false) 

رأيت اذا اخذتهم برايه افضل

رغم انوا عندوا خطا بس افضل من 3 صفحات

Edited by Guest
Link to comment
مبروك

يبارك فيك ,,, : ]

تقدر تشوفلي موضوعي الثاني ض ؟

https://forum.multitheftauto.com/viewtopic.php?f=160&t=100633

guiSetVisible(اسم الزر, true) 
setTimer(guiSetVisible, 50000, 1, اسم الزر, false) 

رأيت اذا اخذتهم برايه افضل

رغم انوا عندوا خطا بس افضل من 3 صفحات

ما خطرت عبالي فكرته او يمكن جربتها بطريقة خطأ وما ضبطت معي ,,,

Link to comment

آخر شغلة ,,,

الحين بعد ما عملت الزر يقفل لوقت معين ويرجع يفتح

بدي لما اللاعب ييجي يضغط عالزر ياخذ جيت باك وما يكون معه فلوس ما يقفل الزر يضل مفتوح

كلينت

addEventHandler('onClientGUIClick', root, 
   function ( ) 
if ( source == GUIEditor.button[5] ) then  
    triggerServerEvent(JetPack', localPlayer) 
    guiSetEnabled(GUIEditor.button[5], false) 
    setTimer( guiSetEnabled, 3600000, 1,GUIEditor.button[5], true ) 
   end 
end 
) 
  
  
 

سيرفر ,,, جربت عملت هيك ما زبط

addEvent("JetPack",true) 
addEventHandler("JetPack",root, function ( ) 
if ( isTimer ( Timer_ [ source ] ) ) then killTimer ( Timer_ [ source ] ) end 
if ( getElementData(source, "Money") >= 20000 ) then 
setElementData(source,"Money",(getElementData(source,"Money") or 0) - 20000) 
givePedJetPack ( source ) 
exports["guimessages"]:outputServer(source, "#FF0000*#FFFF00[VIP System] #00FF00You have been given a jetpack.", 255, 0, 0, true) 
exports["guimessages"]:outputServer(source, "#FF0000*#FFFF00[VIP System] #00FF00Your jetpack will be remove after 5 minutes.", 255, 0, 0, true) 
exports["guimessages"]:outputServer(source, "#FF0000*#FFFF00[VIP System] #FF0000The lock button, You can use jetpack after 30 minutes.", 255, 0, 0, true) 
playSoundFrontEnd(source, 3) 
else 
exports["guimessages"]:outputServer(source, "#FF0000*#FFFF00[VIP System] #FF0000You don't have enough money (20000$).", 255, 0, 0, true) 
triggerClientEvent(onClientGUIClick', localPlayer) 
guiSetEnabled(GUIEditor.button[5], true) 
Client = source 
Timer_ [ source ] = setTimer ( function ( ) 
if ( doesPedHaveJetPack ( Client ) ) then 
removePedJetPack ( Client ) 
end 
end,300000,1) 
end 
end) 
 

i wait the reply ,,,,

Link to comment
سوي ترايقر من سيرفر الى كلنت اذا اشترى الجيب باك يقفل الزر واذا مامعه فلوس مايقفل الزر مدرى اذا فهمتني او لا

عملت كذا ما زبط شوف الكود سيرفر

Link to comment
ايش الهرجه بالضبط

اطرح الكود اشوف

وايش يجيك بالديبق

وهل وضعت السورس كود حق هذا اليوزفل فانكشن ؟

عملت كذا بالضبط

سيرفر

addEvent("HB",true) 
addEventHandler("HB",root, 
function() 
    setPedStat ( source, 24, 710 ) 
    setElementHealth ( source,  120 ) 
    guiAntiFlood(Health_Button,2000) 
end) 

كلينت

addEventHandler('onClientGUIClick', root, 
   function ( ) 
if ( source == Health_Button ) then  
    triggerServerEvent('HB', localPlayer) 
   end 
end 
) 
  

عامل ترايقر مشان في اكثر من زر بالكود وفي اكواد ما تشتغل غير سيرفر ,,,

هذا لانك نوب ض

guiAntiFlood كلينت سايد فقط

Link to comment

اختصر لك الوضع

addEventHandler("onClientGUIClick",resourceRoot, function ( ) 
if ( getElementType ( source ) == "gui-button" ) then 
guiAntiFlood(source,2000) 
end 
end ) 

لاتنسى حط اليوزفل فانكشن حق ميزو

Link to comment
اختصر لك الوضع

addEventHandler("onClientGUIClick",resourceRoot, function ( ) 
if ( getElementType ( source ) == "gui-button" ) then 
guiAntiFlood(source,2000) 
end 
end ) 

لاتنسى حط اليوزفل فانكشن حق ميزو

ايش انت عملت هيك بس قفلت الزر لوقت معين ؟

انا عامل الزر يقفل وكل شي تمام بس بدي لما اللاعب ما يكون معاه فلوس ما يقفل

يعني الحين المشكلة لما اجي اخذ جيت باك وما معي فلوس الزر يقفل

Link to comment
ايش الهرجه بالضبط

اطرح الكود اشوف

وايش يجيك بالديبق

وهل وضعت السورس كود حق هذا اليوزفل فانكشن ؟

عملت كذا بالضبط

سيرفر

addEvent("HB",true) 
addEventHandler("HB",root, 
function() 
    setPedStat ( source, 24, 710 ) 
    setElementHealth ( source,  120 ) 
    guiAntiFlood(Health_Button,2000) 
end) 

كلينت

addEventHandler('onClientGUIClick', root, 
   function ( ) 
if ( source == Health_Button ) then  
    triggerServerEvent('HB', localPlayer) 
   end 
end 
) 
  

عامل ترايقر مشان في اكثر من زر بالكود وفي اكواد ما تشتغل غير سيرفر ,,,

هذا لانك نوب ض

guiAntiFlood كلينت سايد فقط

ما كنت ادري ض

Link to comment

جرب سويته لك كمثال

window = guiCreateWindow(0.30, 0.38, 0.37, 0.15, "", true) 
guiWindowSetSizable(window, false) 
button = guiCreateButton(0.02, 0.24, 0.95, 0.60, "Buy JetPack", true, window) 
---- 
addEventHandler('onClientGUIClick',button,function ( ) 
triggerServerEvent('JetPack', localPlayer) 
end,false) 
---- 
function guiEnabled(En,Te) 
guiSetEnabled(button,En) 
guiSetText (button, Te ) 
end 
---- 
addEvent("Enabled",true) 
addEventHandler("Enabled", root,function() 
guiEnabled(false,'Please wait') 
setTimer (guiEnabled, 5000, 1, true,'Buy JetPack' ) 
end) 

amount = 20000 
addEvent("JetPack",true) 
addEventHandler("JetPack",root, function ( ) 
if tonumber(amount) <= getPlayerMoney( source ) then 
takePlayerMoney( source, amount ) 
givePedJetPack ( source ) 
outputChatBox("#FF0000*#FFFF00[VIP System] #00FF00You have been given a jetpack.", source, 255, 0, 0 , true ) 
triggerClientEvent(source,'Enabled',source) 
else 
outputChatBox( "#FF0000*#FFFF00[VIP System] #FF0000You don't have enough money (20000$).", source, 255, 0, 0 , true ) 
end 
end) 
Link to comment
جرب سويته لك كمثال

window = guiCreateWindow(0.30, 0.38, 0.37, 0.15, "", true) 
guiWindowSetSizable(window, false) 
button = guiCreateButton(0.02, 0.24, 0.95, 0.60, "Buy JetPack", true, window) 
---- 
addEventHandler('onClientGUIClick',button,function ( ) 
triggerServerEvent('JetPack', localPlayer) 
end,false) 
---- 
function guiEnabled(En,Te) 
guiSetEnabled(button,En) 
guiSetText (button, Te ) 
end 
---- 
addEvent("Enabled",true) 
addEventHandler("Enabled", root,function() 
guiEnabled(false,'Please wait') 
setTimer (guiEnabled, 5000, 1, true,'Buy JetPack' ) 
end) 

amount = 20000 
addEvent("JetPack",true) 
addEventHandler("JetPack",root, function ( ) 
if tonumber(amount) <= getPlayerMoney( source ) then 
takePlayerMoney( source, amount ) 
givePedJetPack ( source ) 
outputChatBox("#FF0000*#FFFF00[VIP System] #00FF00You have been given a jetpack.", source, 255, 0, 0 , true ) 
triggerClientEvent(source,'Enabled',source) 
else 
outputChatBox( "#FF0000*#FFFF00[VIP System] #FF0000You don't have enough money (20000$).", source, 255, 0, 0 , true ) 
end 
end) 

ممكن التعديل يكون على كودي : D

كودي جاهز بس قلت ايش ناقصه :|

ما بدي الخبط الأكواد كلها في بعضها : D

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...