Jump to content

KrSoFA

Members
  • Posts

    14
  • Joined

  • Last visited

Everything posted by KrSoFA

  1. السلام عليكم ورحمة الله وبركآته العنوآن خطأ حاول تعدله ل تحويل الخريطه من ملف .map الى lua أفتح محرك البحث ، وإكتب converter mta sa وإدخل آحد الروآبط للتحويل
  2. يامرحبآ فييكـ وإإن شاء الله إستفدت edit : حيآآك اإلله منور إلموضوع، وبأذن الله انك فهمت الحركه edit #2: يآهلإلإ فييك منور إلموضوع والإقوآس إختياريه مآهو لإزم في الحاإله ذي، الإ اذا كنت بتحسب قيمتين مختلفه او مقآرنه لإلإزم تحط إلإقوآس، زي ماحطيتها انا في المتغير هذا
  3. بسم الله الرحمن الرحيم الحمدلله رب العاآلمين والصلإلإة والسلإلإم على رسوله اآلكريم وعلى آله وصحبه اجمعين درس بسيط سريع خفيف يساعدك على تحديد مكان الواجهه الرسوميه على شاشة مستخدم الواجهه طريقة حسب ابعاد الشاشه للواجهه لإبد من معرفة حجم الشاشه عند المستخدم لكي يتم حسب الازاحه ولمعرفة حجم الشاشه عند المستخدم تستخدم الوظيفه هذي guiGetScreenSize() اذا عرفت حجم الشاشه تقدر الان تحسب البعد الحقيقي لمقدار الازاحه من يسار الشاشه الى يمينها للعرض ومن فوق الى تحت للطول -------------------------------------------------- مثلا حجم الشاشه عندي 600*800 حجم الواجهه الرسوميه 250*300 والمكان المطلوب للواجهه طريقة حساب البعد للمكان x = 800 - 300 y = 600 - 250 النتيجه winkrsofa = guiCreateWindow(500,350,300,250,"الواجهه يمين تحت",false) هذا البعد فقط للي حجم شاشتهم 800*600 ولحساب البعد للجميع الشاشات نستخدم وظيفة guiGetScreenSize() local x,y = guiGetScreenSize() x = x - 300 y = y - 250 winkrsofa = guiCreateWindow(x,y,300,250,"الواجهه يمين تحت",false) --------------------------------------------- مثلا حجم الشاشه عندي 600*800 حجم الواجهه الرسوميه 250*300 والمكان المطلوب للواجهه طريقة حساب البعد للمكان x = 800 - 300 y = 0 النتيجه winkrsofa = guiCreateWindow(500,0,300,250,"الواجهه يمين فوق",false) للجميع الشاشات local x,y = guiGetScreenSize() x = x - 300 y = 0 winkrsofa = guiCreateWindow(x,y,300,250,"الواجهه يمين فوق",false) --------------------------------------------- حجم الشاشه عندي 600*800 حجم الواجهه الرسوميه 250*300 والمكان المطلوب للواجهه طريقة حساب البعد للمكان x = 0 y = 600 - 250 النتيجه winkrsofa = guiCreateWindow(0,350,300,250,"الواجهه يسار تحت",false) للجميع الشاشات local x,y = guiGetScreenSize() x = 0 y = y - 250 winkrsofa = guiCreateWindow(x,y,300,250,"الواجهه يسار تحت",false) --------------------------------------------- حجم الشاشه عندي 600*800 حجم الواجهه الرسوميه 250*300 والمكان المطلوب للواجهه طريقة حساب البعد للمكان x = (800 - 300) / 2 y = (600 - 250) / 2 النتيجه winkrsofa = guiCreateWindow(250,175,300,250,"الواجهه بالوسط",false) للجميع الشاشات local x,y = guiGetScreenSize() x = x - 300 y = y - 250 winkrsofa = guiCreateWindow(x/2,y/2,300,250,"الواجهه بالوسط",false)
  4. بسم الله الرحمن الرحيم أضافة xml كيف إنك تقدر تجيب آلسعر والرصآص إلخ بكود وآحد ..بدون ماتسوي نسخ لصقّ "22" price="100" ammo="99999"/> "4" price="1000" ammo="1"/> function() local xml = xmlLoadFile("اسم الملف.xml") local weap = xmlFindChild(xml, "weap", 0) for i,weapon in pairs(xmlNodeGetChildren(weap)) do local id = xmlNodeGetAttribute(weapon, "id") local price = xmlNodeGetAttribute(weapon, "price") local ammo = xmlNodeGetAttribute(weapon, "ammo") end end مشكور على المعلومة المفيدة لو تعطيني مثال لربطها مع ازرار او لسته الي تقدر عليه shopWindow = guiCreateWindow(367,105,334,435,"Shop",false) weapGrid = guiCreateGridList(4,6,305,291,false,shopWindow) weapButton = guiCreateButton(107,308,100,29,"Buy Weapon",false,shopWindow) guiGridListSetSelectionMode(weapGrid,0) weapColumn = guiGridListAddColumn(weapGrid,"Weapon",0.5) costColumn = guiGridListAddColumn(weapGrid,"$",0.3) ammoColumn = guiGridListAddColumn(weapGrid,"$",0.3) local xml = xmlLoadFile("اسم الملف.xml") local weap = xmlFindChild(xml, "weap", 0) for i,weapon in pairs(xmlNodeGetChildren(weap)) do local id = xmlNodeGetAttribute(weapon, "id") local price = xmlNodeGetAttribute(weapon, "price") local ammo = xmlNodeGetAttribute(weapon, "ammo") local itemName = getWeaponNameFromID (id) local row = guiGridListAddRow (weapGrid) guiGridListSetItemText (weapGrid, row, 1, itemName, false, true) guiGridListSetItemText (weapGrid, row, 2, tostring(price), false, true) guiGridListSetItemText (weapGrid, row,3, tostring(ammo), false, true) end function onClientWeapBuy (button, state, absoluteX, absoluteYe) if (source == weapButton) then guiSetVisible (shopWindow, false) showCursor (false) if (guiGridListGetSelectedItem (weapGrid)) then local itemName = guiGridListGetItemText (weapGrid, guiGridListGetSelectedItem (weapGrid), 1) local itemID = getWeaponIDFromName (itemName) local itemCost = guiGridListGetItemText (weapGrid, guiGridListGetSelectedItem (weapGrid), 2) local ammo = guiGridListGetItemText (weapGrid, guiGridListGetSelectedItem (weapGrid), 3) triggerServerEvent ("weapBuy", getLocalPlayer(), itemID, itemCost, itemName, ammo) end end end addEventHandler ("onClientGUIClick", weapButton, onClientWeapBuy) ملف السيرفر addEvent ("weapBuy", true) addEventHandler ("weapBuy", getRootElement(), function(id, cost, name, ammo) if (getPlayerMoney (source) >= tonumber(cost)) then outputChatBox ("You Bought a " .. name, source, 255, 0, 0, false) outputChatBox ("ID: " .. id, source, 255, 0, 0, false) outputChatBox ("Cost: " .. cost, source, 255, 0, 0, false) takePlayerMoney (source, tonumber (cost)) giveWeapon(source, tonumber(id),tonumber( ammo)) else outputChatBox ("أنت مطفرٍ!", source, 255, 0, 0, false) end end)
  5. بسم الله الرحمن الرحيم أضافة xml كيف إنك تقدر تجيب آلسعر والرصآص إلخ بكود وآحد ..بدون ماتسوي نسخ لصقّ "22" price="100" ammo="99999"/> "4" price="1000" ammo="1"/> function() local xml = xmlLoadFile("اسم الملف.xml") local weap = xmlFindChild(xml, "weap", 0) for i,weapon in pairs(xmlNodeGetChildren(weap)) do local id = xmlNodeGetAttribute(weapon, "id") local price = xmlNodeGetAttribute(weapon, "price") local ammo = xmlNodeGetAttribute(weapon, "ammo") end end
  6. إلسلام عليكم ورحمة الله وبركاته مبآدره جيده نحو التطور والارتقاء ل الافضل وتم اضافة مكتبات string ,math واسف لعدم اكتمالها ل انشغآلي ولكن احاول قدر المستطاع اضافة تعريب واشكر اخوي على تنسيق المكتبه "شكرا لك"ا ولتغير اتجاه النص بالويكي من اليسار ل اليمين استخدمو الوسم p <p align="left">Left </p> <p align="center">Center</p> <p align="right"> </p> https://wiki.multitheftauto.com/wiki/AR/String https://wiki.multitheftauto.com/wiki/Math_ar
  7. Hello, I've wrote a function for negative value , you find it useful: https://wiki.multitheftauto.com/wiki/math.neg Greetings
  8. police = createTeam ( "police",255,255,0) addEventHandler ( "onPlayerJoin", getRootElement(), function() outputChatBox ( "police team > /police" , source, 255, 255, 0 ) end ) function policeteam ( playerSource ) if ( playerSource ) then setPlayerTeam ( playerSource , police ) spawnPlayer ( playerSource , 1474 , -2247 , 13 ) end end addCommandHandler ( "police",policeteam)
  9. addEventHandler ( "onPlayerLogin" , getRootElement(), function() local acc = getPlayerAccount(source) if acc then local histeam = getAccountData ( acc, "hisTeam" ) if histeam and tostring(histeam) == "Civilians" then setPlayerTeam ( source, civilianTeam ) else outputChatBox ( "ERROR!",source ) end end end ) Updated
  10. addEventHandler ( "onPlayerLogin" , getRootElement(), function() local histeam = getAccountData ( source, "hisTeam" ) if histeam and histeam == "Civilians" then setPlayerTeam ( source, civilianTeam ) else outputChatBox ( "ERROR!",source ) end end )
  11. try this Should work (Client) function wantme() local wlvl = getElementData(getLocalPlayer(),"Wanted-Level") setElementData(getLocalPlayer(), "Wanted-Level", wlvl+1) end addCommandHandler("wantme", wantme) server addEventHandler("onPlayerDamage", root, function(attacker,weapon,bodypart,loss) local Skin = getPedSkin ( attacker ) local wlevel = getElementData(attacker, "Wanted-Level") if not attacker or attacker == source then return end if Skin == 280 or 284 then return end setElementData(attacker, "Wanted-Level", wlevel+1) setPlayerWantedLevel(attacker, getPlayerWantedLevel(attacker) + 1) end )
  12. function restart() local resourceName = getResourceFromName("scoreboard") if getResourceState(resourceName) == "running" then restartResource(resourceName) end end addEventHandler("onResourceStart", getRootElement(), restart)
×
×
  • Create New...