#Mr.Rajo~,< Posted July 11, 2015 Share Posted July 11, 2015 السلام عليكم ورحمة الله وبركاته عندي طلب مدري هو بسيط او لا لاكن انا عندي ماركر وابي احط نص قدامه وش احتاج من فنكشنات Link to comment
The Killer Posted July 11, 2015 Share Posted July 11, 2015 Event # 'onClientRender' function # getElementPosition getScreenFromWorldPosition getDistanceBetweenPoints3D dxDrawText Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 addEventHandler ( "onClientRender", root, function() x,y,z = getElementPosition( a ) if (getScreenFromWorldPosition ( x , y + 2, z, getDistanceBetweenPoints3D(( x, y, z, 1050.827, -2670.422, 1.855 ))) ) then dxDrawText ( "Dark Red Marker", left, t op ) end end) زي كذا ض مدري صح او غلط باقي مبتدئ Link to comment
#Mr.alkmasha Posted July 11, 2015 Share Posted July 11, 2015 addEventHandler ( "onClientRender", root, function() x,y,z = getElementPosition( a ) if (getScreenFromWorldPosition ( x , y + 2, z, getDistanceBetweenPoints3D(( x, y, z, 1050.827, -2670.422, 1.855 ))) ) then dxDrawText ( "Dark Red Marker", left, t op ) end end) زي كذا ض مدري صح او غلط باقي مبتدئ a مو معرفه dxDrawText ( "Dark Red Marker","left", "top" ) Link to comment
The Killer Posted July 11, 2015 Share Posted July 11, 2015 اذا كان a = اسم الماركر ف هذا الكود addEventHandler ("onClientRender", root, function () local x,y,z = getElementPosition (a) local px, py, pz = getElementPosition (localPlayer) if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then local sx, sy = getScreenFromWorldPosition (x,y,z+1) if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) if (dis < 20) then dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") end end end end ) Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 اذا كان a = اسم الماركر ف هذا الكود addEventHandler ("onClientRender", root, function () local x,y,z = getElementPosition (a) local px, py, pz = getElementPosition (localPlayer) if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then local sx, sy = getScreenFromWorldPosition (x,y,z+1) if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) if (dis < 20) then dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") end end end end ) يب اسم الماركر a طيب مافي اسهل من ذا الكود ض او شرح Link to comment
#Mr.alkmasha Posted July 11, 2015 Share Posted July 11, 2015 كيف يعني اسهل ؟ قصده يبي كود اسهل عشان يفهمه يعني يتعلم منه Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 انا باقي مبتدئ ف مفهم على الاشياء المتطورة ذي فلو تشرح لي تكون نفر ميه ميه Link to comment
The Killer Posted July 11, 2015 Share Posted July 11, 2015 addEventHandler ("onClientRender", root, function () local x,y,z = getElementPosition (a) -- نجيب احداثيات الماركر local px, py, pz = getElementPosition (localPlayer) -- نجيب احداثيات اللاعب if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then -- نتحقق انه مافيه شي مغطي على الماركر يعني مب ورا جدار او كذا local sx, sy = getScreenFromWorldPosition (x,y,z+1) -- نجيب الاحداثيات من العالم if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) -- نجيب المسافه بين اللاعب والماركر if (dis < 20) then -- اذا كانت المسافه اقل من 20 dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام end end end end ) Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 addEventHandler ("onClientRender", root, function () local x,y,z = getElementPosition (a) -- نجيب احداثيات الماركر local px, py, pz = getElementPosition (localPlayer) -- نجيب احداثيات اللاعب if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then -- نتحقق انه مافيه شي مغطي على الماركر يعني مب ورا جدار او كذا local sx, sy = getScreenFromWorldPosition (x,y,z+1) -- نجيب الاحداثيات من العالم if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) -- نجيب المسافه بين اللاعب والماركر if (dis < 20) then -- اذا كانت المسافه اقل من 20 dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام end end end end ) يعطيك الف عافيه ماقصرت لاكن الماركر بسيرفر سايد سويت له تريقر بس مدري صح او غلط --Server Side-- addEvent( "Marker", true ) addEventHandler( "Marker", resourceRoot, Marker ) function Marker() a = createMarker(1055.2, -2671, 0.8, "cylinder", 4 , 89, 0, 99, 255 ) end --Client Side-- addEventHandler ("onClientRender", root, function () triggerServerEvent ( "Marker", resourceRoot ) local x,y,z = getElementPosition (a) -- نجيب احداثيات الماركر local px, py, pz = getElementPosition (localPlayer) -- نجيب اداثيات اللاعب if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then -- نتحقق انه مافيه شي مغطي على الماركر يعني مب ورا جدار او كذا local sx, sy = getScreenFromWorldPosition (x,y,z+1) -- نجيب الاحداثيات من العالم if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) -- نجيب المسافه بين اللاعب والماركر if (dis < 20) then -- اذا كانت المسافه اقل من 20 dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام end end end end ) Link to comment
The Killer Posted July 11, 2015 Share Posted July 11, 2015 خطأ وش قاعد تسوي ؟ هههه حط لك ماركر في الكلاينت وخلاص واستخدم الماركر الثاني بالسيرفر مب لازم تحط ماركر وتريقر Link to comment
</Mr.Tn6eL> Posted July 11, 2015 Share Posted July 11, 2015 Server a = createMarker(1055.2, -2671, 0.8, "cylinder", 4 , 89, 0, 99, 255 ) setElementID(a, "MarkerText") Client addEventHandler ("onClientRender", root, function () local a = getElementByID("MarkerText") if not a then return end local x,y,z = getElementPosition (a) -- نجيب احداثيات الماركر local px, py, pz = getElementPosition (localPlayer) -- نجيب اداثيات اللاعب if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then -- نتحقق انه مافيه شي مغطي على الماركر يعني مب ورا جدار او كذا local sx, sy = getScreenFromWorldPosition (x,y,z+1) -- نجيب الاحداثيات من العالم if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) -- نجيب المسافه بين اللاعب والماركر if (dis < 20) then -- اذا كانت المسافه اقل من 20 dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام end end end end ) Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 خطأ وش قاعد تسوي ؟ هههه حط لك ماركر في الكلاينت وخلاص واستخدم الماركر الثاني بالسيرفر مب لازم تحط ماركر وتريقر مو المشكله ان الاكواد بسيرفر سايد ض عشان الماركر وكذا سوري ض والله مدري وش سويت ض فكرت ان اي شئ اقدر اسوي له تريقر Server a = createMarker(1055.2, -2671, 0.8, "cylinder", 4 , 89, 0, 99, 255 ) setElementID(a, "MarkerText") Client addEventHandler ("onClientRender", root, function () local a = getElementByID("MarkerText") if not a then return end local x,y,z = getElementPosition (a) -- نجيب احداثيات الماركر local px, py, pz = getElementPosition (localPlayer) -- نجيب اداثيات اللاعب if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then -- نتحقق انه مافيه شي مغطي على الماركر يعني مب ورا جدار او كذا local sx, sy = getScreenFromWorldPosition (x,y,z+1) -- نجيب الاحداثيات من العالم if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) -- نجيب المسافه بين اللاعب والماركر if (dis < 20) then -- اذا كانت المسافه اقل من 20 dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام end end end end ) ماجا شئ Link to comment
The Killer Posted July 11, 2015 Share Posted July 11, 2015 الحين انت الماركر حاطه بسيرفر سايد له فايده يعني ؟ تبي تستخدمه بشي معين ولا بس تحسب لازم تحطه وكذا ؟ Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 له فايده رابطه باكواد + اكثر من ماركر Link to comment
</Mr.Tn6eL> Posted July 11, 2015 Share Posted July 11, 2015 متاكد انك ماكنت ورا جدر او انك مسوي مشكلة بالماركر عشان كذا ماحط له setElementID Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 انا قدام الماركر على ض a = createMarker(1055.2, -2671, 0.8, "cylinder", 4 , 89, 0, 99, 255 ) setElementID(a, "MarkerText1") حطيت رقم واحد جنبه عشان عندي اكثر من ماركر في مشكله؟ Link to comment
</Mr.Tn6eL> Posted July 11, 2015 Share Posted July 11, 2015 انا قدام الماركر على ض a = createMarker(1055.2, -2671, 0.8, "cylinder", 4 , 89, 0, 99, 255 ) setElementID(a, "MarkerText1") حطيت رقم واحد جنبه عشان عندي اكثر من ماركر في مشكله؟ مشكلة كبير هذا لأن MarkerText1 مختلف عن MarkerText Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 شلتها بس ماجا الكلام Link to comment
The Killer Posted July 11, 2015 Share Posted July 11, 2015 اطرح السيرفر الي فيه الجزء ذا مع الكلاينت Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 اطرح السيرفر الي فيه الجزء ذامع الكلاينت Server a = createMarker(1055.2, -2671, 0.8, "cylinder", 4 , 89, 0, 99, 255 ) setElementID(a, "MarkerText") Client addEventHandler ("onClientRender", root, function () local a = getElementByID("MarkerText") if not a then return end local x,y,z = getElementPosition (a) -- نجيب احداثيات الماركر local px, py, pz = getElementPosition (localPlayer) -- نجيب اداثيات اللاعب if (isLineOfSightClear (x, y, z, px, py, pz, true, true, false, true)) then -- نتحقق انه مافيه شي مغطي على الماركر يعني مب ورا جدار او كذا local sx, sy = getScreenFromWorldPosition (x,y,z+1) -- نجيب الاحداثيات من العالم if (sx) and (sy) then local dis = getDistanceBetweenPoints3D (x,y,z, px,py,pz) -- نجيب المسافه بين اللاعب والماركر if (dis < 20) then -- اذا كانت المسافه اقل من 20 dxDrawText ("Text", sx + 2, sy + 2, sx, sy, tocolor (0,0,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام dxDrawText ("Text", sx, sy, sx, sy, tocolor (255,255,0), 2 - (dis / 20), "arial", "center", "center") -- نكتب الكلام end end end end ) Link to comment
The Killer Posted July 11, 2015 Share Posted July 11, 2015 طيب الكود ذا مافيه مشكله وشغال مدري وش مسوي انت Link to comment
#Mr.Rajo~,< Posted July 11, 2015 Author Share Posted July 11, 2015 طيب الكود ذا مافيه مشكلهوشغال مدري وش مسوي انت ماسويت شئ ض بس في جدار ورا الماركر مدري يأثر ولا لا Link to comment
#Mr.alkmasha Posted July 11, 2015 Share Posted July 11, 2015 طيب الكود ذا مافيه مشكلهوشغال مدري وش مسوي انت ماسويت شئ ض بس في جدار ورا الماركر مدري يأثر ولا لا انت تبي الكتابه تيجي عل جدار ؟ اذا تبيها كذا اخفي الماركر حط الالفا حقه 0 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