RdX Posted April 28, 2014 Share Posted April 28, 2014 (edited) السلام عليكم ممكن تسأعدوني عندي مشكله ذا الكود عجزت اخليه يشتغل بزر ذا يشتغل اتومأتيك و المشكله الثأنيه ان الكود ذا اذا شغلته يشتغل على كل السيارات و انا ابيه يشتغل على الي يضغط الزر يعني سيأأره وحده اسم الزر RianbowColor Edited April 28, 2014 by Guest Link to comment
RdX Posted April 28, 2014 Author Share Posted April 28, 2014 --ClientSide-- local rainbowSteps = { {255, 0, 0}, {255, 255, 0}, {0, 255, 0}, {0, 255, 255}, {0, 0, 255}, {255, 0, 255}, {255, 255, 255}, {0, 0, 0}, } local currentStep = 1 local timeStep = 100 function calculateRGB() if (tick - start) >= timeStep then currentStep = currentStep + 1 if currentStep > #rainbowSteps then currentStep = 1 end start = tick return calculateRGB() else local lastStep = currentStep - 1 if currentStep == 1 then lastStep = #rainbowSteps end local progress = (tick - start) / timeStep progress = clamp(0, progress, 1) return interpolateBetween(rainbowSteps[lastStep][1], rainbowSteps[lastStep][2], rainbowSteps[lastStep][3], rainbowSteps[currentStep][1], rainbowSteps[currentStep][2], rainbowSteps[currentStep][3], progress, 'Linear') end end function clamp(mi, value, ma) return math.max(mi, math.min(ma, value)) end addEvent('onServerNoticesSettingChange', true) addEventHandler('onServerNoticesSettingChange', resourceRoot, function (speed) timeStep = speed end ) addEventHandler('onClientRender', root, function () if toggleRainbow and #streamedVehicles > 0 then for i, vehicle in ipairs(streamedVehicles) do if not isElement(vehicle) or not isElementStreamedIn(vehicle) or isVehicleBlown(vehicle) then table.remove(streamedVehicles, i) end end tick = getTickCount() if #streamedVehicles > 0 then if not start then start = tick if lastDifference then start = start + lastDifference lastDifference = false end end local r, g, b = calculateRGB() for i, vehicle in ipairs(streamedVehicles) do if isElement(vehicle) then setVehicleColor(vehicle, r, g, b, r, g, b, r, g, b, r, g, b) else table.remove(streamedVehicles, i) end end else lastDifference = (tick - start) if lastDifference > timeStep then lastDifference = tick end end end end ) function onStartRainbowCars() streamedVehicles = {} local vehicles = getElementsByType 'vehicle' if #vehicles > 0 then for i, vehicle in ipairs(vehicles) do addStreamedVehicle(vehicle) end end end addEventHandler('onClientElementStreamIn', root, function () if isElement(source) and getElementType(source) == 'vehicle' then addStreamedVehicle(source) end end ) function removePossibleVehicle() if isElement(source) and getElementType(source) == 'vehicle' then removeStreamedVehicle(source) end end addEventHandler('onClientVehicleExplode', root, removePossibleVehicle) addEventHandler('onClientElementDestroy', root, removePossibleVehicle) addEventHandler('onClientElementStreamOut', root, removePossibleVehicle) function addStreamedVehicle(vehicle) if isElement(vehicle) and getElementType(vehicle) == 'vehicle' and isElementStreamedIn(vehicle) and not isVehicleListed(vehicle) and not isVehicleBlown(vehicle) then table.insert(streamedVehicles, vehicle) end end function isVehicleListed(vehicle) if #streamedVehicles > 0 then for i, veh in ipairs(streamedVehicles) do if veh == vehicle then return true end end end return false end addEventHandler('onClientResourceStart', resourceRoot, function () onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root ) else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end ) Link to comment
RdX Posted April 28, 2014 Author Share Posted April 28, 2014 --ServerSide-- addEvent('onClientStartsResource', true) addEventHandler('onClientStartsResource', resourceRoot, function () local val = defaultSpeed if get('speed') then local ret = tonumber(get('speed')) if ret >= 0.1 and ret <= 1000 then val = ret end end triggerClientEvent('onServerNoticesSettingChange', resourceRoot, val * 10) end ) Link to comment
</Mr.Tn6eL> Posted April 28, 2014 Share Posted April 28, 2014 addEventHandler('onClientResourceStart', resourceRoot, function () onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root ) else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end ) 5 و 9 addEventHandler('onClientResourceStart', resourceRoot, function () onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root ) else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end ) الخطا هنا addEventHandler('onClientResourceStart', resourceRoot, function () onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root, functionName ) -- ضع اسم الفنكشن else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end ) Link to comment
RdX Posted April 29, 2014 Author Share Posted April 29, 2014 انت ما فهمتني ذا الكود يشغله تلقأأئي لا انا ابيه لمن اضغط الزر ال هو button يشتغل كيف Link to comment
The Killer Posted April 29, 2014 Share Posted April 29, 2014 addEventHandler('onClientGUIClick', root, function () if source == button then -- بإسم الزر حقك button استبدل onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root, name ) -- بإسم الوظيفه name استبدل else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end end end ) Link to comment
RdX Posted April 29, 2014 Author Share Posted April 29, 2014 ما ضبط اسم الوضيفه toogleRainbow اسم الزر ٌRianbow Link to comment
RdX Posted April 29, 2014 Author Share Posted April 29, 2014 ما عدلت شيء نفس االكود --ClientSide-- local rainbowSteps = { {255, 0, 0}, {255, 255, 0}, {0, 255, 0}, {0, 255, 255}, {0, 0, 255}, {255, 0, 255}, {255, 255, 255}, {0, 0, 0}, } local currentStep = 1 local timeStep = 100 function calculateRGB() if (tick - start) >= timeStep then currentStep = currentStep + 1 if currentStep > #rainbowSteps then currentStep = 1 end start = tick return calculateRGB() else local lastStep = currentStep - 1 if currentStep == 1 then lastStep = #rainbowSteps end local progress = (tick - start) / timeStep progress = clamp(0, progress, 1) return interpolateBetween(rainbowSteps[lastStep][1], rainbowSteps[lastStep][2], rainbowSteps[lastStep][3], rainbowSteps[currentStep][1], rainbowSteps[currentStep][2], rainbowSteps[currentStep][3], progress, 'Linear') end end function clamp(mi, value, ma) return math.max(mi, math.min(ma, value)) end addEvent('onServerNoticesSettingChange', true) addEventHandler('onServerNoticesSettingChange', resourceRoot, function (speed) timeStep = speed end ) addEventHandler('onClientRender', root, function () if toggleRainbow and #streamedVehicles > 0 then for i, vehicle in ipairs(streamedVehicles) do if not isElement(vehicle) or not isElementStreamedIn(vehicle) or isVehicleBlown(vehicle) then table.remove(streamedVehicles, i) end end tick = getTickCount() if #streamedVehicles > 0 then if not start then start = tick if lastDifference then start = start + lastDifference lastDifference = false end end local r, g, b = calculateRGB() for i, vehicle in ipairs(streamedVehicles) do if isElement(vehicle) then setVehicleColor(vehicle, r, g, b, r, g, b, r, g, b, r, g, b) else table.remove(streamedVehicles, i) end end else lastDifference = (tick - start) if lastDifference > timeStep then lastDifference = tick end end end end ) function onStartRainbowCars() streamedVehicles = {} local vehicles = getElementsByType 'vehicle' if #vehicles > 0 then for i, vehicle in ipairs(vehicles) do addStreamedVehicle(vehicle) end end end addEventHandler('onClientElementStreamIn', root, function () if isElement(source) and getElementType(source) == 'vehicle' then addStreamedVehicle(source) end end ) function removePossibleVehicle() if isElement(source) and getElementType(source) == 'vehicle' then removeStreamedVehicle(source) end end addEventHandler('onClientVehicleExplode', root, removePossibleVehicle) addEventHandler('onClientElementDestroy', root, removePossibleVehicle) addEventHandler('onClientElementStreamOut', root, removePossibleVehicle) function addStreamedVehicle(vehicle) if isElement(vehicle) and getElementType(vehicle) == 'vehicle' and isElementStreamedIn(vehicle) and not isVehicleListed(vehicle) and not isVehicleBlown(vehicle) then table.insert(streamedVehicles, vehicle) end end function isVehicleListed(vehicle) if #streamedVehicles > 0 then for i, veh in ipairs(streamedVehicles) do if veh == vehicle then return true end end end return false end addEventHandler('onClientResourceStart', resourceRoot, function () onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root ) else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end ) Link to comment
RdX Posted April 29, 2014 Author Share Posted April 29, 2014 لكن ذا يشتغل اوتو ماتيك لا انا ابيه يشتغل اذا ضغط على button Button : rianbow Link to comment
ΞĪŚŚÀ Posted April 29, 2014 Share Posted April 29, 2014 ما عدلت شيء نفس االكود --ClientSide-- local rainbowSteps = { {255, 0, 0}, {255, 255, 0}, {0, 255, 0}, {0, 255, 255}, {0, 0, 255}, {255, 0, 255}, {255, 255, 255}, {0, 0, 0}, } local currentStep = 1 local timeStep = 100 function calculateRGB() if (tick - start) >= timeStep then currentStep = currentStep + 1 if currentStep > #rainbowSteps then currentStep = 1 end start = tick return calculateRGB() else local lastStep = currentStep - 1 if currentStep == 1 then lastStep = #rainbowSteps end local progress = (tick - start) / timeStep progress = clamp(0, progress, 1) return interpolateBetween(rainbowSteps[lastStep][1], rainbowSteps[lastStep][2], rainbowSteps[lastStep][3], rainbowSteps[currentStep][1], rainbowSteps[currentStep][2], rainbowSteps[currentStep][3], progress, 'Linear') end end function clamp(mi, value, ma) return math.max(mi, math.min(ma, value)) end addEvent('onServerNoticesSettingChange', true) addEventHandler('onServerNoticesSettingChange', resourceRoot, function (speed) timeStep = speed end ) addEventHandler('onClientRender', root, function () if toggleRainbow and #streamedVehicles > 0 then for i, vehicle in ipairs(streamedVehicles) do if not isElement(vehicle) or not isElementStreamedIn(vehicle) or isVehicleBlown(vehicle) then table.remove(streamedVehicles, i) end end tick = getTickCount() if #streamedVehicles > 0 then if not start then start = tick if lastDifference then start = start + lastDifference lastDifference = false end end local r, g, b = calculateRGB() for i, vehicle in ipairs(streamedVehicles) do if isElement(vehicle) then setVehicleColor(vehicle, r, g, b, r, g, b, r, g, b, r, g, b) else table.remove(streamedVehicles, i) end end else lastDifference = (tick - start) if lastDifference > timeStep then lastDifference = tick end end end end ) function onStartRainbowCars() streamedVehicles = {} local vehicles = getElementsByType 'vehicle' if #vehicles > 0 then for i, vehicle in ipairs(vehicles) do addStreamedVehicle(vehicle) end end end addEventHandler('onClientElementStreamIn', root, function () if isElement(source) and getElementType(source) == 'vehicle' then addStreamedVehicle(source) end end ) function removePossibleVehicle() if isElement(source) and getElementType(source) == 'vehicle' then removeStreamedVehicle(source) end end addEventHandler('onClientVehicleExplode', root, removePossibleVehicle) addEventHandler('onClientElementDestroy', root, removePossibleVehicle) addEventHandler('onClientElementStreamOut', root, removePossibleVehicle) function addStreamedVehicle(vehicle) if isElement(vehicle) and getElementType(vehicle) == 'vehicle' and isElementStreamedIn(vehicle) and not isVehicleListed(vehicle) and not isVehicleBlown(vehicle) then table.insert(streamedVehicles, vehicle) end end function isVehicleListed(vehicle) if #streamedVehicles > 0 then for i, veh in ipairs(streamedVehicles) do if veh == vehicle then return true end end end return false end addEventHandler('onClientResourceStart', resourceRoot, function () onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root ) else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end ) @The Killer ~~~~~~~~~~~~~~~~~~~> addEventHandler('onClientGUIClick', root, function () if source == button then -- بإسم الزر حقك button استبدل onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root, name ) -- بإسم الوظيفه name استبدل else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end end end ) addEventHandler('onClientGUIClick', root, function () if source == button then -- بإسم الزر حقك button استبدل onStartRainbowCars() if SkilledProRacers then addEventHandler('onClientRender', root, name ) -- بإسم الوظيفه name استبدل else toggleRainbow = true end triggerServerEvent('onClientStartsResource', resourceRoot) end end end ) Link to comment
RdX Posted April 29, 2014 Author Share Posted April 29, 2014 ضبطت مشكورين بس ذا يلون جميع السيارات انا ابيه بس يلون سيارة الي ضغط Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now