Jupi Posted August 9, 2016 Share Posted August 9, 2016 isPedDucked بيتحقق اذا كان البيد موطي او منخفض او ضاغط c :v Link to comment
SPLM Posted August 11, 2016 Share Posted August 11, 2016 setWeaponProperty عن طريق الوظيفة ذي تقدر مثلاً تزيد الدمج للسلاح أو تزيد المدى أو حتى تزيد عدد الطلقات مثلاً المسدس 7 طلقات تقدر تسويها مثلاً 500 تقدر تسوي اللاعب يحمل سلاحين uzi أو يطلق و هو يمشي مثلاً بأم4 زي السلاح ...وفي أشياء كثير أكتشفها بنفسك https://wiki.multitheftauto.com/wiki/SetWeaponProperty Ex : setWeaponProperty("minigun", "pro", "maximum_clip_ammo", 1000) Link to comment
Ja[B]er[X]Pro Posted August 18, 2016 Share Posted August 18, 2016 setWeaponProperty عن طريق الوظيفة ذي تقدر مثلاً تزيد الدمج للسلاح أو تزيد المدى أو حتى تزيد عدد الطلقات مثلاً المسدس 7 طلقات تقدر تسويها مثلاً 500 تقدر تسوي اللاعب يحمل سلاحين uzi أو يطلق و هو يمشي مثلاً بأم4 زي السلاح ...وفي أشياء كثير أكتشفها بنفسك https://wiki.multitheftauto.com/wiki/SetWeaponProperty Ex : setWeaponProperty("minigun", "pro", "maximum_clip_ammo", 1000) مشكور اخي ممكن شرح للأرقمنت الثاني ما فهمته Link to comment
SPLM Posted August 18, 2016 Share Posted August 18, 2016 ، عفواً ايي ممكن الارقمنت الثاني وهو سترنق لـ مهارة السلاح ولازم يكون لدى اللاعب هذه المهارة عشان يظهر التأثير . : وهي بـ 3 لفلات "pro", "std", "poor" ... "poor" مثلا لو حطيت بتكون مهارة الميزة المحددة للسلاح ضعيفة بعكس لو حطيت "pro" او "std" . Link to comment
^iiEcoo'x_) Posted August 19, 2016 Share Posted August 19, 2016 dxDrawRectangle ذا ينشئ مربع ؟ Link to comment
#Al3aGraB<3 Posted August 19, 2016 Share Posted August 19, 2016 dxDrawRectangle ذا ينشئ مربع ؟ على حسب رغبتك رح الاديتور وسوي فيه الي تبي Link to comment
!#NssoR_) Posted August 19, 2016 Share Posted August 19, 2016 dxDrawRectangle ذا ينشئ مربع ؟ Shop Script شوف الازرار حقت الشوب , يمديك تسوي زيها بهالكود Link to comment
Ahmed Ly Posted August 31, 2016 Share Posted August 31, 2016 _G coroutine.create oroutine.resume remove close ? Link to comment
</Mr.Tn6eL> Posted August 31, 2016 Share Posted August 31, 2016 _G coroutine.create oroutine.resume remove close ? _G يجيب لك جميع المتغيرات العامة مثال for k, v in pairs(_G) do print(k, v) end coroutine.create thread يقوم بصنع فائدته انه مخصص للعمليات المتعددة في المعالج مثلا لو عندك اكثر من عملية والعمليات هذي راح تخلص بعد العملية السابقة وكذا لكن لو مع هذي تقدر تعمل العمليات في وقت واحد وله شروحات كثيرة جدا مثال -- [url=https://www.lua.org/pil/9.1.html]https://www.lua.org/pil/9.1.html[/url] co = coroutine.create(function () print("hi") end) print(co) --> thread: 0x8071d98 coroutine.resume threadتقوم باستكمال عملية مثال coroutine.resume(co) اخر اثنين غير موجودة في لغة لوا يمكن شفتها تسطع في النوتباد وانا اقلك فايدتها هي ميثود يقوم باغلاق الملف مثلا local file = io.open("test.txt") file:close( ) طبعا هذي غير مدرجة في ام تي اي و remove ماهي موجودة Link to comment
فاّرس Posted August 31, 2016 Author Share Posted August 31, 2016 ^ اضيف على كلامك, local variables موضوعة داخل جدول ماعدا المتغيرات المحليه LUA جميع المتغيرات في : داخل سلسله نصيه, مثال لكلامي ( Global variables ) لاحظ مثال الأخ تنطيل الأول, ذا يجيب لك كل المتغيرات العامه ft = { } -- ( Global variable ) متغير عام for n in pairs ( _G ) do -- لوب يجيب كل المتغيرات العامه if n == 'ft' then -- اللي سويناه داخل الجدول ft نتحقق لو المتغير العام outputChatBox ( n ) -- نطلع اسم المتغير العام بالشات break -- نوقف اللوب end -- نقفل الشرط end -- نقفل اللوب _G بمعنى أول ما سوينا المتغير العام على طول راح يكون داخل الجدول Local variable قبل المتغير ماراح يظهر باللوب لأنه صار local لو تجرب تحط مثال آخر : ft = { health = 'getElementHealth' } outputChatBox ( _G[ft.health] ( localPlayer ) ) Link to comment
Rockyz Posted September 1, 2016 Share Posted September 1, 2016 _G و الفرق بين ipairs و pairs يمكن استفيد منهم في المستقبل مع اني ماعتقد اني بسوي شي Link to comment
فاّرس Posted September 1, 2016 Author Share Posted September 1, 2016 _G : ( Global variables )يجيب لك المتغيرات العامه ,local وش هي المتغيرات العامه؟ هي اي متغير مايجيك قبله راح يكون جدول, وتكون داخله المتغيرات العامه _G طبعاً : كـ مثال var = 10; -- راح تحصل المتغير يطلع لك _G خلاص ذا صار متغير عام, واذا سويت لوب لـ : مثال آخر local var = 10; -- ما راح يطلع لك المتغير _G ذا متغير محلي, ولو سويت لوب لـ ,الأمثله فوق حطيناها انا وتنطيل اتوقع سهله وواضحه ipairs : تجيب لك قيم الجدول, وتكون محدده بـ رقم الإندكس. paris : تجيب لك اي قيمه داخل الجدول بغض النظر عن رقم الاندكس : اشرحها لك ب مثال local t = { -- متغير وقيمته جدول [1] = 'One', -- القيمه رقم 1 موجوده -- القيمه رقم 2 غير موجوده [3] = 'Three', -- القيمه رقم 3 موجوده [4] = 'Four', -- القيمه رقم 4 موجوده myNumber = 10 -- متغير داخل الجدول } -- قوس الجدول for k,v in ipairs ( t ) do -- ipairs نسوي لوب من خلال outputChatBox ( k .. ' : '.. v ) -- نطلع محتويات الجدول فـ الشات end -- نقفل اللوب -- 1 : One ,pairs و ipairs طيب باقي القيم ليه ما طلعت؟ هنا يجيك الفرق بين تجيب لك القيم من خلال رقم الاندكس, واحنا تركنا رقم 2 وبكذا اللوب ماراح يكمل ipairs كذا تعرف ان ,تلاحظ ان كل اللي بالجدول ظهر بالشات pairs جرب مع : ماراح تظهر لك المتغيرات او اذا كان قيمة الاندكس سترنق كـ مثال ipairs وللمعلوميه local t = { ['numberIs'] = 0, myNumber = 10 } for k,v in ipairs ( t ) do print ( k .. ' : '.. v ) end ,راح تطلع كلها pairs راح تلاحظ انه ما ظهر اي شي, طيب جرب مع .اتمنى وصلت الفكره وبالتوفيق Link to comment
</Mr.Tn6eL> Posted September 1, 2016 Share Posted September 1, 2016 _G و الفرق بين ipairs و pairs يمكن استفيد منهم في المستقبل مع اني ماعتقد اني بسوي شي _G شرحناها فوق pairs يجيب جميع مافي الجدول طبعا ماراح تجيب بالترتيب الي تبغاه راح تجيب مفاتيح القيم اللي هي ارقام بعدين تجيب لك الحروف ipairs نفس pairs لكن الاختلاف يجيب لك القيم اللي مالها مفتاح ابدا سواء كان رقم ام حرف مثال t = { ["aTn6el"] = true, "H", ["Hi3"] = "Hello world", "HHH", [4] = "Hi Tn6eL" } print("pairs") for k, v in pairs(t) do print("", k, v) end print("ipairs") for k, v in ipairs(t) do print("", k, v) end النتيجة pairs 1 H 2 HHH 4 Hi Tn6eL aTn6el true Hi3 Hello world ipairs 1 H 2 HHH Link to comment
فاّرس Posted September 1, 2016 Author Share Posted September 1, 2016 ipairs نفس pairs لكن الاختلاف يجيب لك القيم اللي مالها مفتاح ابدا سواء كان رقم ام حرف . لا غلط, تجيب لك حتى لو لها مفتاح, ولكن يكون بالترتيب, شوف ردي فوق Link to comment
</Mr.Tn6eL> Posted September 1, 2016 Share Posted September 1, 2016 ipairs نفس pairs لكن الاختلاف يجيب لك القيم اللي مالها مفتاح ابدا سواء كان رقم ام حرف . لا غلط, تجيب لك حتى لو لها مفتاح, ولكن يكون بالترتيب, شوف ردي فوق لا انت الغلط وانا اعرف انك راح تكثرها lua.org/demo.html بس جرب مثال في وراح تنصدم من مثالك Link to comment
فاّرس Posted September 1, 2016 Author Share Posted September 1, 2016 جربته واشتغل تمام, طيب جرب انت؟ local t = { [1] = 'One' } for k,v in ipairs ( t ) do print ( k .. ' : ' .. v ) end تقول اللي مالها مفتاح ابداً وذي لها مفتاح جرب بتطلع او لا؟ Link to comment
</Mr.Tn6eL> Posted September 1, 2016 Share Posted September 1, 2016 جربته واشتغل تمام, طيب جرب انت؟ local t = { [1] = 'One' } for k,v in ipairs ( t ) do print ( k .. ' : ' .. v ) end تقول اللي مالها مفتاح ابداً وذي لها مفتاح جرب بتطلع او لا؟ اقصد جرب مثالي وانا اقصد ipairs: تجيب القيم اللي مالها مفتاح يعني لازم يكون رقم مرتب زي كذا t = { [1] = "Hi", [2] = "Hi2", [3] = "Hi3", --... } او t = { "Hi", "Hi2", "Hi3", --... } Link to comment
فاّرس Posted September 1, 2016 Author Share Posted September 1, 2016 طيب ذا اللي اقصده انا, انت دايم تصحى الصبح مروق وتمسك الناس انت قلت اللي مالها مفتاح ابداً, واساساً مافيه قيمه مالها مفتاح حتى لو ماحطيت لها مفتاح بيكون لها مفتاح تلقائي . ع العموم حصل خير Link to comment
iMr ~ MnHmAr Posted September 7, 2016 Share Posted September 7, 2016 ممكن شرح كيف حفظ setElementData OR getElementData في قاعدة بيانات^^ Link to comment
</Mr.Tn6eL> Posted September 7, 2016 Share Posted September 7, 2016 3 minutes ago, back!_ said: ممكن شرح كيف حفظ setElementData OR getElementData في قاعدة بيانات^^ تجيب قيمتها وتخزنها عن طريق وظائف قواعد البيانات https://wiki.multitheftauto.com/wiki/Server_Scripting_Functions#SQL_functions او استخدم On ٢١/١/٢٠١٦ at 3:48 AM, </Mr.Tn6eL> said: set/get/removeSQLData وظيفة مفيدة تسهل عملية استخدام قواعد البيانات setSQLData(string data_name, string data_value) getSQLData(string data_name) removeSQLData(string data_name) ( string ) قيمة الداتا تقبل السلسة النصية فقط ( tostring ) لتحويل الارقام قم باستخدام ( toJSON, fromJSON) JSON لتحويل الجداول استخدم دوال الـ Code : sql = executeSQLQuery sql "CREATE TABLE IF NOT EXISTS string_data(data_name TEXT, data_value TEXT)" function setSQLData(data, value) assert(type(data) == "string", "Bad Argument @setStringData #1 [string expect, got "..type(data).."]") assert(type(value) == "string", "Bad Argument @setStringData #2 [string expect, got "..type(value).."]") local query = sql("SELECT * FROM string_data WHERE data_name=?", data) if query and type(query) == "table" and #query == 1 then sql("UPDATE string_data SET data_value=? WHERE data_name=?", value, data) else sql("INSERT INTO string_data(data_name, data_value) VALUES(?, ?)", data, value) end return true end function getSQLData(data) assert(type(data) == "string", "Bad Argument @getStringData #1 [string expect, got "..type(data).."]") local query = sql("SELECT data_value FROM string_data WHERE data_name=?", data) return query and type(query) == "table" and #query == 1 and query[1]["data_value"] end function removeSQLData(data) assert(type(data) == "string", "Bad Argument @removeSQLData #1 [string expect, got "..type(data).."]") return sql("DELETE FROM string_data WHERE data_name=?", data) end Example : setSQLData("money"..getPlayerSerial(player), tostring(getPlayerMoney(player))) -- نقوم بوضع داتا على سريال الاعب وقيمتها فلوس الاعب outputChatBox(getSQLData("money"..getPlayerSerial(player)) or "none") -- كتابة بالشات قيمة الداتا removeSQLData("money"..getPlayerSerial(player)) -- حذف الداتا Link to comment
iMr ~ MnHmAr Posted September 7, 2016 Share Posted September 7, 2016 (edited) Just now, said: تجيب قيمتها وتخزنها عن طريق وظائف قواعد البيانات https://wiki.multitheftauto.com/wiki/Server_Scripting_Functions#SQL_functions او استخدم الاول انا سويت كذا شوف local CreateTable = executeSQLQuery ('CREATE TABLE IF NOT EXISTS `Save LeveL System` (Account'..setElementData(kill, "LeVeL")..''..setElementData(source, "LeVeL", 0)..') ') --- ثمن لما الاعب يطلع ابيه يحفظ داتا الثنتين حقت الكلاس و لفل ------- الان لما الاعب يطلع addEventHandler('onPlayerQuit',root, function ( ) local Killer = getPlayerAccount( source ) if isGuestAccount ( Killer ) then --- اذا مو مسجل يخلي داتا الفل 0 setElementData(source, "KillS", 0) setElementData(source, "LeVeL", 0) else -- اذا مااحقق الشرط Data1 = setElementData(Kill, "KillS", (getElementData(Kill, "KillS") or 0) + 1) -- يجي عدد قتله اذا مافيه يحطه 0 Data2 = setElementData(Kill, "LeVeL", (getElementData(Kill, "LeVeL") or 0) + 1) -- نجيب لفله اواذا ما عه لفل نعطيه داتا 0 local Results = executeSQLQuery("SELECT * FROM `Save LeveL System` WHERE Account=?",getPlayerAccount(source) ) if ( type ( Results ) == "table" and #Results == 0 or not Results ) then --- يتحقق القيمه فاضيه او لا executeSQLQuery ( "INSERT INTO `Save Position System` ( Account,Data1,Data2 ) VALUES(?,?,?)",getPlayerAccount(source),Data1,Data2 ) else اذا ماتحقق الشرط executeSQLQuery('UPDATE `Save LeveL System` SET Data1 =?, Data2 =? WHERE Account =?',Data1,Data2,getPlayerAccount(source) ) end end ) addEventHandler('onPlayerLogin',root, -- لما الاعب يدخل function ( ) local Results1 = executeSQLQuery("SELECT * FROM `Save LeveL System` WHERE Account=?",getPlayerAccount(source) ) -- يسترجع روم الحساب حق الاعب if ( type ( Results1 ) == "table" and #Results1 == 0 or not Results1 ) then return end ---- يتحقق اذا فيه قيمه يكمل الشرط اذا مافيه يرجع الوظيفه setElementData(Kill, "KillS", (getElementData(Kill, "KillS") or 0) + 1)--يعطيه كم قتل setElementData(Kill, "LeVeL", (getElementData(Kill, "LeVeL") or 0) + 1)-- يعطيه لفله ^^ end ) Edited September 7, 2016 by back!_ Link to comment
Ja[B]er[X]Pro Posted September 7, 2016 Share Posted September 7, 2016 3 hours ago, back!_ said: الاول انا سويت كذا شوف local CreateTable = executeSQLQuery ('CREATE TABLE IF NOT EXISTS `Save LeveL System` (Account'..setElementData(kill, "LeVeL")..''..setElementData(source, "LeVeL", 0)..') ') --- ثمن لما الاعب يطلع ابيه يحفظ داتا الثنتين حقت الكلاس و لفل ------- الان لما الاعب يطلع addEventHandler('onPlayerQuit',root, function ( ) local Killer = getPlayerAccount( source ) if isGuestAccount ( Killer ) then --- اذا مو مسجل يخلي داتا الفل 0 setElementData(source, "KillS", 0) setElementData(source, "LeVeL", 0) else -- اذا مااحقق الشرط Data1 = setElementData(Kill, "KillS", (getElementData(Kill, "KillS") or 0) + 1) -- يجي عدد قتله اذا مافيه يحطه 0 Data2 = setElementData(Kill, "LeVeL", (getElementData(Kill, "LeVeL") or 0) + 1) -- نجيب لفله اواذا ما عه لفل نعطيه داتا 0 local Results = executeSQLQuery("SELECT * FROM `Save LeveL System` WHERE Account=?",getPlayerAccount(source) ) if ( type ( Results ) == "table" and #Results == 0 or not Results ) then --- يتحقق القيمه فاضيه او لا executeSQLQuery ( "INSERT INTO `Save Position System` ( Account,Data1,Data2 ) VALUES(?,?,?)",getPlayerAccount(source),Data1,Data2 ) else اذا ماتحقق الشرط executeSQLQuery('UPDATE `Save LeveL System` SET Data1 =?, Data2 =? WHERE Account =?',Data1,Data2,getPlayerAccount(source) ) end end ) addEventHandler('onPlayerLogin',root, -- لما الاعب يدخل function ( ) local Results1 = executeSQLQuery("SELECT * FROM `Save LeveL System` WHERE Account=?",getPlayerAccount(source) ) -- يسترجع روم الحساب حق الاعب if ( type ( Results1 ) == "table" and #Results1 == 0 or not Results1 ) then return end ---- يتحقق اذا فيه قيمه يكمل الشرط اذا مافيه يرجع الوظيفه setElementData(Kill, "KillS", (getElementData(Kill, "KillS") or 0) + 1)--يعطيه كم قتل setElementData(Kill, "LeVeL", (getElementData(Kill, "LeVeL") or 0) + 1)-- يعطيه لفله ^^ end ) اخي عندك خطأ بالكود الاول عندما الاعب يخرج انت كاتب local Killer = getPlayerAccount( source ) لكن بأكواد اعطاء الداتا كتبت Kill Link to comment
Recommended Posts