1 00:00:00,000 --> 00:00:11,870 2 00:00:11,870 --> 00:00:12,530 >> ROB BOWDEN: Hej. 3 00:00:12,530 --> 00:00:13,510 Jag är Rob. 4 00:00:13,510 --> 00:00:15,140 Undrar hur man ska genomföra det här spelet? 5 00:00:15,140 --> 00:00:18,400 Nåväl, låt oss bryta ut personalen lösning. 6 00:00:18,400 --> 00:00:21,890 >> Så, låt oss först gå ner till init funktioner som vi berättat att 7 00:00:21,890 --> 00:00:24,380 genomföra först. 8 00:00:24,380 --> 00:00:30,602 Först ska vi ta en titt på det är init paddla. 9 00:00:30,602 --> 00:00:34,550 Okej, så kom ihåg att vi vill ha det paddla vara exakt centrerad i 10 00:00:34,550 --> 00:00:35,870 x-axeln. 11 00:00:35,870 --> 00:00:39,000 Så vi måste ta reda på där det ska gå. 12 00:00:39,000 --> 00:00:42,650 >> Med tanke på bredden i styrelsen - som är också hash definieras upp topp - 13 00:00:42,650 --> 00:00:46,380 Vi måste dra ut paddeln bredden och dividera med två, så att den 14 00:00:46,380 --> 00:00:48,960 centrum av skoveln är i mitten av brädet. 15 00:00:48,960 --> 00:00:53,170 Kom ihåg att x-koordinaten hänför sig till det övre vänstra hörnet av paddeln, 16 00:00:53,170 --> 00:00:56,210 och så det här är precis där Vi vill att det ska vara. 17 00:00:56,210 --> 00:00:59,950 Y-koordinaten spelar ingen roll så mycket att vi kan placera 18 00:00:59,950 --> 00:01:01,800 det var vi vill. 19 00:01:01,800 --> 00:01:07,080 Så vi instansiera paddeln, vi satt färgen svart, vi satt fyll till True 20 00:01:07,080 --> 00:01:11,240 så det är en ifylld rektangel, och vi sedan lägga till den i fönstret och retur 21 00:01:11,240 --> 00:01:12,170 paddeln. 22 00:01:12,170 --> 00:01:14,540 Och det är det för att initiera paddeln. 23 00:01:14,540 --> 00:01:17,480 >> Det kommer att vara liknande för init resultattavlan. 24 00:01:17,480 --> 00:01:21,950 Så vi kommer att initiera etiketten, vi kommer att ställa in färgen på 25 00:01:21,950 --> 00:01:25,180 ljusgrå - du kan välja vad du vill - vi kommer att ställa in teckensnittet till 26 00:01:25,180 --> 00:01:26,700 sans serif 48 - 27 00:01:26,700 --> 00:01:28,630 kan också välja vad du vill - 28 00:01:28,630 --> 00:01:30,180 vi ska lägga till den i fönstret. 29 00:01:30,180 --> 00:01:34,760 Nu är detta längst bak är inte riktigt behövs, det är bara i fall något 30 00:01:34,760 --> 00:01:37,010 annat händer för att överlappa etiketten. 31 00:01:37,010 --> 00:01:40,680 Sedan när vi använder Detect Kollision, Identifiera Kollision kommer att upptäcka andra 32 00:01:40,680 --> 00:01:42,380 sak innan den upptäcker etiketten. 33 00:01:42,380 --> 00:01:45,670 Men som egentligen inte borde påverka oss i detta program. 34 00:01:45,670 --> 00:01:48,720 >> Slutligen har vi den här resultattavlan Update funktion som vi skrev. 35 00:01:48,720 --> 00:01:51,020 Så låt oss ta en titt på det. 36 00:01:51,020 --> 00:01:54,590 Nu, här ser vi något som är nästan identisk med vad som 37 00:01:54,590 --> 00:01:56,930 vi såg i label.c. 38 00:01:56,930 --> 00:01:59,100 Så vi har en etikett - 39 00:01:59,100 --> 00:02:03,540 en karaktär buffert av 12 tecken, vilket är precis tillräckligt för att hantera alla 40 00:02:03,540 --> 00:02:05,920 heltal, negativ eller positiv. 41 00:02:05,920 --> 00:02:10,310 Då använder vi sprintf att kopiera pekar i denna buffert. 42 00:02:10,310 --> 00:02:14,290 Så är det här innehåller en sträng som representerar antalet poäng. 43 00:02:14,290 --> 00:02:18,180 >> Slutligen, vi satt etiketten till den strängen. 44 00:02:18,180 --> 00:02:22,820 Och då behöver vi för att centrera etiketten ifall vi har gått från nio till 10 45 00:02:22,820 --> 00:02:24,920 Parlamentet och vi har skiftat det. 46 00:02:24,920 --> 00:02:29,330 Så vi beräkna x-och y-koordinater av etiketten som kommer 47 00:02:29,330 --> 00:02:30,765 få bredd och höjden av fönstret. 48 00:02:30,765 --> 00:02:34,010 Även om, kan vi också använda det Konstant Bredd och höjd hash 49 00:02:34,010 --> 00:02:35,290 definieras där uppe. 50 00:02:35,290 --> 00:02:38,220 Vi får också den bredd och höjd Etikettens och dividera 51 00:02:38,220 --> 00:02:40,160 att genom att 2 till centrum. 52 00:02:40,160 --> 00:02:43,530 Och då använder vi Set plats att faktiskt lägga den på den platsen. 53 00:02:43,530 --> 00:02:45,830 Så det är det för init resultattavlan. 54 00:02:45,830 --> 00:02:46,320 >> OK. 55 00:02:46,320 --> 00:02:50,390 Så init bollen kommer att vara mycket lika att init paddlar också. 56 00:02:50,390 --> 00:02:55,700 Vi ser här att vi använder newgoval för att instansiera en ny boll. 57 00:02:55,700 --> 00:03:00,810 Och här vi använder 2 gånger radie som bredden på bollen, och två 58 00:03:00,810 --> 00:03:03,140 gånger radien som den höjden på bollen. 59 00:03:03,140 --> 00:03:07,240 Nu även för newgoval, x-och y-koordinat som vi passerar i går 60 00:03:07,240 --> 00:03:10,220 att hänvisa till upp till vänster i boll, som faktiskt är 61 00:03:10,220 --> 00:03:11,910 utanför kulan själv. 62 00:03:11,910 --> 00:03:15,510 Så för att få bollen exakt centrerad i styrelsen, måste vi passera 63 00:03:15,510 --> 00:03:20,730 bredd delat med 2 för centrum, och sedan subtrahera ut radien för att driva 64 00:03:20,730 --> 00:03:23,350 faktiskt centrum av bollen i mitten av brädet. 65 00:03:23,350 --> 00:03:26,810 Och vi gör exakt samma sak för y-axeln, med undantag av att 66 00:03:26,810 --> 00:03:28,490 höjd i stället för bredden. 67 00:03:28,490 --> 00:03:30,890 >> Så som placerar bollen i mitten. 68 00:03:30,890 --> 00:03:35,910 Och detta instansierar bollen, ställ in färg till svart, fyll i bollen, 69 00:03:35,910 --> 00:03:37,960 sedan slutligen lägga till det i fönster och lämna tillbaka den. 70 00:03:37,960 --> 00:03:40,700 Och det är det för att initiera bollen. 71 00:03:40,700 --> 00:03:44,420 >> Så nu ska vi ta en titt på init tegel vilket är något mer 72 00:03:44,420 --> 00:03:47,840 komplicerat, men det är ganska liknar init paddla. 73 00:03:47,840 --> 00:03:51,400 Nu, först måste vi ta reda på bredden på varje tegelsten. 74 00:03:51,400 --> 00:03:54,610 Kom ihåg att vi har en konstant som kallas samtal som specificerar 75 00:03:54,610 --> 00:03:56,860 antalet kolumner av tegel att vi har. 76 00:03:56,860 --> 00:04:01,010 Så, ska vi bestämma bredden av en enda tegelsten genom att bredden 77 00:04:01,010 --> 00:04:04,340 av hela styrelsen, subtrahera ut storleken på vår gap - 78 00:04:04,340 --> 00:04:07,310 som hash definierad upp topp och hänvisar till det antal bildpunkter som 79 00:04:07,310 --> 00:04:09,490 ska vara mellan varje tegelsten - 80 00:04:09,490 --> 00:04:14,910 och så kommer vi att ha totalt gap gånger kallar tomma bildpunkter i en 81 00:04:14,910 --> 00:04:16,360 enda rad. 82 00:04:16,360 --> 00:04:20,450 Och det kommer också att hänvisa till några tom pixlar till vänster och höger om 83 00:04:20,450 --> 00:04:22,850 den vänstra kolumnen och höger kolumn tegel. 84 00:04:22,850 --> 00:04:26,990 >> Så dra ut de tomma pixlar lämnar oss med ett antal pixlar som 85 00:04:26,990 --> 00:04:28,530 tegel faktiskt använder. 86 00:04:28,530 --> 00:04:32,900 Och så delar vi med samtal för att få antalet pixlar per tegel. 87 00:04:32,900 --> 00:04:37,800 Så här definierar vi en array som bara specificerar de färger vi vill ha för varje 88 00:04:37,800 --> 00:04:39,140 raden av tegel. 89 00:04:39,140 --> 00:04:42,680 Om vi ​​hade fler rader av tegelstenar än färger som vi specificerade, vi får se 90 00:04:42,680 --> 00:04:45,980 att vi ska bara slinga tillbaka runt och använda rött igen, och sedan orange och 91 00:04:45,980 --> 00:04:47,680 gult och så vidare. 92 00:04:47,680 --> 00:04:52,490 >> Så, eftersom p-set spec tips, vi är gå till en slinga över alla rader och 93 00:04:52,490 --> 00:04:54,590 kolonner av tegelstenarna. 94 00:04:54,590 --> 00:04:58,490 Men innan vi slinga över kolumnerna, vi se här att vi specificerar 95 00:04:58,490 --> 00:05:02,030 y-läget för varje tegelsten i just den raden. 96 00:05:02,030 --> 00:05:06,410 Vi kunde också flytta denna till den andra för slinga, men då skulle vi bara vara 97 00:05:06,410 --> 00:05:09,640 gör beräkningen om och om igen när vi inte behöver. 98 00:05:09,640 --> 00:05:13,810 >> Så y-positionen av tegel kommer vara marginal, vilket är hash 99 00:05:13,810 --> 00:05:17,830 definierat upp topp och bara hänvisar till utrymme mellan toppen av styrelsen och 100 00:05:17,830 --> 00:05:19,910 starten av alla blocken. 101 00:05:19,910 --> 00:05:24,370 Och vi kommer att lägga till att raden att vi är på gånger höjden av en 102 00:05:24,370 --> 00:05:28,420 individuell tegel plus gapet som är mellan varje tegelsten. 103 00:05:28,420 --> 00:05:31,640 Så detta är också en vertikal Gapet mellan varje tegelsten. 104 00:05:31,640 --> 00:05:34,000 Så det ger oss y-koordinat av tegel. 105 00:05:34,000 --> 00:05:38,170 >> Så här ska vi beräkna x-koordinat för tegel. 106 00:05:38,170 --> 00:05:42,050 Nu har vi gap delat med 2 sedan, minns tidigare, sa jag att i 107 00:05:42,050 --> 00:05:45,020 vänstra sidan av kortet, vi ska att lämna ett litet utrymme. 108 00:05:45,020 --> 00:05:47,630 Så gap delat med 2 är det utrymmet. 109 00:05:47,630 --> 00:05:51,950 Och sedan ska vi lägga till att kolumnen att vi är på tider bredd plus 110 00:05:51,950 --> 00:05:55,150 gap, där bredden är mängden utrymme att en enda tegelsten tar upp och 111 00:05:55,150 --> 00:05:58,510 då gapet är utrymmet mellan varje tegelsten. 112 00:05:58,510 --> 00:06:00,700 Så som beräknar x-koordinat av tegel. 113 00:06:00,700 --> 00:06:04,890 >> Nu behöver vi bara att instansiera tegel med tanke på att x-och y-koordinat 114 00:06:04,890 --> 00:06:09,120 med hjälp av bredd som vi beräknas för varje tegel och brotthöjd som är 115 00:06:09,120 --> 00:06:10,800 hash definieras där uppe. 116 00:06:10,800 --> 00:06:12,420 Vi sätter färg på tegel. 117 00:06:12,420 --> 00:06:15,790 Lägg märke till att vi använder våra färger array och vi passerar i rad som var 118 00:06:15,790 --> 00:06:19,760 på mod num färger som kommer att göra oss linda tillbaka runt till rött om vi 119 00:06:19,760 --> 00:06:22,140 har fler rader än färger. 120 00:06:22,140 --> 00:06:25,020 Slutligen kommer vi att fylla i tegel färg och lägg till den i fönstret. 121 00:06:25,020 --> 00:06:26,440 >> Och det är det. 122 00:06:26,440 --> 00:06:30,190 Så, det är det för alla våra initieringsmetoder. 123 00:06:30,190 --> 00:06:33,200 Nu måste vi titta på att medan loop som du var tvungen att fylla i. 124 00:06:33,200 --> 00:06:39,000 Så här ser vi att det här är vår stund loop som kommer att fortsätta tills 125 00:06:39,000 --> 00:06:42,250 spelet är över, vilka antingen medel vi får slut på liv eller 126 00:06:42,250 --> 00:06:43,910 Vi kör i sten. 127 00:06:43,910 --> 00:06:46,390 >> Så första vi måste är en Vänta klicka. 128 00:06:46,390 --> 00:06:51,380 Så spelet väntar oss att faktiskt klicka innan bollen börjar röra sig. 129 00:06:51,380 --> 00:06:53,340 Och sedan ska vi För att minska liv. 130 00:06:53,340 --> 00:06:56,710 Så om vi hade tre liv, nu är vi ner till två liv, vi använder våra 131 00:06:56,710 --> 00:06:58,160 tredje liv. 132 00:06:58,160 --> 00:06:59,920 Vi kommer att centrera bollen. 133 00:06:59,920 --> 00:07:05,180 Så nu, det är egentligen inte kommer att hjälpa oss på den allra första livet vi spelar 134 00:07:05,180 --> 00:07:07,910 eftersom bollen redan kommer att har centrerat från när vi 135 00:07:07,910 --> 00:07:09,010 instansieras det. 136 00:07:09,010 --> 00:07:12,910 Men vi ser när vi till slut förlora liv och loop tillbaka runt, då är vi 137 00:07:12,910 --> 00:07:15,800 kommer att vilja centrera bollen från botten av styrelsen tillbaka till 138 00:07:15,800 --> 00:07:17,130 mitten. 139 00:07:17,130 --> 00:07:21,840 >> Så, nu här måste vi skapa x-hastigheten hos bollen. 140 00:07:21,840 --> 00:07:26,060 Och, enligt spec, vi använder d rand 48 för att generera några slumptal 141 00:07:26,060 --> 00:07:27,820 för att ange hastigheten. 142 00:07:27,820 --> 00:07:31,130 Vi lägger till en till att eftersom vi bara intresserad av hastigheten inom intervallet en 143 00:07:31,130 --> 00:07:33,380 till två i stället för noll till ett. 144 00:07:33,380 --> 00:07:37,415 Slutligen använder vi d rand 48 igen För att avgöra om bollen 145 00:07:37,415 --> 00:07:40,490 kommer att flytta till vänster eller rätten att starta. 146 00:07:40,490 --> 00:07:45,310 >> Så d rand 48 returnerar ett slumptal mellan noll och ett, och så genom att fråga 147 00:07:45,310 --> 00:07:50,330 om det är mindre än 0,5, har vi en 50 50 chans att byta hastighet 148 00:07:50,330 --> 00:07:52,740 bollen att vara negativ. 149 00:07:52,740 --> 00:07:55,790 Slutligen sätter vi den vertikala hastigheten av bollen för att bara vara någon konstant. 150 00:07:55,790 --> 00:07:57,550 Vi väljer tre. 151 00:07:57,550 --> 00:07:59,300 Och nu har vi en annan slinga. 152 00:07:59,300 --> 00:08:02,800 >> Så denna inre slingan är kommer att fortsätta. 153 00:08:02,800 --> 00:08:04,960 Lägg märke till här, medan tegel är större än noll - 154 00:08:04,960 --> 00:08:07,100 så om vi kör i sten, vi har vann matchen och vi kan 155 00:08:07,100 --> 00:08:08,770 bryta sig ur denna loop - 156 00:08:08,770 --> 00:08:13,140 och alla få y boll mindre än höjden minus 2 gånger radie. 157 00:08:13,140 --> 00:08:17,310 Så vad detta är att erkänna är om bollen råkar gå förbi paddla, i 158 00:08:17,310 --> 00:08:19,500 då du har förlorat ett liv. 159 00:08:19,500 --> 00:08:23,500 >> Söker inuti denna för slinga vi har den kontroll av en mus händelse. 160 00:08:23,500 --> 00:08:27,530 Och så, om det finns en mus händelse, som betyder att vi vill kontrollera att 161 00:08:27,530 --> 00:08:30,880 se om musen flyttades, och om musen flyttades, vi vill ha 162 00:08:30,880 --> 00:08:33,210 paddla hänga med musen. 163 00:08:33,210 --> 00:08:38,789 Så, för att göra det, vi beräknar nya positionen av skoveln, som kommer 164 00:08:38,789 --> 00:08:42,900 att få positionen för mus - som griper tag i läge med hjälp av 165 00:08:42,900 --> 00:08:44,890 händelse som vi passerade - 166 00:08:44,890 --> 00:08:48,940 och sedan ska vi dra ut paddel bredd dividerat med 2, så 167 00:08:48,940 --> 00:08:54,240 paddla vistelser centrerad på musen i stället för den vänstra sidan av paddeln 168 00:08:54,240 --> 00:08:55,740 vistas centrerad. 169 00:08:55,740 --> 00:09:00,750 >> Så nu vill vi också vara säkra på att vi inte går över till vänster eller höger 170 00:09:00,750 --> 00:09:01,740 sidan av brädet. 171 00:09:01,740 --> 00:09:05,480 Och så här vi bara kontrollera om paddla skulle vara utanför den vänstra sidan av 172 00:09:05,480 --> 00:09:08,370 styrelsen, bara hålla den till vänster sida. 173 00:09:08,370 --> 00:09:11,000 Och här är vi kollar om paddeln skulle vara över den högra sidan av 174 00:09:11,000 --> 00:09:13,600 styrelse, bara hålla det till den högra sidan. 175 00:09:13,600 --> 00:09:17,290 Och slutligen, vi faktiskt ställa placeringen av paddeln. 176 00:09:17,290 --> 00:09:20,610 >> Nu, om det inte fanns en mus rörelse, det betyder att vi kommer att 177 00:09:20,610 --> 00:09:21,900 vill flytta bollen. 178 00:09:21,900 --> 00:09:24,260 Och så har vi redan de x och y hastigheten hos bollen 179 00:09:24,260 --> 00:09:25,560 och så vi flyttar den. 180 00:09:25,560 --> 00:09:27,750 Men nu vill vi att upptäcka ett par saker. 181 00:09:27,750 --> 00:09:31,950 Så här är vi upptäcka om vi drabbas antingen vänster eller höger sida av 182 00:09:31,950 --> 00:09:34,240 ombord, vi vill att bollen att studsa. 183 00:09:34,240 --> 00:09:39,790 Och så, i så fall, vi satt x hastigheten till negativ x hastighet. 184 00:09:39,790 --> 00:09:43,900 >> Om bollen träffade toppen av styrelsen, då vi också vill ha bollen studsa. 185 00:09:43,900 --> 00:09:46,750 Men nu vill vi ändra y hastighet. 186 00:09:46,750 --> 00:09:49,130 Lägg märke till att vi inte har ett tillstånd för kulan slår mot botten av 187 00:09:49,130 --> 00:09:53,230 styrelsen sedan som redan erövrat upp här i while-slinga. 188 00:09:53,230 --> 00:09:56,630 >> Slutligen vill vi detektera några kollisioner där om bollen hit 189 00:09:56,630 --> 00:10:01,040 antingen paddeln eller tegel, vill vi att göra några speciella fall saker. 190 00:10:01,040 --> 00:10:06,590 Så om det var en kollision, där fall objekt kommer inte vara null, då, 191 00:10:06,590 --> 00:10:10,950 Om föremålet träffade paddla, vi skulle bara vill studsa bollen. 192 00:10:10,950 --> 00:10:16,110 Och här, också, vi satt på plats av bollen till strax ovanför paddeln. 193 00:10:16,110 --> 00:10:19,710 Lägg märke till att vi tar x position bollen och bara återanvända det. 194 00:10:19,710 --> 00:10:23,250 Men här vi får y-positionen av paddeln och flytta bollen 195 00:10:23,250 --> 00:10:24,620 ovanför paddeln. 196 00:10:24,620 --> 00:10:28,070 >> Detta är ett specialfall, så att bollen inte slå paddeln och sedan, 197 00:10:28,070 --> 00:10:31,530 innan det är möjlighet att flytta från paddeln, en annan slinga går runt och 198 00:10:31,530 --> 00:10:34,830 den tycker det är fortfarande på panelen och så y hastigheten blir inställd till 199 00:10:34,830 --> 00:10:38,210 negativ och sedan bollen bara typ av pinnar studsande på paddeln. 200 00:10:38,210 --> 00:10:42,510 Så, om vi inte slå paddeln, då vill vi också att kontrollera 201 00:10:42,510 --> 00:10:43,930 Om vi ​​slår tegel. 202 00:10:43,930 --> 00:10:47,030 Och så detta är hur vi kan kontrollera för att se om vi träffar en tegelsten. 203 00:10:47,030 --> 00:10:50,250 >> Vi måste kontrollera för detta eftersom vi kan har faktiskt drabbat etiketten och vi 204 00:10:50,250 --> 00:10:52,320 vill inte ta bort etiketten. 205 00:10:52,320 --> 00:10:57,120 Så om vi träffar en tegelsten, kan vi ta bort det tegel från fönstret, minsknings 206 00:10:57,120 --> 00:11:01,170 vår räkning av tegelstenarna, öka vår antal poäng, och nu måste vi 207 00:11:01,170 --> 00:11:05,410 uppdatera resultattavlan som är exakt samma som vi såg tidigare när vi såg 208 00:11:05,410 --> 00:11:06,300 init resultattavlan. 209 00:11:06,300 --> 00:11:08,790 Men nu är vi bara uppdatera resultattavlan eftersom vi har ändrat 210 00:11:08,790 --> 00:11:09,370 antal punkter. 211 00:11:09,370 --> 00:11:12,180 Och det skall nu visa att Vi träffar en mer rast. 212 00:11:12,180 --> 00:11:16,320 >> Och slutligen, om vi träffar en tegelsten Vi vill också att studsa. 213 00:11:16,320 --> 00:11:21,240 Så till sist, vi pausar bara så att den bollen inte rör sig supersnabbt och vi 214 00:11:21,240 --> 00:11:24,360 kan faktiskt slå i vår paddel. 215 00:11:24,360 --> 00:11:25,910 Och det är ganska mycket det. 216 00:11:25,910 --> 00:11:32,200 Så nu skulle vi slinga tillbaka till toppen av denna while-slinga och fortsätter tills 217 00:11:32,200 --> 00:11:35,700 antingen vi förlorar ett liv eller Vi kör i sten. 218 00:11:35,700 --> 00:11:37,300 >> Vad händer om vi förlorar ett liv? 219 00:11:37,300 --> 00:11:41,870 Sen ska vi avsluta denna stund slinga, och vi får se kommer slinga säkerhetskopiera 220 00:11:41,870 --> 00:11:45,110 till toppen av det yttre while-slinga. 221 00:11:45,110 --> 00:11:48,740 I vilket fall kommer vi att utföra detta ställa upp igen. 222 00:11:48,740 --> 00:11:52,010 Och detta inrättas kommer att få oss att vänta för ett klick, dekrementera vårt nummer 223 00:11:52,010 --> 00:11:56,060 av liv, centrera bollen, räkna en x-och y-hastighet, och 224 00:11:56,060 --> 00:11:57,670 sedan återuppta spelet. 225 00:11:57,670 --> 00:12:01,490 >> Och så, som kommer att fortsätta tills antingen tegel slutar upp att vara mindre än 226 00:12:01,490 --> 00:12:02,540 eller lika med noll - 227 00:12:02,540 --> 00:12:04,630 i vilket fall vi vann matchen - 228 00:12:04,630 --> 00:12:10,430 eller liv är mindre än noll, där fall har vi förlorade matchen. 229 00:12:10,430 --> 00:12:15,190 Så, när så är fallet, vi bryta ut av att medan slinga, och vi når här 230 00:12:15,190 --> 00:12:17,660 där vi ska vänta på klick innan den lämnar spel, så att 231 00:12:17,660 --> 00:12:20,140 spel inte bara omedelbart stänger på oss. 232 00:12:20,140 --> 00:12:23,420 Och slutligen ska vi stänga fönster och det är det. 233 00:12:23,420 --> 00:12:25,500 Mitt namn är Rob, och detta var Breakout. 234 00:12:25,500 --> 00:12:30,592