Search the Community

Showing results for tags 'killerproject'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Multi Theft Auto: San Andreas 1.x
    • Support for MTA:SA 1.x
    • Open Source Contributors
    • Suggestions
  • General MTA
    • News
    • Media
    • Site/Forum/IRC/Mantis/Wiki related
    • MTA Chat
    • Other languages
  • community.mtasa.com
    • Scripting
    • Maps
    • Resources
    • Other Creations
    • Competitive gameplay
    • Servers
  • Other
    • General
    • Multi Theft Auto 0.5r2
    • Third party GTA mods
  • Archive
    • Archived Items
    • Trash
  • Private Bugtracker

Found 36 results

  1. في هذا الموضوع البسيط سأطرح عليكم بعض برامج تحرير النصوص البرمجية -------------------------------------------------------------------------------------------------------------- برنامج notepad++ عربي English -------------------------------------------------------------------------------------------------------------- برنامج jEdit عربي English -------------------------------------------------------------------------------------------------------------- برنامج Sublime text عربي English -------------------------------------------------------------------------------------------------------------- برنامج Atom عربي English -------------------------------------------------------------------------------------------------------------- برنامج brackets عربي English -------------------------------------------------------------------------------------------------------------- إضغط على إسم البرنامج لتذهب للموقع الرسمي إضغط على علامة التعجب لتعرف المزيد عن البرنامج
  2. * New Bank System [ Show ]

    السلام عليكم ورحمة الله وبركاته سويت مود بنك و ابي اعرضه عليكم آرائكم المميزات - تقدر تسوي حساب خاص ( او اكثر ) في البنك ليس له علاقة بحسابك الخاص باللعبة - يوجد عائد بعد مرور ( فترة انت تحددها .. دائم ) لكل حساب حسب المال الموجود فيه - امكانية انشاء اكثر من حساب و تسجيل الدخول و تسجيل الخروج - ايداع و سحب المال و ارسال مال الى حساب معين من القائمة صور https://d.top4top.net/p_829cgv5b1.png https://e.top4top.net/p_829tzmsv2.png https://f.top4top.net/p_829datx33.png https://a.top4top.net/p_829a33dx4.png https://b.top4top.net/p_82916ylq5.png https://c.top4top.net/p_82919fzb6.png https://d.top4top.net/p_829bqwow7.png https://e.top4top.net/p_829s0uta8.png https://f.top4top.net/p_829dh6p19.png https://a.top4top.net/p_829186tx10.png
  3. السلام عليكم ورحمة الله وبركاته ما ابي اطول مقدمات و ما الى غيره هذا الشرح بسيط جداً لكن يحتاج تركيز - ملاحظة بسيطة الشرح حسب خبرتي في البرمجة وليس حسب اعتمادي على المواقع الخارجية .. في حالة وجود اي خطأ اتمنى تصحيحه في التعليقات - و الشرح خاص بـ الجداول طبعاً فيه اساسيات لازم تعرفها عن الجداول ومنها ان الجداول تتكون من تقاطع صفوف مع اعمدة وفي هذه الحالة يتم الاستعلام عن عناصر الجداول برقمين او اي دي مخصص بدلاً من الارقام او تتكون من أعمدة فقط وفي هذه الحالة يمكن الاستعلام عن عناصر الجداول برقم واحد او بأي دي مخصص وهذا المثال البسيط يوضح الفرق بين النوعين -- هذا الجدول يتكون من صفوف و اعندة -- يتكون من 2 من الاعمدة -- يتكون من 5 من الصفوف -- 1 شكل local T1 = { { 9, "TEST 7" }, { 5, "TEST 2" }, { "TEST 6", 7 }, { "TEST 4", 3 }, { 6, "TEST 1" }, } -- يمكن ايضاً ان يكون على هذا الشكل -- 2 شكل local T1 = { { 9, "TEST 7" }, { 5, "TEST 2" }, { "TEST 6", 7 }, { "TEST 4", 3 }, { 6, "TEST 1" }, } -- في كلا الحالتين الجدول يتكون من عمودين و 5 صفوف فقط -- هذا الجدول يتكون من اعندة فقط -- يتكون من عدد 10 من الاعمدة -- يتكون من عدد 1 فقط من الصفوف لذلك يمكن اهمال الصفوف -- 1 شكل local T2 = { 9, "TEST 7", 5, "TEST 2", "TEST 6", 7, "TEST 4", 3, 6, "TEST 1", } -- يمكن ايضاً ان يكون على هذا الشكل -- 2 شكل local T2 = { 9, "TEST 7", 5, "TEST 2", "TEST 6", 7, "TEST 4", 3, 6, "TEST 1", } -- في كلا الحالتين يتكون من 10 اعمدة و صف واحد فقط يمكن اهماله في كلا الحالتين - اذا كان الجدول بأعمدة و صفوف او بأعمدة فقط - يفضل إستخدام الشكل رقم واحد ليظهر بشكل افضل الآن كيف نحدد موقع عنصر داخل الجدول ؟ هذا الشي يعتمد على رقم العمود و رقم الصف في المثالين السابق ذكرهما الجدول المعروف بـ T1 مكون من صفوف و اعمدة الجدول المعروف بـ T2 يتكون من اعمدة فقط ويمكن الاستغناء عن كتابة رقم الصف لأن جميع الأعمدة تتقاطع من الصف الاول فقط سواء كان في الشكل الاول او الثاني مثال توضيحي -- الجدول الذي يتكون من صفوف و اعمدة local T1 = { { 45, "TEST 2", "55", "killerProject" }, { 45, "TEST 2", "55", "Master_MTA" }, { 35, "TEST 8", "20", "T T T T" }, { 71, "TEST 7", "84", "Player" }, { 61, "TEST 1", "13", "r 18 19 20" }, { 15, "TEST 9", "94", "q 888" }, { 83, "TEST 3", "12", "t 6444" }, { 27, "TEST 5", "94", "s 1114" }, } local T1Text = T2 [3] [5] -- العمود رقم 3 -- الصف رقم 5 -- النتيجة هي رقم 13 المدون في الجدول outputChatBox ( T1Text ) -- "13" العنصر هو -- الجدول الذي يتكون من اعمدة فقط local T2 = { 9, "TEST 7", 5, "TEST 2", "TEST 6", 7, "TEST 4", 3, 6, "TEST 1", } -- نحدد موقع العنصر local T2Text = T2 [5] -- [[ رقم الـعمود ]] -- العمود رقم 5 -- لا يوجد صف لأنه يتكون من اعندة فقط !!! -- النتيجة كلمة TEST 6 المدونة في الجدول outputChatBox ( T2Text ) -- "TEST 6" العنصر هو يمكن ايضاً وضع كلمة معينة بدلاً من رقم العمود او رقم الصف فعلا سبيل المثال في هذا الجدول يمكن ان نضع اسماً لكل صف -- الجدول الذي يتكون من صفوف و اعمدة local T1 = { ["I"] = { 45, "TEST 2", "55", "killerProject" }, ["II"] = { 45, "TEST 2", "55", "Master_MTA" }, ["III"] = { 35, "TEST 8", "20", "T T T T" }, ["IV"] = { 71, "TEST 7", "84", "Player" }, ["V"] = { 61, "TEST 1", "13", "r 18 19 20" }, ["VI"] = { 15, "TEST 9", "94", "q 888" }, ["VII"] = { 83, "TEST 3", "12", "t 6444" }, ["killerProject"] = { 27, "TEST 5", "94", "s 1114" }, } local T1Text = T1["VII"][4] -- العمود رقم 4 -- في هذه الحالة يجب استخدام الاسم الذي قمت بكتابته بدلاً من رقم الصف -- النتيجة هي رقم 13 المدون في الجدول outputChatBox ( T1Text ) -- "t 6444" العنصر هو فعلا سبيل المثال في هذا الجدول يمكن ان نضع اسماً لكل صف -- الجدول الذي يتكون من صفوف و اعمدة local T1 = { ["i"] = { ["i11"]=45, ["i21"]="TEST 2" }, ["ii"] = { ["i12"]=45, ["i22"]="TEST 2" }, ["iii"] = { ["i13"]=35, ["i23"]="TEST 8" }, ["iv"] = { ["i14"]=71, ["i24"]="TEST 7" }, ["v"] = { ["i15"]=61, ["i25"]="TEST 1" }, ["vi"] = { ["i16"]=15, ["i26"]="TEST 9" }, ["vii"] = { ["i17"]=83, ["i27"]="TEST 3" }, ["killerProject"] = { ["i18"]=27, ["i28"]="TEST 5" }, } local T1Text = T1["i"]["i21"] -- في هذه الحالة يجب استخدام اسم العمود -- في هذه الحالة يجب استخدام الاسم الذي قمت بكتابته بدلاً من رقم الصف -- النتيجة هي رقم 13 المدون في الجدول outputChatBox ( T1Text ) -- "TEST 2" العنصر هو -- i لأنه في صفف -- i21 لأنه في عمود رأي شخصي .. اذا كنت اريد تغيير اسم شئ فأنا افضل الصفوف فقط بإختصار يتكون الجدول من اعمدة وصفوف في حالة استخدامك لـ { } وتحديد موقع العنصر يتكون من اسم الجدول + رقم العمود او اسمه + رقم الصف او اسمه فإذا افترضنا وجود جدول بإسم TEST فإين TEST[5][7] تعني العنصر الموجود في العمود الخامس و الصف السابع هذا شرح الجداول بشكل عام ( داخل لوا ) في تجاربي فقط اما اذا لم تستخدم {} فإن الجدول سيتكون من أعمدة فقط وفي هذه الحالة لا يجوز استخدام تحديد العنصر الا برقم العمود او اسمه فقط يارب يكون الشرح افادكم بأي معلومة ولو بسيطة مع اني ادري ان شرحي ماهو جيد للدرجة و احسه معقد بس ان شاء الله تفهموه ملاحظة .. هذا الجزء الاول من الشرح ( الجزء الثاني سيكون مخصص للجداول و وضع القيم و احضارها عن طريق لووب - خاص باللعبة - و ما الى غيره بإذه الله ) وشكراً على حسن المتابة
  4. السلام عليكم ورحمة الله وبركاته حبيت اطرح شي ممكن يفيد البعض منكم أولاً setElementData - getElementData مدعوم فيها الداتا بشكل جداول يعني على سبيل المثال -- Client .. Ex setElementData ( localPlayer, "killerProject", { 50, "Good", "TEST", "90" } ) local data1 = ( getElementData ( localPlayer, "killerProject" ) ) [1] local data2 = ( getElementData ( localPlayer, "killerProject" ) ) [2] local data3 = ( getElementData ( localPlayer, "killerProject" ) ) [3] local data4 = ( getElementData ( localPlayer, "killerProject" ) ) [4] -- data1 -- اللي هي رقم 50 -- data2 -- Good كلمة -- data3 -- TEST كلمة -- data4 -- "90" رقم -- Server .. Ex function Set () local X, Y, Z = getElementPosition ( source ) setElementData ( source, "XYZPosition", { X, Y, Z } ) end addEventHandler ( "onPlayerQuit", root, Set ) function Get () local X = ( getElementData ( source, "XYZPosition" ) ) [1] local Y = ( getElementData ( source, "XYZPosition" ) ) [2] local Z = ( getElementData ( source, "XYZPosition" ) ) [3] setElementPosition ( source, X, Y, Z ) end addEventHandler ( "onPlayerJoin", root, Get ) ثانياً اختصار الـ متغيرات في احضار اكثر من متغير من امر واحد على سبيل المثال -- Client .. Ex local P = { getElementPosition ( localPlayer ) } -- X = P [1] -- Y = P [2] -- Z = P [3] -- Client .. Ex local P = { getCameraMatrix () } -- camera X = P[1] -- camera Y = P[2] -- camera Z = P[3] -- camera X2 = P[4] -- camera Y2 = P[5] -- camera Z2 = P[6] -- camera R = P[7]
  5. السلام عليكم ورحمة الله وبركاته بما ان موضوع setElementData getElementData يضعف البروسيسور حق الخادم وايضاً ماهو محفوظ بشكل يدوم فترة طويلة سويت هذه الوظيفة البسيطة نفس طريقة تشغيل الـ set/getElementData لكن محفوظة واهم شي بيانات اللاعبين نفسهم وكمان ما تضعف البروسيسور حق الخادم المهم لازم تحمل المود و تابع باقي الشرح ملاحظة طريقة الحفظ بملفات db او اللي هي Database يعني تقدر تاخذ الملف اللي عليه الداتا في انك اغلقت ملاحظة الموضوع لملف سيرفر فقط وكمان ملاحظة الموضوع تجريبي لكن شغال تمام ان شاء الله طبعاً اللي تواجهه مشاكل يقول للمساعدة في تطويره اول شي التحميل To4pTop مركز الخليج .. تخطى الاعلانات للتحميل .. ثاني شي الشرح تركيبة الكود -- [[ server side ]] exports["SQL"]:setElementSqlData ( element theElement, string key, value ) -- وضع بيانات أو تحديث بيانات قديمة بنفس الطريقة value = exports["SQL"]:getElementSqlData ( element theElement, string key ) -- لمعرفة البيانات القديمة لعنصر معين --[[ حيث theElement --> هو العنصر الذي ستضيف له البيانات ويجب ان يكون عنصر key --> string هو اسم او مفتاح البيانات ويجب ان يكون من نوع value --> وهي القيمة التي تريد وضعها في بيانات العنصر بما ان هذا الإصدار التجريبي يمكنك وضع القيمة اما رقم او قيمة داخل علامتي تنصيص "" --]] مثال function q () exports["SQL"]:setElementSqlData ( source, "money", getPlayerMoney ( source ) ) local x, y, z = getElementPosition ( source ) exports["SQL"]:setElementSqlData ( source, "x", x ) exports["SQL"]:setElementSqlData ( source, "y", y ) exports["SQL"]:setElementSqlData ( source, "z", z ) end addEventHandler ( "onPlayerQuit", root, q ) function l () givePlayerMoney ( source, exports["SQL"]:getElementSqlData ( source, "money" ) ) local x = exports["SQL"]:getElementSqlData ( source, "x" ) local y = exports["SQL"]:getElementSqlData ( source, "y" ) local z = exports["SQL"]:getElementSqlData ( source, "z" ) setElementPosition ( source, x, y, z ) end addEventHandler ( "onPlayerLogin", root, l )
  6. السلام عليكم ورحمة الله وبركاته سويت اضافة بسيطة جداً تقدر بها تعطي اللي بينشر في سيرفرك حظر حتى لو خرج من السيرفر الاضافة بكل بساطة كل ما شخص ارسل رسالة في الشات تظهر في لوحة مكتوب فيها السريال الخاص به اللوحة تفتح من حرف بي B اضغط على السريال مرتين و اللي نشر رح ياخذ بان ملاحظة لازم تضيف المود لجروب ادمن .. سوي تخطي للإعلان لتحميل الإضافة .. http://glinks.me/99Hc .. لو اقدر اضيف صورة بضيف لكن الانترنت ضعيف جداً ..
  7. اصدار تجريبي مركز 1 .. تحميل مركز 2 .. تحميل مركز 3 .. تحميل صورة M الخريطة تظهر من حرف
  8. ثلاث طرق لإنشاء وظيفة / أمر ------------------------------------------------------------------------------------- ----------------------------------- killerProject ----------------------------------- ------------------------------------------------------------------------------------- ---------------- [[ 1 ]] ---------------- ---------------- [[ 1 ]] ---------------- ---------------- [[ 1 ]] ---------------- function functionName ( Argument ) -- -- YourCode -- end functionName ( Argument ) setTimer ( functionName, 50, 0, Argument ) addEventHandler ( "EventName", root, functionName ) ---------------- [[ 2 ]] ---------------- ---------------- [[ 2 ]] ---------------- ---------------- [[ 2 ]] ---------------- functionName = function ( Argument ) -- -- YourCode -- end functionName ( Argument ) setTimer ( functionName, 50, 0, Argument ) addEventHandler ( "EventName", root, functionName ) ---------------- [[ 3 ]] ---------------- ---------------- [[ 3 ]] ---------------- ---------------- [[ 3 ]] ---------------- addEventHandler ( "EventName", root, function ( Argument ) -- -- YourCode -- end ) setTimer ( function ( Argument ) -- -- YourCode -- end , 50, 0) ---------------- [[ Ex ]] ---------------- ---------------- [[ Ex ]] ---------------- ---------------- [[ Ex ]] ---------------- function functionName ( Argument ) -- outputChatBox ( Argument ) -- Hello رسالة مكتوب فيها -- end functionName ( "Hello" ) -- إشارة لأمر / وظيفة --- [[ Or ]] --- functionName = function ( Argument ) -- outputChatBox ( Argument ) -- Hello رسالة مكتوب فيها -- end functionName ( "Hello" ) -- إشارة لأمر / وظيفة ----------------------------------------- ----------------------------------------- ----------------------------------------- function functionName ( Argument ) -- outputChatBox ( Argument ) -- Hello رسالة تظهر كل 5 ثواني في الشات العام مكتوب فيها -- end --- [[ Or ]] --- function functionName ( Argument ) -- outputChatBox ( Argument ) -- Hello رسالة تظهر كل 5 ثواني في الشات العام مكتوب فيها -- end setTimer ( functionName, 5000, 0, "Hello" ) -- مؤقت ----------------------------------------- ----------------------------------------- ----------------------------------------- function functionName ( Argument ) -- outputChatBox ( Argument ) -- Hello رسالة تظهر كل 5 ثواني في الشات العام مكتوب فيها -- end --- [[ Or ]] --- function functionName ( Argument ) -- outputChatBox ( Argument ) -- Hello رسالة تظهر كل 5 ثواني في الشات العام مكتوب فيها -- end setTimer ( functionName, 5000, 0, "Hello" ) -- مؤقت ----------------------------------------- ----------------------------------------- ----------------------------------------- addEventHandler ( "onPlayerChat", root, function ( Text ) takePlayerMoney ( source, 1 ) -- اخذ 1 دولار عند ارسال رسالة outputChatBox ( getPlayerName ( source ) .. " : " .. Text ) -- اخراج الرسالة مع الاسم end ) --- [[ Or ]] --- onChat = function ( Text ) takePlayerMoney ( source, 1 ) -- اخذ 1 دولار عند ارسال رسالة outputChatBox ( getPlayerName ( source ) .. " : " .. Text ) -- اخراج الرسالة مع الاسم end addEventHandler ( "onPlayerChat", root, onChat ) -- حدث --- [[ Or ]] --- function onChat ( Text ) takePlayerMoney ( source, 1 ) -- اخذ 1 دولار عند ارسال رسالة outputChatBox ( getPlayerName ( source ) .. " : " .. Text ) -- اخراج الرسالة مع الاسم end addEventHandler ( "onPlayerChat", root, onChat ) -- حدث ----------------------------------------- ----------------------------------------- -----------------------------------------
  9. تخيل ان الانترو و المونتاج و كل شي داخل اللعبة وما استعملت اي برامج تعديل الرابط الرابط ... طفش
  10. قريبا ان شاء الله
  11. السلام عليكم ورحمة الله وبركاته بدون تضييع وقت او كلام ماله فائده http://www2.0zz0.com/2017/10/31/15/345950267.jpg اللي يعرف بق في الكود يفيدنا ذذ آسف لانه صوره انا استعمل جوال الكتابه عليه صعبه ذذ
  12. http://www9.0zz0.com/2017/08/30/18/783323957.png
  13. randomColor

    السلام عليكم وحمه الله وبركاته سئ انا في المقدمات فبدون مقدمات الكود عباره عن 5 ارقام عشوائيه خلنا اول في السورس كود function randomColor ( speed ) function iColor ( ) iC1, iC2, iC3, iC4, iC5, iC = iC1 or 255, iC2 or 255, iC3 or 255, iC4 or 255, iC5 or 255, math.random ( 1, 10 ) end iC1, iC2, iC3, iC4, iC5, iC = iC1 or 255, iC2 or 255, iC3 or 255, iC4 or 255, iC5 or 255, iC or math.random ( 1, 10 ) if iC == 1 then iC1 = iC1 + speed if iC1 >= 255 then iColor ( ) iC1 = 255 end elseif iC == 2 then iC1 = iC1 - speed if iC1 <= 0 then iColor ( ) iC1 = 0 end elseif iC == 3 then iC2 = iC2 + speed if iC2 >= 255 then iColor ( ) iC2 = 255 end elseif iC == 4 then iC2 = iC2 - speed if iC2 <= 0 then iColor ( ) iC2 = 0 end elseif iC == 5 then iC3 = iC3 + speed if iC3 >= 255 then iColor ( ) iC3 = 255 end elseif iC == 6 then iC3 = iC3 - speed if iC3 <= 0 then iColor ( ) iC3 = 0 end elseif iC == 7 then iC4 = iC4 + speed if iC4 >= 255 then iColor ( ) iC4 = 255 end elseif iC == 8 then iC4 = iC4 - speed if iC4 <= 0 then iColor ( ) iC4 = 0 end elseif iC == 9 then iC5 = iC5 + speed if iC5 >= 255 then iColor ( ) iC5 = 255 end elseif iC == 10 then iC5 = iC5 - speed if iC5 <= 0 then iColor ( ) iC5 = 0 end end return iC1, iC2, iC3, iC4, iC5 end التركيبه rc1, rc2, rc3, rc4, rc5 = randomColor ( speed ) -- تحتاج رندر او مؤقت rc1, rc2, rc3, rc4, rc5 -- ارقام عشوائيه speed -- سرعه تحرك اللون من لون لأخر --[[ مثلاً سرعه 1 رح ينقص اللون 1 سرعه 2 رح ينقص اللون 2 مضروبه في الرندر او المؤقت --]] مثال function render () rc1, rc2, rc3, rc4, rc5 = randomColor ( 5 ) outputChatBox ( "killerProject", rc2, rc5, rc3 ) setWaterColor ( rc3, rc4, rc1 ) dxDrawText("killerProject", 70, 550, 220, 575, tocolor(rc1,rc3,rc5, 255), 3.00, "default", "center", "center", false, false, false, false, false) dxDrawText("killerProject", 70, 450, 220, 575, tocolor(rc2,rc3,rc4, 255), 3.00, "default", "center", "center", false, false, false, false, false) dxDrawText("killerProject", 70, 350, 220, 575, tocolor(rc1,rc5,rc2, 255), 3.00, "default", "center", "center", false, false, false, false, false) dxDrawText("killerProject", 70, 250, 220, 575, tocolor(rc5,rc3,rc4, 255), 3.00, "default", "center", "center", false, false, false, false, false) dxDrawRectangle( 755, 500, 225, 225, tocolor(rc2,rc4,rc3, 200), false) if getPedOccupiedVehicle( localPlayer ) then setVehicleColor( getPedOccupiedVehicle( localPlayer ),rc1,rc2,rc3,rc4,rc5,rc1,rc2,rc3,rc4,rc5,rc1,rc2 ) end end addEventHandler("onClientRender", root, render ) فيديو توضيحي سريع ذو جوده سيئه بسبب ضعف جهازي والسلام عليكم ورحمة الله وبركاته ... تجارب تجارب
  14. السلام عليكم ورحمة الله وبركاته حبيت اشرح شي مهم واعتقد فيه ناس كثيره ما تلاحظه وهو ترتيب موقع الكود طيب بدون مقدمات طويله على سبيل المثال -- client outputChatBox ( "message 1", 0, 255, 0 ) outputChatBox ( "message 2", 255, 0, 0 ) الرسالة الاولى رح تظهر اولاً ثم بعدها الرساله الثانيه طيب تعتقد هذا شي طبيعي ؟؟ عادي طيب طيب وش بالنسبه لهذا الكود -- client guiSetVisible ( window, false ) window = guiCreateWindow ( .... ) بعد الناس رح تقول ان الكود ما فيه اخطاء لكن في الواقع الكود فيه خطأين الاول وهو guiSetVisible الموجوده في window ماهي معرفه والثاني اللوحة ما رح تختفي ورح تكون ظاهره مع انك ضفت كود اخفائها طيب و التصحيح ؟ -- client window = guiCreateWindow ( .... ) guiSetVisible ( window, false ) طيب مثال ثاني -- client givePlayerMoney ( money ) money = 5000 نفس الوضع غير معرفه في البدايه money كلمه ومارح يكسب شي اللاعب طيب التصحيح -- client money = 5000 givePlayerMoney ( money ) طيب مثال اصعب -- client bindKey ( "g", "down", Bind ) function Bind () outputChatBox ( "error", 255, 0, 0 ) end الخطأ هنا كلآتي bindKey ماهو معرف في Bind اسم الفنكشن طيب التصحيح ؟ -- client function Bind () outputChatBox ( "good work", 0, 255, 0 ) end bindKey ( "g", "down", Bind ) المقصد من الموضوع هو ترتيب موقع الاكواد بحيث ان كل الاكواد تشتغل بشكل طبيعي بدون مشاكل واعتقد ان فيه بعض المبرمجين ياخذون وقت طويل في انشاء سكربت بسبب عدم ترتيب مواقع الاكواد لأن تواجهم مشاكل كثيره فـ بس هذا اللي عندي اتمنى يفيدكم والسلام عليكم ورحمة الله وبركاته
  15. xmlSetText / xmlGetText

    السلام عليكم ورحمة الله وبركاته الكود ذا ما ابي اعتبره يوزفل فنكشن كامل لأن فيه مشكله وهي لازم تسوي لكل قيمه ملف خاص بها طيب وش فائدتها ؟ حفظ شي معين عند اللاعب مثلاً عن طريق xml كلمه سر اللاعب او اسم حسابه الخ السورس كود ما ضفته في اليوزفل فنكشن لأن ما اعتقد له فائده وهو مب كامل function xmlSetText ( xmlFileName, columnName, childText ) if tostring ( xmlFileName ) and xmlFileName ~= "" and tostring ( columnName ) and columnName ~= "" and tostring ( childText ) and childText ~= "" then local XML = xmlCreateFile ( tostring( xmlFileName ) .. ".xml" , "xmlColumns" ) xmlNodeSetValue ( xmlCreateChild ( XML , tostring ( columnName ) ), tostring ( childText ) ) xmlSaveFile ( XML ) else outputChatBox ( "xmlSetText ( string xmlFileName, string columnName, string text )" ) end end function xmlGetText ( xmlFileName, columnName ) if tostring ( xmlFileName ) and xmlFileName ~= "" and tostring ( columnName ) and columnName ~= "" and xmlLoadFile ( tostring ( xmlFileName ) ..".xml" ) and xmlFindChild( xmlLoadFile ( tostring ( xmlFileName ) ..".xml" ), tostring ( columnName ), 0 ) then return tostring ( xmlNodeGetValue ( xmlFindChild ( xmlLoadFile ( tostring ( xmlFileName ) ..".xml" ), tostring ( columnName ), 0 ) ) ) or "nil" else outputChatBox ( "xmlGetText ( string xmlFileName, string columnName )" ) return "error" end end التركيبه xmlSetText ( string xmlFileName, string columnName, string yourText ) xmlGetText ( string xmlFileName, string columnName ) --[[ xmlFileName -- اسم الملف columnName -- اسم الكولمن yourText -- القيمه اللي تبيها --]] مثال -- Client button = guiCreateButton ( ...., "save my name" ) button2 = guiCreateButton ( ...., "set my name" ) function c () if source == button then xmlSetText ( "xmlFileName", "columnName", getPlayerName ( localPlayer ) ) elseif source == button2 then name = xmlGetText ( "xmlFileName", "columnName" ) triggerServerEvent ( "setname", localPlayer, name ) end end addEventHandler ( "onClientGUIClick", root, c ) -- Server function t ( name ) setPlayerName ( client, tostring ( name ) ) end addEvent ( "setname", true ) addEventHandler ( "setname", root, t ) نفس الكلمه حقت المره اللي فاتت ... كل هاذي تجارب بس والهدف التعلم بس على العموم ان شاء الله بشرح شرح مهم بعد فتره اغلب المبرمجين ما يلاحظونه
  16. السلام عليكم ورحمة الله وبركاته حاولت اسوي شي واللي هو يوزفل فنكشن مع اني ما اعرف اذا كان هذا يعتبر يوزفل فنكشن او لا او حتى اذا كان يعتبر يوزفل فنكشن ما اعرف اذا احد سواه او لا لأني ما ادور ذذ المهم الكود عبارة عن انك تجيب عدد العناصر الموجوده في عالم وهمي معين طيب بوش بيفيد انت مثلاً مسوي مسابقة وتبي تعرف كم عدد السيارات او كم عدد اللاعبين في عالم وهمي الخ او حتى ما ادري اذا لها فائدة ام لا ذذ ف. بس هذا اللي عندي و هي عباره عن محاولة بس في البدايه السورس كود -- Code function getElementsCountWithinDimension ( elementType, id ) if tostring ( elementType ) and elementType ~= nil and tonumber ( id ) and id ~= nil then local elements, Count = getElementsByType ( elementType ), 0 for _, theElement in ipairs ( elements ) do if getElementDimension ( theElement ) == id then Count = Count + 1 end end return Count elseif id == nil and elementType ~= nil then return "DimensionId Error" elseif elementType == nil and id ~= nil then return "elementType Error" elseif id == nil and elementType == nil then return "elementType, DimensionId Error" end end طيب تركيبة الكود getElementsCountWithinDimension ( string theType , int id ) theType: نوع الالمنت اللي تبيه id: رقم العالم الوهمي مثال outputChatBox ( getElementsCountWithinDimension ( "player" , 11111 ) ) --[[ رح يطلع رسالة في الشات بعدد اللاعبين الموجودين في البعد 11111 player كمان تقدر تبدل مثلاًً ped vehicle blip الخ --]] فـ بس هذا اللي كان عندي اتمنى استفدتم وياريت اذا كان احد مسوي الكود تقولو لي مع اني اعتقد ان فيه اشخاص سوته بما ان اليوزفل فنكشك مره كثيره المهم ابي رأيكم و انطباعاتكم حول الكود وشكراً والسلام عليكم ورحمة الله وبركانه ملاحظة .. ما ادري حتى اذا كان القسم غلط او لا عموماً المشرف يشوف وينقله ذذ
  17. برمجت مود رسائل الارقام مع الصور وكنت بركبه في سيرفري .. بس المشكلة ان موضوع سيرفري طول وطفشت منه المهم .. اليوم بطرح عليكم المود للبيع ( لأي شخص معه عملة مصرية " فقط رصيد فودافون او اتصالات " ) طبعاً سعر المود رح يختلف ( مشفر / غير مفشر ) المهم .. الجملة التركيبية للمود كلآتي -- Server Side -- لملف سيرفر فقط exports.ImportantNumbers:useServer ( number, icon name, player, r, g, b ) -- او exports.ImportantNumbers:useServer ( number, icon name, player ) -- اللون رح يكون تلقائي -- Client Side -- لملف كلينت فقط exports.ImportantNumbers:useClient ( number, icon name, r, g, b ) -- او exports.ImportantNumbers:useClient ( number, icon name ) -- اللون رح يكون تلقائي -- ex ~ امثلة -- Server Side -- لملف سيرفر فقط exports.ImportantNumbers:useServer ( 1000, "money", root ) exports.ImportantNumbers:useServer ( 50, "gold", root, 0, 255, 0 ) -- Client Side -- لملف كلينت فقط exports.ImportantNumbers:useClient ( -500, "iron" ) exports.ImportantNumbers:useClient ( -500, "iron", 255, 0, 0 ) صورة للمود ملاحظات .. لو ماكتبت ارقام اللون عادي رح تظهر تلقائي لو كان الرقم مكسب رح تكون باللون الاخضر لو كان الرقم خسارة رح تكون باللون الاحمر لو كان الرقم 0 رح تكون باللون الابيض الحين السعر .. نظراً لأني بعت مودات قليلة ومالي كثير في الاسعار .. ابيكم تحطون سعر لهذا المود حط السعر بالعملة حقتك و بنشوفها كم بالمصري
  18. تم انشاء الشرح نظراً لوجود بعض الاشخاص الذين يطلبون المساعدة وعند التجربة يكون الناتج خاطئ نظراً لوجود اخطاء في ملف الميتا ما هو ملف الميتا وما هي اهميته في السكربت ؟ ملف الميتا هو اهم جزء من السكربت حيث انه هو المسؤول عن تشغيل باقي الملفات الاخرى بمعنى انه اذا كان هناك سكربت بدون ملف ميتا فإنه بغير فائدة . بعض الملاحظات xml : صيغة ملف الميتا تكون هكذا meta : اسم ملف الميتا يكون هكذا meta.xml : الصيغة الكاملة للملف تكون هكذا . الآن سأشرح ابسط شئ في ملف الميتا وهو تعفيل الملفات الاخرى فيه . ولكن اولاً ما هو التكون الرئيسي لملف الميتا ؟ انظر المثال الثاني وستعرف <meta> <!-- الكلام في هذا السطر لا يشكل اي شئ في ملف الميتا --> </meta> . والآن كيفية تفعيل ملفات السكربت .. انظر المثال التالي لتعرف كيف تقوم بتفعيل الملفات داخل ملف الميتا . في البداية يوجد بعض الاساسيات مثل <script /> يتم وضع اكواد تعفعيل الملفات الاخرى فيه وما يتعلق بها .. للملفات التيم يمكنك الكتابة فيها فقط src اسم الملف الذي تريد تفعيله مع الصيغة الخاصة بهذا الملف type نوع الملف اللذي تريد تفعيله ومن امثلته "client" او "server" او "shared". cache وهذه تستعمل لإخفاء الملفات التي تم تحميلها <meta> <script src="الملف و الصيغة" type="نوع الملف" /> </meta> <!-- ex 1 --> <meta> <script src="file.lua" type="shared" /> </meta> <!-- ex 2 --> <meta> <script src="file.lua" type="shared" /> <script src="server.lua" type="server" /> <script src="client.lua" type="client" cache="false" /> </meta> . ملاحظة مهمة جداً يجب ان يكون الملف موجود داخل السكرب لكي تستطيع تشغيل السكربت . والآن كيف تضع ملف " صور / صوت / خط / الخ " داخل ملف الميتا ؟ . في البداية يوجد بعض الاساسيات مثل <file /> يتم وضع اكواد تعفعيل الملفات الاخرى فيه وما يتعلق بها .. مثل الصور و الصوت / الخ src اسم الملف الذي تريد تفعيله مع الصيغة الخاصة بهذا الملف . مثال لتفعيل ملف في ملف الميتا <meta> <file src="الملف و الصيغة"/> </meta> <!-- ex 3 --> <meta> <file src="image.png" /> </meta> <!-- ex 4 --> <meta> <file src="image.png" /> <file src="sound.mp3" /> </meta> . تعلمت كيف تقوم بتفعيل الملفات الآن كيف تقوم بوضع الحقوق الخاصة بك ؟ . في البداية يوجد بعض الاساسيات مثل <info /> يتم بداخلها وضع اكواد الـ حقوق مثل author وهو الشخص الذي انشأ السكربت version وهو اصدار السكربت name اسم الـ سكربت description وصف مختصر لـ السكربت type وهو نوع الـسكربت ومن امثلته "gamemode" او "script" او "map" او "misc". . مثال لوضع الحقوق على السكربت <meta> <info author = "من صنع السكربت" name = "اسم السكربت" version = "اصدار السكربت" description = "وصف مختصر" type = "نوع السكربت"/> </meta> <!-- ex 5 --> <meta> <info author = "killerProject" name = "test" version = "1.0.0" description = "test test test" type = "script" /> </meta> <!-- ex 6 --> <meta> <info author = "you" name = "killer job" version = "1.5.0" description = "kill people" type = "script" /> </meta من الشروحات الاخرى لمن يريد التوسع في معرفة ملف الميتا . وضع ملفات الماب داخل ملف الميتا .. مثل وضع الملفات التي يمكن الكتابة فيها الا انه ينقص بعد الاكواد مثل نوع الملف ويوجد شئ جديد وهو موقع التصميم في العالم الوهمي . في البداية يوجد بعض الاساسيات مثل <map /> يتم وضع اكواد تفعيل ملف التصميم داخلها src اسم ونوع ملف التصميم dimension مكان التصميم بالنسبة للعالم الوهمي . مثال لكيفية وضع اكواد تفعيل ملفات التصميم <meta> <map src="اسم وصيغة ملف التصميم" dimension="رقم العالم الوهمي"></map> </meta> <!-- ex 7 --> <meta> <map src = "killerProject.map" dimension = "4112"></map> </meta> <!-- ex 8 --> <meta> <map src = "MyMap.map" dimension = "0"></map> </meta> . الآن وقت الشرح من نوع آخر وهو الاعدادات الخاصة بالسيرفر مثل الوقت / عدد ذخيرة الاسلحة الخ <settings> <setting name="" value=""/> </settings> يوجد صفحة خاصة بالإعدادات التي يمكنك التعديل عليها https://wiki.multitheftauto.com/wiki/Settings_system من الاساسيات الاخرى friendlyname اسم الشئ الذي تريد تغيير اعداداته accept القيمة التي تريد تغيير اعدادات الملف اليها examples بعض الامثال على القيمة التي وضعتها desc وصف الاعدادات التي وضعتها . مثال من الويكي على تغيير الاعدادات من ملف الميتا <meta> <settings> <setting name="roundlimit" value="[6]" /> <setting name="teamdamage" value="[1]" /> <setting name="teambalance" value="[1]" /> <setting name="spazammo" value="[25]" /> <setting name="m4ammo" value="[100]" /> <setting name="shotgunammo" value="[25]" /> <setting name="sniperammo" value="[20]" /> <setting name="ak47ammo" value="[120]" /> <setting name="rifleammo" value="[40]" /> <setting name="deserteagleammo" value="[45]" /> <setting name="pistolammo" value="[132]" /> <setting name="uziammo" value="[150]" /> <setting name="tec9ammo" value="[150]" /> <setting name="silencedammo" value="[65]" /> <setting name="grenadeammo" value="[4]" /> <setting name="satchelammo" value="[4]" /> <setting name="teargasammo" value="[4]" /> <setting name="molatovammo" value="[4]" /> <setting name="isAllowedToShoot" value="true" /> </settings> </meta> يوجد شروحات اخرى عن ملف الميتا سيتم شرحها في اقرب وقت بإذن الله مثل <include /> Include resources that this resource will use resource: Resource name that you want to start with this resource minversion: Minimum version that resource needs to be (optional) maxversion: Maximum version that resource needs to be (optional) <config /> Config file (.xml) can be accessed by resource, possible parameters are: src: The file name of the config file type: The type of the config file: "client" or "server" <export /> This exports functions from this resource, so other resources can use them with call function: The function name type Whether function is exported server-side or client-side (valid values are: "client", "server" and "shared") http: Can the function be called via HTTP (true/false) <html /> src: The filename for the HTTP file (can be a path) default: The html file is one that is shown by default when visiting /resourceName/ on the server. Only one html can be default, the rest are ignored. (true/false) raw: The html file is not parsed by the Lua interpreter and is treated as binary data. Must be used for binary files (images mainly) (true/false) <settings> <setting name="" value=""/> </settings>: Most gamemodes use settings system to let server admins to configure it how they like. For instance you could set round time and then use get and set to get the value or change it, respectively. <min_mta_version /> Minimum version requirements for this resource to run correctly. When authoring resources, the minimum version should usually be set to the current released version of MTA:SA (which at the moment is "1.5.4"). See example for example. client: The minimum client version server: The minimum server version <aclrequest /> A list of ACL rights this resource will need. <sync_map_element_data /> Controls whether map element data such as "PosX" and "DoubleSided" are transferred to the client. This data is usually not required by most gamemodes or resources. (Map Editor and Interiors require this to be not set to false to work). When set in a gamemode meta.xml, the setting will apply to all maps loaded by that resource. false: Disable transfer of map element data for all resources. This can reduce map download times considerably. true: Enable transfer of map element data for all resources. (If false and true are set in different resources, true will have priority and all resources will transfer map element data) <oop/> OOP - Please refer to OOP for documentation. false: Disable OOP. true: Enable OOP. <download_priority_group/> If not set, the download priority group for a resource defaults to 0. If this is set higher than 0, then the resource will be downloaded and started on the client earlier than other resources. If set to less than 0, the resource will be downloaded and started on the client later than other resources. هدف هذا الشرح هو تعليم الاشخاص المبتدئين اما بالنسبة للشرح في آخر هذا الموضوع فهو لـمن يريد ان يعرف اكثر عن ملف الميتا والسلام خير ختام
  19. السلام عليكم ورحمة الله وبركاته بدون مقدمات او ما الى غيره اضفط هنا لتحميل السكربت وش فيه يعني ؟ انا حاولت اسوي نظام حماية و سويت ذا وشفرت السكربت و الخ ابي منكم تجربون المود واللي يقدر يحل نظام الحماية اتمنى يقولي طبعاً في بداية تشغيل المود اذا ما سويت الحماية رح تقفل جميع الازرار ورح تسوي اشياء اخرى في السيرفر في حالة طفيت المود تقدر تسوي ريكونكت وكل شي بيرجع متل ما كان @Abdul KariM @Master_MTA @#Soking @#_iMr.[E]coo @#BrosS @MR.NaiF-MTA @coNolel @iMr.WiFi..! @Abu-Solo @AchrefF @Sha67 @iRamX @SoniX^ @~#[N]exT @Mhmd.z @#bazooka إذن ؟ !!
  20. السلام عليكم ورحمة الله وبركاته كيف الطيبين .. ان شاء الله بألف خير كل عام وانتم بخير بمناسبة حلول الشهر الكريم شهر رمضان كنت غايب لفترة بسبب الدراسة والحمد لله خلصت ههههههههههه المهم .. في اثناء الدراسة برمجت مود بسيط لكنه مفيد صراحة لقيته مفيد بالنسبة لي فحبيت اطرحه عليكم وان شاء الله يعجبكم المود بكل بساطة متل ما في الصورة طيب وش المفيد ؟ سويت نظامين من الجداول واحد لقيمة عشوائية والآخر من اجل الماركرات و الاحداثيات الاخرى طيب ما اطول عليكم واتركم تكتشفو المود بنفسكم رابط التحميل إستغفر ربك ... طيب بعض الملاحظات - اللوحة تفتح من زر "ء" لكن تقدر تعدل عليها لأن المود ماهو مشفر - ما حبيت اسوي اهداءات لأن احس ان فيه ناس كثيرة تزعل من عدم ذكر اسمائها - الاهداءات لك ولكل من رأى الموضوع شكراً لكم علي المتابعة
  21. * [ wiki ] [ Mta sa LUA ]

    Hello guys ... I will explain something important about code First [ when you ask for help, how do other help you? ] Like [ Help: how i can create an ped ? ] [ For example ] someone will write that .. -- You can use this code createPed did you understand anything ? ..................................................................................................... ..................................................................................................... ..................................................................................................... givePlayerMoney -- blue getPlayerAccount -- yellow playSound -- red At the first of explaining these codes you should know that The script consists of three files meta.xml client.lua server.lua for more information about meta.xml click here Of course, it is known that the meta.xml file is the main file in the script there is no meta.xml file, there is no script !! what about [ client file ] and [ server file ] There are special codes for Client file and special code for server file and special codes for client file and server file [ For Example ] playSound -- red red code [ for client file ] getPlayerAccount -- yellow yellow code [ for server file ] givePlayerMoney -- blue blue code [ for server file or client file ] I have not yet taken advantage of the code and how can I bring an example? Simply if the code already exists you can just click on it The browser will take you directly to the wiki page You will find both .. Detailed explanation of the code One example or more how you can know if this code for client file or server file or it [ Shared ] ? you will find Client-only function or Server-only function or Shared function where are these words ? Look at this picture Now is the time to explain the important stuff If you click on this code [ For Example ] playSound -- client only That will open page like this Look at this picture [ For Example ] getPlayerAccount -- server only -- and getAccountName -- server only Of course, you will open a page with an explanation and examples and others ........................................................... how you can create an function ?? This depends on the code you want to create for it [ For Example .. the previous code ] getPlayerAccount will be function test () acc = getPlayerAccount ( thePlayer ) end -- test: the name of the function -- thePlayer: that you want to get his account what about the "event" and the function of "event" ? -- Ex "onClientPlayerWasted" "onPlayerWasted" "onPlayerJoin" Of course, that will open page on your browser with [ Example, explained, and other ] what is meant of source ? source: This is the element that the event originated from. [ For Example ] the source in this "event" is the player who wasted "onPlayerWasted" [ For Example ] the source in this "event" is the vehicle that was blown up "onVehicleExplode" okay ... explain the event as follows create the "event" and the function and the argumnts [ For Example ] function killerProject ( _, killer, killerweapon ) if killer then if getElementType ( killer ) == "player" then outputChatBox ( " [ the killer "..getPlayerName(killer).." killer weapon "..killerweapon.." ] ", source ) end end end addEventHandler ( "onPlayerWasted", root, killerProject ) --[[ killer: an element representing the player or vehicle who was the killer. If there was no killer this is false. killerweapon: an integer representing the killer weapon or the damage type. The source of this event is the player that died or got killed. --]] where did you get these codes from ? killerweapon and killer and source Look at this picture how you can know if this event for client file or server file ? when you click on the "event" you will find Clientside event or Serverside event the first word [ Clientside event ] Indicate client file the second word [ Serverside event ] Indicate server file where are these words ? Look at this picture ...................................................................................................................... my english is bad ...................................................................................................................... تم شرح هذا الموضوع باللغة العربية
  22. * Simple [ Logo ]

    @Abdul KariM @Master_MTA @#Soking @#_iMr.[E]coo @#BrosS @MR.NaiF-MTA @coNolel @iMr.WiFi..! @Abu-Solo @AchrefF @Mhmd.z @L3yr رأيكم نايف . بروس . ابو سولو ادري تصميم ماهو حلو مرة ... لكن جديد قريب ان شاء الله
  23. في بداية الموضوع اريد ان اسأل سؤال مهم عندما تطلب المساعدة في موضوع ما مثلاً ويجيبك احد المساعدين بوضع بعض الاكواد بألوان مختلفة هل تستفيد اي شي من هذه الاكواد ؟ هل تعرف ما هي وظيفة الاكواد ؟ هل تعتقد انه اذا وضعت الاكواد في السكربت سيشتغل بدون مشاكل ؟ هذه هي اسألة الاشخاص الذين لم يعرفو الويكي بعد طيب ... ما هي فائدة الالوان الخاصة بالأكواد ؟ مثال givePlayerMoney -- ازرق getPlayerAccount -- اصفر playSound -- احمر في بداية شرح هذه الاكواد يجب ان تعرف ان السكربت مكون من ثلاث ملفات meta.xml client.lua server.lua اذا كنت تريد شرح لملف الميتا اضفط هنا طبعاً من المعروف ان ملف الميتا هو الملف الرئيسي في السكربت بأكمله وفي حالة حذفه فإنه لا يوجد سكربت بالنسبة الى ملف كلينت وملف سيرفر يوجد اكواد خاصة بملف كلينت واكواد خاصة بملف سيرفر واكواد خاصة بأي من الملفين فعلا سبيل المثال playSound -- احمر .. الاكواد ذات اللون الاحمر .. هذه لملف كلينت فقط getPlayerAccount -- اصفر .. الاكواد ذات اللون الاصفر .. هذه لملف سيرفر فقط givePlayerMoney -- ازرق وهذه الاكواد التي لها اللون الازرق يمكن كتابتها في كلاً من الملفين .. كلينت وسيرفر لم استفد شئ حتى الآن ما هو الكود وكيف استطيع ان احضر مثال عليه ؟ بكل بساطة اذا كان الكود موجود بالفعل فقط يمكنك الضغط عليه وسيقوم المتصفح بنقلك مباشرة الى صفحة الويكي وستجد هناك كلاً من .. شرح مفصل للكود مثال او اكثر كيف تعرف اذا كان الكود كلينت ام سيرفر ام لأي من الملفين ستجد كلمات دلالية مثل Client-only function او Server-only function او Shared function اين موقع الكلمة ؟ انظر الصورة وستعرف اين موقع الكلمة الآن حان وقت الشرح المهم اذا ضغط على هذا الكود مثلاً playSound -- client only فـ رح تجيك بهذا الشكل طيب اذا ضغط على هذا الكود مثلاً getPlayerAccount -- server only -- and getAccountName -- server only طبعاً رح تفتح لك صفحة بها شرح وامثلة وما الى غيره طيب كيف تقوم بإنشاء امر function هذا يعتمد على الكود الذي تريد انشاء الامر له فمثلاً الكود السابق getPlayerAccount بيكون كالتالي function test () acc = getPlayerAccount ( thePlayer ) end -- حيث -- test اسم الامر -- thePlayer اللاعب المراد احضار الحساب الخاص به طيب بالنسبة للحدث والامر الخاص بالحدث ؟ -- Ex "onClientPlayerWasted" "onPlayerWasted" "onPlayerJoin" طبعاً نفس الشئ رح تعرف امثلة و شرح للحدث عن طريق الضغط عليه طيب وش هو الـ source ? هو source الـ الشئ او الشخص او المركبة الذي قام بالحدث او الذي وقع عليه الحدث فعلا سبيل المثال الحدث التالي يوضح ان السورس هو اللاعب الذي مات "onPlayerWasted" وعلا سبيل المثال هذا السورس هو السيارة التي تم تفجيرها "onVehicleExplode" طيب شرح الحدث كالتالي انشاء حدث و امر ووضع الارجمنتات الخاصة بالحدث بداخل الامر فعلا سبيل المثال function killerProject ( _, killer, killerweapon ) if killer then if getElementType ( killer ) == "player" then outputChatBox ( " [ the killer "..getPlayerName(killer).." killer weapon "..killerweapon.." ] ", source ) end end end addEventHandler ( "onPlayerWasted", root, killerProject ) --[[ -- حيث killer: القاتل killerweapon: سلاح القاتل source: الشخص الذي مات --]] حتى الآن لم افهم من اين جاء كل من killerweapon و killer و source هذه الصورة توضح من اين اتى القاتل وسلاحه و السورس طيب كيف تعرف اذا كان الحدث كلينت ام سيرفر ام لأي ملف فيهم ؟ في حالة دخولك للويكي ستجد الصفحة اما ذات لون احمر او اصفر وستجد كلمة Clientside event او Serverside event طبعاً الكلمة الاولى باللون الاحمر ومكتوب فيها كلينت والكلمة الثانية باللون الاصفر ومكتوب فيها سيرفر اين موقع الكلمات ؟ انظر في هذه الصورة وسوف تعرف ...................................................................................................................... ملاحظة هذا الشرح سليم ما دام الويكي مفتوح وبه شروحات برمجة اللعبة ...................................................................................................................... هذا شرح لمن لا يعرف ماهي الاكواد او كيف يستعملها او ما هي اهميتها عندما يكتبها له احد المبرمجين او المساعدين له ذا اللي عندي اتمنى افدتكم بأي شي والسلام عليكم ورحمة الله وبركاته