coNolel Posted April 26, 2017 Share Posted April 26, 2017 سلام عليكم ورحمة الله تعالى وبركاته اليوم يا عيال كنت اسوي مود بسيط اليل هو مود الـ Notification لكن ما عرفت كيف اسوي مود notification فيه حركة اللي هي إشعار 1 إشعار 2 إشعار 3 يعني يجي واحد ورا الآخر مو إشعار 1 يجي فيه الكلام ويوم اسوي واحد ثاني يطلع فيه ما يضيف تحت ما عندي اي فكرة كيف اسويها ممكن احد يساعدني ؟ Link to comment
AHMED MOSTAFA Posted April 26, 2017 Share Posted April 26, 2017 9 hours ago, coNolel said: سلام عليكم ورحمة الله تعالى وبركاته اليوم يا عيال كنت اسوي مود بسيط اليل هو مود الـ Notification لكن ما عرفت كيف اسوي مود notification فيه حركة اللي هي إشعار 1 إشعار 2 إشعار 3 يعني يجي واحد ورا الآخر مو إشعار 1 يجي فيه الكلام ويوم اسوي واحد ثاني يطلع فيه ما يضيف تحت ما عندي اي فكرة كيف اسويها ممكن احد يساعدني ؟ استعمل اللوب + الجداول ملاحظة تقدر تحمل مود الجيو مسج وتتعلم من ملف كلينت اللي موجود فيه Link to comment
coNolel Posted April 26, 2017 Author Share Posted April 26, 2017 Just now, Killer Project said: استعمل اللوب + الجداول ملاحظة تقدر تحمل مود الجيو مسج وتتعلم من ملف كلينت اللي موجود فيه مشكور بس ، ممكن تقولي كيف رح استعملهم ؟ Link to comment
coNolel Posted April 26, 2017 Author Share Posted April 26, 2017 1 hour ago, Killer Project said: استعمل اللوب + الجداول ملاحظة تقدر تحمل مود الجيو مسج وتتعلم من ملف كلينت اللي موجود فيه ?? Link to comment
Master_Ali Posted April 26, 2017 Share Posted April 26, 2017 2 hours ago, coNolel said: ?? table.insert table.sort--------مش مهمه لذيك الدرجه لكن للضمان لاغير setTimer table.remove Link to comment
coNolel Posted April 27, 2017 Author Share Posted April 27, 2017 كذا ؟ local dxNotification = {} function CreateNotification(Message, Color) for i,v in ipairs(Message) do table.insert(dxNotification,Message[1]) dxDrawText(Message[v], x, y, w ,h) end end On 26/04/2017 at 17:39, Master_Ali said: table.insert table.sort--------مش مهمه لذيك الدرجه لكن للضمان لاغير setTimer table.remove Link to comment
coNolel Posted April 27, 2017 Author Share Posted April 27, 2017 1 hour ago, #BrosS said: لا طيب كيف Link to comment
^iiEcoo'x_) Posted April 27, 2017 Share Posted April 27, 2017 شوف عندي طريقة سهلة وحلوة تسوي دي اكس ، المه تسوي اول شي local nof = 0 بس ودك يجي تنبيه تضهره للكل ، تحط عليه nof = 1 وبعدين اذا اجا تنبيه اخر تحط تسوي if not == 1 then nof = 2 وتزيد الدي اكس 1 بحيث انه يجي بعده طبعا تكون مسوي تايمر , بس يخلث التايمر التنبيه 2 تنقص منه 1 بحيث يرجع مكان التنبيه الاول وتخليه nof = 1 التنبيه الاول تخليه nof = 0 وتتحقق اذا كان في تنبيه 3 if nof == 3 then nof = 2 وتنقص 1 بحيث يرجع مكان التنبيه 2 - واخر شي تسوي اذا ودك يكون بس في 3 تنبيهات if nof == 5 then تمسح التنبيه الاول لو وقته م خلص وترجعهن التنبيهات الباقية وتزيد طبعا سويه بالداتا او الجداول ممكن يزبط معك Link to comment
Master_Ali Posted April 27, 2017 Share Posted April 27, 2017 (edited) 2 hours ago, coNolel said: كذا ؟ local dxNotification = {} function CreateNotification(Message, Color) for i,v in ipairs(Message) do table.insert(dxNotification,Message[1]) dxDrawText(Message[v], x, y, w ,h) end end خطا حبيبي الصحيح باول ملف الكلنت حط local dxNotification = {} وبكود الرساله حط function CreateNotification(Message, Color) if #dxNotification~=0 and #dxNotification==1 then table.insert(dxNotification,{plr=localPlayer,Message=Message,Color=Color}) thetimer= setTimer(finction() triggerEvent('theve',dxNotification.plr,dxNotification.Message,dxNotification.Color) end,1000*7,1) return else if #dxNotification>1 then for k=1,#dxNotification do table.remove(dxNotification,k) return end end if not isTimer(thetimer) then if #dxNotification~=0 then table.remove(dxNotification,1) end dxDrawText(Message, x, y, w ,h)end end end addEventHandler('theve',root,CreateNotification) addEvent('theve',true) جرب معليش ما اقدر استخدم التاج لان نتي ضعيف ردلي خبر Edited April 27, 2017 by Master_Ali Link to comment
Master_Ali Posted April 27, 2017 Share Posted April 27, 2017 15 minutes ago, #BrosS said: @Master_Ali غلط وش رايك تورينا شغلك يالمنتقد؟ بالمناسبه يا صاحب الموضوع جرب وردلي خبر + نسيت اعدل على السطر ذا thetimer= setTimer(finction() triggerEvent('theve',dxNotification[1].plr,dxNotification[1].Message,dxNotification[1].Color) end,1000*7,1) الكود اللي مسويه فوق انا يسمح له انه يرسل رساله كل 7 ثواني وتنتظر وتطلع اللي بعدها بس كحد اقصى 2 رساله انت عدل عطيتك الفكره فقط Link to comment
#BrosS Posted April 27, 2017 Share Posted April 27, 2017 @Master_Ali كيف تفترض تسوي شعار تحت شعار تحت شعار مثل مايقول صاحب الموضوع كيف تسويه وأنت مو ضايف إحداثيات ولا شي Link to comment
coNolel Posted April 28, 2017 Author Share Posted April 28, 2017 (edited) 15 hours ago, #BrosS said: @Master_Ali كيف تفترض تسوي شعار تحت شعار تحت شعار مثل مايقول صاحب الموضوع كيف تسويه وأنت مو ضايف إحداثيات ولا شي 15 hours ago, Master_Ali said: وش رايك تورينا شغلك يالمنتقد؟ بالمناسبه يا صاحب الموضوع جرب وردلي خبر + نسيت اعدل على السطر ذا thetimer= setTimer(finction() triggerEvent('theve',dxNotification[1].plr,dxNotification[1].Message,dxNotification[1].Color) end,1000*7,1) الكود اللي مسويه فوق انا يسمح له انه يرسل رساله كل 7 ثواني وتنتظر وتطلع اللي بعدها بس كحد اقصى 2 رساله انت عدل عطيتك الفكره فقط مشكورين الأثنين ، بس الاخ بروس عنده حق بيضيف الكلام دي إكس ، بس وين الإحداثيات اللي بينضياف عليها ؟ لآزم أفهم كيف أزبط الإحداثيات ، وبعدها الأشياء الأخرى فهمتها :] وانا اصلا ابغاه يسوي أكثر من رسالة ، لانو كذا بيسوي رسالة كل 7 ثواني يعني ما رح تجي وحدة تحت الثانية أو فوقها .. Edited April 28, 2017 by coNolel Link to comment
Master_Ali Posted April 28, 2017 Share Posted April 28, 2017 On ٢٨/٤/٢٠١٧ at 00:12, #BrosS said: @Master_Ali كيف تفترض تسوي شعار تحت شعار تحت شعار مثل مايقول صاحب الموضوع كيف تسويه وأنت مو ضايف إحداثيات ولا شي حبيب قلبي انا فهمته غلط انا حسبته يبي يسوي اشعار ثم لو اللاعب جاه اشعار ثاني وهو ما راح من عنده الاشعار اللي راح ينتظر 7 ثواني ثم يطلعله الاشعار اللي بعده عدم مقدرتك فهم الاكواد الخطا عندك مب عندي 11 hours ago, coNolel said: مشكورين الأثنين ، بس الاخ بروس عنده حق بيضيف الكلام دي إكس ، بس وين الإحداثيات اللي بينضياف عليها ؟ لآزم أفهم كيف أزبط الإحداثيات ، وبعدها الأشياء الأخرى فهمتها :] وانا اصلا ابغاه يسوي أكثر من رسالة ، لانو كذا بيسوي رسالة كل 7 ثواني يعني ما رح تجي وحدة تحت الثانية أو فوقها .. ان كنت تبي وحده تحت الثانيه يقلبي يحتاجلك تحدل الارتفاع حقه يعني تسوي متغير وكل ما جات رساله تغير الارتفاع بالمتغير وتغير بعد بوزايشن التكست Link to comment
coNolel Posted April 28, 2017 Author Share Posted April 28, 2017 2 hours ago, Master_Ali said: حبيب قلبي انا فهمته غلط انا حسبته يبي يسوي اشعار ثم لو اللاعب جاه اشعار ثاني وهو ما راح من عنده الاشعار اللي راح ينتظر 7 ثواني ثم يطلعله الاشعار اللي بعده عدم مقدرتك فهم الاكواد الخطا عندك مب عندي ان كنت تبي وحده تحت الثانيه يقلبي يحتاجلك تحدل الارتفاع حقه يعني تسوي متغير وكل ما جات رساله تغير الارتفاع بالمتغير وتغير بعد بوزايشن التكست مشكور ي حبيبي ، سويتها كما تشوف تحت ، بس بالله انا سويت تأثير تتطلع الـ Alpha من 0 إلى 255 يوم اجرب اشغل المود مرة وحدة يشتغل كويس ، لكن يوم اسوي مثلا وحدة تحت الثانية ، التأثير ينعاد، يعني الأولى تعيد الـ Alpha حقها مع اللي تحتها كيف أقدر أخلي بس اللي تحت تسوي التأثير من جديد بدون ما تعيد للي فوق الكود هذا هو ادري ملخبط ض local dxNotification = {Rendered = false} local font = dxCreateFont("font.ttf", 12) local sX, sY = guiGetScreenSize( ) function DrawNotification() for i,v in ipairs(dxNotification) do if dxNotification[i] then local dxNotifWidth = dxGetTextWidth(string.gsub ( v[1], '#%x%x%x%x%x%x', '' ), 1 , font) local dxNotifHeight = 35 local dxNotifHeight = dxNotifHeight * i local now = getTickCount() local endTime = start + 4000 local elapsedTime = now - start local duration = endTime - start local progress = elapsedTime / duration if now > v[6] + 4000 then table.remove(dxNotification, i) if #dxNotification == 0 then removeEventHandler("onClientRender", root, DrawNotification) dxNotification.Rendered = false end else Alpha = interpolateBetween(0, 0 , 0, 170 , 0, 0, progress, "Linear" ) dxDrawRRectangle(v[1],tocolor(255,255,255,Alpha),1,aFont,(sX/2)-(dxNotifWidth/2), 60 + dxNotifHeight, dxNotifWidth, 30,tocolor(0,0,0,Alpha),15,"img/music.png",20,20,false) end end end end function createNotification(Text) if not dxNotification.Rendered then addEventHandler("onClientRender", root,DrawNotification) dxNotification.Rendered = true end if #dxNotification >= 5 then table.remove(dxNotification, 1) end for i , v in ipairs(dxNotification ) do v[5] = v[5] + 600 end local dxNotifWidth = dxGetTextWidth(string.gsub ( Text, '#%x%x%x%x%x%x', '' ), 1, font) if Alpha == 255 then outputChatBox("alpha is 255") end table.insert(dxNotification, {Text,sX+400, 550, sX-dxNotifWidth,560,getTickCount()}) start = getTickCount() outputChatBox("whats done?") end Link to comment
Master_MTA Posted April 28, 2017 Share Posted April 28, 2017 10 hours ago, coNolel said: مشكور ي حبيبي ، سويتها كما تشوف تحت ، بس بالله انا سويت تأثير تتطلع الـ Alpha من 0 إلى 255 يوم اجرب اشغل المود مرة وحدة يشتغل كويس ، لكن يوم اسوي مثلا وحدة تحت الثانية ، التأثير ينعاد، يعني الأولى تعيد الـ Alpha حقها مع اللي تحتها كيف أقدر أخلي بس اللي تحت تسوي التأثير من جديد بدون ما تعيد للي فوق الكود هذا هو ادري ملخبط ض local dxNotification = {Rendered = false} local font = dxCreateFont("font.ttf", 12) local sX, sY = guiGetScreenSize( ) function DrawNotification() for i,v in ipairs(dxNotification) do if dxNotification[i] then local dxNotifWidth = dxGetTextWidth(string.gsub ( v[1], '#%x%x%x%x%x%x', '' ), 1 , font) local dxNotifHeight = 35 local dxNotifHeight = dxNotifHeight * i local now = getTickCount() local endTime = start + 4000 local elapsedTime = now - start local duration = endTime - start local progress = elapsedTime / duration if now > v[6] + 4000 then table.remove(dxNotification, i) if #dxNotification == 0 then removeEventHandler("onClientRender", root, DrawNotification) dxNotification.Rendered = false end else Alpha = interpolateBetween(0, 0 , 0, 170 , 0, 0, progress, "Linear" ) dxDrawRRectangle(v[1],tocolor(255,255,255,Alpha),1,aFont,(sX/2)-(dxNotifWidth/2), 60 + dxNotifHeight, dxNotifWidth, 30,tocolor(0,0,0,Alpha),15,"img/music.png",20,20,false) end end end end function createNotification(Text) if not dxNotification.Rendered then addEventHandler("onClientRender", root,DrawNotification) dxNotification.Rendered = true end if #dxNotification >= 5 then table.remove(dxNotification, 1) end for i , v in ipairs(dxNotification ) do v[5] = v[5] + 600 end local dxNotifWidth = dxGetTextWidth(string.gsub ( Text, '#%x%x%x%x%x%x', '' ), 1, font) if Alpha == 255 then outputChatBox("alpha is 255") end table.insert(dxNotification, {Text,sX+400, 550, sX-dxNotifWidth,560,getTickCount()}) start = getTickCount() outputChatBox("whats done?") end اذا كنت تبي كل الفا منفصل اجل يبيلك كل ريتانجل منفصل على حسب ظني Link to comment
coNolel Posted April 28, 2017 Author Share Posted April 28, 2017 4 minutes ago, Master_MTA said: اذا كنت تبي كل الفا منفصل اجل يبيلك كل ريتانجل منفصل على حسب ظني تراهم منفصلين ض Link to comment
^iiEcoo'x_) Posted April 28, 2017 Share Posted April 28, 2017 20 hours ago, #_iMr.[E]coo said: شوف عندي طريقة سهلة وحلوة تسوي دي اكس ، المه تسوي اول شي local nof = 0 بس ودك يجي تنبيه تضهره للكل ، تحط عليه nof = 1 وبعدين اذا اجا تنبيه اخر تحط تسوي if not == 1 then nof = 2 وتزيد الدي اكس 1 بحيث انه يجي بعده طبعا تكون مسوي تايمر , بس يخلث التايمر التنبيه 2 تنقص منه 1 بحيث يرجع مكان التنبيه الاول وتخليه nof = 1 التنبيه الاول تخليه nof = 0 وتتحقق اذا كان في تنبيه 3 if nof == 3 then nof = 2 وتنقص 1 بحيث يرجع مكان التنبيه 2 - واخر شي تسوي اذا ودك يكون بس في 3 تنبيهات if nof == 5 then تمسح التنبيه الاول لو وقته م خلص وترجعهن التنبيهات الباقية وتزيد طبعا سويه بالداتا او الجداول ممكن يزبط معك Link to comment
coNolel Posted April 28, 2017 Author Share Posted April 28, 2017 8 minutes ago, #_iMr.[E]coo said: انا احب اسويه ب لوب عشان يجي اوتوماتيكي اظن طريقتك محدودة ، ولا انا غلطان ؟ Link to comment
^iiEcoo'x_) Posted April 28, 2017 Share Posted April 28, 2017 10 minutes ago, coNolel said: انا احب اسويه ب لوب عشان يجي اوتوماتيكي اظن طريقتك محدودة ، ولا انا غلطان ؟ نعم محدودة , اذا كنت تقصد "محدودة" بانه التنبيهات يجن محدودات ف نعم , لكن تقدر تزودهن حسب كيفك وتزيد التحققات وغيره ! Link to comment
Abdul KariM Posted April 28, 2017 Share Posted April 28, 2017 وادخل الاحداثيات بالتيبل مع المسج وبعدين لوب وفرغ البيانات y كل مسج تسويه زود على قيمة 2 Link to comment
coNolel Posted April 28, 2017 Author Share Posted April 28, 2017 22 minutes ago, Abdul KariM said: وادخل الاحداثيات بالتيبل مع المسج وبعدين لوب وفرغ البيانات y كل مسج تسويه زود على قيمة انا الحين مشكلتي هي اني : 3 hours ago, coNolel said: مشكور ي حبيبي ، سويتها كما تشوف تحت ، بس بالله انا سويت تأثير تتطلع الـ Alpha من 0 إلى 255 يوم اجرب اشغل المود مرة وحدة يشتغل كويس ، لكن يوم اسوي مثلا وحدة تحت الثانية ، التأثير ينعاد، يعني الأولى تعيد الـ Alpha حقها مع اللي تحتها كيف أقدر أخلي بس اللي تحت تسوي التأثير من جديد بدون ما تعيد للي فوق الكود هذا هو ادري ملخبط ض local dxNotification = {Rendered = false} local font = dxCreateFont("font.ttf", 12) local sX, sY = guiGetScreenSize( ) function DrawNotification() for i,v in ipairs(dxNotification) do if dxNotification[i] then local dxNotifWidth = dxGetTextWidth(string.gsub ( v[1], '#%x%x%x%x%x%x', '' ), 1 , font) local dxNotifHeight = 35 local dxNotifHeight = dxNotifHeight * i local now = getTickCount() local endTime = start + 4000 local elapsedTime = now - start local duration = endTime - start local progress = elapsedTime / duration if now > v[6] + 4000 then table.remove(dxNotification, i) if #dxNotification == 0 then removeEventHandler("onClientRender", root, DrawNotification) dxNotification.Rendered = false end else Alpha = interpolateBetween(0, 0 , 0, 170 , 0, 0, progress, "Linear" ) dxDrawRRectangle(v[1],tocolor(255,255,255,Alpha),1,aFont,(sX/2)-(dxNotifWidth/2), 60 + dxNotifHeight, dxNotifWidth, 30,tocolor(0,0,0,Alpha),15,"img/music.png",20,20,false) end end end end function createNotification(Text) if not dxNotification.Rendered then addEventHandler("onClientRender", root,DrawNotification) dxNotification.Rendered = true end if #dxNotification >= 5 then table.remove(dxNotification, 1) end for i , v in ipairs(dxNotification ) do v[5] = v[5] + 600 end local dxNotifWidth = dxGetTextWidth(string.gsub ( Text, '#%x%x%x%x%x%x', '' ), 1, font) if Alpha == 255 then outputChatBox("alpha is 255") end table.insert(dxNotification, {Text,sX+400, 550, sX-dxNotifWidth,560,getTickCount()}) start = getTickCount() outputChatBox("whats done?") 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