Popular Post iMr.WiFi..! Posted June 6, 2017 Popular Post Share Posted June 6, 2017 بسم الله الرحمن الرحيم سلام عليكم ورحمة الله وبركاته كيفكم شباب ان شاء الله تكونو بأتم الصحة والعافية , اليوم شباب بشرح كيف تسوي وظيفة خاصة فيك وتنشره او تصنع وظيفة مفيدة , سواءً لنفسك او للموضوع وظايف العرب المفيدة بسم الله نبدأ , : الخطوات المهمة عشان تسوي الوظيفة : 1- اسم الوظيفة يكون سهل وواضح 2- كود الوظيفة مايكون طويل جداً الا ان تطلب ذلك 3- انه الوظيفة ماتكون مكررة , 4- يكون للوظيفة فايدة معينة 5- وش الارقمنتات المطلوبة الي راح اطلبها من الشخص =[ نقطة مهمة ]= حاول ماتخلي كل شيء يعتمد على الارقمنتات 6- وش راح يرجعلي ؟ فأنت لما تسوي وظيفة ممكن تخليها ترجع boolean -- قيمة منطقية او true or false == string -- سلسلة نصية او "سلسلتك النصية" == table -- جدول 7- نتحقق انه مافي أي خطأ في الأرقمنتات عشان مايكتبله خطأ في الفنكشن طيب الحين فهمنا الخطوات بنطبقها الحين انا عندي وظيفة بسميها بأسم getPlayersOnMarker طبعاً من اسم الوظيفة يعني جلب اللاعبون الموجودون داخل الماركر طيب بنسوي الكود function getPlayersOnMarker( marker ) حطينا الارقمنت الأول والي هو الماركر احنا بنخليها الماركر المراد به جلب اللاعبون داخله طبعاً القيمة بتكون اكثر من قيمة واحدة فبنستعمل جدول طيب نكمل الوظيفة بنسوي تحقق انه الماركر موجود , وانه نوعه ماركر function getPlayersOnMarker( marker ) PlayersOnMarker = { } -- سوينا جدول if isElement( marker ) and getElementType( marker ) == 'marker' then -- سوينا التحقق -- بنكمل الكود else -- اذا ماكتمل التحقق return false -- بيرجعله فولس end -- اند للتحقق end -- اند للوظيفة تمام تحققنا طيب الحين نبي يكتبله الخطأ وش نوعه وأي ارقمنت ؟ نستعمل وظيفة error -- وظيفة موجودة بلوا تلقائياً اذا استخدمت الوظيفة هذي راح يطبع لك في الديبق + راح يرجع القيمة فولس function getPlayersOnMarker( marker ) PlayersOnMarker = { } -- سوينا جدول if isElement( marker ) and getElementType( marker ) == 'marker' then -- سوينا التحقق -- بنكمل الكود else -- اذا ماكتمل التحقق error("getPlayersOnMarker Bad Argument 1@ [ Execpted 'marker' got "..getElementType( marker ).." ]") end -- اند للتحقق end -- اند للوظيفة تمام الحين بنسوي لوب للاعبين ونسوي تحقق انه اللاعب داخل الماركر بـ isElementWithinMarker ثم نضيفه لجدول function getPlayersOnMarker( marker ) PlayersOnMarker = { } -- سوينا جدول if isElement( marker ) and getElementType( marker ) == 'marker' then -- سوينا التحقق for PlayerIndex,PlayerValue in ipairs ( getElementsByType ( 'player' ) ) do -- نسوي لوب لجميع اللاعبين , وطبعاً ذي الوظيفة ترجع القيمة لاعب if isElementWithinMarker( PlayerValue, marker ) then -- سوينا تحقق انه اللاعب في الماركر table.insert(PlayersOnMarker, PlayerValue ) -- نضيف اللاعب في الجدول end -- آند للتحقق end -- آند للوب else -- اذا ماكتمل التحقق error("getPlayersOnMarker Bad Argument 1@ [ Execpted 'marker' got "..getElementType( marker ).." ]") end -- اند للتحقق end -- اند للوظيفة تمام قربنا نخلص الحين وش بيرجع للاعب ؟ أو مستخدم الوظيفة ؟ جدول الي سويناه PlayersOnMarker نسوي بعد اللوب استرجاع للجدول ويصير بهذا الشكل function getPlayersOnMarker( marker ) PlayersOnMarker = { } -- سوينا جدول if isElement( marker ) and getElementType( marker ) == 'marker' then -- سوينا التحقق for PlayerIndex,PlayerValue in ipairs ( getElementsByType ( 'player' ) ) do -- نسوي لوب لجميع اللاعبين , وطبعاً ذي الوظيفة ترجع القيمة لاعب if isElementWithinMarker( PlayerValue, marker ) then -- سوينا تحقق انه اللاعب في الماركر table.insert(PlayersOnMarker, PlayerValue ) -- نضيف اللاعب في الجدول end -- آند للتحقق end -- آند للوب return PlayersOnMarker -- راح يرجع الجدول الي فيه اللاعبين else -- اذا ماكتمل التحقق error("getPlayersOnMarker Bad Argument 1@ [ Execpted 'marker' got "..getElementType( marker ).." ]") end -- اند للتحقق end -- اند للوظيفة كذا سوينا وظيفة خاصة فينا , اتمنى انه يكون الشرح مفهوم وواضح , أي خطأ موجود في الشرح نبهوني عليه وانا اعدله , <3 وسلام خير الختام 6 Link to comment
Dr.Marco Posted June 6, 2017 Share Posted June 6, 2017 ارحب مليوون كفو يويفي ابدعت واصل شروحاتك يبطل ننتظر كل جديدك Link to comment
^iiEcoo'x_) Posted June 6, 2017 Share Posted June 6, 2017 اظن ريتورن الجدول قبل اند الفنكشن ؟ Link to comment
iMr.WiFi..! Posted June 6, 2017 Author Share Posted June 6, 2017 3 hours ago, Dr.Marco said: ارحب مليوون كفو يويفي ابدعت واصل شروحاتك يبطل ننتظر كل جديدك كفوك, منور ذ 2 hours ago, #_iMr.[E]coo said: اظن ريتورن الجدول قبل اند الفنكشن ؟ اذا حطيته قبل آند الفنكشن كأنو ماسوى التحقق واذا حطيته بعد اللوب يعني بعد مايخلص اللوب يسترجع الجدول , يمكن يكون غلط علي .. تقدر تجرب وتحكم Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now