Ahmed_Negm Posted May 3, 2018 Share Posted May 3, 2018 (edited) السلام عليكم وانا جالس اسوي في مود البص for دلوقتي مجمع تلت احداثيات لتلت محطات اتوبيس تمام واستخدمت لأصنع مركر عند كل محطات وعملت تيمر بحيث انو يصنع كل تلت ثواني مثلآ بــيــد اكنو زبون للأوتوبيس وعملت تحقق يحسب عدد البددات جوا كل مركر عند كل محطات لو عدو 8 ميصنع بدات تاني تمام تبعو بأ مع الكود بعدين بشرح الخطأ بالتفصيل --server busStations = { } for n, p in ipairs ( {{1698, 1452, 11}, {2108, 1390, 11}, {1770, -1894, 14}} ) do -- هنا احداثيات التلت محطات local mr = createMarker ( p[1], p[2], p[3], "cylinder", 40, 0, 0, 255, 0 ) -- هنا صنع المركر بتاع كل محطة table.insert ( busStations, mr ) -- دا جدول ملكمش دعوة بيه بستخدمه في سكربت تاني setTimer ( function () -- دا تيمر بيتعمل لكل محطة علشان ينفذ الي تحت local created = 0 -- دي بداية العداد 0 for di, pd in ipairs (getElementsByType ( "ped" )) do if isElementWithinMarker ( pd, mr ) then created = created + 1 -- هنا العداد الي المفروض يعد end end if created < 8 then -- الشرط outputChatBox (created) -- هنا علشان اتحقق اذ كان العدادا بيعد ولا لأ ومع ذلك مبيعدش ويجبلي 0 createPed ( math.random(1,312), p[1]+math.random ( -5, 5 ), p[2]+math.random ( -5, 5 ), p[3], math.random ( 0, 360 ) ) -- صنع البد end end, 3000, 0 ) end المشكلة دلوقتي انو العداد الي اانا عاملو مبيعدش ولا حتي بيظهر اي خطأ بالدي بق وسبحان الله اول مدخل المركر بيبدأ يعد البيدات الي فيه وكنت بتأكد عن طريق امر اوت بت شات بوكس تحت الشرط علي طول جرب وشوف الكود بسيط وياريت تساعدوني لو سمحتم او علي الأقل مش عايز الأعرف المشكلة بس اي طريقة بديلة Edited May 3, 2018 by Ahmed_Negm Link to comment
!#NssoR_) Posted May 3, 2018 Share Posted May 3, 2018 وعليكم السلام و الرحمة كودك خطأ , سويتلك تعديل علي الكود واصبحت فكرة الكود كالتالي : عند كل محطة يتم إنشاء لاعب وهمي واحد كل كم ثانية ويظهرلك عدد اللاعبين الوهميين بالشات وبكل محطه يتم إنشاء 7 فقط ----------------------------------------------- طبعأ الكود يبيله تعديلات منك عشان يتناسب مع السكربت حقك وماتظهر فيه اي بقات ملاحظة : بما انك حاط اختيار عشوائي للشخصية حبيت اقولك ان فيه ارقام مالها شخصيات مثل رقم 3 و 4 وممكن فيه ارقام اخري ولكن الي انا اعرفهم الرقمين هذول فـ ممكن هاذي تسببلك خطا بالكود لازم تعدل ع الكود عشان تتفادي هالمشكلة او انك تحدد شخصيات معينه افضل من انه يكون عشوائي * طبعا انا ماسويتلك كل شئ , انا كل الي سويته اني اوصلك الفكرة الي تخليك تعرف كيف تصنع لكل محطه لاعبين وهميين وتجيب عددهم بالشات فقط و الباقي عليك تفضل : Stations = {{1698, 1452, 11}, {2108, 1390, 11}, {1770, -1894, 14}} Station1,Station2,Station3 = 0,0,0 busStations = { } for n, p in ipairs ( Stations ) do local mr = createMarker ( p[1], p[2], p[3], "cylinder", 40, 0, 0, 255, 0 ) table.insert ( busStations, mr ) end setTimer ( function () for n, p in ipairs ( Stations ) do if ( n == 1 ) then if ( Station1 < 8 ) then createPed ( math.random(1,312), p[1]+math.random ( -5, 5 ), p[2]+math.random ( -5, 5 ), p[3], math.random ( 0, 360 ) ) Station1 = Station1 + 1 outputChatBox('Number of peds in Station1 is '..Station1) end elseif ( n == 2 ) then if ( Station2 < 8 ) then createPed ( math.random(1,312), p[1]+math.random ( -5, 5 ), p[2]+math.random ( -5, 5 ), p[3], math.random ( 0, 360 ) ) Station2 = Station2 + 1 outputChatBox('Number of peds in Station2 is '..Station2) end elseif ( n == 3 ) then if ( Station3 < 8 ) then createPed ( math.random(1,312), p[1]+math.random ( -5, 5 ), p[2]+math.random ( -5, 5 ), p[3], math.random ( 0, 360 ) ) Station3 = Station3 + 1 outputChatBox('Number of peds in Station3 is '..Station3) end end end end, 7000, 0 ) Link to comment
Ahmed_Negm Posted May 3, 2018 Author Share Posted May 3, 2018 Just now, !#NssoR_) said: وعليكم السلام و الرحمة كودك خطأ , سويتلك تعديل علي الكود واصبحت فكرة الكود كالتالي : عند كل محطة يتم إنشاء لاعب وهمي واحد كل كم ثانية ويظهرلك عدد اللاعبين الوهميين بالشات وبكل محطه يتم إنشاء 7 فقط ----------------------------------------------- طبعأ الكود يبيله تعديلات منك عشان يتناسب مع السكربت حقك وماتظهر فيه اي بقات ملاحظة : بما انك حاط اختيار عشوائي للشخصية حبيت اقولك ان فيه ارقام مالها شخصيات مثل رقم 3 و 4 وممكن فيه ارقام اخري ولكن الي انا اعرفهم الرقمين هذول فـ ممكن هاذي تسببلك خطا بالكود لازم تعدل ع الكود عشان تتفادي هالمشكلة او انك تحدد شخصيات معينه افضل من انه يكون عشوائي * طبعا انا ماسويتلك كل شئ , انا كل الي سويته اني اوصلك الفكرة الي تخليك تعرف كيف تصنع لكل محطه لاعبين وهميين وتجيب عددهم بالشات فقط و الباقي عليك تفضل : Stations = {{1698, 1452, 11}, {2108, 1390, 11}, {1770, -1894, 14}} Station1,Station2,Station3 = 0,0,0 busStations = { } for n, p in ipairs ( Stations ) do local mr = createMarker ( p[1], p[2], p[3], "cylinder", 40, 0, 0, 255, 0 ) table.insert ( busStations, mr ) end setTimer ( function () for n, p in ipairs ( Stations ) do if ( n == 1 ) then if ( Station1 < 8 ) then createPed ( math.random(1,312), p[1]+math.random ( -5, 5 ), p[2]+math.random ( -5, 5 ), p[3], math.random ( 0, 360 ) ) Station1 = Station1 + 1 outputChatBox('Number of peds in Station1 is '..Station1) end elseif ( n == 2 ) then if ( Station2 < 8 ) then createPed ( math.random(1,312), p[1]+math.random ( -5, 5 ), p[2]+math.random ( -5, 5 ), p[3], math.random ( 0, 360 ) ) Station2 = Station2 + 1 outputChatBox('Number of peds in Station2 is '..Station2) end elseif ( n == 3 ) then if ( Station3 < 8 ) then createPed ( math.random(1,312), p[1]+math.random ( -5, 5 ), p[2]+math.random ( -5, 5 ), p[3], math.random ( 0, 360 ) ) Station3 = Station3 + 1 outputChatBox('Number of peds in Station3 is '..Station3) end end end end, 7000, 0 ) حلو بس برضو انت مقلتليش فين الخطأ كما ان الطريقة دي مش حتنفع لازم عليها تعديل كتير ومش مختصرة للأد لأن لسا في شغل تاني حيتعمل بس انا عايز اعرف ايه غلطي في الأسكربت فوق ولو معرفتش حشتغل بكودك Link to comment
Master_MTA Posted May 5, 2018 Share Posted May 5, 2018 On 5/3/2018 at 02:21, Ahmed_Negm said: المشكلة دلوقتي انو العداد الي اانا عاملو مبيعدش ولا حتي بيظهر اي خطأ بالدي بق 1-استخدم التيبل لصنع الماركرات 2- استخدم التيبل لتعريف التايمر لكل محطه بالكي الخاص بها وطبعا باقي الفنكشن هتتبعه بالتعديلات دي بالتوفيق 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