iiv03 Posted May 29, 2019 Share Posted May 29, 2019 طلب فانكشات عشان اصمم واحد تنبيه كل ماتضغط علي اف2 يجي اشعار فوق وتضغط مره ثاني يجي اشعار فوق مثل كذا Link to comment
JustP Posted May 29, 2019 Share Posted May 29, 2019 mensages = {} messagetick = 0 function servermessages(message, type) table.insert(mensages, {message, type or "confirm", getTickCount(), dxGetTextWidth(message, fontScale*0.06, Font_1) + screenH*0.01, 0, 0, 0}) messagetick = getTickCount() end addEvent("servermessages", true) addEventHandler("servermessages", getRootElement(), servermessages) function renderMensages() local msgd = mensages if #msgd ~= 0 then local startY = screenW*0.5 local i = 1 repeat mData = msgd[i] local drawThis = true if i~= 1 then startY = startY + screenW*0.0425 end if mData[5] == 0 and mData[6] == 0 then mData[5] = - mData[4] - screenH*0.015 mData[6] = startY mData[7] = startY end local tick = getTickCount() - mData[3] local posX, posY, alpha if tick < 1000 then local progress = math.min(tick/1000,1) mData[5] = interpolateBetween(mData[5], 0, 0, 0, 0, 0, progress, "Linear") elseif tick >= 1000 and tick <= 7000 then mData[5] = 0 elseif tick > 7000 then local progress = math.min((tick - 7000)/1000,1) mData[5] = interpolateBetween(mData[5], 0, 0, - mData[4] - mData[4] - screenH*0.015, 0, 0, progress, "Linear") if progress >= 1 then table.remove(msgd, i) drawThis = false messagetick = getTickCount() end end local globalTick = getTickCount() - messagetick if drawThis then mData[7] = startY mData[6] = interpolateBetween(mData[6], 0, 0, mData[7], 0, 0, math.min(globalTick/1000,1), "Linear") posX = mData[5] posY = mData[6] alpha = 255 dxDrawRectangle(posX, posY, mData[4], screenW*0.04, tocolor(0, 0, 0, alpha*0.75), true) local r, g, b = 0, 255, 0 if mData[2] == "warning" then r, g, b = 255, 0, 0 end dxDrawRectangle(posX + mData[4], posY, screenH*0.010, screenW*0.04, tocolor(r, g, b, alpha*0.85), true) dxDrawText(mData[1], posX, posY, posX + mData[4], posY + screenW*0.04, tocolor(255, 255, 255, alpha), fontScale*0.05, Font_1, "center", "center", false, false, true, false, false) end i = i + 1 until i > #msgd mensages = msgd end end addEventHandler("onClientRender", getRootElement(), renderMensages) ذا الي تبيه انت لكن يطلع لك من اليسار مو من فوق تقدر تسوي لما يضغط اف 2 servermessages('....') والتايب عادي تقدر تتركه او انك تسويه warn يطلع فيه rec احمر تتركه يطلعلك اخضر Link to comment
iiv03 Posted May 29, 2019 Author Share Posted May 29, 2019 2 minutes ago, JustP said: mensages = {} messagetick = 0 function servermessages(message, type) table.insert(mensages, {message, type or "confirm", getTickCount(), dxGetTextWidth(message, fontScale*0.06, Font_1) + screenH*0.01, 0, 0, 0}) messagetick = getTickCount() end addEvent("servermessages", true) addEventHandler("servermessages", getRootElement(), servermessages) function renderMensages() local msgd = mensages if #msgd ~= 0 then local startY = screenW*0.5 local i = 1 repeat mData = msgd[i] local drawThis = true if i~= 1 then startY = startY + screenW*0.0425 end if mData[5] == 0 and mData[6] == 0 then mData[5] = - mData[4] - screenH*0.015 mData[6] = startY mData[7] = startY end local tick = getTickCount() - mData[3] local posX, posY, alpha if tick < 1000 then local progress = math.min(tick/1000,1) mData[5] = interpolateBetween(mData[5], 0, 0, 0, 0, 0, progress, "Linear") elseif tick >= 1000 and tick <= 7000 then mData[5] = 0 elseif tick > 7000 then local progress = math.min((tick - 7000)/1000,1) mData[5] = interpolateBetween(mData[5], 0, 0, - mData[4] - mData[4] - screenH*0.015, 0, 0, progress, "Linear") if progress >= 1 then table.remove(msgd, i) drawThis = false messagetick = getTickCount() end end local globalTick = getTickCount() - messagetick if drawThis then mData[7] = startY mData[6] = interpolateBetween(mData[6], 0, 0, mData[7], 0, 0, math.min(globalTick/1000,1), "Linear") posX = mData[5] posY = mData[6] alpha = 255 dxDrawRectangle(posX, posY, mData[4], screenW*0.04, tocolor(0, 0, 0, alpha*0.75), true) local r, g, b = 0, 255, 0 if mData[2] == "warning" then r, g, b = 255, 0, 0 end dxDrawRectangle(posX + mData[4], posY, screenH*0.010, screenW*0.04, tocolor(r, g, b, alpha*0.85), true) dxDrawText(mData[1], posX, posY, posX + mData[4], posY + screenW*0.04, tocolor(255, 255, 255, alpha), fontScale*0.05, Font_1, "center", "center", false, false, true, false, false) end i = i + 1 until i > #msgd mensages = msgd end end addEventHandler("onClientRender", getRootElement(), renderMensages) ذا الي تبيه انت لكن يطلع لك من اليسار مو من فوق تقدر تسوي لما يضغط اف 2 servermessages('....') والتايب عادي تقدر تتركه او انك تسويه warn يطلع فيه rec احمر تتركه يطلعلك اخضر ينفع اسويه ب ملف سرفر ذا و استخدم exports["اسم ملف"]:addNotification("Test 2",255,error); ولا ماتنجح؟ Link to comment
KillerX Posted May 29, 2019 Share Posted May 29, 2019 6 hours ago, liwahadri said: ينفع اسويه ب ملف سرفر ذا و استخدم exports["اسم ملف"]:addNotification("Test 2",255,error); ولا ماتنجح؟ علي ما اشوف في كودة انه مسوي ايفينت للرسم عن طريق للسيرفر servermessages المهم سوي تريقر من السيرفر للكلينت للايفينت اللي اسموا وتحط الرسالة و النوع Link to comment
iiv03 Posted May 29, 2019 Author Share Posted May 29, 2019 (edited) 10 hours ago, KillerX said: علي ما اشوف في كودة انه مسوي ايفينت للرسم عن طريق للسيرفر servermessages المهم سوي تريقر من السيرفر للكلينت للايفينت اللي اسموا وتحط الرسالة و النوع 5 hours ago, JustP said: triggerClientEvent سويته تريقر بس ادري احطه ب سرفر سايد بس وين احطه ب اي مكان؟ قصدي؟؟ ذا تريقر triggerClientEvent(source, "toggleHideAll", getRootElement()) Edited May 29, 2019 by liwahadri Link to comment
MrKAREEM Posted May 29, 2019 Share Posted May 29, 2019 3 hours ago, liwahadri said: سويته تريقر بس ادري احطه ب سرفر سايد بس وين احطه ب اي مكان؟ قصدي؟؟ ذا تريقر triggerClientEvent(source, "toggleHideAll", getRootElement()) دا مثال triggerClientEvent(source,'servermessages',source, 'الرسالة',rec) source بعد كلمة هتلاقي كلمة الرسالة في علامتين هتقوم مغيرها بالرسالة اللي تبيها rec و ثاني شئ اللي بعدها مكتوب تقدر تغيرها وتخليها warn او تتركها وهتظهر اخضر Link to comment
iiv03 Posted May 30, 2019 Author Share Posted May 30, 2019 1 hour ago, MrKAREEM said: دا مثال triggerClientEvent(source,'servermessages',source, 'الرسالة',rec) source بعد كلمة هتلاقي كلمة الرسالة في علامتين هتقوم مغيرها بالرسالة اللي تبيها rec و ثاني شئ اللي بعدها مكتوب تقدر تغيرها وتخليها warn او تتركها وهتظهر اخضر مافهمت الحين ترقير يتحط في كلينت ولا سرفررررر؟؟؟؟ Link to comment
KillerX Posted May 30, 2019 Share Posted May 30, 2019 9 hours ago, MrKAREEM said: دا مثال triggerClientEvent(source,'servermessages',source, 'الرسالة',rec) source بعد كلمة هتلاقي كلمة الرسالة في علامتين هتقوم مغيرها بالرسالة اللي تبيها rec و ثاني شئ اللي بعدها مكتوب تقدر تغيرها وتخليها warn او تتركها وهتظهر اخضر خطأ علي هيئة متغير المفروض تكتبة علي هيئة سلسلة نصية او تعرف المتغير rec انتا كاتب كلمة ولصاحب الموضوع استعمل التريقر في السيرفر وارسلوا للكلنت من خلال الدالة triggerClientEvent servermessages للحدث اللي اسموا 1 2 Link to comment
MrKAREEM Posted May 31, 2019 Share Posted May 31, 2019 On 30/05/2019 at 11:21, KillerX said: خطأ علي هيئة متغير المفروض تكتبة علي هيئة سلسلة نصية او تعرف المتغير rec انتا كاتب كلمة ولصاحب الموضوع استعمل التريقر في السيرفر وارسلوا للكلنت من خلال الدالة triggerClientEvent servermessages للحدث اللي اسموا تمام شكرا علي الافادة triggerClientEvent(source,'servermessages',source, 'الرسالة','rec') 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