☠ RaZeR ☠ Posted August 13, 2015 Share Posted August 13, 2015 هلا والله شباب ,, وش اسوي عشان اضيف نفس الماب الموجود في الفري روم الى الفري روم الجديد حقي سويت اللوحة : mapwnd = guiCreateWindow(345, 81, 433, 410, "", false) الحين من وين اجيب الماب التفاعلي اللي في الفري روم لاحد يقولي جيب من الفري روم الاصلي لانه ماراح ينفع Client Side -- function warpMapInit() addEventHandler('onClientRender', g_Root, updatePlayerBlips) end function spawnMapDoubleClick(relX, relY) setPlayerPosition(relX*6000 - 3000, 3000 - relY*6000, 0) closeWindow(wndSpawnMap) end function closeSpawnMap() showCursor(false) removeEventHandler('onClientRender', g_Root, updatePlayerBlips) for elem,data in pairs(g_PlayerData) do for i,name in ipairs({'mapBlip', 'mapLabelShadow', 'mapLabel'}) do if data.gui[name] then destroyElement(data.gui[name]) data.gui[name] = nil end end end end wndSpawnMap = { 'wnd', text = 'Select spawn position', width = g_MapSide + 20, controls = { {'img', id='map', src='map.png', width=g_MapSide, height=g_MapSide, ondoubleclick=spawnMapDoubleClick}, {'lbl', text='Welcome to freeroam. Double click a location on the map to spawn.', width=g_MapSide-60, align='center'}, {'btn', id='close', closeswindow=true} }, oncreate = warpMapInit, onclose = closeSpawnMap } Server Side-- function spawnMe(x, y, z) if not x then x, y, z = getElementPosition(source) end if isPedTerminated(source) then repeat until spawnPlayer(source, x, y, z, 0, math.random(9, 288)) else spawnPlayer(source, x, y, z, 0, getPedSkin(source)) end setCameraTarget(source, source) setCameraInterior(source, getElementInterior(source)) end Freeroam Code Link to comment
><? Posted August 14, 2015 Share Posted August 14, 2015 اممم وضح شو قصدك بالماب بالفري روم ؟؟ وكمان وش تقصد بالماب التفاعلي فهم اكثر عشان نساعدك Link to comment
☠ RaZeR ☠ Posted August 14, 2015 Author Share Posted August 14, 2015 شفت الماب الموجود في الفري روم ابيه احطه في اللوحه اللي عندي mapwnd = guiCreateWindow(345, 81, 433, 410, "", false) الماب التفاعلي يعني فيه بليبل بمكان اللاعب و لما اضغط على مكان في الخريطه يوديني المكان ذا والاحداثيات وغيره مثل الموجود في الفريروم Link to comment
><? Posted August 14, 2015 Share Posted August 14, 2015 guiCreateStaticImage onClientGUIDoubleClick guiSetPosition setPlayerPosition onClientRender طبعا الاكواد ذي كلينت ولازم قبل ما تسويها تكون مجهز لوحه وجدول حسب طريقه شغلك getElementPosition clientCall اكواد السيرفر ... انا بحاول ارتب لك بس المهم اذا انا انسيت شغله او زدت شغله ردلي خبر واذا ما فهمت اي شي انا جاهز بساعدك بس المهم لا تواخذني بس فاطس من النعس تقبل مروري بالتوفيق # Link to comment
☠ RaZeR ☠ Posted August 14, 2015 Author Share Posted August 14, 2015 mapwnd = guiCreateWindow(345, 81, 433, 410, "", false) map = guiCreateStaticImage(1, 46, 432, 364, "map.png", false, mapwnd) وبعدين ؟ Link to comment
><? Posted August 14, 2015 Share Posted August 14, 2015 سوي جدول ... او قيم مثلا قيمه او مكان بالداتا عشان تحجز للاحداثيات مثلا x = "JJ" بعدين تجيب الداتا بمكان الكبسه بالافنت الي معطيك اياه فوق Link to comment
</Mr.Tn6eL> Posted August 14, 2015 Share Posted August 14, 2015 هنا تجيب المكان الي ضغط منه local x, y = getCursorPosition( ) x, y = x*6000, y*6000 كذا ضربنا مكان الماوس على حجم ماب اللعبة الكامل طبعا الاحداثيات تكون relative اذ ماتعرفها تجي كذا 0.5 -- يعني نص 1.0 -- يعني كامل وهذا حدث اذ ضغط مرتين onClientGUIDoubleClick بس اعطيتك الطريقة اللي لما يضغط ينتقل Link to comment
☠ RaZeR ☠ Posted August 14, 2015 Author Share Posted August 14, 2015 كذا ؟ ارجوا المساعده والله محتاجه setElementPosition ( source, x+0.5, y+0.5, 3 ) هذي سيرفر يبيلها تريقر ! map = guiCreateStaticImage(1, 46, 432, 364, "map.png", false, mapwnd) local x, y = getCursorPosition( ) x, y = x*6000, y*6000 addEventHandler("onClientGUIDoubleClick",root, function () if source == map then triggerServerEvent ( "map", localPlayer) end end ) سيرفر addEvent ("map", true) addEventHandler ("map", root, function () setElementPosition ( source, x+0.5, y+0.5, 3 ) end ) Link to comment
</Mr.Tn6eL> Posted August 14, 2015 Share Posted August 14, 2015 addEventHandler("onClientGUIDoubleClick", resourceRoot, function( ) if source == map then local x, y = getCursorPosition( ) x, y = x*6000, y*6000 setElementPosition(localPlayer, x, y, getGroundPosition(x, y, 500)+1) end end) مني متاكد من الاحداثي z Link to comment
☠ RaZeR ☠ Posted August 15, 2015 Author Share Posted August 15, 2015 اخوي لما اضغط على مكان في الخريطه يوديني البحر 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