-
Posts
1,336 -
Joined
Everything posted by The Killer
-
حياك الله
-
هو عباره عن ارسال شي من السيرفر للكلاينت في حال انه ماتوفر الشي الي بنرسله في الكلاينت, يعني ليه ارسل شي من كلاينت لسيرفر , اذا فيه اصلا شي مثله بالكلاينت ب ما يحتاج استخدمه , لاكن في حال لازم من السيرفر للكلاينت , فلازم نستخدمه , وراح اعطيك مثال صغير عليه عشان تفهم اكثر مثلاً نبي نعطي لاعب فلوس, انت اكيد راح تغلط وتسويها كذا -- Client side # -- نقول مثلا نسويها بأمر من اف 8 addCommandHandler ("giveMeMoney", function () givePlayerMoney (10000) end ) ف زي ما لاحظت اني عطيت الاعب فلوس اول ما كتب الكلمه 'giveMeMoney' طبعا راح تجيه فلوس وينبسط واي شي لاكن , ماهي فعلا فلوس , فهي فلوس وهميه يعني لو يشتري شي , تلقاها ترجع لفلوسه الاصليه في هذي الحاله حنا لازم نستخدم triggerServerEvent كذا: -- Client side # addCommandHandler ("giveMeMoney", function () triggerServerEvent ("givePlayerMoney_", localPlayer) -- هنا رسلنا من الكلاينت للسيرفر end ) addEvent ("givePlayerMoney_", true) -- اضيف حدث الي رسلناه من الكلاينت addEventHandler ("givePlayerMoney_", root, function () givePlayerMoney (client, 10000) end ) هنا الحين راح تجيه الفلوس فعلا , ,يقدر يشتري واي شي , حلو ؟ الحين جا دور نرسل شي من السيرفر للكلاينت الحين مثلا ابي رساله تطلع لحساب معين في هذي الحاله ماراح اقدر استخدم getAccountName or getPlayerAccount في الكلاينت , لأنها مخصصه في السيرفر فلازم اني اسوي لها ارسال من سيرفر للكلاينت طيب الحين نجي للطريقه: -- Server side # addCommandHandler ("send", function (plr, cmd, text) -- نضيف كلمه في اف 8 if ( text ) then -- نتحقق ان الرساله موججوده , يعني مكتوبه for _,v in ipairs (getElementsByType ("player")) do if getAccountName (getPlayerAccount (v)) == "account" then triggerClientEvent (v, "sendTheMsg", plr, getPlayerName (plr), text) break end end end end ) نجي للكلاينت addEvent ("sendTheMsg", true) addEventHandler ("sendTheMsg", root, function (name, text) guiSetText (label, "You got a new message from '" .. name .. "'") guiSetText (label2, "The message: " .. text) end ) بالنسبه لل triggerClientEvent الارقمنتات حقته راح اشرحها لك طبعا لاحظت فوق اني حاط v & plr v = الي بيظهر له الكلام plr = الي سوا الحدث, الي قام بالإرسال المره الاولى هي كانت لمن , يعني راح تظهر الرساله لمن والثانيه , هو الاعب نفسه الي سوا الحدث والارقمنت ال 2 الي هو اسم الحدث الي بنرسله ف يمديك تحط اي اسم مب شرط اسم محدد فهذا كان شرح بسيط لها واتمنى فهمت واي شي ما فهمته , قول
-
جرب كذا Client side # addEventHandler("onClientGUIClick", root, function () if ( source == ButtonSendMsgOnSupport ) then local Text = guiGetText(EditMessage) if ( Text and Text ~= "" and Text ~= " " ) then triggerServerEvent("onSendMsg",localPlayer,Text) guiSetText(EditMessage,"") guiSetVisible(GUIEditor.window[1], false) showCursor(false) guiSetInputEnabled(false) else outputChatBox("* Please Write Text", 255, 0, 0, true) end end end ) addEvent("onGotMsg", true) addEventHandler("onGotMsg", root, function (Name, Text) local Row = guiGridListAddRow(GUIEditor.gridlist[2]) guiGridListSetItemText(GUIEditor.gridlist[2], Row, 1, Name .. ": " .. Text, false, false) outputChatBox("* Support - System : You Got a New Message", 255, 255, 0, true) end ) Server side # addEvent ("onSendMsg", true) addEventHandler ("onSendMsg", root, function (text) local name = getPlayerName(client):gsub("#%x%x%x%x%x%x","") if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(client)), aclGetGroup("Support")) then for _,v in ipairs (getElementsByType ("player")) do if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(v)), aclGetGroup("Support")) then triggerClientEvent(v, "onGotMsg", v, name, text) end end end end )
-
من الاساس اصلا مو المفروض ترد انت المفروض يرد صاحب الكلمه الي كتبها في حال انك عرفت معناها , ممكن تقول مو تجي تستهبل محنا اطفال
-
همم , اعتذر منك , لأن الاخ ذا EH10 قالي معنى ثاني عنها , وحسبت انك تقصد المعنى الي قاله , -------------- والعفو , ثاني مره ياليت تتكلم عربي عشان محد يفهم غلط ولا شي ويجيك واحد زي الاخ ذا EH10 يقولك معنى ثاني وتنقلب هوشه
-
ما عنيتك , انت بالكلام ذا , عنيت الاخ ذا abouellezz
-
عيد الكود من جديد وبالترتيب مع استخدام الفنكشنات انت مسوي ذكي , تحط اي خرابيط , ,تقول الباقي عليهم لا يا حبيبي , تراك غلطان , حنا نصحح لك الكود خطأ بسيط خطأ هنا ولا هنا , يلا لاكن تجيب لي كود ماتدري وش السالفه فيه عشان انا اسويه لك جاهز , كذا كأنك طالب كود جاهز من الاساس ليه حاط لي ذا ليه ما قلت ابي كود جاهز ,لأان ما اشوف فيه فرق بين كودك , وبين طلب الكود الجاهز استخدم الفنكشنات , بالترتيب وما اتوقع ان الكود ذا حقك !
-
Event # 'onMarkerHit' function # table -- الأماكن createMarker getElementType destroyElement or setElementAlpha setElementPosition
-
https://community.multitheftauto.com/ind ... ls&id=5928
-
جرب انسخ الكود مره ثانيه , عدلت عليه !
-
جرب كذا local marker = createMarker (x,y,z, "cylinder", 2, 0, 255, 0) function fire (plr) if getPedWeapon (plr) == 4 and getPedWeaponSlot (plr) == 1 then if isElementWithinMarker (plr, marker) then x,y,z = getElementPosition (plr) createObject (id, x,y,z) end end end addEventHandler ("onMarkerHit", marker, function (hit) if getElementType (hit) == "player" then bindKey (hit, "mouse1", "down", fire) end end )
-
فيه مثال على الفنكشن , لو ضغطت عليه
-
Pain مثال على الفنكشن , ولا على مود الاخ
-
-.- انت مو النوع الي يبي يتعلم انت النوع الي ابي اكواد جاهزه مابي اتعلم انا عطيتك مثال عشان تتعلم منه وتجي تقولي مو نفس الكود الي ابيه وانا جالس اعلمك احسب انه بيفهم , ولكن الحال في حاله , تبي كود جاهز , ! هنا لتعليم البرمجه , مو الطلبات الجاهزه
-
Required Arguments fX: x الاحداثيات fY: y الاحداثيات fZ: z الاحداثيات fWidth: الي هو العرض , يعني كيف تبي يكون عرضه fDepth: هنا العمق fHeight: وهنا الارتفاع مثال بسيط local col = createColCuboid (1, 1, 1, 100, 100, 300) addEventHandler ("onColShapeHit", col, function (element) if getElementType (element) == "player" then if getElementData (element, "gang") == "SWAT" then outputChatBox ("لقد دخلت المنطقه *", element, 255, 100, 0) end end end)
-
استخدم هذا الفنكشن interpolateBetween Pain او استخدم مود الأخ https://community.multitheftauto.com/index.php?p= ... ls&id=7812 وهذا شرح عنه viewtopic.php?f=161&t=64607
-
كله اغلاط mechMarker = createMarker (2484.95142,-1664.40332,13.34375-1, "cylinder", 3, 0, 255, 0) GUIEditor = { window = {}, button = {}, edit = {}, label = {} } addEventHandler("onClientResourceStart", resourceRoot, function() GUIEditor.window[1] = guiCreateWindow(4, 0, 796, 600, "shop weapon by hassan", false) guiWindowSetSizable(GUIEditor.window[1], false) guiSetProperty(GUIEditor.window[1], "CaptionColour", "FFEC9712") guiSetVisible (GUIEditor.window[1], false) GUIEditor.button[1] = guiCreateButton(9, 11, 777, 579, "", false, GUIEditor.window[1]) --------------- M4 ---------------- GUIEditor.button[2] = guiCreateButton(0, 9, 222, 120, "M4$500", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[2] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 31, 500 ) end end ) ------------------------------------ --------------- M5 ---------------- GUIEditor.button[3] = guiCreateButton(229, 12, 230, 117, "M5$500", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[3] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 29, 500 ) end end) ------------------------------------ --------------- Knife ---------------- GUIEditor.button[4] = guiCreateButton(470, 13, 307, 116, "Knife$500,000", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[4] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 4, 500000 ) end end) ------------------------------------ --------------- Shozen ---------------- GUIEditor.button[5] = guiCreateButton(0, 145, 212, 135, "Shozen$500", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[5] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 25, 500 ) end end) ------------------------------------ --------------- Combat shotgun ---------------- GUIEditor.button[6] = guiCreateButton(227, 157, 232, 117, "Combat shotgun$500", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[6] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 26, 500 ) end end) ------------------------------------ --------------- Parachute ---------------- GUIEditor.button[7] = guiCreateButton(474, 158, 307, 116, "Parachute$500", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[7] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 46, 500 ) end end) ------------------------------------ --------------- TEC-9 ---------------- GUIEditor.button[8] = guiCreateButton(0, 290, 212, 100, "TEC-9$500", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[8] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 32, 500 ) end end) ------------------------------------ --------------- AK-47 ---------------- GUIEditor.button[9] = guiCreateButton(223, 293, 236, 97, "AK-47$500", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[9] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 30, 500 ) end end) ------------------------------------ --------------- Minigun ---------------- GUIEditor.button[10] = guiCreateButton(473, 287, 314, 103, "Minigun$15,000,000", false, GUIEditor.button[1]) addEventHandler ( "onClientGUIClick", root, function ( ) if ( source == GUIEditor.button[10] ) then triggerServerEvent ( "onBuyWeapon", localPlayer, 38, 15000000 ) end end) ------------------------------------ GUIEditor.label[1] = guiCreateLabel(764, 513, 13, 25, "", false, GUIEditor.button[1]) GUIEditor.edit[1] = guiCreateEdit(5, 513, 777, 71, "شوب الاسلحه من قبل Hassan للمقرات v1,1 الخلاط:2000 طلقه", false, GUIEditor.button[1]) end ) addEventHandler ("onClientMarkerHit", mechMarker, function (hit) if (hit == localPlayer) and getElementType (hit) == "player" then local _, _, Pz = getElementPosition(hit) local _, _, Mz = getElementPosition(mechMarker) if (Mz + 3 >= Pz) and (Pz + 3 >= Mz) then guiSetVisible (GUIEditor.window[1], true) showCursor (guiGetVisible (GUIEditor.window[1]) end end end ) Server side # -- AboShanab addEvent ( "onBuyWeapon", true ) addEventHandler ( "onBuyWeapon", root, function ( ID, Cost ) if ( getPlayerMoney ( client ) >= tonumber ( Cost ) ) then takePlayerMoney ( client, tonumber ( Cost ) ) if ( giveWeapon ( client, tonumber ( ID ) ) ) then outputChatBox ( "* You have been buy a ".. getWeaponNameFromID ( tonumber ( ID ) ) .." by ".. tostring ( Cost ) .."$", client, 255, 255, 0, true ) else outputChatBox ( "* Problem with weapon id !", client, 255, 0, 0, true ) end else outputChatBox ( "* You do not have enough money !", client, 255, 0, 0, true ) end end )
-
Event # 'onColShapeHit' function # createColCuboid -- صنع الحدود getElementType -- نتحقق من النوع -- اذا كان قصدك مود القروبات استخدم getElementData -- نتحقق من القروب -- استخدم ACL اذا كان قصدك قروب في ال isObjectInACLGroup -- نتحقق من القروب setElementPosition -- ينقله للمكان
-
ما اتوقع انك صلحت كل الاخطاء ! هذا وشو ؟ setPlayerMuted (player, 50000, 1) من وين جايب ال 50000 و ال 1 ؟ تحسبه ينحط معه التايمر ؟ غلطان ! لو تبي تسوي له تايمر كذا setPlayerMuted (player, true) setTimer (setPlayerMuted, 50000, 1, player, false) ----------------------------- Required Arguments: thePlayer: The player you are muting or unmuting. state: Use true to mute and false to unmute the player.
-
'onClientGUIClick' Parameters: string button, string state, int absoluteX, int absoluteY ----------------------------------------------- لاكن دام ما استعملها في الكود , ف مالها داعي يحطها !
