Jump to content

x[lمشكله]x مشكله آلرجآء الحل


Recommended Posts

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

آخواني انا طرحت موضوع قبل لكن ماتردون

المهم اخواني انا مسوي مهمه

المهمه هي انك تروح لـمآكره

والمآركه يرسبنك في محل فيه32 رسبآون و الي يدخلون المهمه 32

يعني كل لاعب في رسبآون

كل ششيء تمام

لكن انا مسوي لما ينقل من الماركه للمهمه

يديه فريز + حمايه مايقتل احد لمدت 2 دقيقه

و بعدين تنفك

لكن المشكله انه ماتنفك

بعد 2 دقيقه ماتنفك

سيرفر

  
addEventHandler ( "onPlayerJoin",root,function() 
outputChatBox("تم بددآ المهم اذهب الى المآركه  لـدخول الى المهمه",source, 50, 30, 255) 
outputChatBox("تم تغشيل المهمه",source, 0, 150, 255) 
end) 
--------create Marker 
local WarMission = createMarker(2727.24390,-1826.40039,11.84375, "cylinder", 2, 255, 150, 250, 150) 
--------Taple 
local war = { 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375},} 
-------- Event Marker 
addEventHandler( "onMarkerHit", WarMission,function (player) 
if getElementType(player) == "player" and not isPedInVehicle(player) then 
if player == 32 then return outputChatBox ( 'العدد مكتمل لايمكنك دخول المهمه', player ) end 
local x, y, z = unpack(war[math.random(#war)]) 
setElementPosition(player, x, y, z) 
setElementModel (player, 2) 
setElementDimension ( player, 6 ) 
giveWeapon ( player, 4, 1, true ) 
giveWeapon ( player, 27, 999999, true ) 
giveWeapon ( player, 31, 999999, true ) 
giveWeapon ( player, 30, 999999, true ) 
giveWeapon ( player, 16, 2, true ) 
giveWeapon ( player, 25, 999999, true )             
toggleControl ( player, "fire", false ) 
setElementFrozen(player, true) 
setTimer (function (player) 
if isElement(player) then 
toggleControl ( player, "fire", true ) 
setElementFrozen(player, false) 
end 
end,1*60000, 0 ) 
end 
end) 
  

Link to comment
  
addEventHandler ( "onPlayerJoin",root,function() 
outputChatBox("تم بددآ المهم اذهب الى المآركه  لـدخول الى المهمه",source, 50, 30, 255) 
outputChatBox("تم تغشيل المهمه",source, 0, 150, 255) 
end) 
--------create Marker 
local WarMission = createMarker(2727.24390,-1826.40039,11.84375, "cylinder", 2, 255, 150, 250, 150) 
--------Taple 
local war = { 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375},} 
-------- Event Marker 
addEventHandler( "onMarkerHit", WarMission,function (player) 
if getElementType(player) == "player" and not isPedInVehicle(player) then 
if player == 32 then return outputChatBox ( 'العدد مكتمل لايمكنك دخول المهمه', player ) end 
local x, y, z = unpack(war[math.random(#war)]) 
setElementPosition(player, x, y, z) 
setElementModel (player, 2) 
setElementDimension ( player, 6 ) 
giveWeapon ( player, 4, 1, true ) 
giveWeapon ( player, 27, 999999, true ) 
giveWeapon ( player, 31, 999999, true ) 
giveWeapon ( player, 30, 999999, true ) 
giveWeapon ( player, 16, 2, true ) 
giveWeapon ( player, 25, 999999, true )             
toggleControl ( player, "fire", false ) 
setElementFrozen(player, true) 
setTimer (function (player) 
toggleControl ( player, "fire", true ) 
setElementFrozen(player, false) 
end,1*60000, 0 ) 
end 
end) 
  

Link to comment
  
addEventHandler ( "onPlayerJoin",root,function() 
outputChatBox("تم بددآ المهم اذهب الى المآركه  لـدخول الى المهمه",source, 50, 30, 255) 
outputChatBox("تم تغشيل المهمه",source, 0, 150, 255) 
end) 
--------create Marker 
local WarMission = createMarker(2727.24390,-1826.40039,11.84375, "cylinder", 2, 255, 150, 250, 150) 
--------Taple 
local war = { 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375},} 
-------- Event Marker 
addEventHandler( "onMarkerHit", WarMission,function (player) 
if getElementType(player) == "player" and not isPedInVehicle(player) then 
if player == 32 then return outputChatBox ( 'العدد مكتمل لايمكنك دخول المهمه', player ) end 
local x, y, z = unpack(war[math.random(#war)]) 
setElementPosition(player, x, y, z) 
setElementModel (player, 2) 
setElementDimension ( player, 6 ) 
giveWeapon ( player, 4, 1, true ) 
giveWeapon ( player, 27, 999999, true ) 
giveWeapon ( player, 31, 999999, true ) 
giveWeapon ( player, 30, 999999, true ) 
giveWeapon ( player, 16, 2, true ) 
giveWeapon ( player, 25, 999999, true )             
toggleControl ( player, "fire", false ) 
setElementFrozen(player, true) 
setTimer (function (player) 
toggleControl ( player, "fire", true ) 
setElementFrozen(player, false) 
end,1*60000, 0 ) 
end 
end) 
  

الحمايه تبقى ماتنفك ابدا ^_^ و حتى الفريز

Link to comment
جرب كذا

setTimer ( toggleControl , 120000 , 1 , player , "fire" , false ) 
  
setTimer ( setElementFrozen , 120000 , 1 , player , false ) 

تم ي عسل تسلم ي عبد الكريم

الان انا بدي اخر واحد يبقى بي المهم ينتحر و يخذ فلوس شوف انا وش سويت

  
if ( player == 1 ) then killPed ( player ) 
givePlayerMoney ( player, 5000 ) 
  
-- بس مازبط 
  

Link to comment
انت اول شي عندك اخطاء كيف تتحقق ان اللاعب اللي دخل الماركر يساوي 32

يعني :

userdata == 32 :crazy:

يعني اذا العدد الاقصى 32 لو يجي لاعب 33 يقول له العدد متكمل...

Link to comment

انا فاهم وش تبي تسوي، بس طريقتك غلط انت قاعد تسوي تحقق انه اللاعب اللي دخل الماركر يساوي ٣٢، اذا تبي تجيب العدد داخل الماركر استخدم الوظيفه

getPlayersInMarker

او استخدم الجداول.

Link to comment
انا فاهم وش تبي تسوي، بس طريقتك غلط انت قاعد تسوي تحقق انه اللاعب اللي دخل الماركر يساوي ٣٢، اذا تبي تجيب العدد داخل الماركر استخدم الوظيفه

getPlayersInMarker

او استخدم الجداول.

مممكن تشرح لي كيف طريقة الجددآول

getPlayersInMarker

--- مثال ع ذا لاني ما قعد شفته

Link to comment
انسخ الوظيفه والصقها بالملف عندك واستخدمها

كلها ارقومنت واحد حط الماركر وخلاص.

  
--يعني احط اليسولف فانكشن ذا 
  
function getPlayersInMarker(marker) 
    local players = 0 
    if marker and getElementType(marker) == "marker" then 
        for i,player in ipairs(getElementsByType("player")) do 
            if isElementWithinMarker(player,marker) then 
                players = players + 1 
            end 
        end 
    end 
    return players 
end 
  
--فوق فانكشن  الماركه 
--؟ 
  
--و اخلي 
if player == 32 then return outputChatBox ( 'العدد مكتمل لايمكنك دخول المهمه', player ) end 
  

Link to comment

aTable = {  } 
addEventHandler ( "onPlayerJoin",root,function() 
outputChatBox("تم بددآ المهم اذهب الى المآركه  لـدخول الى المهمه",source, 50, 30, 255) 
outputChatBox("تم تغشيل المهمه",source, 0, 150, 255) 
end) 
--------create Marker 
local WarMission = createMarker(2727.24390,-1826.40039,11.84375, "cylinder", 2, 255, 150, 250, 150) 
--------Taple 
local war = { 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375},} 
-------- Event Marker 
addEventHandler( "onMarkerHit", WarMission,function (player) 
if getElementType(player) == "player" and not isPedInVehicle(player) then 
if #aTable >= 32 then return outputChatBox ( 'العدد مكتمل لايمكنك دخول المهمه', player ) end 
local x, y, z = unpack(war[math.random(#war)]) 
setElementPosition(player, x, y, z) 
setElementModel (player, 2) 
setElementDimension ( player, 6 ) 
giveWeapon ( player, 4, 1, true ) 
giveWeapon ( player, 27, 999999, true ) 
giveWeapon ( player, 31, 999999, true ) 
giveWeapon ( player, 30, 999999, true ) 
giveWeapon ( player, 16, 2, true ) 
giveWeapon ( player, 25, 999999, true )             
toggleControl ( player, "fire", false ) 
setElementFrozen(player, true) 
table.insert ( aTable , player ) 
setTimer ( toggleControl , 120000 , 1 , player , "fire" , true ) 
setTimer ( setElementFrozen , 120000 , 1 , player , false ) 
end 
end) 
  
Link to comment
^ افرض اني دخلت الماركر اكثر من مره؟ راح يضيفني بالجدول، سوي يوم يطلع من الماركر يطلعه من الجدول او تحقق انه اذا كان بالجدول مايضيفه مره ثانيه.

يب انا اول مره دخلت المآركه نقلني و شاف في المهم اخر واحد انا ادني انتحار ثمن دخلت ولا ادني يعني ضافني في الجدول 2 مره

طيب ي شآطح طريقة اليوسفل فانكشن كيف اجيب الكود حق اليوسفل فانكشن و احطه فوق كودي؟

ولا كيف ^_^

Link to comment
^ افرض اني دخلت الماركر اكثر من مره؟ راح يضيفني بالجدول، سوي يوم يطلع من الماركر يطلعه من الجدول او تحقق انه اذا كان بالجدول مايضيفه مره ثانيه.

اول مايدخل الماركر راح يحطه بدمنشن , ماراح يقدر يخشه مره ثانية يعني لازم يرجع دمنشن 0 عشان يقدر يخشه مره ثانية

يقدر يسوي الي يبيه بس حبيت اوضحله عشان يقدر يكمل طلبه

ولاهنت على الرد

Link to comment
^ افرض اني دخلت الماركر اكثر من مره؟ راح يضيفني بالجدول، سوي يوم يطلع من الماركر يطلعه من الجدول او تحقق انه اذا كان بالجدول مايضيفه مره ثانيه.

اول مايدخل الماركر راح يحطه بدمنشن , ماراح يقدر يخشه مره ثانية يعني لازم يرجع دمنشن 0 عشان يقدر يخشه مره ثانية

يقدر يسوي الي يبيه بس حبيت اوضحله عشان يقدر يكمل طلبه

ولاهنت على الرد

  
aTable = {  } 
addEventHandler ( "onPlayerJoin",root,function() 
outputChatBox("تم بددآ المهم اذهب الى المآركه  لـدخول الى المهمه",source, 50, 30, 255) 
outputChatBox("تم تغشيل المهمه",source, 0, 150, 255) 
end) 
--------create Marker 
local WarMission = createMarker(2727.24390,-1826.40039,11.84375, "cylinder", 2, 255, 150, 250, 150) 
--------Taple 
local war = { 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375},} 
-------- Event Marker 
addEventHandler( "onMarkerHit", WarMission,function (player) 
if getElementType(player) == "player" and not isPedInVehicle(player) then 
if #aTable >= 32 then return outputChatBox ( 'العدد مكتمل لايمكنك دخول المهمه', player ) end 
local x, y, z = unpack(war[math.random(#war)]) 
setElementPosition(player, x, y, z) 
setElementModel (player, 2) 
setElementDimension ( player, 6 ) 
giveWeapon ( player, 4, 1, true ) 
giveWeapon ( player, 27, 999999, true ) 
giveWeapon ( player, 31, 999999, true ) 
giveWeapon ( player, 30, 999999, true ) 
giveWeapon ( player, 16, 2, true ) 
giveWeapon ( player, 25, 999999, true )             
toggleControl ( player, "fire", false ) 
setElementFrozen(player, true) 
table.insert ( aTable , player ) 
setTimer ( toggleControl , 5000 , 1 , player , "fire" , true ) 
setTimer ( setElementFrozen , 5000 , 1 , player , false ) 
end 
end) 
  
  
  
buttons = { 
    ['F1'] = true, 
    ['F2'] = true, 
    ['F3'] = true, 
} 
  
addEventHandler( 'onClientKey', root, function (button , prees) 
    if prees and getElementDimension(localPlayer) == 6 then 
        if buttons[button] then 
                 outputChatBox("غير مصرح لك بفتح اللوحة الان ", source, 255, 0, 0) 
            cancelEvent() 
        end 
    end 
end) 
  
  
addEventHandler( "onPlayerWasted", root, 
 function() 
 if #aTable ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي 
if player then  -- إذا كان إسم اللاعب الي كتب الأمر يساوي اللاعب اف الجدول 
table.remove (aTable); 
  
 end 
 end 
 end 
) 
  
  
addEventHandler( "onPlayerQuit", root, 
 function() 
 if #aTable ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي 
if player then  -- إذا كان إسم اللاعب الي كتب الأمر يساوي اللاعب اف الجدول 
table.remove (aTable); 
  
 end 
 end 
 end 
) 
  
  
function rank1() 
    for a, b in pairs(aTable) do 
    if (aTable[player]) then 
    outputChatBox("انت بالمهمة") 
    if ( aTable[player] == 1 ) then killPed ( player ) 
givePlayerMoney ( player, 5000 ) 
    end 
end 
end 
end 
  

سويت كل شيء زآبط

لكن لما ادخل لو انا لوحدي مافيه معي احد مايديني كل بيد

و حتى لو فيه 4 لو اخر واحد بقي قتلهم و بقي يبقى لا يدونهه فلوس ولا يديه انتحار

Link to comment

^

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

وعندك شوية اخطاء ما اعرف اعدل من الجوال table.remove وعندك اخطاء بالوظيفه

اول مايدخل الماركر راح يحطه بدمنشن , ماراح يقدر يخشه مره ثانية يعني لازم يرجع دمنشن 0 عشان يقدر يخشه مره ثانية

يقدر يسوي الي يبيه بس حبيت اوضحله عشان يقدر يكمل طلبه

ولاهنت على الرد

بس حبيت اعلمك المفروض تتحقق لأن يمكن عنده مود او شي يرجعه للدمنشن 0 او شي زي كذا ف تجنباً للأخطاء المستقبليه ، ولاهنت وحصل خير :)

Link to comment
^

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

وعندك شوية اخطاء ما اعرف اعدل من الجوال table.remove وعندك اخطاء بالوظيفه

اول مايدخل الماركر راح يحطه بدمنشن , ماراح يقدر يخشه مره ثانية يعني لازم يرجع دمنشن 0 عشان يقدر يخشه مره ثانية

يقدر يسوي الي يبيه بس حبيت اوضحله عشان يقدر يكمل طلبه

ولاهنت على الرد

بس حبيت اعلمك المفروض تتحقق لأن يمكن عنده مود او شي يرجعه للدمنشن 0 او شي زي كذا ف تجنباً للأخطاء المستقبليه ، ولاهنت وحصل خير :)

كيف يعني وش هي الاخطاء

+ انا متحقق ان الاعب الي دخل المآركه اذا 1 يسويله كيل بد

  
    if ( aTable[player] == 1 ) then killPed ( player ) 
givePlayerMoney ( player, 5000 ) 
  

Link to comment

# اول خطأ عندك لازم تستخدم علامة الهاش

if #aTable [ player ] == 1 then 

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

لأنه اول مايدخل اللاعب للماركر بتحطه ف الجدول وبيصير ١ وبينقتل اللاعب والمهمه بتخرب

عشان كذا لازم تحط التحقق ذا اذا انتهت المهمه، وين الكود حق اول ماتنتهي المهمه؟

Link to comment
# اول خطأ عندك لازم تستخدم علامة الهاش
if #aTable [ player ] == 1 then 

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

لأنه اول مايدخل اللاعب للماركر بتحطه ف الجدول وبيصير ١ وبينقتل اللاعب والمهمه بتخرب

عشان كذا لازم تحط التحقق ذا اذا انتهت المهمه، وين الكود حق اول ماتنتهي المهمه؟

  
  
aTable = {  } 
addEventHandler ( "onPlayerJoin",root,function() 
outputChatBox("تم بددآ المهم اذهب الى المآركه  لـدخول الى المهمه",source, 50, 30, 255) 
outputChatBox("تم تغشيل المهمه",source, 0, 150, 255) 
end) 
--------create Marker 
local WarMission = createMarker(2727.24390,-1826.40039,11.84375, "cylinder", 2, 255, 150, 250, 150) 
--------Taple 
local war = { 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375}, 
{2485.00000,-1667.00000,13.34375},} 
-------- Event Marker 
addEventHandler( "onMarkerHit", WarMission,function (player) 
if getElementType(player) == "player" and not isPedInVehicle(player) then 
if #aTable >= 32 then return outputChatBox ( 'العدد مكتمل لايمكنك دخول المهمه', player ) end 
  if (aTable[player]) then 
    outputChatBox("انت بالمهمة") 
local x, y, z = unpack(war[math.random(#war)]) 
setElementPosition(player, x, y, z) 
setElementModel (player, 2) 
setElementDimension ( player, 6 ) 
giveWeapon ( player, 4, 1, true ) 
giveWeapon ( player, 27, 999999, true ) 
giveWeapon ( player, 31, 999999, true ) 
giveWeapon ( player, 30, 999999, true ) 
giveWeapon ( player, 16, 2, true ) 
giveWeapon ( player, 25, 999999, true )             
toggleControl ( player, "fire", false ) 
setElementFrozen(player, true) 
table.insert ( aTable , player ) 
setTimer ( toggleControl , 5000 , 1 , player , "fire" , true ) 
setTimer ( setElementFrozen , 5000 , 1 , player , false ) 
end 
end 
end) 
  
  
  
buttons = { 
    ['F1'] = true, 
    ['F2'] = true, 
    ['F3'] = true, 
} 
  
addEventHandler( 'onClientKey', root, function (button , prees) 
    if prees and getElementDimension(localPlayer) == 6 then 
        if buttons[button] then 
                 outputChatBox("غير مصرح لك بفتح اللوحة الان ", source, 255, 0, 0) 
            cancelEvent() 
        end 
    end 
end) 
  
  
addEventHandler( "onPlayerWasted", root, 
 function() 
 if #aTable ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي 
if player then  -- إذا كان إسم اللاعب الي كتب الأمر يساوي اللاعب اف الجدول 
table.remove (aTable , player ); 
  
 end 
 end 
 end 
) 
  
  
addEventHandler( "onPlayerQuit", root, 
 function() 
 if #aTable ~= 0 then -- نتأكد أن الجدول لا يساوي صفر أو مو فاضي 
if player then  -- إذا كان إسم اللاعب الي كتب الأمر يساوي اللاعب اف الجدول 
table.remove (aTable , player ); 
  
 end 
 end 
 end 
) 
function rank1() 
    for a, b in pairs(aTable) do 
   if #aTable [ player ] == 1 then killPed ( player ) 
givePlayerMoney ( player, 5000 ) 
    end 
end 
end 
  

كذا ؟

شوف

  if (aTable[player]) then

    outputChatBox("انت بالمهمة")

ضفتي ذي خليته في حدث دخول المآركه

Link to comment

استفيد من الموضوع هذا

https://forum.multitheftauto.com/viewtopic.php?f=160&t=77479&hilit=%D9%85%D9%87%D9%85%D8%A9+%D8%A7%D9%84%D8%B3%D9%86%D8%A7%D9%8A%D8%A8%D8%B1

فيه فنكشن اسمه

getPlayerTable 

الفنكشن ذا يتحقق ان الاعب الي حددته بالتيبل او لا

راح يفيدك كثير

وعشان تجيب اخر لاعب بالتيبل تسوي كذا

aTable [ 1 ] 

مثال

if ( #aTable == 1 ) then  
  
player = aTable [ 1 ] 
  
end 
Link to comment
استفيد من الموضوع هذا

https://forum.multitheftauto.com/viewtopic.php?f=160&t=77479&hilit=%D9%85%D9%87%D9%85%D8%A9+%D8%A7%D9%84%D8%B3%D9%86%D8%A7%D9%8A%D8%A8%D8%B1

فيه فنكشن اسمه

getPlayerTable 

الفنكشن ذا يتحقق ان الاعب الي حددته بالتيبل او لا

راح يفيدك كثير

وعشان تجيب اخر لاعب بالتيبل تسوي كذا

aTable [ 1 ] 

مثال

if ( #aTable == 1 ) then  
  
player = aTable [ 1 ] 
  
end 
  
function getPlayerTable(player, aTable) 
    for i, v in ipairs (aTable) do 
        if ( #aTable == 1 ) then 
        player = aTable [ 1 ] 
 killPed ( player ) 
givePlayerMoney ( player, 5000 ) 
end 
    end 
end 

كذا ي اخ عبد الكريم

Link to comment

يـ غالي ركز معي

انا قلت لك استخدم

getPlayerTable 

عشان تتحقق ان الاعب الي حددته انت موجود بالقاعدة ولا لا

يعني اول مايخش الماركر تسوي كذا

if getPlayerTable ( player , aTable ) then return outputChatBox ( "انت بالمهمة الان" , player , 255 , 255 , 255 , true ) end; 

كذا لو خش الماركر وهو موجود بالتيبل راح يطلع له انت بالمهمة

طبعا لازم يكون موجود الكود ذا

function getPlayerTable(player, Table) 
    for i, v in ipairs (Table) do 
        if (v == player) then 
            return true 
        end 
    end 
end 

ثانيا اول مايموت الاعب تحقق ان القاعدة تساوي 1 وتجيب الاعب المتبقي وتعطيه فلوس

يعني يصير الكود بالشكل هذا

addEventHandler( "onPlayerWasted", root, 
  
    function (  ) 
    
    if getPlayerTable ( source , aTable ) then 
  
    for i , v in ipairs ( aTable ) do 
     
    if ( v == source ) then 
     
    table.remove ( aTable , i ); 
     
            end 
        end 
    end 
        
    if ( #aTable == 1 ) then 
    
    player = aTable [ 1 ] 
    
    givePlayerMoney ( player , 1 ) 
  
   -- Your Code 
    
        end 
    end 
    ) 

طبعا مانب متأكد من الكود بشكل كامل لاكن جربه

+ طبق الي سويته على

onPlayerQuit 

اتمنى انك فهمت وبالتوفيق ان شاء الله

Edited by Guest
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...