Jump to content

مشكله بالكود


iA7bk#

Recommended Posts

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

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

اضن صاحب الكود نفسه " عناد " وفي ناس عدلة معه بالكود

    Race = { 
        Players = { }; 
        Vehicles = { }; 
        Position = { 
            [1] = { 3596.18774, -889.70508, 13.28723 }; 
            [2] = { 3567.69019, -882.57233, 13.28357 }; 
            [3] = { 3542.21094, -821.49774, 13.29437 }; 
            [4] = { 3594.80640 -729.22852 2.69190 }; 
            [5] = { 3712.06812, -844.64856, 3.36885 }; 
        }; 
        Cars = { 
            { 432 }; 
            { 432 }; 
        }; 
    }; 
    local Timer 
      
    setRaceStats = function ( stats ) 
        if stats then 
            setElementData ( resourceRoot, "RaceStarted", true ) 
        else 
            Race.Players = 0 
            setElementData ( resourceRoot, "RaceStarted", false ) 
            outputChatBox ( "* تم إفتتاح السباق", root, 255, 255, 0, true ) 
        end 
    end 
      
    checkPlayers = function ( ) 
        if Race.Players < 2 then 
            for i, v in ipairs ( Race.Vehicles ) do 
                local player = getElementData ( v, "Owner" ) 
                if player then 
                    killPed ( player ) 
                end 
                destroyElement ( v ) 
            end 
            outputChatBox ( "* تم إلغاء السباق بسبب قلة اللاعبين", root, 255, 0, 0, true ) 
        end 
    end 
      
    getPlayerVehicle = function ( element ) 
        if element then 
            local type = getElementType 
            if type ( element ) == "player" or type ( element ) == "ped" then 
                if isPedInVehicle ( element ) then 
                    local vehicle = getPedOccupiedVehicle ( element ) 
                    if getVehicleController ( vehicle ) == element then 
                        return vehicle 
                    end 
                    return false 
                end 
                return false 
            end 
            return false 
        end 
        return false 
    end 
      
    addEventHandler ( "onPlayerChat", root, 
        function ( msg ) 
            if string.find ( msg, "سباق" ) then 
                if getElementData ( resourceRoot, "RaceStarted" ) then 
                    return outputChatBox ( "* لم ينتهي السباق بعد", source, 255, 0, 0, true ) 
                end     
                if Race.Players < 5 then 
                    if not Race.Vehicles[source] then 
                        Race.Players = Race.Players+1 
                        if Race.Players == 5 then 
                            setRaceStats ( true ) 
                            if isTimer ( Timer ) then 
                                killTimer ( Timer ) 
                            end 
                        else 
                            if not isTimer ( Timer ) then 
                                Timer = setTimer ( checkPlayers, 60000, 1 ) 
                            end 
                        end 
                        Race.Vehicles[source] = createVehicle ( Race.Cars[math.random(#Race.Cars)][1], Race.Position[Race.Players][1], Race.Position[Race.Players][2], Race.Position[Race.Players][3] ) 
                        setElementDimension ( Race.Vehicles[source], 1 ) 
                        setElementDimension ( source, 1 ) 
                        setTimer ( warpPedIntoVehicle, 100, 1, source, Race.Vehicles[source] ) 
                        setElementData ( Race.Vehicles[source], "Owner", source ) 
                    end 
                else 
                    outputChatBox ( "* أكتمل العدد", source, 255, 0, 0, true ) 
                end 
            end 
        end 
    ) 
      
    addEventHandler ( "onVehicleExplode", resourceRoot, 
        function ( ) 
            if Race.Players == 1 then 
                local player = getElementData ( source, "Owner" ) 
                if isElement ( player ) then 
                    if getElementData ( resourceRoot, "RaceStarted" ) then 
                        givePlayerMoney ( player, 5000 ) 
                        outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                    end 
                    Race.Vehicles[player] = nil 
                end 
                setTimer ( setRaceStats, 2000, 1, false ) 
            else 
                Race.Players = Race.Players-1 
            end 
        end 
    ) 
      
    addEventHandler ( "onElementDestroy", resourceRoot, 
        function ( ) 
            if getElementType ( source ) == "vehicle" then 
                if Race.Players == 1 then 
                    local player = getElementData ( source, "Owner" ) 
                    if isElement ( player ) then 
                        if getElementData ( resourceRoot, "RaceStarted" ) then 
                            givePlayerMoney ( player, 5000 ) 
                            outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                        end 
                        Race.Vehicles[player] = nil 
                    end 
                    setTimer ( setRaceStats, 2000, 1, false ) 
                else 
                    Race.Players = Race.Players-1 
                end 
            end 
        end 
    ) 
      
    addEventHandler ( "onPlayerQuit", root, 
        function ( ) 
            if Race.Vehicles[source] then 
                if isElement ( Race.Vehicles[source] ) then 
                    destroyElement ( Race.Vehicles[source] ) 
                else 
                    if Race.Players == 1 then 
                        setTimer ( setRaceStats, 2000, 1, false ) 
                    else 
                        Race.Players = Race.Players-1 
                    end 
                end 
                Race.Vehicles[source] = nil 
            end 
        end 
    ) 
      
    addEventHandler ( "onVehicleExit", resourceRoot, 
        function ( player ) 
            if getVehicleController ( source ) == player then 
                killPed ( player ) 
                destroyElement ( source ) 
            end 
        end 
    ) 
      
    addEventHandler ( "onPlayerWasted", root, 
        function ( ) 
            local vehicle = getPlayerVehicle ( source ) 
            if vehicle then 
                local player = getElementData ( vehicle, "Owner" ) 
                if player then 
                    if player == source then 
                        destroyElement ( vehicle ) 
                    end 
                end 
            end 
        end 
    ) 
      
    setTimer ( function ( ) 
        if isElement( Race.Vehicles[source] ) and isElementInWater( Race.Vehicles[source] ) and getVehicleController ( source ) == player then 
        killPed ( source ) 
        destroyElement ( Race.Vehicles[source] ) 
           end 
    end, 1000, 0 ) 
      
      
    setRaceStats ( false ) 

لما اكتب بالشات [ سباق ] ما ينقلني للإحداثيات الي وضعتها ارجو تعديل الكود لا هنتم

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

Link to comment

Server Side !

Race = { 
    Players = { }; 
    Vehicles = { }; 
    Position = { 
        [1] = { x, y, z }; 
        [2] = { x, y, z }; 
        [3] = { x, y, z }; 
        [4] = { x, y, z }; 
        [5] = { x, y, z }; 
    }; 
    Cars = { 
        { 432 }; 
        { 432 }; 
    }; 
}; 
local Timer 
  
setRaceStats = function ( stats ) 
    if stats then 
        setElementData ( resourceRoot, "RaceStarted", true ) 
    else 
        Race.Players = 0 
        setElementData ( resourceRoot, "RaceStarted", false ) 
        outputChatBox ( "* تم إفتتاح السباق", root, 255, 255, 0, true ) 
    end 
end 
  
checkPlayers = function ( ) 
    if Race.Players < 2 then 
        for i, v in ipairs ( Race.Vehicles ) do 
            local player = getElementData ( v, "Owner" ) 
            if player then 
                killPed ( player ) 
            end 
            destroyElement ( v ) 
        end 
        outputChatBox ( "* تم إلغاء السباق بسبب قلة اللاعبين", root, 255, 0, 0, true ) 
    end 
end 
  
getPlayerVehicle = function ( element ) 
    if element then 
        local type = getElementType 
        if type ( element ) == "player" or type ( element ) == "ped" then 
            if isPedInVehicle ( element ) then 
                local vehicle = getPedOccupiedVehicle ( element ) 
                if getVehicleController ( vehicle ) == element then 
                    return vehicle 
                end 
                return false 
            end 
            return false 
        end 
        return false 
    end 
    return false 
end 
  
addEventHandler ( "onPlayerChat", root, 
    function ( msg ) 
        if string.find ( msg, "سباق" ) then 
            if getElementData ( resourceRoot, "RaceStarted" ) then 
                return outputChatBox ( "* لم ينتهي السباق بعد", source, 255, 0, 0, true ) 
            end     
            if Race.Players < 5 then 
                if not Race.Vehicles[source] then 
                    Race.Players = Race.Players+1 
                    if Race.Players == 5 then 
                        setRaceStats ( true ) 
                        if isTimer ( Timer ) then 
                            killTimer ( Timer ) 
                        end 
                    else 
                        if not isTimer ( Timer ) then 
                            Timer = setTimer ( checkPlayers, 60000, 1 ) 
                        end 
                    end 
                    Race.Vehicles[source] = createVehicle ( Race.Cars[math.random(#Race.Cars)][1], Race.Position[Race.Players][1], Race.Position[Race.Players][2], Race.Position[Race.Players][3] ) 
                    setElementDimension ( Race.Vehicles[source], 1 ) 
                    setElementDimension ( source, 1 ) 
                    setTimer ( warpPedIntoVehicle, 100, 1, source, Race.Vehicles[source] ) 
                    setElementData ( Race.Vehicles[source], "Owner", source ) 
                end 
            else 
                outputChatBox ( "* أكتمل العدد", source, 255, 0, 0, true ) 
            end 
        end 
    end 
) 
  
addEventHandler ( "onVehicleExplode", resourceRoot, 
    function ( ) 
        if Race.Players == 1 then 
            local player = getElementData ( source, "Owner" ) 
            if isElement ( player ) then 
                if getElementData ( resourceRoot, "RaceStarted" ) then 
                    givePlayerMoney ( player, 5000 ) 
                    outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                end 
                Race.Vehicles[player] = nil 
            end 
            setTimer ( setRaceStats, 2000, 1, false ) 
        else 
            Race.Players = Race.Players-1 
        end 
    end 
) 
  
addEventHandler ( "onElementDestroy", resourceRoot, 
    function ( ) 
        if getElementType ( source ) == "vehicle" then 
            if Race.Players == 1 then 
                local player = getElementData ( source, "Owner" ) 
                if isElement ( player ) then 
                    if getElementData ( resourceRoot, "RaceStarted" ) then 
                        givePlayerMoney ( player, 5000 ) 
                        outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                    end 
                    Race.Vehicles[player] = nil 
                end 
                setTimer ( setRaceStats, 2000, 1, false ) 
            else 
                Race.Players = Race.Players-1 
            end 
        end 
    end 
) 
  
addEventHandler ( "onPlayerQuit", root, 
    function ( ) 
        if Race.Vehicles[source] then 
            if isElement ( Race.Vehicles[source] ) then 
                destroyElement ( Race.Vehicles[source] ) 
            else 
                if Race.Players == 1 then 
                    setTimer ( setRaceStats, 2000, 1, false ) 
                else 
                    Race.Players = Race.Players-1 
                end 
            end 
            Race.Vehicles[source] = nil 
        end 
    end 
) 
  
addEventHandler ( "onVehicleExit", resourceRoot, 
    function ( player ) 
        if getVehicleController ( source ) == player then 
            killPed ( player ) 
            destroyElement ( source ) 
        end 
    end 
) 
  
addEventHandler ( "onPlayerWasted", root, 
    function ( ) 
        local vehicle = getPlayerVehicle ( source ) 
        if vehicle then 
            local player = getElementData ( vehicle, "Owner" ) 
            if player then 
                if player == source then 
                    destroyElement ( vehicle ) 
                end 
            end 
        end 
    end 
) 
  
setTimer ( function ( ) 
 for _,v in ipairs(Race.Vehicles) do 
    if isElement( v ) and isElementInWater( v ) then 
    killPed ( getVehicleController( v ) ) 
    destroyElement ( v ) 
       end 
  end     
end, 1000, 0 ) 
  
  
setRaceStats ( false ) 
Link to comment
Server Side !

Race = { 
    Players = { }; 
    Vehicles = { }; 
    Position = { 
        [1] = { x, y, z }; 
        [2] = { x, y, z }; 
        [3] = { x, y, z }; 
        [4] = { x, y, z }; 
        [5] = { x, y, z }; 
    }; 
    Cars = { 
        { 432 }; 
        { 432 }; 
    }; 
}; 
local Timer 
  
setRaceStats = function ( stats ) 
    if stats then 
        setElementData ( resourceRoot, "RaceStarted", true ) 
    else 
        Race.Players = 0 
        setElementData ( resourceRoot, "RaceStarted", false ) 
        outputChatBox ( "* تم إفتتاح السباق", root, 255, 255, 0, true ) 
    end 
end 
  
checkPlayers = function ( ) 
    if Race.Players < 2 then 
        for i, v in ipairs ( Race.Vehicles ) do 
            local player = getElementData ( v, "Owner" ) 
            if player then 
                killPed ( player ) 
            end 
            destroyElement ( v ) 
        end 
        outputChatBox ( "* تم إلغاء السباق بسبب قلة اللاعبين", root, 255, 0, 0, true ) 
    end 
end 
  
getPlayerVehicle = function ( element ) 
    if element then 
        local type = getElementType 
        if type ( element ) == "player" or type ( element ) == "ped" then 
            if isPedInVehicle ( element ) then 
                local vehicle = getPedOccupiedVehicle ( element ) 
                if getVehicleController ( vehicle ) == element then 
                    return vehicle 
                end 
                return false 
            end 
            return false 
        end 
        return false 
    end 
    return false 
end 
  
addEventHandler ( "onPlayerChat", root, 
    function ( msg ) 
        if string.find ( msg, "سباق" ) then 
            if getElementData ( resourceRoot, "RaceStarted" ) then 
                return outputChatBox ( "* لم ينتهي السباق بعد", source, 255, 0, 0, true ) 
            end     
            if Race.Players < 5 then 
                if not Race.Vehicles[source] then 
                    Race.Players = Race.Players+1 
                    if Race.Players == 5 then 
                        setRaceStats ( true ) 
                        if isTimer ( Timer ) then 
                            killTimer ( Timer ) 
                        end 
                    else 
                        if not isTimer ( Timer ) then 
                            Timer = setTimer ( checkPlayers, 60000, 1 ) 
                        end 
                    end 
                    Race.Vehicles[source] = createVehicle ( Race.Cars[math.random(#Race.Cars)][1], Race.Position[Race.Players][1], Race.Position[Race.Players][2], Race.Position[Race.Players][3] ) 
                    setElementDimension ( Race.Vehicles[source], 1 ) 
                    setElementDimension ( source, 1 ) 
                    setTimer ( warpPedIntoVehicle, 100, 1, source, Race.Vehicles[source] ) 
                    setElementData ( Race.Vehicles[source], "Owner", source ) 
                end 
            else 
                outputChatBox ( "* أكتمل العدد", source, 255, 0, 0, true ) 
            end 
        end 
    end 
) 
  
addEventHandler ( "onVehicleExplode", resourceRoot, 
    function ( ) 
        if Race.Players == 1 then 
            local player = getElementData ( source, "Owner" ) 
            if isElement ( player ) then 
                if getElementData ( resourceRoot, "RaceStarted" ) then 
                    givePlayerMoney ( player, 5000 ) 
                    outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                end 
                Race.Vehicles[player] = nil 
            end 
            setTimer ( setRaceStats, 2000, 1, false ) 
        else 
            Race.Players = Race.Players-1 
        end 
    end 
) 
  
addEventHandler ( "onElementDestroy", resourceRoot, 
    function ( ) 
        if getElementType ( source ) == "vehicle" then 
            if Race.Players == 1 then 
                local player = getElementData ( source, "Owner" ) 
                if isElement ( player ) then 
                    if getElementData ( resourceRoot, "RaceStarted" ) then 
                        givePlayerMoney ( player, 5000 ) 
                        outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                    end 
                    Race.Vehicles[player] = nil 
                end 
                setTimer ( setRaceStats, 2000, 1, false ) 
            else 
                Race.Players = Race.Players-1 
            end 
        end 
    end 
) 
  
addEventHandler ( "onPlayerQuit", root, 
    function ( ) 
        if Race.Vehicles[source] then 
            if isElement ( Race.Vehicles[source] ) then 
                destroyElement ( Race.Vehicles[source] ) 
            else 
                if Race.Players == 1 then 
                    setTimer ( setRaceStats, 2000, 1, false ) 
                else 
                    Race.Players = Race.Players-1 
                end 
            end 
            Race.Vehicles[source] = nil 
        end 
    end 
) 
  
addEventHandler ( "onVehicleExit", resourceRoot, 
    function ( player ) 
        if getVehicleController ( source ) == player then 
            killPed ( player ) 
            destroyElement ( source ) 
        end 
    end 
) 
  
addEventHandler ( "onPlayerWasted", root, 
    function ( ) 
        local vehicle = getPlayerVehicle ( source ) 
        if vehicle then 
            local player = getElementData ( vehicle, "Owner" ) 
            if player then 
                if player == source then 
                    destroyElement ( vehicle ) 
                end 
            end 
        end 
    end 
) 
  
setTimer ( function ( ) 
 for _,v in ipairs(Race.Vehicles) do 
    if isElement( v ) and isElementInWater( v ) then 
    killPed ( getVehicleController( v ) ) 
    destroyElement ( v ) 
       end 
  end     
end, 1000, 0 ) 
  
  
setRaceStats ( false ) 

# ججربه ذا , الكود اللي طراحه يختلف عن ذا , ذاك انا عدلته بس كان في غلط بسيط فـ انت ناسخه قبل ما اعدله انا , اما انا معدله بالموضوع , المهم جرب ذا

Link to comment

يالغلا برضو ما ضبط

طلعت من الموتر ولا صار شيء

وطحت بالبحر ولا صار شيء

        Race = { 
            Players = { }; 
            Vehicles = { }; 
            Position = { 
                [1] = { 3596.18774, -889.70508, 13.28723 }; 
                [2] = { 3567.69019, -882.57233, 13.28357 }; 
                [3] = { 3542.21094, -821.49774, 13.29437 }; 
                [4] = { 3594.80640, -729.22852, 2.69190 }; 
                [5] = { 3712.06812, -844.64856, 3.36885 }; 
            }; 
            Cars = { 
                { 429 }; 
                { 429 }; 
            }; 
        }; 
        local Timer 
          
        setRaceStats = function ( stats ) 
            if stats then 
                setElementData ( resourceRoot, "RaceStarted", true ) 
            else 
                Race.Players = 0 
                setElementData ( resourceRoot, "RaceStarted", false ) 
                outputChatBox ( "* تم إفتتاح السباق", root, 255, 255, 0, true ) 
            end 
        end 
          
        checkPlayers = function ( ) 
            if Race.Players < 2 then 
                for i, v in ipairs ( Race.Vehicles ) do 
                    local player = getElementData ( v, "Owner" ) 
                    if player then 
                        killPed ( player ) 
                    end 
                    destroyElement ( v ) 
                end 
                outputChatBox ( "* تم إلغاء السباق بسبب قلة اللاعبين", root, 255, 0, 0, true ) 
            end 
        end 
          
        getPlayerVehicle = function ( element ) 
            if element then 
                local type = getElementType 
                if type ( element ) == "player" or type ( element ) == "ped" then 
                    if isPedInVehicle ( element ) then 
                        local vehicle = getPedOccupiedVehicle ( element ) 
                        if getVehicleController ( vehicle ) == element then 
                            return vehicle 
                        end 
                        return false 
                    end 
                    return false 
                end 
                return false 
            end 
            return false 
        end 
          
        addEventHandler ( "onPlayerChat", root, 
            function ( msg ) 
                if string.find ( msg, "سباق" ) then 
                    if getElementData ( resourceRoot, "RaceStarted" ) then 
                        return outputChatBox ( "* لم ينتهي السباق بعد", source, 255, 0, 0, true ) 
                    end     
                    if Race.Players < 5 then 
                        if not Race.Vehicles[source] then 
                            Race.Players = Race.Players+1 
                            if Race.Players == 5 then 
                                setRaceStats ( true ) 
                                if isTimer ( Timer ) then 
                                    killTimer ( Timer ) 
                                end 
                            else 
                                if not isTimer ( Timer ) then 
                                    Timer = setTimer ( checkPlayers, 60000, 1 ) 
                                end 
                            end 
                            Race.Vehicles[source] = createVehicle ( Race.Cars[math.random(#Race.Cars)][1], Race.Position[Race.Players][1], Race.Position[Race.Players][2], Race.Position[Race.Players][3] ) 
                            setElementDimension ( Race.Vehicles[source], 0 ) 
                            setElementDimension ( source, 0 ) 
                            setTimer ( warpPedIntoVehicle, 100, 1, source, Race.Vehicles[source] ) 
                            setElementData ( Race.Vehicles[source], "Owner", source ) 
                        end 
                    else 
                        outputChatBox ( "* أكتمل العدد", source, 255, 0, 0, true ) 
                    end 
                end 
            end 
        ) 
          
        addEventHandler ( "onVehicleExplode", resourceRoot, 
            function ( ) 
                if Race.Players == 1 then 
                    local player = getElementData ( source, "Owner" ) 
                    if isElement ( player ) then 
                        if getElementData ( resourceRoot, "RaceStarted" ) then 
                            givePlayerMoney ( player, 5000 ) 
                            outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                        end 
                        Race.Vehicles[player] = nil 
                    end 
                    setTimer ( setRaceStats, 2000, 1, false ) 
                else 
                    Race.Players = Race.Players-1 
                end 
            end 
        ) 
          
        addEventHandler ( "onElementDestroy", resourceRoot, 
            function ( ) 
                if getElementType ( source ) == "vehicle" then 
                    if Race.Players == 1 then 
                        local player = getElementData ( source, "Owner" ) 
                        if isElement ( player ) then 
                            if getElementData ( resourceRoot, "RaceStarted" ) then 
                                givePlayerMoney ( player, 5000 ) 
                                outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                            end 
                            Race.Vehicles[player] = nil 
                        end 
                        setTimer ( setRaceStats, 2000, 1, false ) 
                    else 
                        Race.Players = Race.Players-1 
                    end 
                end 
            end 
        ) 
          
        addEventHandler ( "onPlayerQuit", root, 
            function ( ) 
                if Race.Vehicles[source] then 
                    if isElement ( Race.Vehicles[source] ) then 
                        destroyElement ( Race.Vehicles[source] ) 
                    else 
                        if Race.Players == 1 then 
                            setTimer ( setRaceStats, 2000, 1, false ) 
                        else 
                            Race.Players = Race.Players-1 
                        end 
                    end 
                    Race.Vehicles[source] = nil 
                end 
            end 
        ) 
          
        addEventHandler ( "onVehicleExit", resourceRoot, 
            function ( player ) 
                if getVehicleController ( source ) == player then 
                    killPed ( player ) 
                    destroyElement ( source ) 
                end 
            end 
        ) 
          
        addEventHandler ( "onPlayerWasted", root, 
            function ( ) 
                local vehicle = getPlayerVehicle ( source ) 
                if vehicle then 
                    local player = getElementData ( vehicle, "Owner" ) 
                    if player then 
                        if player == source then 
                            destroyElement ( vehicle ) 
                        end 
                    end 
                end 
            end 
        ) 
          
        setTimer ( function ( ) 
         for _,v in ipairs(Race.Vehicles) do 
            if isElement( v ) and isElementInWater( v ) then 
            killPed ( getVehicleController( v ) ) 
            destroyElement ( v ) 
               end 
          end     
        end, 1000, 0 ) 
          
          
        setRaceStats ( false ) 

Link to comment

Race = { 
    Players = { }; 
    Vehicles = { }; 
    Position = { 
        [1] = { x, y, z }; 
        [2] = { x, y, z }; 
        [3] = { x, y, z }; 
        [4] = { x, y, z }; 
        [5] = { x, y, z }; 
    }; 
    Cars = { 
        { 432 }; 
        { 432 }; 
    }; 
}; 
local Timer 
  
setRaceStats = function ( stats ) 
    if stats then 
        setElementData ( resourceRoot, "RaceStarted", true ) 
    else 
        Race.Players = 0 
        setElementData ( resourceRoot, "RaceStarted", false ) 
        outputChatBox ( "* تم إفتتاح السباق", root, 255, 255, 0, true ) 
    end 
end 
  
checkPlayers = function ( ) 
    if Race.Players < 2 then 
        for i, v in ipairs ( Race.Vehicles ) do 
            local player = getElementData ( v, "Owner" ) 
            if player then 
                killPed ( player ) 
            end 
            destroyElement ( v ) 
        end 
        outputChatBox ( "* تم إلغاء السباق بسبب قلة اللاعبين", root, 255, 0, 0, true ) 
    end 
end 
  
getPlayerVehicle = function ( element ) 
    if element then 
        local type = getElementType 
        if type ( element ) == "player" or type ( element ) == "ped" then 
            if isPedInVehicle ( element ) then 
                local vehicle = getPedOccupiedVehicle ( element ) 
                if getVehicleController ( vehicle ) == element then 
                    return vehicle 
                end 
                return false 
            end 
            return false 
        end 
        return false 
    end 
    return false 
end 
  
addEventHandler ( "onPlayerChat", root, 
    function ( msg ) 
        if string.find ( msg, "سباق" ) then 
            if getElementData ( resourceRoot, "RaceStarted" ) then 
                return outputChatBox ( "* لم ينتهي السباق بعد", source, 255, 0, 0, true ) 
            end     
            if Race.Players < 5 then 
                if not Race.Vehicles[source] then 
                    Race.Players = Race.Players+1 
                    if Race.Players == 5 then 
                        setRaceStats ( true ) 
                        if isTimer ( Timer ) then 
                            killTimer ( Timer ) 
                        end 
                    else 
                        if not isTimer ( Timer ) then 
                            Timer = setTimer ( checkPlayers, 60000, 1 ) 
                        end 
                    end 
                    Race.Vehicles[source] = createVehicle ( Race.Cars[math.random(#Race.Cars)][1], Race.Position[Race.Players][1], Race.Position[Race.Players][2], Race.Position[Race.Players][3] ) 
                    setElementDimension ( Race.Vehicles[source], 1 ) 
                    setElementDimension ( source, 1 ) 
                    setTimer ( warpPedIntoVehicle, 100, 1, source, Race.Vehicles[source] ) 
                    setElementData ( Race.Vehicles[source], "Owner", source ) 
                end 
            else 
                outputChatBox ( "* أكتمل العدد", source, 255, 0, 0, true ) 
            end 
        end 
    end 
) 
  
addEventHandler ( "onVehicleExplode", resourceRoot, 
    function ( ) 
        if Race.Players == 1 then 
            local player = getElementData ( source, "Owner" ) 
            if isElement ( player ) then 
                if getElementData ( resourceRoot, "RaceStarted" ) then 
                    givePlayerMoney ( player, 5000 ) 
                    outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                end 
                Race.Vehicles[player] = nil 
            end 
            setTimer ( setRaceStats, 2000, 1, false ) 
        else 
            Race.Players = Race.Players-1 
        end 
    end 
) 
  
addEventHandler ( "onElementDestroy", resourceRoot, 
    function ( ) 
        if getElementType ( source ) == "vehicle" then 
            if Race.Players == 1 then 
                local player = getElementData ( source, "Owner" ) 
                if isElement ( player ) then 
                    if getElementData ( resourceRoot, "RaceStarted" ) then 
                        givePlayerMoney ( player, 5000 ) 
                        outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                    end 
                    Race.Vehicles[player] = nil 
                end 
                setTimer ( setRaceStats, 2000, 1, false ) 
            else 
                Race.Players = Race.Players-1 
            end 
        end 
    end 
) 
  
addEventHandler ( "onPlayerQuit", root, 
    function ( ) 
        if Race.Vehicles[source] then 
            if isElement ( Race.Vehicles[source] ) then 
                destroyElement ( Race.Vehicles[source] ) 
            else 
                if Race.Players == 1 then 
                    setTimer ( setRaceStats, 2000, 1, false ) 
                else 
                    Race.Players = Race.Players-1 
                end 
            end 
            Race.Vehicles[source] = nil 
        end 
    end 
) 
  
addEventHandler ( "onVehicleExit", resourceRoot, 
    function ( player ) 
        if getVehicleController ( source ) == player then 
            killPed ( player ) 
            destroyElement ( source ) 
        end 
    end 
) 
  
addEventHandler ( "onPlayerWasted", root, 
    function ( ) 
        local vehicle = getPlayerVehicle ( source ) 
        if vehicle then 
            local player = getElementData ( vehicle, "Owner" ) 
            if player then 
                if player == source then 
                    destroyElement ( vehicle ) 
                end 
            end 
        end 
    end 
) 
  
setTimer ( function ( ) 
 for _,v in ipairs(Race.Vehicles) do 
    local player = getElementData ( v, "Owner" ) 
    if isElement( player ) and isElementInWater( v ) then 
    killPed ( getVehicleController( player ) ) 
    destroyElement ( v ) 
       end 
  end     
end, 1000, 0 ) 
  
  
setRaceStats ( false ) 
Link to comment

ما ضبط + لما يجي [ تم إلغاء السباق بسبب قلة اللاعبين ] ومعد يرجع مره ثانيه لما تكتب سباق بالشات ما يوديك

    Race = { 
        Players = { }; 
        Vehicles = { }; 
        Position = { 
                [1] = { 3596.18774, -889.70508, 13.28723 }; 
                [2] = { 3567.69019, -882.57233, 13.28357 }; 
                [3] = { 3542.21094, -821.49774, 13.29437 }; 
                [4] = { 3712.06812, -844.64856, 3.36885 }; 
                [5] = { 3712.06812, -844.64856, 3.36885 }; 
        }; 
        Cars = { 
            { 429 }; 
            { 429 }; 
        }; 
    }; 
    local Timer 
      
    setRaceStats = function ( stats ) 
        if stats then 
            setElementData ( resourceRoot, "RaceStarted", true ) 
        else 
            Race.Players = 0 
            setElementData ( resourceRoot, "RaceStarted", false ) 
            outputChatBox ( "* تم إفتتاح السباق", root, 255, 255, 0, true ) 
        end 
    end 
      
    checkPlayers = function ( ) 
        if Race.Players < 2 then 
            for i, v in ipairs ( Race.Vehicles ) do 
                local player = getElementData ( v, "Owner" ) 
                if player then 
                    killPed ( player ) 
                end 
                destroyElement ( v ) 
            end 
            outputChatBox ( "* تم إلغاء السباق بسبب قلة اللاعبين", root, 255, 0, 0, true ) 
        end 
    end 
      
    getPlayerVehicle = function ( element ) 
        if element then 
            local type = getElementType 
            if type ( element ) == "player" or type ( element ) == "ped" then 
                if isPedInVehicle ( element ) then 
                    local vehicle = getPedOccupiedVehicle ( element ) 
                    if getVehicleController ( vehicle ) == element then 
                        return vehicle 
                    end 
                    return false 
                end 
                return false 
            end 
            return false 
        end 
        return false 
    end 
      
    addEventHandler ( "onPlayerChat", root, 
        function ( msg ) 
            if string.find ( msg, "سباق" ) then 
    local x,y,z = unpack(Race.Position[math.random(#Race.Position)]) 
    setElementPosition(source,x,y,z) 
                if getElementData ( resourceRoot, "RaceStarted" ) then 
                    return outputChatBox ( "* لم ينتهي السباق بعد", source, 255, 0, 0, true ) 
                end     
                if Race.Players < 5 then 
                    if not Race.Vehicles[source] then 
                        Race.Players = Race.Players+1 
                        if Race.Players == 5 then 
                            setRaceStats ( true ) 
                            if isTimer ( Timer ) then 
                                killTimer ( Timer ) 
                            end 
                        else 
                            if not isTimer ( Timer ) then 
                                Timer = setTimer ( checkPlayers, 60000, 1 ) 
                            end 
                        end 
                        Race.Vehicles[source] = createVehicle ( Race.Cars[math.random(#Race.Cars)][1], Race.Position[Race.Players][1], Race.Position[Race.Players][2], Race.Position[Race.Players][3] ) 
                        setElementDimension ( Race.Vehicles[source], 0 ) 
                        setElementDimension ( source, 0 ) 
                        setTimer ( warpPedIntoVehicle, 100, 1, source, Race.Vehicles[source] ) 
                        setElementData ( Race.Vehicles[source], "Owner", source ) 
                    end 
                else 
                    outputChatBox ( "* أكتمل العدد", source, 255, 0, 0, true ) 
                end 
            end 
        end 
    ) 
      
    addEventHandler ( "onVehicleExplode", resourceRoot, 
        function ( ) 
            if Race.Players == 1 then 
                local player = getElementData ( source, "Owner" ) 
                if isElement ( player ) then 
                    if getElementData ( resourceRoot, "RaceStarted" ) then 
                        givePlayerMoney ( player, 5000 ) 
                        outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                    end 
                    Race.Vehicles[player] = nil 
                end 
                setTimer ( setRaceStats, 2000, 1, false ) 
            else 
                Race.Players = Race.Players-1 
            end 
        end 
    ) 
      
    addEventHandler ( "onElementDestroy", resourceRoot, 
        function ( ) 
            if getElementType ( source ) == "vehicle" then 
                if Race.Players == 1 then 
                    local player = getElementData ( source, "Owner" ) 
                    if isElement ( player ) then 
                        if getElementData ( resourceRoot, "RaceStarted" ) then 
                            givePlayerMoney ( player, 5000 ) 
                            outputChatBox ( "* $5000 لقد ربحت", player, 255, 255, 0, true ) 
                        end 
                        Race.Vehicles[player] = nil 
                    end 
                    setTimer ( setRaceStats, 2000, 1, false ) 
                else 
                    Race.Players = Race.Players-1 
                end 
            end 
        end 
    ) 
      
    addEventHandler ( "onPlayerQuit", root, 
        function ( ) 
            if Race.Vehicles[source] then 
                if isElement ( Race.Vehicles[source] ) then 
                    destroyElement ( Race.Vehicles[source] ) 
                else 
                    if Race.Players == 1 then 
                        setTimer ( setRaceStats, 2000, 1, false ) 
                    else 
                        Race.Players = Race.Players-1 
                    end 
                end 
                Race.Vehicles[source] = nil 
            end 
        end 
    ) 
      
    addEventHandler ( "onVehicleExit", resourceRoot, 
        function ( player ) 
            if getVehicleController ( source ) == player then 
                killPed ( player ) 
                destroyElement ( source ) 
            end 
        end 
    ) 
      
    addEventHandler ( "onPlayerWasted", root, 
        function ( ) 
            local vehicle = getPlayerVehicle ( source ) 
            if vehicle then 
                local player = getElementData ( vehicle, "Owner" ) 
                if player then 
                    if player == source then 
                        destroyElement ( vehicle ) 
                    end 
                end 
            end 
        end 
    ) 
      
    setTimer ( function ( ) 
     for _,v in ipairs(Race.Vehicles) do 
        local player = getElementData ( v, "Owner" ) 
        if isElement( player ) and isElementInWater( v ) then 
        killPed ( getVehicleController( player ) ) 
        destroyElement ( v ) 
           end 
      end     
    end, 1000, 0 ) 
      
      
    setRaceStats ( false ) 

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...