; Mr.T76eM # Posted April 22, 2015 Share Posted April 22, 2015 سلام عليكم ورحمة الله وبركاته اخباركم ان شاء الله بخير --------- اليوم جيت لكم بطلب جديد بغيت اسوي مود الشات سستم اللاعب يكتب شيء يقدر يكتب مرة ثانية بعد 5 ثواني مثلا الفنكشات الي اعرفها للمود : Event -- onPlayerChat cancelEvent setTimer --- هذا مدري كيف استخدمه ... Link to comment
yazan Posted April 22, 2015 Share Posted April 22, 2015 setTimer ( function() تحط الكود هنا end, 5000, 1 ) مثال setTimer ( function() outputChatBox ( "5 second delay text!" ) end, 5000, 1 ) بنسبه لل 1 هو التكرار 1 = يتكرر مره 2 = مرتين ....الخ 0 = مفتوح للابد Link to comment
Simple. Posted April 23, 2015 Share Posted April 23, 2015 setTimer ( function() تحط الكود هنا end, 5000, 1 ) مثال setTimer ( function() outputChatBox ( "5 second delay text!" ) end, 5000, 1 ) بنسبه لل 1 هو التكرار 1 = يتكرر مره 2 = مرتين ....الخ 0 = مفتوح للابد آفهم آلي يبيه آول شيء ---- تفضل هذآ طلبك local chatSpam = {} function SpamC() if (not chatSpam[source]) then chatSpam[source] = 1 elseif (chatSpam[source] == 2) then -- cancelEvent() outputChatBox("Dont Spam on the chat man !!", source, 255, 0, 0) else chatSpam[source] = chatSpam[source] + 1 end end addEventHandler("onPlayerChat", root, SpamC) setTimer(function() chatSpam = {} end, 5000, 0) Link to comment
ALw7sH Posted April 23, 2015 Share Posted April 23, 2015 local chatSpam = {} function SpamC() if (not chatSpam[source]) then chatSpam[source] = 1 elseif (chatSpam[source] == 2) then -- cancelEvent() outputChatBox("Dont Spam on the chat man !!", source, 255, 0, 0) else chatSpam[source] = chatSpam[source] + 1 end end addEventHandler("onPlayerChat", root, SpamC) setTimer(function() chatSpam = {} end, 5000, 0) كل 5 ثواني بيفضي الجدول والكل بيقدر يتكلم حتى الي تو متكلم يعني مثال انا تكلمت والتايمر حقك باقيله ثانيه وحده بعد ثانيه بقدر اتكلم مره ثانيه والمفروض اني اقدر اتكلم بعد 5 ثواني (chatSpam[source] = setTimer(...)) التايمر المفروض يكون داخل الايفنت اول مايتكلم اللاعب وتخلي التايمر على فنكشن فاضي وتدخل التايمر في جدول باللاعب وتتحقق اذا تكلم التايمر موجود او لا لو موجود تسوي كنسل أيفنت ---- local TIME_TO_BLOCK = 5 -- in seconds local LAST_MESSAGE = {} function Chat() if not LAST_MESSAGE[source] or LAST_MESSAGE[source] >= (TIME_TO_BLOCK*1000) then LAST_MESSAGE[source] = getTickCount() else cancelEvent() outputChatBox("Don't spam, You will be able to send message in "..(math.floor(LAST_MESSAGE[source]*1000)).." seconds !.",source,255,0,0,true) end end addEventHandler("onPlayerChat", root, Chat) addEventHandler("onPlayerQuit",root, function() if LAST_MESSAGE[source] then LAST_MESSAGE[source] = nil end end ) Link to comment
; Mr.T76eM # Posted April 23, 2015 Author Share Posted April 23, 2015 يا شباب انا ما بغيت ال anti - spam الي تمنع اذا كان نفس الكلام مرتين بس بغيت ان كل 5 ثواني يقدر يتكلم please wait 5 seconds Link to comment
Simple. Posted April 23, 2015 Share Posted April 23, 2015 يا شباب انا ما بغيت ال anti - spam الي تمنع اذا كان نفس الكلام مرتين بس بغيت ان كل 5 ثواني يقدر يتكلم please wait 5 seconds شوف حق وحش موجود فوق مافيه شي زي آلفل بس انت شكلك مركب الفري روم الاصلي هو فيه انتي سبام لنفس الكلام Link to comment
; Mr.T76eM # Posted April 23, 2015 Author Share Posted April 23, 2015 جربت الكود الي عطيتك ؟ كودك سيرفر صح Link to comment
yazan Posted April 23, 2015 Share Posted April 23, 2015 setTimer ( function() تحط الكود هنا end, 5000, 1 ) مثال setTimer ( function() outputChatBox ( "5 second delay text!" ) end, 5000, 1 ) بنسبه لل 1 هو التكرار 1 = يتكرر مره 2 = مرتين ....الخ 0 = مفتوح للابد آفهم آلي يبيه آول شيء ---- تفضل هذآ طلبك local chatSpam = {} function SpamC() if (not chatSpam[source]) then chatSpam[source] = 1 elseif (chatSpam[source] == 2) then -- cancelEvent() outputChatBox("Dont Spam on the chat man !!", source, 255, 0, 0) else chatSpam[source] = chatSpam[source] + 1 end end addEventHandler("onPlayerChat", root, SpamC) setTimer(function() chatSpam = {} end, 5000, 0) علامك يا نوب ترا فوق كاتب عن تايمر ما فهمت له و شرحت له كيف يستخدمه Link to comment
; Mr.T76eM # Posted April 23, 2015 Author Share Posted April 23, 2015 جربت الكود ما اشتغل يا الوحش .. Link to comment
; Mr.T76eM # Posted April 23, 2015 Author Share Posted April 23, 2015 debug ? ولا شيء. Link to comment
; Mr.T76eM # Posted April 24, 2015 Author Share Posted April 24, 2015 وش صار يعيـآل ؟ Link to comment
ALw7sH Posted April 24, 2015 Share Posted April 24, 2015 الكود مافيه أي خطأ المشكله من سكربت من عندك لو عندك سكربت تاج او شي زي كذا Link to comment
; Mr.T76eM # Posted April 24, 2015 Author Share Posted April 24, 2015 ايه عندي سكربت التاج .. لو تبي اطرحه مب مشكلة . . بالرغم اني جربت اركب الكود حقك مع التاج لكن ما صار اي تغيير ..! Link to comment
Simple. Posted April 24, 2015 Share Posted April 24, 2015 ^ تأكد ان الفري روم مافيه انتي فلود ! Link to comment
; Mr.T76eM # Posted April 24, 2015 Author Share Posted April 24, 2015 ما عليك من الفري روم ما فيه انتي فلود متأكد !! Link to comment
ALw7sH Posted April 24, 2015 Share Posted April 24, 2015 local TIME_TO_BLOCK = 5 -- in seconds local LAST_MESSAGE = {} function chatbox(text) cancelEvent() if not LAST_MESSAGE[source] or LAST_MESSAGE[source] >= (TIME_TO_BLOCK*1000) then LAST_MESSAGE[source] = getTickCount() else return end outputChatBox("Don't spam, You will be able to send message in "..(math.floor(LAST_MESSAGE[source]*1000)).." seconds !.",source,255,0,0,true) end if string.find(text, "**" ) or string.find(text, "**" ) or string.find(text, "*" ) or string.find(text, "**" ) or string.find(text, "**" ) or string.find(text, "*/*" ) then outputChatBox("#ffffff[ #ff1111Chat System#ffffff ] #ffcc00 message Is Blocked | #cccccc تـَم حـَظر الرسالة #ffff11[F.H]", source, 255, 0, 0, true) return end local account = getAccountName(getPlayerAccount(source)) local name = getPlayerName(source) if isObjectInACLGroup("user."..account, aclGetGroup("Console")) then outputChatBox("#D11919* #000000[#ff0000 Console#000000 ] "..name..":#ffcc00 "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("Admin")) then outputChatBox("#D11919* #000000[#D80000 Head Admin #000000] #FFFFFF#ff0000"..name..":#E8A317 "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("VIP")) then outputChatBox(" #000000[#ffffff+#ff9900Rent#000000 ]#ff9900 "..name..":#33CCFF "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("Police")) then outputChatBox("#000000* #ffffff[ #0099FFPolice #ffffff]#0099FF "..name..":#FFFFFF "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("Everyone")) then outputChatBox("#ffffff"..name..":#ffffff "..text, root, 255, 255, 255, true) end end addEventHandler("onPlayerChat", root, chatbox) addEventHandler("onPlayerQuit",root, function() if LAST_MESSAGE[source] then LAST_MESSAGE[source] = nil end end ) Link to comment
; Mr.T76eM # Posted April 24, 2015 Author Share Posted April 24, 2015 local TIME_TO_BLOCK = 5 -- in seconds local LAST_MESSAGE = {} function chatbox(text) cancelEvent() if not LAST_MESSAGE[source] or LAST_MESSAGE[source] >= (TIME_TO_BLOCK*1000) then LAST_MESSAGE[source] = getTickCount() else return end outputChatBox("Don't spam, You will be able to send message in "..(math.floor(LAST_MESSAGE[source]*1000)).." seconds !.",source,255,0,0,true) end if string.find(text, "**" ) or string.find(text, "**" ) or string.find(text, "*" ) or string.find(text, "**" ) or string.find(text, "**" ) or string.find(text, "*/*" ) then outputChatBox("#ffffff[ #ff1111Chat System#ffffff ] #ffcc00 message Is Blocked | #cccccc تـَم حـَظر الرسالة #ffff11[F.H]", source, 255, 0, 0, true) return end local account = getAccountName(getPlayerAccount(source)) local name = getPlayerName(source) if isObjectInACLGroup("user."..account, aclGetGroup("Console")) then outputChatBox("#D11919* #000000[#ff0000 Console#000000 ] "..name..":#ffcc00 "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("Admin")) then outputChatBox("#D11919* #000000[#D80000 Head Admin #000000] #FFFFFF#ff0000"..name..":#E8A317 "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("VIP")) then outputChatBox(" #000000[#ffffff+#ff9900Rent#000000 ]#ff9900 "..name..":#33CCFF "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("Police")) then outputChatBox("#000000* #ffffff[ #0099FFPolice #ffffff]#0099FF "..name..":#FFFFFF "..text, root, 255, 255, 255, true) elseif isObjectInACLGroup("user."..account, aclGetGroup("Everyone")) then outputChatBox("#ffffff"..name..":#ffffff "..text, root, 255, 255, 255, true) end end addEventHandler("onPlayerChat", root, chatbox) addEventHandler("onPlayerQuit",root, function() if LAST_MESSAGE[source] then LAST_MESSAGE[source] = nil end end ) جربته مود التاج ما شتغل Link to comment
; Mr.T76eM # Posted April 26, 2015 Author Share Posted April 26, 2015 Upp ^^ + سويت كود وساعدوني عليه شباب antiSpam = {} function antiChatSpam() if isTimer(antiSpam[source]) then cancelEvent() remaining = math.floor (getTimerDetails(antiSpam[source])/ 1000 ) outputChatBox("Wait (" .. remaining ..") Seconds", source, 255, 255, 0,true) else antiSpam[source] = setTimer(function(source) antiSpam[source] = nil end, 5000, 1, source) end end addEventHandler("onPlayerChat", root, antiChatSpam) لكن لما اشغل التاج ما يشتغل ممكن مساعدة في تركيبه مع التاج ؟ التاج طرحته فوق ^ 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