iMr.SFA7 Posted June 7, 2016 Share Posted June 7, 2016 ---- --- انزل تحت ---- function checkDuel(p) if tostring(getElementData(resourceRoot,"map")) == "yes" then outputChatBox("*#ffffff [ #CD0000 DerbySystem #ffffff ]",p,255,255,0,true) elseif tostring(getElementData(resourceRoot,"map")) == "no" then outputChatBox("*#FFFFFF [ #CD0000Derby #FFFFFF ] : الرجآء الانتظآر,حتى يبدء الديربي",p,255,255,0,true) if _mytimer and isTimer(_mytimer) then _r,_e,_t = getTimerDetails(_mytimer) if _r and _e and _t then total = _r / 60 / 1000 outputChatBox("تبقـى: "..math.ceil(total)) end end end return tostring(getElementData(resourceRoot,"map")) end Link to comment
SaedAmer Posted June 7, 2016 Author Share Posted June 7, 2016 طيب هجربكيف اخلي الماركر زي كده sfa7DerbyMarker = createMarker(1542.35669, -2985.33887, 3.86081, "cylinder", 1.1, 255, 0, 0, 170 ) WiFiDerbyMarker = createMarker(1542.35669, -2985.33887, 3.86081, "arrow", 1.1, 255, 0, 0, 170 ) Link to comment
SaedAmer Posted June 7, 2016 Author Share Posted June 7, 2016 ---- --- انزل تحت ---- function checkDuel(p) if tostring(getElementData(resourceRoot,"map")) == "yes" then outputChatBox("*#ffffff [ #CD0000 DerbySystem #ffffff ]",p,255,255,0,true) elseif tostring(getElementData(resourceRoot,"map")) == "no" then outputChatBox("*#FFFFFF [ #CD0000Derby #FFFFFF ] : الرجآء الانتظآر,حتى يبدء الديربي",p,255,255,0,true) if _mytimer and isTimer(_mytimer) then _r,_e,_t = getTimerDetails(_mytimer) if _r and _e and _t then total = _r / 60 / 1000 outputChatBox("تبقـى: "..math.ceil(total)) end end end return tostring(getElementData(resourceRoot,"map")) end ما يجيب الدقائق و الثواني فقط دي Link to comment
Anis Posted June 8, 2016 Share Posted June 8, 2016 انا يجيب الدقائق عادي شوف الدقائق تتغير Link to comment
SaedAmer Posted June 8, 2016 Author Share Posted June 8, 2016 مش قصدي انا عاوز الدقائق و الثواني Link to comment
SaedAmer Posted June 8, 2016 Author Share Posted June 8, 2016 انا عاوزو يقلي كم تبقي بالدقائق و الثواني و عاوزو لما حد يدخل الديربي يكتب في الشات انه دخل م مثلا انا دخل يكتب اسم العب و بعدين دخل الي الديربي Link to comment
iMr.SFA7 Posted June 8, 2016 Share Posted June 8, 2016 spawns = {} setElementData(resourceRoot,"map","no") setElementData(resourceRoot,"winMoney","0") sfa7DerbyMarker = createMarker(1555.50037, -1675.64880, 16.19531, "arrow", 1.1, 255, 0, 0, 170 ) addEventHandler('onMarkerHit', sfa7DerbyMarker, function(element) if getElementType(element) == 'player' and checkDuel(element) == "prestart" and ( not checkExistPlrOnDuel(element) ) then online = countPlayersOnDerby() if tonumber(online) +1 < 32 then setData(element,"onCrossMap","yes") outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD} :الرجاء الانتظار ..",element,255,255,0,true) setD(element) spawnOnMap(element) else outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD) : لم يبق مكان بالديـربي الرجآء, الانتظآر الديربي القآدم,",element,0,255,0,true) end end end) function checkDuel(p) if tostring(getElementData(resourceRoot,"map")) == "yes" then outputChatBox("* #ff0000≈ #ffffff[#ff0000 DerbySystem #ffffff ] #00BCCD≈",p,255,255,0,true) elseif tostring(getElementData(resourceRoot,"map")) == "no" then outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD) : الرجآء الانتظآر,حتى يبدء الديربي",p,255,255,0,true) if _mytimer and isTimer(_mytimer) then local _r,_e,_t = getTimerDetails(_mytimer) if _r and _e and _t then total = _r / 60 / 1000 ss = math.floor( _r / 1000 ) seconds = tostring( math.fmod( ss, 60 ) ) outputChatBox("تبقـى: "..math.ceil(total)..":"..seconds.."") end end end return tostring(getElementData(resourceRoot,"map")) end function checkExistPlrOnDuel(p) per = getElementData(p,"onCrossMap") if tostring(per) == "yes" then return true else return false end end function setData(element,key,vlr) setElementData(element,key,vlr) end function setD(element) setElementDimension(element,30) end function spawnOnMap(p) count = countPlayersOnDerby() spawned = "no" for i,data in pairs(spawns)do if tonumber(data.id) == tonumber(count) then spawned = "yes" v = createVehicle(411,data.x,data.y,data.z,data.rx,data.ry,data.rz) setElementDimension(v,30) setElementFrozen(v,true) setElementData(v,"creatorDerby","yes") break end end if spawned == "no" then randomS = math.random("1","32") for i,data in pairs(spawns)do if tonumber(data.id) == tonumber(randomS) then v = createVehicle(411,data.x,data.y,data.z,data.rx,data.ry,data.rz) setElementDimension(v,30) setElementFrozen(v,true) setElementData(v,"creatorDerby","yes") break end end end toggleControl(p,"enter_exit", false ) warpPedIntoVehicle(p,v) setCameraTarget(p,p) outputChatBox(getPlayerName(p)..' دخل إلى الديربي', root, 255, 0 ,0, true) end function countPlayersOnDerby() c = -1 for i,p in pairs(getElementsByType("player"))do if checkExistPlrOnDuel(p) then c = c+1 end end return tonumber(c) end function eventCheck () if checkExistPlrOnDuel(source) then toggleControl(source,"enter_exit",true ) setData(source,"onCrossMap","no") checkEnd() end end addEventHandler("onPlayerWasted",getRootElement(), eventCheck) addEventHandler("onPlayerQuit",getRootElement(),eventCheck) addEventHandler("onPlayerJoin",getRootElement(),function() outputChatBox("",source,255,255,0,true) setData(source,"onCrossMap","no") end) for i,p in pairs(getElementsByType("player"))do setData(p,"onCrossMap","no") end function checkEnd() c = 0 for i,p in pairs(getElementsByType("player"))do if checkExistPlrOnDuel(p) then c = c+1 winner = p end end if tonumber(c) == 1 then givePlayerMoney(winner,tonumber(getElementData(resourceRoot,"winMoney"))) n = string.gsub(getPlayerName(winner), "#%x%x%x%x%x%x", "") outputChatBox("* #ff0000≈[ #ff0000 " .. n .. " #FF9700 Won the Derby and win#00FF00 " .. tonumber(getElementData(resourceRoot,"winMoney")) .. "$ ##ff0000]≈",getRootElement(),255,255,0,true) setElementData(resourceRoot,"map","no") endDerby() _mytimer = setTimer(newDuel,60*1000*5,1) end end function newDuel() for i,p in pairs(getElementsByType("player"))do setData(p,"onCrossMap","no") end setElementData(resourceRoot,"map","prestart") outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD) : لدخول الديربي,اكتب في الشـآت ديربي.",getRootElement(),255,255,0,true) RMoney = math.random("50000","300000") setElementData(resourceRoot,"winMoney",tonumber(RMoney)) outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD) : سيحصل الفآئز في الديربي على #00FF00|" .. RMoney .. "|$",getRootElement(),0,255,0,true) setTimer(checkPlrs,30000,1) end function checkPlrs () c = 0 for i,p in pairs(getElementsByType("player"))do if checkExistPlrOnDuel(p) then c = c+1 end end if tonumber(c) > 1 then setElementData(resourceRoot,"map","yes") for i,p in pairs(getElementsByType("player"))do if checkExistPlrOnDuel(p) then setElementCollisionsEnabled(getPedOccupiedVehicle( p),true) outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD) : لقد بدآء الديربي , يمكنك الانطلاق",p,0,255,0,true) setElementFrozen(getPedOccupiedVehicle(p),false) end end else endDerby() setElementData(resourceRoot,"map","no") outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD) : لم يبدآء الديربي, لعدم توفر الاعبين",getRootElement(),255,255,0,true) _mytimer = setTimer(newDuel,60*1000*5,1) end end _mytimer = setTimer(newDuel,3000,1) function onStartLoadSpawns () file = fileOpen("map.map") localFile = fileOpen("map.xml") fileWrite(localFile,"") data = fileRead(file,999999) fileWrite(localFile,data) fileClose(localFile) xml = xmlLoadFile("map.xml") c = 0 for i,data in pairs(xmlNodeGetChildren(xml)) do if xmlNodeGetName(data) == "spawnpoint" then c = c+1 v,xx,yy,zz,rxx,ryy,rzz = xmlNodeGetAttribute(data,"vehicle"),xmlNodeGetAttribute(data,"posX"),xmlNodeGetAttribute(data,"posY"),xmlNodeGetAttribute(data,"posZ"),xmlNodeGetAttribute(data,"rotX"),xmlNodeGetAttribute(data,"rotY"),xmlNodeGetAttribute(data,"rotZ") table.insert(spawns,{id = c,model = v,x = xx,y = yy,z = zz,rx = rxx,ry = ryy,rz = rzz}) end end for i,data in pairs(xmlNodeGetChildren(xml)) do if xmlNodeGetName(data) == "object" then m,xx,yy,zz,rxx,ryy,rzz = xmlNodeGetAttribute(data,"model"),xmlNodeGetAttribute(data,"posX"),xmlNodeGetAttribute(data,"posY"),xmlNodeGetAttribute(data,"posZ"),xmlNodeGetAttribute(data,"rotX"),xmlNodeGetAttribute(data,"rotY"),xmlNodeGetAttribute(data,"rotZ") object = createObject(m,xx,yy,zz,rxx,ryy,rzz) setElementDimension(object,30) end end end setTimer(onStartLoadSpawns,3000,1) function endDerby() for i,p in pairs(getElementsByType("player"))do if checkExistPlrOnDuel(p) then killPed(p) end end for i,v in pairs(getElementsByType("vehicle"))do if getElementData(v,"creatorDerby") then destroyElement(v) end end end setTimer(function() for i,p in pairs(getElementsByType("player"))do sea(p) resetHan(p) checkVeh(p) checkModel(p) end end,1000,0) outputChatBox("",getRootElement(),255,255,0,true) function sea(p) if checkExistPlrOnDuel(p) then x,y,z = getElementPosition(p) if tonumber(z) <= 0 then killPed(p) end end end function checkVeh(p) if (tonumber(getElementDimension(p)) == 30) and not (isPedInVehicle(p))then killPed(p) end end function resetHan(p) if checkExistPlrOnDuel(p) then setVehicleHandling (getPedOccupiedVehicle(p), true ) end end function checkModel(p) if checkExistPlrOnDuel(p) and isPedInVehicle(p) then if tonumber(getElementModel(getPedOccupiedVehicle(p)) ) ~= 411 then killPed(p) end end end Link to comment
iMr.SFA7 Posted June 8, 2016 Share Posted June 8, 2016 ايش هو الي ماشتغل؟ .. تحقق زين لأني مجربـه اذا ماشتغل قلي الأخطاء التي تظهر بالدي بق Link to comment
SaedAmer Posted June 9, 2016 Author Share Posted June 9, 2016 ما ظهر شئ بالدي بق function checkDuel(p) if tostring(getElementData(resourceRoot,"map")) == "yes" then outputChatBox("*#ffffff [ #CD0000 DerbySystem #ffffff ]",p,255,255,0,true) elseif tostring(getElementData(resourceRoot,"map")) == "no" then outputChatBox("*#FFFFFF [ #CD0000Derby #FFFFFF ] : الرجآء الانتظآر,حتى يبدء الديربي",p,255,255,0,true) if _mytimer and isTimer(_mytimer) then local _r,_e,_t = getTimerDetails(_mytimer) if _r and _e and _t then total = _r / 60 / 1000 ss = math.floor( _r / 1000 ) seconds = tostring( math.fmod( ss, 60 ) ) outputChatBox("*#FFFFFF [ #CD0000Derby #FFFFFF ] : تبقـى "..math.ceil(total)..":"..seconds.."") end end end Link to comment
iMr.SFA7 Posted June 9, 2016 Share Posted June 9, 2016 ي أخوي الكود مافيه شيء مجربه تمام ( وبالنسبـة للكود الي طارحه فوق ( مدري ليه طارحه فيه اند ناقصة function checkDuel(p) if tostring(getElementData(resourceRoot,"map")) == "yes" then outputChatBox("* #ff0000≈ #ffffff[#ff0000 DerbySystem #ffffff ] #00BCCD≈",p,255,255,0,true) elseif tostring(getElementData(resourceRoot,"map")) == "no" then outputChatBox("* #00BCCD≈ - ( #555555Derby #00BCCD) : الرجآء الانتظآر,حتى يبدء الديربي",p,255,255,0,true) if _mytimer and isTimer(_mytimer) then local _r,_e,_t = getTimerDetails(_mytimer) if _r and _e and _t then total = _r / 60 / 1000 ss = math.floor( _r / 1000 ) seconds = tostring( math.fmod( ss, 60 ) ) outputChatBox("تبقـى: "..math.ceil(total)..":"..seconds.."") end end end return tostring(getElementData(resourceRoot,"map")) end Link to comment
SaedAmer Posted June 9, 2016 Author Share Posted June 9, 2016 يا اخي الخطأ هنا لانه مش راضي يقول كم تبقي outputChatBox("تبقـى: "..math.ceil(total)..":"..seconds.."") Link to comment
iMr.SFA7 Posted June 9, 2016 Share Posted June 9, 2016 ياليت ترفع السكربت كامل وهذي هي صور لتجربتي مع السكربت: Link to comment
SaedAmer Posted June 10, 2016 Author Share Posted June 10, 2016 تمت الافاده iMr.SFA7 من Link to comment
SaedAmer Posted June 10, 2016 Author Share Posted June 10, 2016 طيب كيف اضيف للمود انه يقدر يصلح و ياخد نترو و ياخد صاروخ ؟ Link to comment
Abdul KariM Posted June 10, 2016 Share Posted June 10, 2016 طيب كيف اضيف للمودانه يقدر يصلح و ياخد نترو و ياخد صاروخ ؟ تقدر عن طريق البيك اب createPickup Link to comment
فاّرس Posted June 10, 2016 Share Posted June 10, 2016 ادخل وبتلقى مثال, جربه وشوف كيف وخذ اللي تبيه منه وكمل . https://wiki.multitheftauto.com/wiki/createPickup Link to comment
SaedAmer Posted June 10, 2016 Author Share Posted June 10, 2016 شفت في الاول و ما فهمت شئ + ----------------- الكود ده عشان لو دخلت الديربي يقفل ف1 و ف1 و حرف لا بس لما يخلص الديربي ما يرجعو ! addEventHandler( 'onClientKey', root, function (button , prees) if button == 'F1' or button == 'F3' or button == 'b' and prees and getElementData(localPlayer,'onCrossMap') == 'yes' then cancelEvent() end end) Link to comment
فاّرس Posted June 10, 2016 Share Posted June 10, 2016 Syntaxشوف الـ, بالنسبه لـ انه ما يرجعه, اذا خلص الديربي سوي تحقق من الداتا ورجعه . Link to comment
#|_oskar_|# Posted June 10, 2016 Share Posted June 10, 2016 لان الداتا بتكون مفتوحه انت سوي عند انتهاء الديربي تخفي الداتا او تحذفها او سوي تحقق بالعالم الوهمي اللى فيه الديربي يكنسل البيند كي 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