Jump to content

كود وضع حد للسرعة


Recommended Posts

اخوي كودي يختلف الوظايف والخ ..

يوم خليت التايمر مايتشغل

الكود

addEventHandler('onVehicleDamage',root, 
    function (  ) 
    setTimer ( function ( ) 
                setVehicleHandling ( source,'maxVelocity',60 ); 
    end, 5000, 0 ) 
    end 
); 

addEventHandler('onVehicleDamage',root, 
    function (  ) 
    setTimer ( function ( source ) 
                setVehicleHandling ( source,'maxVelocity',60 ); 
    end, 5000, 0 ) 
    end 
); 

لازم تكون معرف source في التايمر ويكون في شروط في المود عشان لايحصل اخطاء في سكربتك

وماله داعي يكون تايمر متكرر

  
  
timer = {} 
  
addEventHandler('onVehicleDamage',root, 
    function (  ) 
        if timer[source] and not isTimer(timer[source]) then 
            timer[source] = nil 
        end 
        if not timer[source] then        
            timer[source] = setTimer ( function ( source ) 
                if isElement(source) then 
                    setVehicleHandling ( source,'maxVelocity',60 ) 
                end 
            end, 5000, 1, source) 
        end 
    end  
) 
  

Link to comment

مافهمتك اخوي

يعني وش مايكون تايمر متكرر

انا ابغيه كل 5 ثواني يخلي السرعة 60

مو بس مرة وحدة

كودك يخلي مرة وحدة ولا كل مرة ؟؟

وياليت تشوف الى وضحته صح او لا

timer = {} -- ليش عرفت التايمر هنا  وشنو معنى القوسين {} 
  
addEventHandler('onVehicleDamage',root, -- حدث عند اصتدام السيارة 
    function (  ) -- فنكشن #1 
        if timer[source] and not isTimer(timer[source]) then -- الى فهمته ان يتاكد اذا كان المتغير timer يحتوي على source وكمان يتاكد انه مو وقت timer[source] -- #2 
        timer[source] = nil -- وهذي يخلي القيمة timer[source] فاضية 
        end -- إغلاق if #2 
        if not timer[source] then     -- يتاكد انه مو وقت  timer[source]  
            timer[source] = setTimer ( function ( source ) -- يخلي المتغير  timer[source] = فنكشن كل 5 ثوان 
                if isElement(source) then -- اذا كان في ايلمنت او سيارة 
                    setVehicleHandling ( source,'maxVelocity',60 ) -- وضع سرعة السيارة الى 60 
                end -- إغلاق if التحقق من وجوده في ايلمينت 
            end, 5000, 1, source) -- إغلاق فنكشن التايمر 
        end -- إغلاق if التاكد انه مو وقت timer[source] 
    end  -- إغلاق الفنكش #1 
) -- إغلاق الحدث 
  

Link to comment
  
local timer = {} 
  
addEventHandler('onVehicleDamage',root, 
    function (  ) 
        checkTimer(source) 
    end  
) 
  
function checkTimer(Car) 
    if not isElement(Car) then 
        return 
    end 
    if not timer[Car] then 
        timer[Car] = {} 
        timer[Car]['timers'] = 0 
    end 
    if not isTimer(timer[Car]['timers']) then 
        timer[Car]['timers'] = setTimer ( function ( Vehicle ) 
            if isElement(Vehicle) then 
                setVehicleHandling ( Vehicle,'maxVelocity',60 ) 
           end 
        end, 5000, 1, Car) 
    end 
end 
  

Link to comment
اخوي نفس المشكلةة

اركب الموود واشغله

وكل شيئ

ونفس الشيئ اقدر امشي بسرعة اكبر من 60

أخوي انا مجرب المود وشغال معي لازم تصدم عشان تصير السرعة 60

+ الكود ملف سيرفر

Link to comment

طيب انا مركبه سيرفر

وكل شيئ صح

واصدم بالسيارة

وسويت ريفيش وريستارت للمود

وفوق هذا سويت ريستارت للسيرفر

ملاحظة سيرفري نسخة 1.3.2

له علاقة ؟

Link to comment
طيب انا مركبه سيرفر

وكل شيئ صح

واصدم بالسيارة

وسويت ريفيش وريستارت للمود

وفوق هذا سويت ريستارت للسيرفر

ملاحظة سيرفري نسخة 1.3.2

له علاقة ؟

لا ماله علاقة .. :mrgreen:

Link to comment
طيب انا مركبه سيرفر

وكل شيئ صح

واصدم بالسيارة

وسويت ريفيش وريستارت للمود

وفوق هذا سويت ريستارت للسيرفر

ملاحظة سيرفري نسخة 1.3.2

له علاقة ؟

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

تتعدى سرعة 60

Link to comment

طيب جرب كود سعد حطيت له حدث اول ما يشتغل المود والصدم

local timer = {} 
---MR.S3D<3 
    function maxspeed() 
        checkTimer(source) 
    end) 
  
function checkTimer(Car) 
    if not isElement(Car) then 
        return 
    end 
    if not timer[Car] then 
        timer[Car] = {} 
        timer[Car]['timers'] = 0 
    end 
    if not isTimer(timer[Car]['timers']) then 
        timer[Car]['timers'] = setTimer ( function ( Vehicle ) 
            if isElement(Vehicle) then 
                setVehicleHandling ( Vehicle,'maxVelocity',60 ) 
           end 
        end, 5000, 1, Car) 
    end 
end 
addEventHandler('onVehicleDamage',root,maxspeed) 
addEventHandler('onResourceStart',root,maxspeed) 
Link to comment

مو مجرب#

function getVehicleSpeed( Vehicle ) 
    local x, y, z = getElementVelocity( Vehicle ); 
    return ( x ^ 2 + y ^ 2 + z ^ 2 ) ^ 1 * 100; 
end 
  
function setVehicleSpeed( Vehicle ) 
    local x, y, z = getElementVelocity( Vehicle ); 
    return setElementVelocity ( Vehicle, x, y, z ); 
end 
  
addEventHandler ( 'onClientRender', root, 
    function( ) 
        for _, player in ipairs( getElementsByType( 'player' ) ) do 
            while true do 
                if not isPedInVehicle( player ) then 
                    break 
                end 
                if getVehicleSpeed( getPedOccupiedVehicle( player ) ) == 80 then 
                    setVehicleSpeed( getPedOccupiedVehicle( player ) ); 
                end 
                break 
            end 
        end 
    end 
); 

Edited by Guest
Link to comment
مو مجرب#
function getVehicleSpeed( Vehicle ) 
    local x, y, z = getElementVelocity( Vehicle ); 
    return ( x ^ 2 + y ^ 2 + z ^ 2 ) ^ 1 * 100; 
end 
  
function setVehicleSpeed( Vehicle ) 
    local x, y, z = getElementVelocity( Vehicle ); 
    return setElementVelocity ( Vehicle x, y, z ); 
end 
  
addEventHandler ( 'onClientRender', root, 
    function( ) 
        for _, player in ipairs( getElementsByType( 'player' ) do 
            while true do 
                if not isPedInVehicle( player ) or isPlayerDead( player ) then 
                    break 
                end 
                if getVehicleSpeed( getPedOccupiedVehicle( player ) ) == 80 then 
                    setVehicleSpeed( getPedOccupiedVehicle( player ) ); 
                end 
                break 
            end 
        end 
    end 
); 

سطر 8 ناقصكـ فاصلة بين السيارهـ #

سطر 13 ناقصكـ قوس لآغلآق اللوب #

# ماظنتي يشتغل ذذ مادري لية خخ بس ننتظر ونشوف ذذ

Link to comment
local gMaxSpeed = 80; 
local gTargetSpeed = 60; 
  
function getElementSpeed( element, unit ) 
    if ( unit == nil ) then unit = 0 end 
    if ( isElement( element ) ) then 
        local x, y, z = getElementVelocity( element ); 
        if ( unit == 'mph' or unit == 1 or unit == '1' ) then 
            return ( x ^ 2 + y ^ 2 + z ^ 2) ^ 0.5 * 100; 
        else 
            return ( x ^ 2 + y ^ 2 + z ^ 2 ) ^ 0.5 * 1.61 * 100; 
        end 
    else 
        outputDebugString( 'Not an element. Cant get speed' ); 
        return false 
    end 
end 
  
function setElementSpeed( element, unit, speed ) 
    if ( unit == nil ) then unit = 0; end 
    if ( speed == nil ) then speed = 0; end 
    speed = tonumber( speed ); 
    local acSpeed = getElementSpeed(element, unit); 
    if ( acSpeed ~= false ) then 
        local diff = speed / acSpeed; 
        local x, y, z = getElementVelocity( element ); 
        setElementVelocity( element, x * diff, y * diff, z * diff ); 
        return true 
    else 
        return false 
    end 
end 
  
addEventHandler ( 'onClientRender', root, 
    function( ) 
        for _, player in ipairs( getElementsByType( 'player' ) ) do 
            while true do 
                if not isPedInVehicle( player ) then 
                    break 
                end 
                if getElementSpeed( getPedOccupiedVehicle( player ) ) >= gMaxSpeed then 
                    setElementSpeed( getPedOccupiedVehicle( player ), nil, gTargetSpeed ); 
                end 
                break 
            end 
        end 
    end 
); 

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