1 00:00:00,000 --> 00:00:11,870 2 00:00:11,870 --> 00:00:12,530 >> რობ Bowden: Hi. 3 00:00:12,530 --> 00:00:13,510 მე Rob. 4 00:00:13,510 --> 00:00:15,140 კითხვაზე, თუ როგორ უნდა განახორციელოს ეს თამაში? 5 00:00:15,140 --> 00:00:18,400 კარგად, მოდით შესვენება out პერსონალის გადაწყვეტა. 6 00:00:18,400 --> 00:00:21,890 >> ასე რომ, მოდით პირველი ხელმძღვანელი ქვემოთ init ფუნქციებს, რომ ჩვენ გითხარით, რომ 7 00:00:21,890 --> 00:00:24,380 განხორციელება პირველი. 8 00:00:24,380 --> 00:00:30,602 პირველი, ჩვენ შევხედოთ ერთი ეს არის init paddle. 9 00:00:30,602 --> 00:00:34,550 ყველა უფლება, ასე მახსოვს, რომ ჩვენ გვინდა paddle უნდა ზუსტად ორიენტირებული 10 00:00:34,550 --> 00:00:35,870 x-ღერძი. 11 00:00:35,870 --> 00:00:39,000 ამიტომ, ჩვენ უნდა გაერკვნენ სად, რომ უნდა წავიდეს. 12 00:00:39,000 --> 00:00:42,650 >> იმის გათვალისწინებით, სიგანე board - რომელიც ასევე hash განსაზღვრული up top - 13 00:00:42,650 --> 00:00:46,380 ჩვენ უნდა გამოვაკლოთ გარეთ paddle სიგანე და გავყოთ 2, რომ 14 00:00:46,380 --> 00:00:48,960 ცენტრში paddle არის ცენტრში ფორუმში. 15 00:00:48,960 --> 00:00:53,170 გახსოვდეთ, რომ x-კოორდინაციას ეხება ზედა მარცხენა კუთხეში paddle, 16 00:00:53,170 --> 00:00:56,210 და ა.შ. ეს არის სწორედ იქ, სადაც ჩვენ გვინდა, რომ იყოს. 17 00:00:56,210 --> 00:00:59,950 Y-კოორდინაციას მნიშვნელობა არ აქვს იმდენი იმიტომ, რომ ჩვენ შეგვიძლია განვათავსოთ 18 00:00:59,950 --> 00:01:01,800 იქ, სადაც გვინდა. 19 00:01:01,800 --> 00:01:07,080 ასე რომ, ჩვენ instantiating paddle, ჩვენ დავსახეთ ფერი: შავი, ჩვენ მითითებული შეავსოთ True 20 00:01:07,080 --> 00:01:11,240 ამიტომ შევსებული მართკუთხედი, და ჩვენ შემდეგ დაამატოთ ეს ფანჯარა და დაბრუნება 21 00:01:11,240 --> 00:01:12,170 paddle. 22 00:01:12,170 --> 00:01:14,540 და რომ ეს ინიციალიზებისას paddle. 23 00:01:14,540 --> 00:01:17,480 >> ეს იქნება მსგავსი განთავსების init scoreboard. 24 00:01:17,480 --> 00:01:21,950 ამიტომ, ჩვენ ვაპირებთ ინიციალიზაცია ეტიკეტების, ჩვენ ვაპირებთ მითითებული ფერი 25 00:01:21,950 --> 00:01:25,180 ღია რუხი - თქვენ შეგიძლიათ აირჩიოთ რასაც თქვენ გსურთ - ჩვენ ვაპირებთ მითითებული შრიფტის 26 00:01:25,180 --> 00:01:26,700 sans serif 48 - 27 00:01:26,700 --> 00:01:28,630 შეიძლება ასევე შეარჩიო რაც გაგიხარდებათ - 28 00:01:28,630 --> 00:01:30,180 ჩვენ დაამატოთ ეს ფანჯარა. 29 00:01:30,180 --> 00:01:34,760 ახლა ეს send უკან ნამდვილად არ არის აუცილებელია, რომ ეს მხოლოდ იმ შემთხვევაში თუ რამე 30 00:01:34,760 --> 00:01:37,010 სხვაგან ხდება გადახურვა იარლიყი. 31 00:01:37,010 --> 00:01:40,680 მაშინ, როდესაც ჩვენ ვიყენებთ გამოავლინონ შეჯახება, გამოავლინონ Collision იქნება აღმოაჩინოს სხვა 32 00:01:40,680 --> 00:01:42,380 რამ ადრე იგი ცნობს იარლიყი. 33 00:01:42,380 --> 00:01:45,670 მაგრამ ეს ნამდვილად არ უნდა მოახდინოს us ამ პროგრამაში. 34 00:01:45,670 --> 00:01:48,720 >> და ბოლოს, ჩვენ გვაქვს ამ განახლების Scoreboard ფუნქცია, რომ ჩვენ დაწერა. 35 00:01:48,720 --> 00:01:51,020 მოდით შევხედოთ, რომ. 36 00:01:51,020 --> 00:01:54,590 ახლა, აქ ჩვენ ვხედავთ, რომ რაღაც თითქმის იდენტურია, რაც 37 00:01:54,590 --> 00:01:56,930 დავინახეთ label.c. 38 00:01:56,930 --> 00:01:59,100 ამიტომ ჩვენ გვაქვს ეტიკეტების - 39 00:01:59,100 --> 00:02:03,540 ხასიათი ბუფერული 12 პერსონაჟი, რაც არის საკმარისი იმისათვის, რომ გაუმკლავდეს ნებისმიერ 40 00:02:03,540 --> 00:02:05,920 რიცხვი, უარყოფითი ან დადებითი. 41 00:02:05,920 --> 00:02:10,310 მაშინ ჩვენ ვიყენებთ sprintf კოპირება მიუთითებს შევიდა, რომ ბუფერული. 42 00:02:10,310 --> 00:02:14,290 ასე s ამ შეიცავს string წარმოადგენს პუნქტების რაოდენობა. 43 00:02:14,290 --> 00:02:18,180 >> და ბოლოს, ჩვენ მითითებული ეტიკეტზე რომ სიმებიანი. 44 00:02:18,180 --> 00:02:22,820 და მაშინ ჩვენ გვჭირდება ცენტრში ეტიკეტების იმ შემთხვევაში, თუ ჩვენ წავიდა ცხრიდან 10 45 00:02:22,820 --> 00:02:24,920 ქულები და ჩვენ გადავიდა იგი. 46 00:02:24,920 --> 00:02:29,330 ასე რომ, ჩვენ გამოვთვალოთ x და y-კოორდინატები ეტიკეტების რომელიც 47 00:02:29,330 --> 00:02:30,765 კიდევ სიგანე და სიმაღლე ფანჯარა. 48 00:02:30,765 --> 00:02:34,010 მიუხედავად იმისა, რომ ჩვენ შეგვიძლია აგრეთვე უბრალოდ გამოიყენოთ მუდმივები სიგანე და სიმაღლე hash 49 00:02:34,010 --> 00:02:35,290 განსაზღვრული up დაბრუნება. 50 00:02:35,290 --> 00:02:38,220 ჩვენ ასევე მიიღოს სიგანე და სიმაღლე ეტიკეტების და ყოფს 51 00:02:38,220 --> 00:02:40,160 რომ 2 ცენტრში. 52 00:02:40,160 --> 00:02:43,530 და მაშინ ჩვენ ვიყენებთ Set საიდან რეალურად ამას რომ ადგილმდებარეობა. 53 00:02:43,530 --> 00:02:45,830 ასე რომ, ეს init scoreboard. 54 00:02:45,830 --> 00:02:46,320 >> OK. 55 00:02:46,320 --> 00:02:50,390 ასე რომ init ბურთი იქნება ძალიან გავს რომ init paddles ასევე. 56 00:02:50,390 --> 00:02:55,700 ჩვენ ვხედავთ, რომ ჩვენ გამოყენებით newgoval რათა instantiate ახალი ბურთი. 57 00:02:55,700 --> 00:03:00,810 და აქ ჩვენ გამოყენებით 2 ჯერ რადიუსში როგორც სიგანე ბურთი და 2 58 00:03:00,810 --> 00:03:03,140 ჯერ რადიუსი, როგორც სიმაღლე დაადასტურა. 59 00:03:03,140 --> 00:03:07,240 ახლა, ასევე newgoval, x და y-კოორდინირება, რომ ჩვენ კორიდორი ხდება 60 00:03:07,240 --> 00:03:10,220 ეხება ზედა მარცხენა ბურთი, რომელიც რეალურად 61 00:03:10,220 --> 00:03:11,910 გარეთ ბურთი თავად. 62 00:03:11,910 --> 00:03:15,510 რათა მიიღოს ბურთი ზუსტად ორიენტირებული ფორუმში, ჩვენ უნდა გაიაროს 63 00:03:15,510 --> 00:03:20,730 სიგანე იყოფა 2 ცენტრი და მაშინ სხვაობა out რადიუსი დააყენებს 64 00:03:20,730 --> 00:03:23,350 ფაქტობრივი ცენტრში ბურთი შევიდა ცენტრში ფორუმში. 65 00:03:23,350 --> 00:03:26,810 და ჩვენ ყველაფერს ზუსტად იგივე რამ რომ y-ღერძი, გარდა გამოყენებით 66 00:03:26,810 --> 00:03:28,490 სიმაღლე ნაცვლად სიგანე. 67 00:03:28,490 --> 00:03:30,890 >> ასე რომ განათავსებს ბურთი ცენტრში. 68 00:03:30,890 --> 00:03:35,910 და ეს instantiates ბურთი, მითითებული ფერი შავი, შეავსოთ ბურთი, 69 00:03:35,910 --> 00:03:37,960 მაშინ საბოლოოდ დაამატოთ ეს ფანჯარა და დაბრუნება. 70 00:03:37,960 --> 00:03:40,700 და რომ ეს ინიციალიზებისას დაადასტურა. 71 00:03:40,700 --> 00:03:44,420 >> ახლა მოდით შევხედოთ init აგური, რომელიც ოდნავ მეტი 72 00:03:44,420 --> 00:03:47,840 რთული, მაგრამ ეს საკმაოდ მსგავსი init paddle. 73 00:03:47,840 --> 00:03:51,400 ახლა, პირველ რიგში, ჩვენ უნდა გაერკვნენ სიგანე თითოეული აგურის. 74 00:03:51,400 --> 00:03:54,610 გახსოვდეთ, რომ ჩვენ გვაქვს მუდმივი მოუწოდა ზარი, რომელიც განსაზღვრავს 75 00:03:54,610 --> 00:03:56,860 მწკრივების რიცხვი აგური რომელიც ჩვენ გაგვაჩნია. 76 00:03:56,860 --> 00:04:01,010 ასე რომ, ჩვენ ვაპირებთ, რათა დადგინდეს, სიგანე ერთი აგურის აღების სიგანე 77 00:04:01,010 --> 00:04:04,340 მთელი ფორუმში, გამოკლება out ზომა ჩვენი უფსკრული - 78 00:04:04,340 --> 00:04:07,310 რომელიც hash განსაზღვრული up თავზე და ეხება რაოდენობის pixels, რომ 79 00:04:07,310 --> 00:04:09,490 უნდა იყოს თითოეული აგურის - 80 00:04:09,490 --> 00:04:14,910 და ამიტომ ჩვენ ვაპირებთ აქვს სულ უფსკრული ჯერ მოუწოდებს ცარიელი პიქსელი 81 00:04:14,910 --> 00:04:16,360 ერთი row. 82 00:04:16,360 --> 00:04:20,450 და რომელიც ასევე ეხება ზოგიერთი ცარიელი pixels მარცხნივ და მარჯვნივ 83 00:04:20,450 --> 00:04:22,850 მარცხენა სვეტი და მარჯვენა სვეტში აგურის. 84 00:04:22,850 --> 00:04:26,990 >> ასე რომ სხვაობა იმ ცარიელი pixels ტოვებს us რიგი pixels, რომ 85 00:04:26,990 --> 00:04:28,530 აგურის რეალურად გამოყენებით. 86 00:04:28,530 --> 00:04:32,900 და მაშინ ჩვენ გავყოთ ზარების მისაღებად ნომერი pixels per აგურის. 87 00:04:32,900 --> 00:04:37,800 ასე რომ აქ ჩვენ განსაზღვრავს მასივი რომ მხოლოდ განსაზღვრავს ფერები გვინდა, თითოეული 88 00:04:37,800 --> 00:04:39,140 გრაფაში აგური. 89 00:04:39,140 --> 00:04:42,680 თუ ჩვენ გვქონდა უფრო რიგები აგური, ვიდრე ფერები, რომ ჩვენ მითითებული, ჩვენ დავინახავთ 90 00:04:42,680 --> 00:04:45,980 რომ ჩვენ უბრალოდ loop უკან გარშემო და გამოყენება red კიდევ ერთხელ, და შემდეგ ფორთოხლის და 91 00:04:45,980 --> 00:04:47,680 ყვითელი და ასე შემდეგ. 92 00:04:47,680 --> 00:04:52,490 >> ასე რომ, როგორც p განხორციელება სპეც მინიშნებები, ჩვენ ვართ აპირებს loop მთელი რიგები და 93 00:04:52,490 --> 00:04:54,590 სვეტების აგური. 94 00:04:54,590 --> 00:04:58,490 მაგრამ სანამ ჩვენ loop მეტი სვეტები, ჩვენ აქ რომ ჩვენ სასურველი 95 00:04:58,490 --> 00:05:02,030 y პოზიცია ყოველი აგურის ამ კონკრეტულ row. 96 00:05:02,030 --> 00:05:06,410 ჩვენ შეგვიძლია აგრეთვე გადაადგილება ამ მეორე მარყუჟი, მაგრამ მაშინ ჩვენ უბრალოდ უნდა იყოს 97 00:05:06,410 --> 00:05:09,640 აკეთებს გაანგარიშება მეტი და მეტი ერთხელ, როდესაც ჩვენ არ უნდა. 98 00:05:09,640 --> 00:05:13,810 >> ასე რომ y პოზიცია აგურის აპირებს უნდა იყოს ზღვარი, რომელიც hash 99 00:05:13,810 --> 00:05:17,830 განსაზღვრული up დაბრუნება და მხოლოდ ეხება შორის სივრცე ზევით გამგეობისა და 100 00:05:17,830 --> 00:05:19,910 დაწყების ყველა აგური. 101 00:05:19,910 --> 00:05:24,370 და ჩვენ ვაპირებთ დავამატოთ, რომ ზედიზედ რომ ჩვენ შესახებ ჯერ სიმაღლე 102 00:05:24,370 --> 00:05:28,420 ინდივიდუალური აგურის plus უფსკრული რომ არის შორის აგურის. 103 00:05:28,420 --> 00:05:31,640 ასე რომ, ეს არის ასევე ვერტიკალური უფსკრული თითოეული აგურის. 104 00:05:31,640 --> 00:05:34,000 ასე რომ გვაძლევს y-კოორდინაცია აგურის. 105 00:05:34,000 --> 00:05:38,170 >> ასე რომ, აქ ჩვენ ვაპირებთ გამოთვლა x-კოორდინაციას აგურის. 106 00:05:38,170 --> 00:05:42,050 ახლა, ჩვენ უფსკრული იყოფა 2 რადგან, მახსოვს, ადრე, მე ვთქვი, რომ 107 00:05:42,050 --> 00:05:45,020 მარცხენა მხარეს ფორუმში, ჩვენ ვაპირებთ დატოვოს პატარა სივრცეში. 108 00:05:45,020 --> 00:05:47,630 ასე რომ უფსკრული იყოფა 2 არის, რომ სივრცეში. 109 00:05:47,630 --> 00:05:51,950 და მაშინ ჩვენ დასძინა, რომ სვეტი რომ ჩვენ შესახებ ჯერ სიგანე პლუს 110 00:05:51,950 --> 00:05:55,150 უფსკრული, სადაც სიგანე თანხის სივრცეში რომ ერთი აგურის იკავებს და 111 00:05:55,150 --> 00:05:58,510 მაშინ უფსკრული არის სივრცე შორის ყოველი აგურის. 112 00:05:58,510 --> 00:06:00,700 ასე რომ ითვლის x-კოორდინაცია აგურის. 113 00:06:00,700 --> 00:06:04,890 >> ახლა ჩვენ უბრალოდ უნდა instantiate აგურის რომ x და y-კოორდინაცია 114 00:06:04,890 --> 00:06:09,120 გამოყენებით სიგანე რომ ჩვენ გამოითვლება თითოეული აგურის, და შესვენების სიმაღლე, რომელიც 115 00:06:09,120 --> 00:06:10,800 hash განსაზღვრული up დაბრუნება. 116 00:06:10,800 --> 00:06:12,420 ჩვენ დავსახეთ ფერის აგურის. 117 00:06:12,420 --> 00:06:15,790 გაითვალისწინეთ, რომ ჩვენ ჩვენი ფერები მასივი და ჩვენ ავლით ზედიზედ რომ იყო 118 00:06:15,790 --> 00:06:19,760 on mod num ფერები რომელიც აპირებს us გადაიტანოთ უკან გარშემო წითელი თუ ჩვენ 119 00:06:19,760 --> 00:06:22,140 აქვს უფრო რიგები, ვიდრე ფერები. 120 00:06:22,140 --> 00:06:25,020 და ბოლოს, ჩვენ შეავსოთ აგურის ფერი და დაამატოთ ეს ფანჯარა. 121 00:06:25,020 --> 00:06:26,440 >> და რომ არის ის. 122 00:06:26,440 --> 00:06:30,190 ასე რომ, ეს ყველა ჩვენი ინიციალიზაცია მეთოდები. 123 00:06:30,190 --> 00:06:33,200 ახლა ჩვენ უნდა შევხედოთ, რომ სანამ loop, რომ თქვენ უნდა შეავსოთ შემოსული 124 00:06:33,200 --> 00:06:39,000 ასე რომ, აქ ჩვენ ვხედავთ, რომ ეს არის ჩვენი, ხოლო loop რომ აპირებს გაგრძელდება 125 00:06:39,000 --> 00:06:42,250 თამაში მთავრდება, რომელიც არც საშუალება ჩვენ ამოიწურა სიცოცხლეს ან 126 00:06:42,250 --> 00:06:43,910 ჩვენ ამოიწურა აგური. 127 00:06:43,910 --> 00:06:46,390 >> ასე რომ, პირველი, რაც ჩვენ არის Wait for დაჭერით. 128 00:06:46,390 --> 00:06:51,380 ასე რომ თამაში ელოდება us რეალურად დააწკაპუნეთ სანამ ბურთი იწყება მოძრავი. 129 00:06:51,380 --> 00:06:53,340 და მაშინ ჩვენ ვაპირებთ to decrement ცხოვრებაში. 130 00:06:53,340 --> 00:06:56,710 ასე რომ, თუ ჩვენ გვქონდა სამი სიცოცხლე, ახლა ჩვენ ქვემოთ ორი სიცოცხლე, ჩვენ ჩვენი 131 00:06:56,710 --> 00:06:58,160 მესამე სიცოცხლე. 132 00:06:58,160 --> 00:06:59,920 ჩვენ ვაპირებთ ცენტრი დაადასტურა. 133 00:06:59,920 --> 00:07:05,180 ახლა, ეს ნამდვილად არ აპირებს დაეხმაროს კონტაქტი პირველივე ცხოვრებაში ჩვენ ითამაშოს 134 00:07:05,180 --> 00:07:07,910 მას შემდეგ, რაც ბურთი უკვე აპირებს უკვე ორიენტირებული, როდესაც ჩვენ 135 00:07:07,910 --> 00:07:09,010 instantiated იგი. 136 00:07:09,010 --> 00:07:12,910 მაგრამ ჩვენ ვხედავთ, როდესაც ჩვენ დასრულდება მდე დაკარგვის ცხოვრება და loop უკან გარშემო, მაშინ ჩვენ 137 00:07:12,910 --> 00:07:15,800 აპირებს გვინდა recenter ბურთი ბოლოში ფორუმში დაბრუნება 138 00:07:15,800 --> 00:07:17,130 ცენტრი. 139 00:07:17,130 --> 00:07:21,840 >> ასე რომ, ახლა აქ ჩვენ უნდა გენერირება x სიჩქარე დაადასტურა. 140 00:07:21,840 --> 00:07:26,060 და, როგორც თითო Spec, ჩვენ გამოყენებით d rand 48 გენერირება შემთხვევითი ნომერი 141 00:07:26,060 --> 00:07:27,820 მიუთითოთ სიჩქარე. 142 00:07:27,820 --> 00:07:31,130 ჩვენ დასძინა ერთი, რომ რადგან ჩვენ მხოლოდ მინდა სიჩქარის დიაპაზონი ერთი 143 00:07:31,130 --> 00:07:33,380 ორ ნაცვლად ნულოვანი ერთი. 144 00:07:33,380 --> 00:07:37,415 და ბოლოს, ჩვენ გამოყენებით d rand 48 ისევ რათა დადგინდეს, თუ არა ბურთი 145 00:07:37,415 --> 00:07:40,490 აპირებს გადავიდეს მარცხნივ ან უფლება უნდა დაიწყოს. 146 00:07:40,490 --> 00:07:45,310 >> ასე d rand 48 დააბრუნებს შემთხვევითი რიცხვების შორის ნულოვანი და ერთი, და ამიტომ ითხოვს 147 00:07:45,310 --> 00:07:50,330 თუ ეს ნაკლებია, ვიდრე 0.5, ჩვენ გვაქვს 50 50 შანსი გადასვლის სიჩქარე 148 00:07:50,330 --> 00:07:52,740 ბურთი იყოს უარყოფითი. 149 00:07:52,740 --> 00:07:55,790 და ბოლოს, ჩვენ მითითებული ვერტიკალური სიჩქარე ბურთი იყოს მხოლოდ გარკვეული მუდმივი. 150 00:07:55,790 --> 00:07:57,550 ვირჩევთ სამი. 151 00:07:57,550 --> 00:07:59,300 და ახლა ჩვენ გვაქვს კიდევ ერთი მარყუჟი. 152 00:07:59,300 --> 00:08:02,800 >> ასე რომ, ეს შიდა loop არის გავაგრძელებთ. 153 00:08:02,800 --> 00:08:04,960 ყურადღება მიაქციეთ, რომ აქ, ხოლო აგური მეტია zero - 154 00:08:04,960 --> 00:08:07,100 ასე რომ, თუ ჩვენ ამოიწურა აგური, ჩვენ მოიგო თამაში და ჩვენ შეგვიძლია 155 00:08:07,100 --> 00:08:08,770 დაარღვიოს ამ loop - 156 00:08:08,770 --> 00:08:13,140 და ყველა ოჯახის y Ball ნაკლები სიმაღლე მინუს 2 ჯერ რადიუსში. 157 00:08:13,140 --> 00:08:17,310 რა ეს აღიარება არის თუ ბურთი ხდება წასვლა წარსულში paddle, in 158 00:08:17,310 --> 00:08:19,500 ასეთ შემთხვევაში თქვენ დაკარგავთ ცხოვრებაში. 159 00:08:19,500 --> 00:08:23,500 >> ეძებს შიგნით ამ loop ჩვენ შემოწმების მაუსის ღონისძიება. 160 00:08:23,500 --> 00:08:27,530 ასე რომ, თუ არ არსებობს მაუსის ღონისძიება, რომელიც იმას ნიშნავს, რომ ჩვენ გვინდა, რომ შეამოწმოს 161 00:08:27,530 --> 00:08:30,880 თუ მაუსის გადავიდა, და თუ მაუსის გადაიყვანეს, ჩვენ გვინდა, რომ გვქონდეს 162 00:08:30,880 --> 00:08:33,210 paddle შეინარჩუნოს ერთად მაუსის. 163 00:08:33,210 --> 00:08:38,789 ასე რომ, ამის გაკეთება, ჩვენ გამოვთვალოთ new პოზიცია paddle, რომელიც აპირებს 164 00:08:38,789 --> 00:08:42,900 დაიბრუნოს პოზიცია mouse - რომელიც grabs პოზიცია გამოყენებით 165 00:08:42,900 --> 00:08:44,890 ღონისძიება, რომელიც ჩვენ ჩააბარა - 166 00:08:44,890 --> 00:08:48,940 და მაშინ ჩვენ ვაპირებთ გამოვაკლოთ out paddle სიგანე იყოფა 2, ასე რომ, 167 00:08:48,940 --> 00:08:54,240 paddle რჩება ორიენტირებული მაუსი ნაცვლად, მარცხენა ფლანგზე paddle 168 00:08:54,240 --> 00:08:55,740 დარჩენის ორიენტირებული. 169 00:08:55,740 --> 00:09:00,750 >> ასე რომ, ახლა ჩვენ ასევე გვინდა ვიყოთ დარწმუნებული, რომ ჩვენ არ წავიდეთ მეტი მარცხენა ან მარჯვენა 170 00:09:00,750 --> 00:09:01,740 მხარეს ფორუმში. 171 00:09:01,740 --> 00:09:05,480 და ა.შ. აქ ჩვენ უბრალოდ შემოწმების თუ paddle იქნება off მარცხენა მხარეს 172 00:09:05,480 --> 00:09:08,370 ფორუმში, მხოლოდ გამყარებაში მას მარცხენა მხარეს. 173 00:09:08,370 --> 00:09:11,000 და აქ ჩვენ შემოწმების თუ paddle იქნება მეტი მარჯვენა მხარეს 174 00:09:11,000 --> 00:09:13,600 საბჭო, მხოლოდ გამყარებაში მას მარჯვენა მხარეს. 175 00:09:13,600 --> 00:09:17,290 და ბოლოს, ჩვენ რეალურად მითითებული მდებარეობა paddle. 176 00:09:17,290 --> 00:09:20,610 >> ახლა, თუ არ იყო მაუსის მოძრაობა, ეს ნიშნავს, რომ ჩვენ ვაპირებთ 177 00:09:20,610 --> 00:09:21,900 გსურთ გადაადგილება დაადასტურა. 178 00:09:21,900 --> 00:09:24,260 ასე რომ, ჩვენ უკვე გვაქვს x და y სიჩქარე ბურთი 179 00:09:24,260 --> 00:09:25,560 და ამიტომ ჩვენ გადატანა. 180 00:09:25,560 --> 00:09:27,750 მაგრამ ახლა ჩვენ გვინდა აღმოაჩინოს რამდენიმე რამ. 181 00:09:27,750 --> 00:09:31,950 ასე რომ აქ ჩვენ გამოვლენის შემთხვევაში, თუ ჩვენ მოხვდა ან მარცხენა ან მარჯვენა მხარეს 182 00:09:31,950 --> 00:09:34,240 საბჭო, გვინდა, რომ ბურთი Bounce. 183 00:09:34,240 --> 00:09:39,790 ასე რომ, ამ შემთხვევაში, ჩვენ დავსახეთ x სიჩქარე უარყოფითი x სიჩქარე. 184 00:09:39,790 --> 00:09:43,900 >> იმ შემთხვევაში, თუ ბურთი მოხვდა ზედა ფორუმში, მაშინ ჩვენ ასევე გვინდა, რომ ბურთი Bounce. 185 00:09:43,900 --> 00:09:46,750 მაგრამ ახლა ჩვენ გვინდა, რომ შეიცვალოს y სიჩქარე. 186 00:09:46,750 --> 00:09:49,130 გაითვალისწინეთ, რომ ჩვენ არ გვაქვს პირობა ბურთი hitting ბოლოში 187 00:09:49,130 --> 00:09:53,230 board მას შემდეგ უკვე ტყვედ აქ ამ ხოლო loop. 188 00:09:53,230 --> 00:09:56,630 >> და ბოლოს, ჩვენ გვინდა, რომ აღმოაჩინოს ზოგიერთი შეჯახება, სადაც თუ ბურთი მოხვდა 189 00:09:56,630 --> 00:10:01,040 ან paddle ან აგურის, ჩვენ გვინდა დაკავდით განსაკუთრებულ შემთხვევაში რამ. 190 00:10:01,040 --> 00:10:06,590 ასე რომ, თუ არ იყო შეჯახება, რომელშიც შემთხვევაში ობიექტი არ იქნება null, მაშინ, 191 00:10:06,590 --> 00:10:10,950 თუ ობიექტი მოხვდა paddle, რომ ჩვენ უბრალოდ გვინდა Bounce ბურთი. 192 00:10:10,950 --> 00:10:16,110 და აქ, ასევე ჩვენ მითითებული მდებარეობა ბურთი მაღლა paddle. 193 00:10:16,110 --> 00:10:19,710 გაითვალისწინეთ, რომ ჩვენ აღების x თანამდებობაზე ბურთი და მხოლოდ reusing რომ. 194 00:10:19,710 --> 00:10:23,250 მაგრამ აქ ჩვენ ვიღებთ y პოზიცია საქართველოს paddle და მოძრავი ბურთი 195 00:10:23,250 --> 00:10:24,620 ზემოთ paddle. 196 00:10:24,620 --> 00:10:28,070 >> ეს არის განსაკუთრებული შემთხვევა ისე, რომ ბურთი არ მოხვდა paddle და შემდეგ, 197 00:10:28,070 --> 00:10:31,530 სანამ შეუძლია გადაადგილება off paddle, სხვა loop მიდის გარშემო და 198 00:10:31,530 --> 00:10:34,830 იგი მიიჩნევს, რომ ეს ჯერ კიდევ პანელზე და ასე რომ y სიჩქარე იღებს დაუბრუნდნენ 199 00:10:34,830 --> 00:10:38,210 უარყოფითი და შემდეგ ბურთი უბრალოდ სახის ჩხირები bouncing on paddle. 200 00:10:38,210 --> 00:10:42,510 ასე რომ, თუ ჩვენ არ მოხვდა paddle, მაშინ ჩვენ ასევე გვინდა შევამოწმოთ 201 00:10:42,510 --> 00:10:43,930 თუ ჩვენ მოხვდა აგურის. 202 00:10:43,930 --> 00:10:47,030 და ა.შ. ეს არის, თუ როგორ შეგვიძლია შემოწმება თუ ჩვენ მოხვდა აგურის. 203 00:10:47,030 --> 00:10:50,250 >> ჩვენ უნდა შევამოწმოთ ეს იმიტომ, რომ ჩვენ შეიძლება რეალურად მოხვდა label და ჩვენ 204 00:10:50,250 --> 00:10:52,320 არ მინდა ამოიღონ იარლიყი. 205 00:10:52,320 --> 00:10:57,120 ასე რომ, თუ ჩვენ მოხვდა აგურის, ჩვენ შეგვიძლია ამოიღონ, რომ აგურის ფანჯრიდან, decrement 206 00:10:57,120 --> 00:11:01,170 ჩვენი გრაფი აგურის, გავზარდოთ ჩვენი პუნქტების რაოდენობა და ახლა ჩვენ უნდა 207 00:11:01,170 --> 00:11:05,410 განაახლოთ scoreboard სწორედ იგივე, რაც ჩვენ ვნახეთ ადრე, როცა დავინახეთ, 208 00:11:05,410 --> 00:11:06,300 init scoreboard. 209 00:11:06,300 --> 00:11:08,790 მაგრამ ახლა ჩვენ უბრალოდ განახლება მატჩის რადგან ჩვენ შეიცვალა 210 00:11:08,790 --> 00:11:09,370 პუნქტების რაოდენობა. 211 00:11:09,370 --> 00:11:12,180 და ეს ახლა უნდა არიან, რომ ჩვენ მოხვდა კიდევ ერთი შესვენება. 212 00:11:12,180 --> 00:11:16,320 >> და ბოლოს, თუ ჩვენ მოხვდა აგურის ჩვენ ასევე გვინდა Bounce. 213 00:11:16,320 --> 00:11:21,240 ასე რომ, საბოლოოდ, ჩვენ პაუზის მხოლოდ ისე, რომ ბურთი არ არის მოძრავი სუპერ სწრაფი და ჩვენ 214 00:11:21,240 --> 00:11:24,360 შეიძლება რეალურად მოხვდა იგი ჩვენს paddle. 215 00:11:24,360 --> 00:11:25,910 და ეს საკმაოდ ბევრი იყო. 216 00:11:25,910 --> 00:11:32,200 ასე რომ, ახლა ჩვენ გვინდა loop თავში დაბრუნება ეს მაშინ, როცა მარყუჟის და გაგრძელდება მანამ, სანამ 217 00:11:32,200 --> 00:11:35,700 ან ჩვენ დაკარგავთ ცხოვრებაში ან ჩვენ ამოიწურა აგური. 218 00:11:35,700 --> 00:11:37,300 >> რა მოხდება, თუ ჩვენ დაკარგავთ ცხოვრებაში? 219 00:11:37,300 --> 00:11:41,870 მაშინ ჩვენ ვაპირებთ გასასვლელად ეს მაშინ, როცა loop, და ვნახავთ, ნება loop უკან 220 00:11:41,870 --> 00:11:45,110 ყველაზე გარე, ხოლო loop. 221 00:11:45,110 --> 00:11:48,740 ამ შემთხვევაში, ჩვენ ვაპირებთ შეასრულოს ამ წყობის ისევ. 222 00:11:48,740 --> 00:11:52,010 და ამ წყობის აპირებს us დაველოდოთ ერთი დაჭერით, decrement ჩვენი 223 00:11:52,010 --> 00:11:56,060 სიცოცხლე, recenter ბურთი, recalculate x და y სიჩქარე, და 224 00:11:56,060 --> 00:11:57,670 მაშინ განაახლებს თამაში. 225 00:11:57,670 --> 00:12:01,490 >> და ისე, რომ გაგრძელდება მანამ, სანამ ან აგურის მთავრდება მყოფი ნაკლები 226 00:12:01,490 --> 00:12:02,540 ან ტოლია zero - 227 00:12:02,540 --> 00:12:04,630 ამ შემთხვევაში ჩვენ თეთრებმა თამაში - 228 00:12:04,630 --> 00:12:10,430 ან ცხოვრების ნაკლებია, ვიდრე ნულოვანი, რომელშიც საქმე დავკარგეთ თამაშის. 229 00:12:10,430 --> 00:12:15,190 ასე რომ, კიდევ ერთხელ, რომ იმ შემთხვევაში, ჩვენ შესვენება out რომ ხოლო მარყუჟის, და მივაღწევთ აქ 230 00:12:15,190 --> 00:12:17,660 სადაც ჩვენ ვაპირებთ დაველოდოთ click ადრე არსებული თამაშში ისე, რომ 231 00:12:17,660 --> 00:12:20,140 თამაში არ მხოლოდ მაშინვე დახურვა ჩვენზე. 232 00:12:20,140 --> 00:12:23,420 და ბოლოს, ჩვენ დახურვა ფანჯარა და რომ არის ის. 233 00:12:23,420 --> 00:12:25,500 ჩემი სახელი არის რობ, და ეს იყო Breakout. 234 00:12:25,500 --> 00:12:30,592