روب Bowden: ہیلو. میں روب ہوں. اس کھیل کو لاگو کرنے کے کس طرح سوچ؟ ٹھیک ہے، باہر توڑ دو عملے کے حل. تو، نیچے init کرنے کے پہلے سربراہ ہیں ہم آپ کو بتایا ہے کہ کام کرتا ہے سب سے پہلے عمل درآمد. سب سے پہلے ہم ایک نظر ڈالیں گے اس میں init پیڈل ہے. ٹھیک ہے، تو ہم چاہتے ہیں یاد رکھیں کہ بالکل میں مرکوز کی جائے پیڈل ایکس محور. تو ہم نے اعداد و شمار کرنے کی ضرورت ہے کہ کہاں جانا چاہئے. بورڈ کی چوڑائی کو دیکھتے ہوئے - جس بھی کی وضاحت سب سے اوپر ہیش ہے - ہم پیڈل چوڑائی سے منہا کرنے کی ضرورت ہے اور، 2 کی طرف سے تقسیم تاکہ پیڈل کے مرکز میں ہے بورڈ کے مرکز. ایکس تعاون سے مراد ہے یاد رکھیں کہ پیڈل کے سب سے اوپر بائیں کونے، اور اس طرح یہ کہاں ہے ہم نے یہ کرنا چاہتے ہیں. کوئی فرق نہیں پڑتا Y-محدد ہم رکھ سکتے ہیں کیونکہ زیادہ سے زیادہ یہ جہاں کہیں بھی ہم چاہتے ہیں. تو ہم پیڈل instantiating، ہم نے مقرر رنگ سیاہ، ہم سچ کو بھرنے مقرر تو یہ مستطیل میں بھرا ہوا ہے، اور ہم اس کے بعد ونڈو اور واپسی میں شامل پیڈل. اور یہ کہ ابتدا کے لئے ہے پیڈل. یہ اسی طرح ہو رہا ہے init اسکور بورڈ کے لئے. تو ہم لیبل ابتدا کرنے جا رہے ہیں، ہم رنگ قائم کرنے کے لئے جا رہے ہیں بھوری رنگ کی روشنی - آپ کو منتخب کر سکتے ہیں جو کچھ بھی تم چاہتے ہیں - ہم فونٹ قائم کرنے کے لئے جا رہے ہیں سینز 48 سیرف - بھی آپ چاہتے ہیں جو کچھ بھی منتخب کر سکتے ہیں - ہم کھڑکی میں شامل کریں گے. اب واپس کرنے کے لئے اس بھیجیں واقعی نہیں ہے ضروری، اس صورت میں صرف کچھ ہے اور لیبل وورلیپ ہوتا ہے. پھر ہم تھانوی کا پتہ لگانے کا استعمال کرتے ہیں، تھانوی دیگر پتہ لگانے کے گا کا پتہ لگانے اس لیبل کا پتہ لگاتا ہے بات کرنے سے پہلے. لیکن یہ واقعی متاثر نہیں ہونا چاہئے اس پروگرام میں ہم. آخر میں، ہم اس کو اپ ڈیٹ اسکور بورڈ ہے ہم نے لکھا ہے کہ تقریب. تو اس میں ایک نظر ڈالیں. اب، یہاں ہم کچھ دیکھیں جو کرنے کے لئے تقریبا ایک جیسی کیا ہم label.c میں دیکھا. تو ہم نے ایک لیبل ہے - 12 حروف کے حروف کی بفر، کسی کو ہینڈل کرنے میں کافی ہے جو منفی یا مثبت عدد صحیح،. پھر ہم کاپی کرنے sprintf استعمال کہ بفر میں بتاتے ہیں. تو کے اس کی نمائندگی ایک تار پر مشتمل ہے پوائنٹس کی تعداد. آخر میں، ہم لیبل مقرر کہ سٹرنگ. اور پھر ہم لیبل کے مرکز کی ضرورت ہے صورت میں ہم نو سے 10 چلا گیا ہے اشارہ اور ہم اس کو منتقل کر دیا گیا ہے. تو ہم X اور Y-نقاط کا حساب لیبل کی جس میں چوڑائی اور اونچائی حاصل ونڈو کے. اگرچہ، ہم بھی صرف استعمال کر سکتے ہیں constants کی چوڑائی اور اونچائی ہیش اوپر وضاحت کی گئی ہے. ہم نے بھی چوڑائی اور اونچائی حاصل لیبل اور تقسیم کے 2 کی طرف سے مرکز ہے. اور پھر ہم نے مقرر مقام استعمال اصل میں اس مقام میں ڈال دیا. تو اس init اسکور بورڈ کے لئے ہے. ٹھیک ہے. تو init گیند بہت ہی جا رہا ہے اس کے ساتھ ساتھ پادلاس init کے لئے. ہم newgoval کا استعمال کرتے ہوئے کر رہے ہیں کہ یہاں دیکھ ایک نئی گیند instantiate کرنے کے لئے. اور ہم یہاں 2 مرتبہ رداس استعمال کر رہے ہیں گیند کی چوڑائی، اور 2 کے طور بار رداس گیند کی اونچائی. اب، بھی newgoval کے لئے، X اور ہم جا رہا ہے میں منتقل ہے کہ Y-محدد کے سب سے اوپر بائیں طرف رجوع کرنے کے لئے اصل میں ہے جس میں گیند، گیند خود باہر. تو حکم میں بالکل گیند حاصل کرنے کے لئے بورڈ میں مرکوز، ہم کو منتقل کرنے کی ضرورت ہے چوڑائی مرکز کے لئے 2 سے تقسیم، اور پھر دھکا رداس کو منہا میں گیند کی اصل مرکز بورڈ کے مرکز. اور ہم نے بالکل وہی کام کرتے کا استعمال کرتے ہوئے کے علاوہ Y محور، کے لئے بجائے چوڑائی کی اونچائی. تو ہے کہ مرکز میں گیند دیتا ہے. اس سیٹ، گیند instantiates گیند میں بھرنے، سیاہ رنگ، پھر آخر میں میں شامل کریں ونڈو اور اسے واپس. اور یہ کہ ابتدا کے لئے ہے گیند. تو اب init پر ایک نظر ڈالیں تھوڑا سا زیادہ ہے جس کی اینٹوں پیچیدہ، لیکن یہ بہت ہے init پیڈل کی طرح. اب، سب سے پہلے ہم جاننے کی ضرورت ہے ہر ایک اینٹوں کی چوڑائی. ہم نامی ایک مسلسل ہے یاد رکھیں کہ بلاتا ہے جس کی وضاحت کرتا ہے اینٹوں کے کالموں کی تعداد کہ ہم. تو، ہم چوڑائی کا تعین کرنے کے لئے جا رہے ہیں چوڑائی لینے کی طرف سے ایک اینٹوں کے پورے بورڈ کے، تفریق ہماری فرق کے سائز سے - ہیش اوپر وضاحت اور مراد ہے جس پکسلز کی تعداد ہے ہر ایک اینٹوں کے درمیان ہونا چاہئے - اور ہم کی کل جا رہے ہیں فرق بار میں خالی پکسلز مطالبہ ایک قطار. اور یہ بھی کچھ خالی سے رجوع کریں گے کے بائیں اور دائیں پکسلز کالم اور دائیں کالم اینٹوں چھوڑ دیا. لہذا ان خالی پکسلز سے منہا پکسلز کی ایک بڑی تعداد کے ساتھ ہمیں چھوڑ دیتا ہے کہ اینٹوں اصل میں استعمال کر رہے ہیں. اور پھر ہم حاصل کرنے کے لئے فون کالز کی طرف سے تقسیم اینٹوں کی فی پکسلز کی تعداد. تو یہاں ہم ایک صف کی وضاحت ہے کہ صرف ہم ہر ایک کے لئے چاہتے ہیں رنگ کی وضاحت اینٹوں کی قطار. ہم اینٹوں سے زیادہ قطار سے تھا ہم مخصوص رنگ ہے کہ، ہم دیکھیں گے کہ ہم صرف لوپ کے پیچھے کے ارد گرد گے پھر سرخ استعمال کرتے ہیں، اور پھر اورینج اور تو پیلے اور. تو، P-سیٹ رپورٹ اشارے کے طور پر، ہم ہیں تمام قطار سے زائد لوپ پر جا کر اور اینٹوں کے کالم. لیکن کالم میں ہم لوپ سے پہلے، ہم ہم وضاحت کر رہے ہیں کہ یہاں دیکھ ہر ایک اینٹوں کے Y پوزیشن کہ خاص طور پر قطار میں. ہم نے دوسری میں یہ منتقل کر سکتے ہیں لوپ کے لئے، لیکن اس وقت ہم صرف ہو جائے گا اور اس سے زیادہ حساب کر پھر ہم کرنے کی ضرورت نہیں ہے. تو اینٹوں کی Y پوزیشن جا رہا ہے ہیش ہے جو مارجن، ہو اوپر وضاحت کی گئی ہے اور صرف سے مراد بورڈ کے سب سے اوپر اور درمیان کی جگہ اینٹوں کے تمام کے آغاز. اور ہم پر شامل کرنے کے لئے جا رہے ہیں اس صف ہم نے وقت پر ایک کی اونچائی ہیں انفرادی اینٹوں کے علاوہ فرق ہر اینٹ کے درمیان ہے. تو یہ بھی ایک عمودی ہے ہر ایک اینٹوں کے درمیان فرق. تو ہے کہ ہم Y-تعاون دیتا ہے اینٹوں کی. تو یہاں ہم حساب کرنے کے لئے جا رہے ہیں اینٹوں کی ایکس محدد. اب، ہم، کے بعد 2 سے تقسیم فرق ہے پہلے یاد ہے، میں نے کہا کہ میں بورڈ کے بائیں جانب، ہم جا رہے ہیں ایک چھوٹی سی جگہ چھوڑنے کے لئے. تو 2 کی طرف سے تقسیم کیا فرق ہے کہ جگہ ہے. اور پھر ہم پر اضافہ کر رہے ہیں اس کالم ہم نے وقت پر کی چوڑائی کے علاوہ ہیں چوڑائی جگہ کی رقم ہے جہاں فرق، ایک اینٹ لیتا ہے اور یہ کہ پھر خلا کی جگہ ہے ہر ایک اینٹوں کے درمیان. تو ہے کہ ایکس تعاون کا حساب لگاتا ہے اینٹوں کی. اب ہم صرف instantiate کرنے کی ضرورت ہے کہ X اور Y-تعاون دیا اینٹوں کی ہم ہر ایک کے لئے حساب ہے کہ کی چوڑائی کا استعمال کرتے ہوئے اینٹوں کی، اور وقفے اونچائی جو تعریف سب سے اوپر ہیش. ہم اینٹوں کے رنگ مقرر. ہم اپنے رنگ سرنی کا استعمال کرتے ہوئے اور رہے نوٹس ہم تھے کہ صف میں گزر رہے ہیں MOD NUM رنگ جس کو بنانے کے لئے کی جا رہی ہے ہمارے سرخ ارد گرد واپس لپیٹ تو ہم رنگ سے زیادہ قطار ہے. آخر میں، ہم اینٹوں میں بھرنے گے رنگ اور ونڈو میں شامل کریں. اور یہ کہ یہ ہے. تو، کہ ہمارے سب کے لئے یہ ہے ابتدا طریقوں. اب ہم اس جبکہ کو دیکھنے کے لئے کی ضرورت ہے تم اندر بھرنے کے لئے تھا کہ لوپ تو یہاں ہم یہ ہماری جبکہ دیکھتے ہیں کہ تک جاری رہے کرنے کے لئے جا رہا ہے کہ لوپ کھیل، ختم ہو گیا ہے جس کا مطلب ہے کہ یا تو ہم زندگی سے باہر چلانے یا ہم اینٹوں سے باہر چلانے کے. ہم تو پہلی بات کلک کے لئے انتظار ہے. تو کھیل ہمارے لئے انتظار کر رہی ہے اصل میں گیند کو منتقل شروع ہونے سے پہلے کلک کریں. اور پھر ہم جا رہے ہیں زندگی تدریج کریں. تو ہم تین زندگی تھا، اب ہم ہیں دو زندگیوں کے نیچے، ہم اپنے استعمال کر رہے ہیں تیسری زندگی. ہم گیند مرکز جا رہے ہیں. تو اب، یہ واقعی میں مدد کرنے کے لئے نہیں جا رہا ہے ہم کھیل کے بہت پہلے کی زندگی پر گیند پہلے ہی کی جا رہی ہے کے بعد سے جب ہم سے مرکوز کیا گیا ہے یہ مثال. ہم کھونے ختم لیکن جب ہم دیکھتے ہیں زندگی اور پیچھے کے ارد گرد لوپ، تو ہم ہیں سے گیند recenter کرنا چاہتے ہیں جا واپس بورڈ کے سب سے نیچے مرکز. تو، اب ہم یہاں پیدا کرنے کے لئے کی ضرورت ہے گیند کی ایکس رفتار. اور، رپورٹ کے مطابق، ہم D رانڈ استعمال کر رہے ہیں 48 کچھ بے ترتیب تعداد پیدا کرنے کے لئے رفتار کی وضاحت کرنے کی. ہم کے بعد سے اس کے لئے ایک اضافہ کر رہے ہیں، صرف ایک کی حد میں رفتار چاہتے ہیں دو کی بجائے ایک صفر کرنے کے لئے. آخر میں، ہم میں دوبارہ D رانڈ 48 استعمال کر رہے ہیں چاہے گیند تعین کرنے کے لئے بائیں طرف منتقل کرنے کے لئے کی جا رہی ہے یا دائیں شروع کرنے کے لئے. تو D رانڈ 48 ایک بے ترتیب تعداد کی واپسی صفر اور ایک کے درمیان، اور اس سے پوچھ کی طرف سے کہ کم 0.5 ہے، تو ہم ایک 50 50 ہے کی رفتار سوئچنگ کا موقع گیند منفی ہو. آخر میں، ہم عمودی رفتار مقرر گیند صرف کچھ مسلسل جاری ہو جائے. ہم تین کا انتخاب. اور اب ہم ایک اور لوپ پڑے. تو اس اندرونی لوپ ہے جاری کی جا رہی. یہاں پر نوٹس، اینٹوں جبکہ صفر کے مقابلے میں زیادہ ہے - ہم اینٹوں سے باہر چلانے کے اگر ایسا ہے تو، ہم نے کھیل جیت لیا ہے اور ہم کر سکتے ہیں اس لوپ سے باہر توڑ - اور تمام اونچائی سے Y بال کم ملے مائنس 2 مرتبہ رداس. تو کیا اس کو تسلیم ہے، تو گیند میں، پیڈل ماضی جانے کے لئے ہوتا ہے آپ کو ایک زندگی کھو دیا ہے، جس صورت. ہم لوپ کے لئے اس کے اندر کی تلاش ایک ماؤس ایونٹ کے لئے کی جانچ پڑتال. اور اس طرح، ایک ماؤس ایونٹ ہے تو، کہ ہم جانچ کرنا چاہتے ہیں کا مطلب ہے کہ ماؤس منتقل کر دیا گیا تھا، اور اگر دیکھتے ہیں ماؤس ہم کرنا چاہتے ہیں، منتقل کر دیا گیا پیڈل ماؤس کے ساتھ رکھنے کے. تو، ایسا کرنے کے لئے، ہم نئے حساب جا رہا ہے جس کے پیڈل، کی پوزیشن ماؤس کی پوزیشن پر قبضہ کرنے کے لئے - جس کا استعمال کرتے ہوئے کی پوزیشن گرپس ہم سے منظور کیا گیا ہے کہ واقعہ - اور پھر ہم باہر منہا کرنے جا رہے ہیں پیڈل کی چوڑائی 2 کی طرف سے تقسیم کیا گیا، تو ماؤس پر مرکوز پیڈل رہتا بجائے پیڈل کے بائیں جانب کے مرکوز رہنے کے. تو اب ہم بھی اس بات کا یقین ہے کہ ہونا چاہتے ہیں ہم بائیں جانب یا دائیں پر نہیں جاتے بورڈ کی طرف. اور تو یہاں ہم صرف کی جانچ پڑتال کر رہے ہیں پیڈل کے بائیں جانب دور ہو جائے گا بورڈ، صرف رہنا بائیں جانب اس کے. اور ہم یہاں کی جانچ پڑتال کر رہے ہیں تو پیڈل کے دائیں جانب ختم ہو جائے گی بورڈ، صرف اسے رہنا دائیں طرف. اور آخر میں، ہم اصل مقرر پیڈل کی جگہ. اب، ایک ماؤس کی تحریک وہاں نہیں تھا، کہ ہم جا رہے ہیں کا مطلب ہے کہ گیند کو منتقل کرنا چاہتے ہیں. اور اس طرح ہم نے پہلے ہی ایکس ہے اور گیند کے Y رفتار اور ہم اسے منتقل. لیکن اب ہم پتہ لگانے کے لئے چاہتے ہیں، ایک جوڑے کی چیزیں. ہم یا تو مارا تو ہم یہاں کا پتہ لگانے کے کر رہے ہیں کے بائیں یا دائیں طرف بورڈ، ہم نے گیند اچھال کے لئے چاہتے ہیں. اور اس طرح، اس صورت میں، ہم ایکس رفتار مقرر منفی ایکس رفتار کے لئے. گیند بورڈ کے سب سے اوپر مارا، پھر ہم بھی گیند اچھال چاہتے ہیں. لیکن اب ہم کو تبدیل کرنا چاہتے Y رفتار. ہم نے کے لئے ایک شرط نہیں ہے نوٹس کے سب سے نیچے کو مارنے کی گیند کہ بعد بورڈ کو پہلے ہی گرفتار کر لیا گیا اس دیر یہاں لوپ میں. آخر میں، ہم کچھ کا پتہ لگانے کے لئے چاہتے ہیں، collisions سے جہاں اگر گیند کو مارا پیڈل یا اینٹوں یا تو، ہم چاہتے ہیں کچھ خاص صورت چیزیں کرنے کے لئے. ایک تصادم تھا، اگر ایسا ہے تو جس میں کیس اشیاء، تو، شہوت انگیز null نہیں ہو گا اعتراض پیڈل مارا، تو ہم کریں گے صرف گیند اچھال کے لئے چاہتے ہیں. اور یہاں، کے علاوہ، ہم کی جگہ مقرر صرف پیڈل اوپر گیند. ہم ایکس پوزیشن لے رہے ہیں نوٹس گیند اور صرف یہ ہے کہ reusing. لیکن یہاں ہم Y پوزیشن حاصل کر رہے ہیں پیڈل اور گیند کو منتقل کرنے کے پیڈل اوپر. یہ ایک خاص معاملہ ہے تاکہ گیند پیڈل کو مارا اور پھر، نہیں ہے یہ پیڈل سے دور منتقل کرنے کے قابل ہے اس سے پہلے، ایک اور لوپ کے ارد گرد جاتا ہے اور اس پینل پر اب بھی ہے اور سوچتا ہے تو Y رفتار پر واپس قائم ہو جاتا ہے منفی اور پھر گیند کو صرف کی قسم لاٹھی کی پیڈل پر شیخی. تو، ہم پیڈل نہیں مارا تو، پھر ہم بھی جانچ کرنا چاہتے ہیں ہم اینٹوں مارا. تو یہ ہم چیک کر سکتے ہیں کس طرح ہے ہم ایک ئنٹ مارا تو دیکھنے کے لئے. ہم اس کے لئے کی جانچ پڑتال کرنے کی ضرورت ہے ہم نے مئی کی وجہ سے اصل لیبل مارا ہے اور ہم لیبل کو ہٹانا نہیں چاہتے. ہم ایک ئنٹ مارا تو، ہم اس کو دور کر سکتے ہیں ونڈو، تدریج سے اینٹ اینٹوں کی ہماری شمار، اضافہ ہماری پوائنٹس کی تعداد، اور اب ہم کرنے کی ضرورت ہے بالکل ہے جو اسکور بورڈ اپ ڈیٹ ہم دیکھا تو پہلے دیکھا ہی کے طور پر init اسکور بورڈ. لیکن اب ہم صرف اپ ڈیٹ کر رہے ہیں ہم تبدیل کر دیا ہے کے بعد سے اسکور بورڈ پوائنٹس کی تعداد. اور اب ظاہر ہے کہ ہم ایک اور وقفے مارا. اور آخر میں، ہم نے ایک اینٹوں مارا ہم بھی اچھال کے لئے چاہتے ہیں. تو آخر میں، ہم کو روکنے صرف اس لئے کہ گیند سپر روزہ اور ہم آگے بڑھ رہے ہیں نہیں ہے اصل میں ہمارے پیڈل کے ساتھ اسے مار کر سکتے ہیں. اور یہ بہت زیادہ ہے. تو اب ہم واپس اوپر لوپ گے اس دیر لوپ اور تک جاری ہم ایک زندگی کھو یا یا تو ہم اینٹوں سے باہر چلانے کے. ہم ایک زندگی کھو دیں تو کیا ہوگا؟ اس کے بعد ہم یہ بات باہر نکلنے کے لئے جا رہے ہیں لوپ، اور ہم لوپ بیک اپ دیکھیں گے بیرونی جبکہ لوپ کے سب سے اوپر. جس صورت میں، ہم جا رہے ہیں اس کو دوبارہ قائم پھانسی. اور یہ ہمارے انتظار کی جا رہی ہے قائم ایک کلک کے لئے، ہماری تعداد تدریج کریں زندگی کے، دوبارہ، گیند recenter ایک X اور Y کی رفتار، اور اس کے بعد کھیل دوبارہ شروع. اور اس طرح، کہ جاری رہے گا یا تو جب تک اینٹوں سے کم ہونے کی وجہ سے ختم ہو جاتی ہے یا صفر کے برابر - جو ہم کھیل جیت کی صورت میں - یا زندگی، صفر سے بھی کم ہے جس میں کیس ہم کھیل کو کھو دیا ہے. یہ بات ہے تو ایک بار،، ہم باہر توڑ کہ جبکہ لوپ کے، اور ہم یہاں تک پہنچ ہم پر کلک کریں کے لئے انتظار کرنے کے لئے جا رہے ہیں جہاں کھیل ہی کھیل میں باہر نکلنے سے پہلے تاکہ کھیل صرف فوری طور پر نہیں کرتا ہم پر بند. اور آخر میں ہم قریب ہوں گے ونڈو اور یہ کہ یہ ہے. میرا نام روب ہے، اور اس بریکآؤٹ تھا.