Jump to content

x[ طلب ]x فنكشنات


#STZ

Recommended Posts

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

ابي فنكشنات مهمة الريس

المهمة تبدا كل 5 دقائق

اول ما تبدا كل الي يدخل يصير واقف مكانه لين 3 دقائق

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

والي  يلمس الماركر الكل يموت 

+

ياخذ فلوس

وكمان ابي اذا السيارات لمست بعض تدخل في بعض تصير هواء

Link to comment

خلي جدول الاحداثيات بالشكل هذا

local Pos = {

 { aState = true , x = 0 , y = 0 , z = 0 } ,
 { aState = true , x = 5 , y = 8 , z = 8 } ,

}

طبعا كـ مثال

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

واذا المهمة انتهت سوي لوب من جديد وخلي القيمة الاول بالتيبل كله يساوي ترو

Edited by Abdul KariM
حذف الكود الجاهز
  • Like 1
Link to comment
1 hour ago, #BrosS said:

@Abdul KariM  

لما يدخل الماركر ، ينقلهم و.. ، ويعطي اللي يدخل داتا

مجرد مثال يقول يبي يقتل اللي بالمهمة ، 

يتحقق اذا عليهم داتا المهمة يقتلهم مو يقتل كل السيرفر

ذذ

الاخ قصده على الاحداثيات +على الشخص اللي بياخذ الفلوس ما تصلح بالداتا والله اعلم

Link to comment
8local run = {     
prun = {         
{-1143.65503, 1114.31885, 38.19790}, -- 1 
{-1142.20239, 1112.48352, 38.20745}, -- 2
{-1140.60913, 1111.27490, 38.20083}, -- 3  
{-1139.09875, 1109.57727, 38.20629}, -- 4
{-1137.58252, 1108.39050, 38.20077}, -- 5   
{-1136.23059, 1107.09570, 38.20699} -- 6
},     
  
counter = { count = 0, pcount = 0 } }            

Event 'onMarkerHit'
if run.counter.count == 6 then return outputChatBox ( 'العدد مكتمل ', player ) end                 
local x, y, z = unpack(run.prun[math.random(#run.prun)])

-- ولما تسوي سيارة حط بدال الاحداثيات  x,y,z بس

run.counter.count = run.counter.count + 1             
-- شاطح مسويلي اياه

 

Link to comment
26 minutes ago, #_iMr.[E]coo said:

8local run = {     
prun = {         
{-1143.65503, 1114.31885, 38.19790}, -- 1 
{-1142.20239, 1112.48352, 38.20745}, -- 2
{-1140.60913, 1111.27490, 38.20083}, -- 3  
{-1139.09875, 1109.57727, 38.20629}, -- 4
{-1137.58252, 1108.39050, 38.20077}, -- 5   
{-1136.23059, 1107.09570, 38.20699} -- 6
},     
  
counter = { count = 0, pcount = 0 } }            

Event 'onMarkerHit'
if run.counter.count == 6 then return outputChatBox ( 'العدد مكتمل ', player ) end                 
local x, y, z = unpack(run.prun[math.random(#run.prun)])

-- ولما تسوي سيارة حط بدال الاحداثيات  x,y,z بس

run.counter.count = run.counter.count + 1             
-- شاطح مسويلي اياه

 

جاك الزاحف

Link to comment

Server Side

OutMessage , aValue_ , aVehicles_ , aRandom = outputChatBox , false , { } , { { x , y , z } , { x , y , z } , { x , y , z } }

aTable_ , aMarker , aMarkerWin = { } , createMarker ( x , y , z , 'corona' , 1 , 255 , 255 , 255 ) , createMarker ( x , y , z , 'corona' , 1 , 255 , 255 , 255 ) 

setElementDimension ( aMarkerWin , 10 )

function isPlayerInMission ( aPlayer )
    for _ , Index in ipairs ( aTable_ ) do
        if ( Index == aPlayer ) then
            return true
        else
            return false
        end
    end
end

function RemovePlayer_ ( aPlayer )
    for aValue1 , aValue2 in ipairs ( aTable_ ) do
        if ( aValue2 == aPlayer ) then
            table.remove ( aTable_ , aValue1 )
        end
    end
end

function OpenMission_ ( )
    aValue_ = true
    OutMessage ( 'True' )
end

function StartMission_ ( )
    aValue_ = false
        if ( #aTable_ > 0 ) then
            for _ , aIndex in ipairs ( aTable_ ) do 
                triggerClientEvent ( aIndex , 'Trigger:CollidableWith' , aIndex ) 
            end
        OutMessage ( 'False' )
    else
        OutMessage ( 'Failed' )
    end
end

addEventHandler ( 'onMarkerHit' , aMarker ,
function ( aPlayer )
    aState , aOccupant = ( aValue_ == true ) , ( isPedInVehicle ( aPlayer ) )
        if ( getElementType ( aPlayer ) == 'player' and not aOccupant and aState ) then
            setElementInterior ( aPlayer , 0 )
            setElementDimension ( aPlayer , 10 )
            fadeCamera ( aPlayer , false )
            setElementFrozen ( aPlayer , true )
            aVehicles_[aPlayer] = createVehicle ( 411 , unpack ( aRandom [ math.random ( #aRandom ) ] ) ) 
            table.insert ( aTable_ , aPlayer )
            setTimer ( function ( aPlayer ) 
                fadeCamera ( aPlayer , true )
                warpPedIntoVehicle ( aPlayer , aVehicles_[aPlayer] )
                setElementFrozen ( aVehicles_[aPlayer] , true )
                toggleControl( aPlayer, 'enter_exit', false )
                setElementFrozen ( aPlayer , false )
            end , 2500 , 1 , aPlayer )
        else
            OutMessage ( '[Race] : '..( not aState and 'Donot Open' or aOccupant and 'Exit' )..'' , aPlayer )
    end
end )


addEventHandler ( 'onMarkerHit' , aMarkerWin ,
function ( aPlayer )
    if ( getElementType ( aPlayer ) == 'player' and isPedInVehicle ( aPlayer ) ) then
        for _ , Players in ipairs ( getElementsByType ( 'player' ) ) do
            if ( isPlayerInMission ( Players ) ) then
                fadeCamera ( Players , false )
                setElementFrozen ( getPedOccupiedVehicle ( Players ) , true )
                RemovePlayer_ ( Players )
                setTimer ( function ( Players )
                    if ( isPedInVehicle ( Players ) ) then destroyElement ( getPedOccupiedVehicle ( Players ) ) end
                        setElementPosition ( Players , x , y , z + math.random ( 5 ) )
                        setElementDimension ( Players , 0 )
                        fadeCamera ( Players , true )
                    end , 2000 , 1 , Players )
                OutMessage ( '[Race] : '..getPlayerName ( aPlayer )..' Has Won ' , root )
                givePlayerMoney ( aPlayer , 100000 )
            end
        end
    end
end )

addEventHandler ( 'onPlayerWasted' , getRootElement ( ) ,
function ( )
    if ( isPlayerInMission ( source ) ) then
        RemovePlayer_ ( source )
        OutMessage ( '[Race] : '..getPlayerName ( source )..' Killed in a Mission ( '..#aTable_..' in Mission )' , root )
        if ( #aTable_ == 0 ) then 
            OutMessage ( '[Race] : a Mission Has Failed' , root ) 
        end
    end
end )

addEventHandler ( 'onPlayerQuit' , getRootElement ( ) ,
function ( )
    if ( isPlayerInMission ( source ) ) then
        RemovePlayer_ ( source )
        OutMessage ( '[Race] : '..getPlayerName ( source )..' Quit ( '..#aTable_..' in Mission )' , root )
        if ( #aTable_ == 0 ) then 
            OutMessage ( '[Race] : a Mission Has Failed' , root ) 
        end
    end
end )

 

Client Side

 

addEvent ( 'Trigger:CollidableWith' , true )
addEventHandler ( 'Trigger:CollidableWith' , getRootElement ( ) ,
function ( )
    for _,Vehicles in ipairs ( getElementsByType ( 'vehicle' , resourceRoot ) ) do
        setElementCollidableWith ( Vehicles , getPedOccupiedVehicle ( localPlayer ) , false ) 
        setElementFrozen ( Vehicles , false )
    end
end )

 

فنكشن

StartMission_ ( )

يبدء المهمه 

و

OpenMission_ ( )

لفتح المهمه و شكرا ههاي

بانتظار الانتقادات ض2

  • Like 1
Link to comment
3 hours ago, #Soking said:

Server Side


OutMessage , aValue_ , aVehicles_ , aRandom = outputChatBox , false , { } , { { x , y , z } , { x , y , z } , { x , y , z } }

aTable_ , aMarker , aMarkerWin = { } , createMarker ( x , y , z , 'corona' , 1 , 255 , 255 , 255 ) , createMarker ( x , y , z , 'corona' , 1 , 255 , 255 , 255 ) 

setElementDimension ( aMarkerWin , 10 )

function isPlayerInMission ( aPlayer )
    for _ , Index in ipairs ( aTable_ ) do
        if ( Index == aPlayer ) then
            return true
        else
            return false
        end
    end
end

function RemovePlayer_ ( aPlayer )
    for aValue1 , aValue2 in ipairs ( aTable_ ) do
        if ( aValue2 == aPlayer ) then
            table.remove ( aTable_ , aValue1 )
        end
    end
end

function OpenMission_ ( )
    aValue_ = true
    OutMessage ( 'True' )
end

function StartMission_ ( )
    aValue_ = false
        if ( #aTable_ > 0 ) then
            for _ , aIndex in ipairs ( aTable_ ) do 
                triggerClientEvent ( aIndex , 'Trigger:CollidableWith' , aIndex ) 
            end
        OutMessage ( 'False' )
    else
        OutMessage ( 'Failed' )
    end
end

addEventHandler ( 'onMarkerHit' , aMarker ,
function ( aPlayer )
    aState , aOccupant = ( aValue_ == true ) , ( isPedInVehicle ( aPlayer ) )
        if ( getElementType ( aPlayer ) == 'player' and not aOccupant and aState ) then
            setElementInterior ( aPlayer , 0 )
            setElementDimension ( aPlayer , 10 )
            fadeCamera ( aPlayer , false )
            setElementFrozen ( aPlayer , true )
            aVehicles_[aPlayer] = createVehicle ( 411 , unpack ( aRandom [ math.random ( #aRandom ) ] ) ) 
            table.insert ( aTable_ , aPlayer )
            setTimer ( function ( aPlayer ) 
                fadeCamera ( aPlayer , true )
                warpPedIntoVehicle ( aPlayer , aVehicles_[aPlayer] )
                setElementFrozen ( aVehicles_[aPlayer] , true )
                toggleControl( aPlayer, 'enter_exit', false )
                setElementFrozen ( aPlayer , false )
            end , 2500 , 1 , aPlayer )
        else
            OutMessage ( '[Race] : '..( not aState and 'Donot Open' or aOccupant and 'Exit' )..'' , aPlayer )
    end
end )


addEventHandler ( 'onMarkerHit' , aMarkerWin ,
function ( aPlayer )
    if ( getElementType ( aPlayer ) == 'player' and isPedInVehicle ( aPlayer ) ) then
        for _ , Players in ipairs ( getElementsByType ( 'player' ) ) do
            if ( isPlayerInMission ( Players ) ) then
                fadeCamera ( Players , false )
                setElementFrozen ( getPedOccupiedVehicle ( Players ) , true )
                RemovePlayer_ ( Players )
                setTimer ( function ( Players )
                    if ( isPedInVehicle ( Players ) ) then destroyElement ( getPedOccupiedVehicle ( Players ) ) end
                        setElementPosition ( Players , x , y , z + math.random ( 5 ) )
                        setElementDimension ( Players , 0 )
                        fadeCamera ( Players , true )
                    end , 2000 , 1 , Players )
                OutMessage ( '[Race] : '..getPlayerName ( aPlayer )..' Has Won ' , root )
                givePlayerMoney ( aPlayer , 100000 )
            end
        end
    end
end )

addEventHandler ( 'onPlayerWasted' , getRootElement ( ) ,
function ( )
    if ( isPlayerInMission ( source ) ) then
        RemovePlayer_ ( source )
        OutMessage ( '[Race] : '..getPlayerName ( source )..' Killed in a Mission ( '..#aTable_..' in Mission )' , root )
        if ( #aTable_ == 0 ) then 
            OutMessage ( '[Race] : a Mission Has Failed' , root ) 
        end
    end
end )

addEventHandler ( 'onPlayerQuit' , getRootElement ( ) ,
function ( )
    if ( isPlayerInMission ( source ) ) then
        RemovePlayer_ ( source )
        OutMessage ( '[Race] : '..getPlayerName ( source )..' Quit ( '..#aTable_..' in Mission )' , root )
        if ( #aTable_ == 0 ) then 
            OutMessage ( '[Race] : a Mission Has Failed' , root ) 
        end
    end
end )

 

Client Side

 


addEvent ( 'Trigger:CollidableWith' , true )
addEventHandler ( 'Trigger:CollidableWith' , getRootElement ( ) ,
function ( )
    for _,Vehicles in ipairs ( getElementsByType ( 'vehicle' , resourceRoot ) ) do
        setElementCollidableWith ( Vehicles , getPedOccupiedVehicle ( localPlayer ) , false ) 
        setElementFrozen ( Vehicles , false )
    end
end )

 

فنكشن

StartMission_ ( )

يبدء المهمه 

و

OpenMission_ ( )

لفتح المهمه و شكرا ههاي

بانتظار الانتقادات ض2

الله يهديك اخوي ما يبي يختار مكان عشوائي هو يبي يحدد المكان الاول والثاني ما يبي يجيب عشوائي

+_+

  • Like 2
Link to comment

@#Soking عندك فنكشن 

isPlayerInMisson

لو كان عندك 3.  او 4 لاعبين 

كودك راح يتحقق من اول لاعب اذا ماكان بالتيبل راح يوقف الوظيفة ويرجع لك بـ فولس

وبعد ناقصك تحققات  وفيه اخطاء

وبالنسبة لـ صاحب الموضوع اذا الطريقة الي عطيتك اياها قبل صعبة في اسهل منها

خلي جدول الاحداثيات بالشكل هذا

local Pos = {

 [ 1 ] = { x = 5 , y = 8 , z = 8 } ,
 
 [ 2 ] = { x = 1 , y = 4 , z = 0 } ,

}

وسوي متغير وقيمته 0 يكون بالسيرفر طبعا

وكل ما لاعب يدخل الماركر يزود قيمة المتغير واستدعي القيمة من الجدول بالشكل التالي

aNum = aNum + 1

x = Pos [ aNum ].x -- Ex

وكمل ع الباقي

Edited by Abdul KariM
  • Like 3
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...