Jump to content

3NAD

Members
  • Posts

    1,990
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by 3NAD

  1. local number = 0 number = ( ( number < 255 and number +1 ) or 0 )
  2. الكود ذا حطه في ملف كلاينت بس و حق سيرفر سايد , هذا كلاينت إيفنت انت مسويه من اول
  3. اكواد الدي اكس حطها في إيفنت "onClientRender"
  4. local arena = { }; function arena.create ( ) arena.marker = { }; arena.marker[1] = createMarker ( -224, 125, 4, "cylinder", 1, 255, 255, 255, 255 ) arena.marker[2] = createMarker ( -200, 125, 4, "cylinder", 1, 255, 0, 0, 255 ) arena.marker[3] = createMarker ( -200, 157, 6, "cylinder", 1, 0, 255, 0, 255 ) arena.marker[4] = createMarker ( -224, 157, 6, "cylinder", 1, 0, 0, 255, 255 ) arena.attachMarker ( ) end addCommandHandler ( "work", arena.create ) function arena.leave ( player ) if player == localPlayer then outputChatBox ( "You have left the area" ) end end function arena.borders ( ) if not arena.run then return end for i, v in ipairs ( arena.attach ) do local x1, y1, z1 = getElementPosition ( v.fromMarker ) local x2, y2, z2 = getElementPosition ( v.toMarker ) dxDrawLine3D ( x1, y1, z1, x2, y2, z2, tocolor ( 0, 255, 0, 230 ), 2 ) end end addEventHandler ( "onClientRender", root, arena.borders ) function arena.attachMarker ( ) arena.attach = { }; local fromID = 1 while fromID <= 4 do local toID = ( ( fromID < 4 and fromID +1 ) or 1 ) table.insert ( arena.attach, { fromMarker=arena.marker[fromID], toMarker=arena.marker[toID], distance=0 } ) fromID = fromID +1 end arena.positions ( ) end function arena.positions ( ) arena.position = { }; arena.position.marker = { }; arena.position.center = { x = 0, y = 0, z = 0 }; for i, v in ipairs ( arena.marker ) do arena.position.marker[i] = { }; arena.position.marker[i].x, arena.position.marker[i].y, arena.position.marker[i].z = getElementPosition ( v ) end local markerID = 1 while markerID <= 4 do arena.position.center.x = arena.position.center.x + arena.position.marker[markerID].x arena.position.center.y = arena.position.center.y + arena.position.marker[markerID].y arena.position.center.z = arena.position.center.z + arena.position.marker[markerID].z markerID = markerID +1 end arena.position.center.x = arena.position.center.x/4 arena.position.center.y = arena.position.center.y/4 arena.position.center.z = arena.position.center.z/4 arena.createBorders ( ) end function arena.createBorders ( ) local x, y = { }, { } for i, v in ipairs ( arena.position.marker ) do table.insert ( x, v.x ) table.insert ( y, v.y ) end arena.borders = createColPolygon ( arena.position.center.x, arena.position.center.y, x[1], y[1], x[2], y[2], x[3], y[3], x[4], y[4] ) addEventHandler ( "onClientColShapeLeave", arena.borders, arena.leave, false ) arena.run = true end جرب ذا ما انسى اللي ساعدني فيه بالتوفيق
  5. onPlayerJoin ; اللاعب باقي ماحمل ملف الكلاينت ف لذلك الإيفنت ماراح يحصله
  6. Client: triggerServerEvent ( "onRequestCurrentGamemode", localPlayer ) Server: addEvent ( "onRequestCurrentGamemode", true ) addEventHandler ( "onRequestCurrentGamemode", root, function ( ) if CWMode then triggerClientEvent ( source, "EnableCW", resourceRoot ) elseif WFFMode then triggerClientEvent ( source, "EnableWFF", resourceRoot ) end end )
  7. شرايك اختبرك فالشغلة ذي ؟
  8. https://wiki.multitheftauto.com/wiki/ConvertGridListToText
  9. addCommandHandler ( "startMission" , function ( player,cmd,mission ) local playerAccount = getPlayerAccount ( player ) if ( not isGuestAccount ( playerAccount ) ) then if ( isObjectInACLGroup ( "user."..getAccountName(playerAccount),aclGetGroup("Console") ) ) then for k,v in pairs ( positionTable ) do if mission == v[1] then setElementData(resourceRoot,"TheMissions",mission) outputChatBox("yes",root,255,0,0,true) return end end outputChatBox("no",root,255,0,0,true) end end end )
  10. انت اللي تحدد تبي نو تظهر ولا لا ! مثلاً كان كودك انك تبحث عن قيمة في التيبل , ف مافي حاجة انك تستخدم else
  11. local taple = {} getPlayerDor = function ( source ) for i, v in ipairs ( taple ) do if v.player == source then return i end end end addCommandHandler("dor",-- يحط نفسه بالدور function(source) local dor = getPlayerDor ( source ) if not dor then outputChatBox("تم وضعك في الدور , انتظر حتي ياتي دورك لسحبك",source,255,255,0,true) table.insert(taple,{player=source}) outputChatBox(""..#taple.." انت الدور رقم",source,255,255,0,true) else outputChatBox(""..dor.." قمت بأخذ دور مسبقاً, الرقم",source,255,0,0,true) end end ) addCommandHandler("getDor", function(source) local dorNow = taple[1] if dorNow then local player = dorNow.player local x,y,z = getElementPosition(source) setElementPosition(player,x,y,z+2) table.remove(taple,1) else outputChatBox("لايوجد دور",source,255,0,0,true) end end )
  12. نعم , راح يوقف اللوب بعد اول نو
  13. تقدر تستخدم break لإيقاف اللوب أو return لإيقاف الوظيفة
  14. انا قلت لك جرب الكوماندات (اكتب الكلمة بأف8) ء إضافة كلمة للجدول addValue text حذف كلمة من الجدول removeValue text عرض الكلمات اللي بالجدول getValues
  15. انت اللي تحتاجه هو fromJSON toJSON اقرا الكود وافهم طريقة استخدام الوظيفتين اللي فوق اذا فيه شيء مافهمته, حدد عليه واسأل هنا
  16. executeSQLQuery ( "CREATE TABLE IF NOT EXISTS `Sql` (`test` TEXT)") addCommandHandler ( "addValue", function ( player, _, value ) local SQL = executeSQLQuery ( "SELECT `test` FROM `Sql`" ) if #SQL == 0 then local testingTable = { value }; local tableToBeStored = toJSON ( testingTable ) executeSQLQuery ( "INSERT INTO `Sql` (`test`) VALUES(?)", tableToBeStored ) outputChatBox ( "* The value has been added.", player ) else local tableToBeUsed = fromJSON ( SQL[1].test ) table.insert ( tableToBeUsed, value ) local tableToBeStored = toJSON ( tableToBeUsed ) executeSQLQuery ( "UPDATE `Sql` SET test=?", tableToBeStored ) outputChatBox ( "* The value has been added.", player ) end end ) addCommandHandler ( "removeValue", function ( player, _, value ) local SQL = executeSQLQuery ( "SELECT `test` FROM `Sql`" ) if #SQL == 0 then outputChatBox ( "* No results.", player ) else local tableToBeUsed = fromJSON ( SQL[1].test ) for i, v in ipairs ( tableToBeUsed ) do if v == value then table.remove ( tableToBeUsed, i ) local tableToBeStored = toJSON ( tableToBeUsed ) executeSQLQuery ( "UPDATE `Sql` SET test=?", tableToBeStored ) outputChatBox ( "* The value has been removed.", player ) return end end outputChatBox ( "* The value isn't exist.", player ) end end ) addCommandHandler ( "getValues", function ( player ) local SQL = executeSQLQuery ( "SELECT `test` FROM `Sql`" ) if #SQL == 0 then outputChatBox ( "* No results.", player ) else local tableToBeUsed = fromJSON ( SQL[1].test ) for i, v in ipairs ( tableToBeUsed ) do outputChatBox ( v, player ) end end end ) جرب الكوماندات
  17. عطني مثال حي للشيء اللي تبي تسويه في قاعدة البيانات ..
  18. هذا الكود راح يعمل ثقل كبير على الكلاينت ( يسبب لاق ) ء
  19. 3NAD

    Server list spam

    Hello, I would like to report about a Fake Server that using 6ArH's name ! Real Server: mtasa://51.255.105.230:22004 Fake Server: mtasa://94.177.197.159:27515 Thank you.
  20. قم بتجربة هذا local ID_Database = dbConnect ( "sqlite", "ID_Database.db" ) dbExec ( ID_Database, "CREATE TABLE IF NOT EXISTS `ID` (`Account`,`Number`)") getLastUsedID = function ( ) local id = 0 local db = dbPoll ( dbQuery ( ID_Database, "SELECT * FROM `ID`" ), -1 ) if #db > 0 then for i, v in ipairs ( db ) do id = v.Number end end return tonumber(id) end getAccountID = function ( acc ) if acc then local db = dbPoll ( dbQuery ( ID_Database, "SELECT * FROM `ID` WHERE `Account`=?", tostring(acc) ), -1 ) if #db > 0 then return tostring(db[1].Number) end end return false end giveAccountID = function ( acc ) if acc then if not getAccountID ( acc ) then local id = getLastUsedID ( ) +1 dbExec ( ID_Database, "INSERT INTO `ID` VALUES(?,?)", tostring(acc), tostring(id) ) return tostring(id) end end return false end loadPlayerID = function ( player ) local account = getPlayerAccount ( player ) if not isGuestAccount ( account ) then local acc = getAccountName ( account ) local id = getAccountID ( acc ) if id then setElementData ( source, "playerid", id ) return id else local newID = giveAccountID ( acc ) if newID then setElementData ( source, "playerid", newID ) return newID end end end return false end addEventHandler ( "onPlayerLogin", root, function ( ) loadPlayerID ( source ) end ) addEventHandler ( "onResourceStart", resourceRoot, function ( ) for i, v in ipairs ( getElementsByType ( "player" ) ) do loadPlayerID ( v ) end end )
×
×
  • Create New...