Simba Posted January 26, 2014 Share Posted January 26, 2014 (edited) السلام عليكم .. عندي كم استفسار للكود هذا == dxDrawText syntax = bool dxDrawText ( string text, float left, float top ) بس جبت الارقمنت المطلوبه ..! الاستفسار الاول هذا لصنع كلام طيب الكلام فين يطلع ؟؟ فوق المنت ولا على الشاشه لكل اللاعبين اذا كان على الشاشه كيف اسويه واذا ما كان على الشاشه وين الكود الي يسوي الكلام على الشاشه وطريقه صنعه يعني ممكن مثاال لان المثال الي بالويكي مااا فهمت منهه باختصار شديد شرح عن dx edit # الارقمنت هذا left وهذا top ما فهمتهم edit# سويت كذا بس ما صاررر addEventHandler ("onClientRender", root, function () dxDrawText( "hello world !",0.12,0.395, tocolor ( 255, 255, 255, 255 ), 1, "pricedown" ) end ) Edited January 26, 2014 by Guest Link to comment
./BlackBird# Posted January 26, 2014 Share Posted January 26, 2014 text = الكلام الي تبيه left= X احداثيات الـ top = Y احداثيات الـ Link to comment
Simba Posted January 26, 2014 Author Share Posted January 26, 2014 طيب مكتوب في الويكي Draws a string of text on the screen يعني على الشاشه تمام انا كيف اجيب احداثيات الشاشه screen ? انا اعرف اجيب احداثيات مكان محدد بس هذي معرف Link to comment
./BlackBird# Posted January 26, 2014 Share Posted January 26, 2014 GUIEditor الافضل تستخدم سكربت Link to comment
Simba Posted January 27, 2014 Author Share Posted January 27, 2014 ما اشتغغل addEventHandler ("onClientRender", root, function () dxDrawText( "hello world !",0.12,0.395, tocolor ( 255, 255, 255, 255 ), 1, "pricedown" ) end ) Link to comment
فاّرس Posted January 27, 2014 Share Posted January 27, 2014 عندك 2 ارقومنتات ناقصه + افضل guiGetScreenSize لو تستخدم ومثال من الويكي , local screenWidth, screenHeight = guiGetScreenSize ( ) -- Get the screen resolution (width and height) function createText ( ) local playerX, playerY, playerZ = getElementPosition ( localPlayer ) -- Get our player's coordinates. local playerZoneName = getZoneName ( playerX, playerY, playerZ ) -- Get name of the zone the player is in. -- Draw zone name text's shadow. dxDrawText ( playerZoneName, 44, screenHeight - 41, screenWidth, screenHeight, tocolor ( 0, 0, 0, 255 ), 1.02, "pricedown" ) -- Draw zone name text. dxDrawText ( playerZoneName, 44, screenHeight - 43, screenWidth, screenHeight, tocolor ( 255, 255, 255, 255 ), 1, "pricedown" ) end function HandleTheRendering ( ) addEventHandler ( "onClientRender", root, createText ) -- keep the text visible with onClientRender. end addEventHandler ( "onClientResourceStart", res[/b]ourceRoot, HandleTheRendering ) Link to comment
Simba Posted January 27, 2014 Author Share Posted January 27, 2014 شكرا لك بس عندي استفسار بسيط onClientRender لما يصير رندر طيب وش اسوي عشان يصير رندر ؟ ةمثلا عند لمس الماركر اروح المس الماركر وتشتغل Link to comment
K1NG Posted January 27, 2014 Share Posted January 27, 2014 شكرا لك بس عندي استفسار بسيط onClientRender لما يصير رندر طيب وش اسوي عشان يصير رندر ؟ ةمثلا عند لمس الماركر اروح المس الماركر وتشتغل addEventHandler Link to comment
Simba Posted January 27, 2014 Author Share Posted January 27, 2014 انا عارف .. بس قصدي متى رح يصير الرندر وش هو الرندر اصلا ؟؟؟؟! يعني مثلا عند لمس الماركر انا ما اوقف مكاني انا اروح محل الماركر الي انا صنعته وادخل فيه عشاان تشتغل الوظيفةة طيب ممكن مثال تسوي انه يطلع بالشاشه كلام اي كلام Link to comment
./BlackBird# Posted January 27, 2014 Share Posted January 27, 2014 This event is triggered every time GTA renders a new frame Link to comment
TAPL Posted January 27, 2014 Share Posted January 27, 2014 https://wiki.multitheftauto.com/wiki/Game_Processing_Order Link to comment
K1NG Posted January 27, 2014 Share Posted January 27, 2014 انا عارف .. بس قصدي متى رح يصير الرندر وش هو الرندر اصلا ؟؟؟؟! يعني مثلا عند لمس الماركر انا ما اوقف مكاني انا اروح محل الماركر الي انا صنعته وادخل فيه عشاان تشتغل الوظيفةة طيب ممكن مثال تسوي انه يطلع بالشاشه كلام اي كلام * Client Side: local marker = createMarker ( 0, 0, 2, "cylinder", 2, 255, 255, 0, 255 ) local sW, sH = guiGetScreenSize ( ) function isEventHandlerAdded( sEventName, pElementAttachedTo, func ) if type( sEventName ) == 'string' and isElement( pElementAttachedTo ) and type( func ) == 'function' then local aAttachedFunctions = getEventHandlers( sEventName, pElementAttachedTo ) if type( aAttachedFunctions ) == 'table' and #aAttachedFunctions > 0 then for i, v in ipairs( aAttachedFunctions ) do if v == func then return true end end end end return false end function drawText ( ) dxDrawText ( "Hello World!", 0, 0, sW, sH, tocolor ( 255, 255, 255, 255 ), 1.5, "pricedown", "center", "center" ) end addEventHandler ( "onClientMarkerHit", marker, function ( player ) if ( player == localPlayer ) and not ( isEventHandlerAdded ( "onClientRender", root, drawText ) ) then addEventHandler ( "onClientRender", root, drawText ) end end ) addEventHandler ( "onClientMarkerLeave", marker, function ( player ) if ( player == localPlayer ) and ( isEventHandlerAdded ( "onClientRender", root, drawText ) ) then removeEventHandler ( "onClientRender", root, drawText ) end end ) . ركب الكود وبعدها روح لإحداثيات 0,0,2 عشان تجي بداخل الماركر بعدها رح يجيكـ كلام بوسط الشاشة ويوم تطلع من الماركر يروح الكلام Link to comment
Simba Posted January 28, 2014 Author Share Posted January 28, 2014 والله الكود طويييل وصعب ما كنت متوقعه كذا ما في شي اسهل او مختصر Link to comment
فاّرس Posted January 28, 2014 Share Posted January 28, 2014 ماهو طويل ولا شيء , getEventHandlers موجوده في المثال حق isEventHandlerAdded الوظيفه ^ وهذي تفيدك انك تتحقق من الرندر , عشان تخيل تلمس الماركر مرتين راح يطلع خطأ بالديبوق , فهذي الوظيفه مفيده جدا Link to comment
Simba Posted January 28, 2014 Author Share Posted January 28, 2014 اوك .. انا شلت بعض الاشياء من كود كينق وصار كذا وهو شغاال local sW, sH = guiGetScreenSize ( ) function drawText ( ) dxDrawText ( "Hi ", 0, 0, sW, sH, tocolor ( 255, 255, 255, 255 ), 1.5, "pricedown", "center", "center" ) end addEventHandler ( "onClientRender", root, drawText ) الكود شغال وكل شي بس المشكله انه النص الي انا كاتبه ما يختفي !! ممكن تسوي تايمر بعد 10 ثواني يختفي ! Link to comment
TAPL Posted January 28, 2014 Share Posted January 28, 2014 setTimer(function() removeEventHandler("onClientRender", root, drawText) end, 10000, 1) Link to comment
shwaeki Posted January 28, 2014 Share Posted January 28, 2014 onClientRender هاي ايش بتفيد Link to comment
TAPL Posted January 28, 2014 Share Posted January 28, 2014 هذا الحدث راح يصير مره وحده بكل فريم حنا بالعاده نلعب ب 60 فريم يعني الحدث هذا راح يصير 60 مره بالثانية او على حسب عدد الفريمات عندك لازم تشغله مع كل فريم علشان تشوف الكلام في الشاشة dxDrawText هذا الحدث تحتاجه لان الفنكشن Link to comment
Simba Posted January 28, 2014 Author Share Posted January 28, 2014 هذا الحدث راح يصير مره وحده بكل فريمحنا بالعاده نلعب ب 60 فريم يعني الحدث هذا راح يصير 60 مره بالثانية او على حسب عدد الفريمات عندك لازم تشغله مع كل فريم علشان تشوف الكلام في الشاشة dxDrawText هذا الحدث تحتاجه لان الفنكشن يا سلام قووول كذا من اول شوف انا اش كاتب قبل بس ما احد فاهم علي Link to comment
Simba Posted January 28, 2014 Author Share Posted January 28, 2014 مشكوربس وش يعني فريم FPS Link to comment
TAPL Posted January 29, 2014 Share Posted January 29, 2014 FPS = Frame per second = إطار في الثانية الواحدة بالمختصر المفيد يعني عدد الصور بالثانية الواحده 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