Jump to content

SpawnPoint - طلب تعديل


Recommended Posts

السلام عليكم ورحمة الله وبركاتهه ..

بسم الله الرحمن الرحيم

آما بعد

سويت سكربت مـ علينآ منهه ..

فيه عدة آماكن سباون

:

Table !

local Spawns= {  
        {365.15387,-7712.17773+1,14.31181}, 
        {365.15387-5,-7712.17773+1,14.31181}, 
        {365.15387-10,-7712.17773+1,14.31181}, 
        {365.15387-15,-7712.17773+1,14.31181}, 
        {365.15387-20,-7712.17773+1,14.31181}, 
} 

وقت السباون

  local x, y, z = unpack ( Spawns[ math.random ( #Positions ) ] ) 

---- [[ تمام للحين ]] -----

سويت ان السباون يجي راندوم من الجدول

المشكلة هي :

ان مثلاً 2 من الاعبين يجون على نفس السباون

هذي هي المشكلة .. :mrgreen:

فـــ يـ ليت تعطوني حل ان كل لاعب يجي على سباون وما يتكرر ..

طبعاً لازم اشيل الراندوم وماعرفت وش اسوي مكانها عشان يتنظم السباون عشان كذا جيت عندكمـ :mrgreen:

:fadein::mrgreen:

والسلام عليكمْ

Link to comment

بعد ما تجيبهم تزود عليهم ..

local x, y, z = x + 3, y + 3, z 

او الاحسسن زود رقم عشوائي .. وغير كذا خله اللاعب ما يتاثر لو في لاعب بنفس المكان يعني يخش داخل جسمه وكذا هذا احسن حل

Link to comment

سويت لك مثال بسيط وتقدر تستخدم بهذي الطريقه

number = 0 
  
addCommandHandler("number", 
    function() 
        if number == 0 then 
            outputChatBox("0") 
            number = 1 
        elseif number == 1 then 
            outputChatBox("1") 
            number = 2 
        elseif number == 2 then 
            outputChatBox("2") 
            number = 0 
        end 
    end 
) 

Link to comment
سويت لك مثال بسيط وتقدر تستخدم بهذي الطريقه
number = 0 
  
addCommandHandler("number", 
    function() 
        if number == 0 then 
            outputChatBox("0") 
            number = 1 
        elseif number == 1 then 
            outputChatBox("1") 
            number = 2 
        elseif number == 2 then 
            outputChatBox("2") 
            number = 0 
        end 
    end 
) 

مـآله علآقة بموضوعـي

+ موضوعـ القيم فاهمه

المقصود بكلامكـ أني استخدم القيم وكذا كل ما يعمل سباون لاعب ازيد القيمة

number = number +1

وكذا يصير تمام

Link to comment

local Spawns ={ 
    {365.15387, -7712.17773+1, 14.31181}; 
    {365.15387-5, -7712.17773+1, 14.31181}; 
    {365.15387-10, -7712.17773+1, 14.31181}; 
    {365.15387-15, -7712.17773+1, 14.31181}; 
    {365.15387-20, -7712.17773+1, 14.31181}; 
} 
  
function getRandomSpawn() 
    for i,v in ipairs(Spawns) do 
        if not v[4] then 
            Spawns[i][4] = true 
            return v[1], v[2], v[3] 
        end 
    end 
    return Spawns[math.random(#Spawns)][1], Spawns[math.random(#Spawns)][2], Spawns[math.random(#Spawns)][3] 
end 
  
function resetSpawnsTable() 
    for i = 1, #Spawns do 
        Spawns[i][4] = false 
    end 
end 

جرب

Link to comment
سويت لك مثال بسيط وتقدر تستخدم بهذي الطريقه
number = 0 
  
addCommandHandler("number", 
    function() 
        if number == 0 then 
            outputChatBox("0") 
            number = 1 
        elseif number == 1 then 
            outputChatBox("1") 
            number = 2 
        elseif number == 2 then 
            outputChatBox("2") 
            number = 0 
        end 
    end 
) 

مـآله علآقة بموضوعـي

+ موضوعـ القيم فاهمه

المقصود بكلامكـ أني استخدم القيم وكذا كل ما يعمل سباون لاعب ازيد القيمة

number = number +1

وكذا يصير تمام

امممممم تقدر تستخدمها في كلا الحالتين بس الاهم التحقق عشان مايصير فيه اختلاط

Link to comment

حبيبي هذي قيم ثابتة .. يعني لازم تزود او تنقص خارج الجدول زي ما سويت لك فوق

وهذي الطريقة عموما ممكن تسبب مشاكل .. احسن حل مناسب تسوي اللاعب مخفي مو مخفي اقصد ما يبان اقصد انه حتى لو ترسبن لاعب بنفس مكانه ما ياثر

يعني يدخل ف جسمه عادي .. setElementCollidableWith

الا لو كنت تبي ان كل سبوان لاعب واحد فقط .. هذا غير شي .

Link to comment

آيه فهمتكـ

ينفع مثلاً أستخدم هذا الفنكشن عن طريق لوب + داتا ؟

أسوي لوب للمواتر واتحقق اذا عندها الداتا الي حق السكربت

مع نفسهـآ في الوب ؟ setElementCollidableWith واسوي لها

Link to comment

لو سباق سيارات .. اجباريا تحتاج هذا الشي ^

function ghostMode_ (   )  
    local vehicle_localPlayer = getPedOccupiedVehicle ( localPlayer ) 
    if ( vehicle_localPlayer ) then  
      for _,others in ipairs ( getElementsByType ( "vehicle" ) ) do  
          setElementCollidableWith ( vehicle_localPlayer, others, false ) 
      end 
   end 
end 
Link to comment
لو سباق سيارات .. اجباريا تحتاج هذا الشي ^

function ghostMode_ (   )  
    local vehicle_localPlayer = getPedOccupiedVehicle ( localPlayer ) 
    if ( vehicle_localPlayer ) then  
      for _,others in ipairs ( getElementsByType ( "vehicle" ) ) do  
          setElementCollidableWith ( vehicle_localPlayer, others, false ) 
      end 
   end 
end 

تمت الافادة الطريقة حلوة ~ يعطيكـ الف عافية مشكـور :)

:fadein:

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...