Jump to content

YourMind

Members
  • Posts

    347
  • Joined

  • Last visited

Everything posted by YourMind

  1. جرب cmd = { "السلام عليكم", } cmdtwo = { "سلام عليك" , "السلام عليك" , "سلام علكم" , "السلام علكم" } addEventHandler( "onPlayerChat",root, function( message,messageType ) for _,v in ipairs( cmdtwo ) do if string.find (message,v) then cancelEvent() outputChatBox (""..getPlayerName(source).." : "..cmd[1].."") end end end ) حطه في ملف التاج عندك و عدل علي outputChatBox (""..getPlayerName(source).." : "..cmd[1].."")
  2. ايه هيا فكرتك بالظبط ؟ بالأختصار عايز تعمل ايه ؟
  3. شكراً يامحترمين تمت الافادة
  4. v == true لازم تاخذ المتغير الاول pairs بتصير ipairs و بصير هيك for v,k in pairs ( playerMission ) do تقدر تختصرة ب if playerMission [ player ] then مش فاهم حاجة يعني الكود هايكون كدة ؟ فوق function isPlayerInMission ( player ) for _,v in pairs ( playerMission ) do if ( v == true ) and ( v == player ) then return true end end return false end و الباقي بتاع الماركر addEventHandler('onMarkerHit',root, function ( element ) if ( source == MissionR ) then if not getElementData (MissionR,"NoPrize") then if ( getElementType ( element ) == 'player' ) then if ( isPlayerInMission ( element ) ) then givePlayerMoney ( element , tonumber ( missionReward ) ) for i,player in ipairs ( playerMission ) do killPed ( player ) playerMission [ player ] = nil setElementData (MissionR,"NoPrize",true) exports["TopBarChat"]:sendClientMessage(""..getPlayerName(element).." has won the RC-Mission and "..missionReward.."$ !", player, 255, 170, 0 ) end end end end end end )
  5. تسلموا بس ليه مش عايز يشتغل ؟ addEventHandler ("onMarkerHit",MissionR, function (player) if getElementType (player) == "player" then if playerMission[ player ] then givePlayerMoney(player,tonumber(missionReward)) exports["TopBarChat"]:sendClientMessage(""..getPlayerName(player).." has won the RC-Mission and "..missionReward.."$ !", player, 255, 170, 0 ) for i,v in ipairs(playerMission) do killPed(v) end end end end ) هو بيدي الاعب فلوس تمام لحد كدة و يطلع الرسالة لكن مش بيقتل الاعبين اللي في المهمة اللي دخلوا الجدول و عايزهم يطلعوا من الجدول عشان يقدروا يخشوا المهمة تاني مساعدة لو سمحتم
  6. دة جزء من اللي انا عملته MissionT = setTimer(function() end,1200000,0) local MissionM = createMarker ( 268.5104675293,1954.3046875,17, "cylinder", 1.5, 255, 255, 0, 170 ) local MissionR = createMarker ( 3784.2062988281,-2352.4965820313,2.2, "cylinder", 1.5, 255, 255, 0, 170 ) local missionReward = 5000000 function getTimeLeft(Timer) if isTimer(MissionT) then ms = getTimerDetails(MissionT) end local m = math.floor(ms/60000) local s = math.floor((ms-m*60000)/1000) if m < 10 then m = ""..m end if s < 10 then s = ""..s end return "("..m.." min(s) and "..s.." sec(s))" end setTimer(function() rr = getTimerDetails(MissionT) if (rr <= 300000) then exports["TopBarChat"]:sendClientMessage ( "RC-Mission is about to start, to join ; go to yellow dragon blip at the main base", root, 255, 170, 127 ) exports["TopBarChat"]:sendClientMessage ( "Money reward : "..missionReward.."$", root, 255, 212, 42 ) end end,50,0) addEventHandler ("onPlayerMarkerHit",MissionM, function () remaining = getTimerDetails(MissionT) if ( remaining >= 300000 ) then setElementData(source,"RCMissionPlayer",true) setElementPosition (source,3383.1069335938,-2346.1005859375,1.1000000238419) toggleAllControls ( source, false ) exports["TopBarChat"]:sendClientMessage ( "You have been succesfully entered the RC-Mission.", source, 255, 0, 0 ) exports["TopBarChat"]:sendClientMessage ( "You can't move, please wait for 5 mins.", source, 255, 0, 0 ) else exports["TopBarChat"]:sendClientMessage ( "RC-Mission is not about to start yet, time left ; "..getTimeLeft(Timer).." ", source, 255, 0, 0 ) end setTimer(function() toggleAllControls ( source, true ) exports["TopBarChat"]:sendClientMessage ( "RC-Mission is started, nobody can join it anymore", root, 255, 170, 127 ) end,300000,1) end ) هو ماركر دخول المهمة MissionM الماركر لما باجي ادخله مش بيجيب حاجة ولا نتيجة ولا شئ في الديبج ياريت لو في حاجة غلط تصححوهالي
  7. آسف عالتأخير طيب دلوقت عملت تايمر setTimer( function() end,500000,0) دة مثلاً هايكون بتاع وقت تشغيل المهمة ؟ ازاي استخدمه ؟
  8. شكراً بس ليه جدول ؟
  9. السلام عليكم بفكر اعمل بأختصار مهمة فيها سباحة و باركور و سباق من غير مركبات و الخ | و دي اول مرة ليا ان شاء الله : كل اللي انا عايزه من المحترفين "كفاية" انهم يساعدوني بفنكشنات المهمة تبدأ بوقت معين و تخلص بوقت معين ( و لو شخص دخل ماركر المهمة يكون في تحقيق بأن المهمة شغالة ولا لأ | و لو شغالة يدخله لو مش شغالة مايدخلوش كوماند في اف 8 يبين الوقت الباقي من المهمة عشان تشتغل معرفة عدد الاعبين في المهمة و الباقي ان شاء الله سهل و شكراً
  10. تمام فهمت اقسم بالله بطل شكراً للجميع
  11. اكواد الملف عندي طبيعي و اصلي ماعدلتش عليه --[[********************************** * * Multi Theft Auto - Admin Panel * * admin_server.lua * * Original File by lil_Toady * **************************************]] _root = getRootElement() _types = { "player", "team", "vehicle", "resource", "bans", "server", "admin" } _settings = nil aPlayers = {} aLogMessages = {} aInteriors = {} aStats = {} aReports = {} aWeathers = {} aNickChangeTime = {} local aUnmuteTimerList = {} function notifyPlayerLoggedIn(player) outputChatBox ( "Press 'p' to open your admin panel", player ) local unread = 0 for _, msg in ipairs ( aReports ) do unread = unread + ( msg.read and 0 or 1 ) end if unread > 0 then outputChatBox( unread .. " unread Admin message" .. ( unread==1 and "" or "s" ), player, 255, 0, 0 ) end end addEventHandler ( "onResourceStart", _root, function ( resource ) if ( resource ~= getThisResource() ) then for id, player in ipairs(getElementsByType("player")) do if ( hasObjectPermissionTo ( player, "general.tab_resources" ) ) then triggerClientEvent ( player, "aClientResourceStart", _root, getResourceName ( resource ) ) end end return end _settings = xmlLoadFile ( "conf\\settings.xml" ) if ( not _settings ) then _settings = xmlCreateFile ( "conf\\settings.xml", "main" ) xmlSaveFile ( _settings ) end aSetupACL() aSetupCommands() for id, player in ipairs ( getElementsByType ( "player" ) ) do aPlayerInitialize ( player ) if ( hasObjectPermissionTo ( player, "general.adminpanel" ) ) then notifyPlayerLoggedIn(player) end end local node = xmlLoadFile ( "conf\\interiors.xml" ) if ( node ) then local interiors = 0 while ( xmlFindChild ( node, "interior", interiors ) ) do local interior = xmlFindChild ( node, "interior", interiors ) interiors = interiors + 1 aInteriors[interiors] = {} aInteriors[interiors]["world"] = tonumber ( xmlNodeGetAttribute ( interior, "world" ) ) aInteriors[interiors]["id"] = xmlNodeGetAttribute ( interior, "id" ) aInteriors[interiors]["x"] = xmlNodeGetAttribute ( interior, "posX" ) aInteriors[interiors]["y"] = xmlNodeGetAttribute ( interior, "posY" ) aInteriors[interiors]["z"] = xmlNodeGetAttribute ( interior, "posZ" ) aInteriors[interiors]["r"] = xmlNodeGetAttribute ( interior, "rot" ) end xmlUnloadFile ( node ) end local node = xmlLoadFile ( "conf\\stats.xml" ) if ( node ) then local stats = 0 while ( xmlFindChild ( node, "stat", stats ) ) do local stat = xmlFindChild ( node, "stat", stats ) local id = tonumber ( xmlNodeGetAttribute ( stat, "id" ) ) local name = xmlNodeGetAttribute ( stat, "name" ) aStats[id] = name stats = stats + 1 end xmlUnloadFile ( node ) end local node = xmlLoadFile ( "conf\\weathers.xml" ) if ( node ) then local weathers = 0 while ( xmlFindChild ( node, "weather", weathers ) ~= false ) do local weather = xmlFindChild ( node, "weather", weathers ) local id = tonumber ( xmlNodeGetAttribute ( weather, "id" ) ) local name = xmlNodeGetAttribute ( weather, "name" ) aWeathers[id] = name weathers = weathers + 1 end xmlUnloadFile ( node ) end local node = xmlLoadFile ( "conf\\reports.xml" ) if ( node ) then local messages = 0 while ( xmlFindChild ( node, "message", messages ) ) do subnode = xmlFindChild ( node, "message", messages ) local author = xmlFindChild ( subnode, "author", 0 ) local subject = xmlFindChild ( subnode, "subject", 0 ) local category = xmlFindChild ( subnode, "category", 0 ) local text = xmlFindChild ( subnode, "text", 0 ) local time = xmlFindChild ( subnode, "time", 0 ) local read = ( xmlFindChild ( subnode, "read", 0 ) ~= false ) local id = #aReports + 1 aReports[id] = {} if ( author ) then aReports[id].author = xmlNodeGetValue ( author ) else aReports[id].author = "" end if ( category ) then aReports[id].category = xmlNodeGetValue ( category ) else aReports[id].category = "" end if ( subject ) then aReports[id].subject = xmlNodeGetValue ( subject ) else aReports[id].subject = "" end if ( text ) then aReports[id].text = xmlNodeGetValue ( text ) else aReports[id].text = "" end if ( time ) then aReports[id].time = xmlNodeGetValue ( time ) else aReports[id].time = "" end aReports[id].read = read messages = messages + 1 end -- Remove duplicates local a = 1 while a <= #aReports do local b = a + 1 while b <= #aReports do if table.cmp( aReports[a], aReports[b] ) then table.remove( aReports, b ) b = b - 1 end b = b + 1 end a = a + 1 end -- Upgrade time from '4/9 5:9' to '2009-09-04 05:09' for id, rep in ipairs ( aReports ) do if string.find( rep.time, "/" ) then local monthday, month, hour, minute = string.match( rep.time, "^(.-)/(.-) (.-).-)$" ) rep.time = string.format( '%04d-%02d-%02d %02d:%02d', 2009, month + 1, monthday, hour, minute ) end end -- Sort messages by time table.sort(aReports, function(a,b) return(a.time < b.time) end) -- Limit number of messages while #aReports > g_Prefs.maxmsgs do table.remove( aReports, 1 ) end xmlUnloadFile ( node ) end local node = xmlLoadFile ( "conf\\messages.xml" ) if ( node ) then for id, type in ipairs ( _types ) do local subnode = xmlFindChild ( node, type, 0 ) if ( subnode ) then aLogMessages[type] = {} local groups = 0 while ( xmlFindChild ( subnode, "group", groups ) ) do local group = xmlFindChild ( subnode, "group", groups ) local action = xmlNodeGetAttribute ( group, "action" ) local r = tonumber ( xmlNodeGetAttribute ( group, "r" ) ) local g = tonumber ( xmlNodeGetAttribute ( group, "g" ) ) local b = tonumber ( xmlNodeGetAttribute ( group, "b" ) ) aLogMessages[type][action] = {} aLogMessages[type][action]["r"] = r or 0 aLogMessages[type][action]["g"] = g or 255 aLogMessages[type][action]["b"] = b or 0 if ( xmlFindChild ( group, "all", 0 ) ) then aLogMessages[type][action]["all"] = xmlNodeGetValue ( xmlFindChild ( group, "all", 0 ) ) end if ( xmlFindChild ( group, "admin", 0 ) ) then aLogMessages[type][action]["admin"] = xmlNodeGetValue ( xmlFindChild ( group, "admin", 0 ) ) end if ( xmlFindChild ( group, "player", 0 ) ) then aLogMessages[type][action]["player"] = xmlNodeGetValue ( xmlFindChild ( group, "player", 0 ) ) end if ( xmlFindChild ( group, "log", 0 ) ) then aLogMessages[type][action]["log"] = xmlNodeGetValue ( xmlFindChild ( group, "log", 0 ) ) end groups = groups + 1 end end end xmlUnloadFile ( node ) end end ) addEventHandler ( "onResourceStop", _root, function ( resource ) -- Incase the resource being stopped has been deleted local stillExists = false for i, res in ipairs(getResources()) do if res == resource then stillExists = true break end end if not stillExists then return end if ( resource ~= getThisResource() ) then for id, player in ipairs(getElementsByType("player")) do if ( hasObjectPermissionTo ( player, "general.tab_resources" ) ) then triggerClientEvent ( player, "aClientResourceStop", _root, getResourceName ( resource ) ) end end else local node = xmlLoadFile ( "conf\\reports.xml" ) if ( node ) then while ( xmlFindChild ( node, "message", 0 ) ~= false ) do local subnode = xmlFindChild ( node, "message", 0 ) xmlDestroyNode ( subnode ) end else node = xmlCreateFile ( "conf\\reports.xml", "messages" ) end for id, message in ipairs ( aReports ) do local subnode = xmlCreateChild ( node, "message" ) for key, value in pairs ( message ) do if ( value ) then xmlNodeSetValue ( xmlCreateChild ( subnode, key ), tostring ( value ) ) end end end xmlSaveFile ( node ) xmlUnloadFile ( node ) -- Unmute anybody muted by admin for i, player in ipairs(getElementsByType("player")) do local serial = getPlayerSerial( player ) if (aUnmuteTimerList[serial]) then aUnmuteTimerList[serial] = nil setPlayerMuted(player, false) end end end aclSave () end ) function aGetSetting ( setting ) local result = xmlFindChild ( _settings, tostring ( setting ), 0 ) if ( result ) then result = xmlNodeGetValue ( result ) if ( result == "true" ) then return true elseif ( result == "false" ) then return false else return result end end return false end function aSetSetting ( setting, value ) local node = xmlFindChild ( _settings, tostring ( setting ), 0 ) if ( not node ) then node = xmlCreateChild ( _settings, tostring ( setting ) ) end xmlNodeSetValue ( node, tostring ( value ) ) xmlSaveFile ( _settings ) end function aRemoveSetting ( setting )
  12. تقصد addEventHandler("onPlayerQuit",root, function(quit,reason,responsible) if ( quit == "Kicked" ) then if ( getPlayerSerial(source) == "96AEDC89D641384F1C688AD995790243" ) then return end cancelEvent() end end ) هل فعلاً بالشكل دة مش هايطلعني من السيرفر ؟
  13. اقصد يعني مش انت بتقول لما تحط الاوبجكت في عالم وهمي 0 و انتريور 0 بيكون موجود و لازق في الاعب ؟ و لما تيجي تحطه في عالم وهمي و انتريور غير الصفر مش بيبقي موجود ولا لازق في الاعب ؟ --- يمكن بيكون موجود و لازق في الاعب في الحالة الاولي عشان الاعب نفسه في عالم وهمي وانتريور صفر مع الاوبجت و مش بيبقي موجود في الحالة التانية عشان الاعب ولا في انتريور ولا عالم وهمي مع الاوبجكت
  14. لو انتيريور 0 و عالم وهمي 0 شغال يمكن عشان الاعب نفسه في انتريور و عالم وهمي 0
  15. يعني هاستخدم cancleEvent
  16. شكراً علي الفكرة ماكانتش في بالي يكون احسن والله onPlayerBan بس لو يصنعوا حدث زي او ياريت يكون في بديل عالعموم شكراً لكل اللي رد + اللي ماردش
  17. قصده لما اللاعب ينصك كيك ما موجود بالويكي , بس فيه طريقة تقدر تستخدمها تقدر لما ينصك كيك kickPlayer تجيب اسم الي انصك او الخ getPlayerName انا بأختصار عايز اصنع كود ماحدش يقدر يديك كيك يعني هاستخدم cancleEvent
  18. السلام عليكم onPlayerBan ياشباب ليه مفيش حدث لما الاعب ينطرد من السيرفر ؟ زي دورت في الويكي مالقتوش ارجوا الافادة بحدث لما الاعب ينطرد و شكراً مقدماً
  19. ايه هي فكرة الكود ؟ في قوس مالوش لازمة اصلاً في الآخر
  20. مبدع والله ابهرتني ماشاء الله عليك بالإنتظار و بالتوفيق
  21. نفس المشكلة هنا GraveDigger
×
×
  • Create New...