1 00:00:00,210 --> 00:00:01,590 So well come back again. 2 00:00:01,590 --> 00:00:05,030 This lesson is going to make her fixation a lot more interesting. 3 00:00:05,070 --> 00:00:11,380 In this lesson we are going to replace every text label with an image image of you essentially. 4 00:00:11,520 --> 00:00:16,410 And that's going to make things a lot more difficult in terms of playing the game because you have to 5 00:00:16,410 --> 00:00:20,570 remember that different images by those ads are of interest to our game. 6 00:00:20,760 --> 00:00:23,920 Now I want to suggest something to you that is before we get started. 7 00:00:23,940 --> 00:00:30,300 And that is don't start this part of the game on the same application that you have been developing. 8 00:00:30,420 --> 00:00:36,270 If you already know how to use version control such as get a start a new branch and if you are taking 9 00:00:36,270 --> 00:00:41,550 this as a part of the Iowas bootcamp and we haven't reached a version control just yet I would suggest 10 00:00:41,550 --> 00:00:43,190 you do something like this one. 11 00:00:43,250 --> 00:00:44,430 Close your application. 12 00:00:44,430 --> 00:00:48,780 Duplicate the folder that you have for your application and rename it. 13 00:00:48,780 --> 00:00:54,060 So I currently have two folders one of them is the text which is up until now everything that we have 14 00:00:54,060 --> 00:00:54,720 done. 15 00:00:54,720 --> 00:01:00,180 The other one I've coded images which is exactly the same thing as the text but now I'm going to go 16 00:01:00,180 --> 00:01:06,210 work on the images memory puzzle game ex-coach project and I'm going to change this stuff and that's 17 00:01:06,210 --> 00:01:11,090 just in case you want to go back and forth between the two of them and you want to see some of the changes. 18 00:01:11,320 --> 00:01:17,430 Obviously the way that we have to do this the right way the correct way of doing it is adding a new 19 00:01:17,430 --> 00:01:22,040 branch but that's just in case you already know how to use version controls. 20 00:01:22,200 --> 00:01:24,580 If not just duplicate it like this. 21 00:01:24,720 --> 00:01:29,940 And let's get this thought in this new ex-coach project which is exactly where we left it up when we 22 00:01:29,940 --> 00:01:32,780 were working on the text based one. 23 00:01:32,790 --> 00:01:39,030 Now before I jump into changing stuff let me run the application one more time to make sure that we 24 00:01:39,030 --> 00:01:43,830 know exactly where we are and if we and if I have changed anything I should let you know. 25 00:01:43,950 --> 00:01:49,500 I think the only thing I have changed I have shortened the amount of time that it takes to flip the 26 00:01:49,500 --> 00:01:50,310 tiles. 27 00:01:50,310 --> 00:01:56,220 I think that has been the only thing I have I have changed so now it takes only half a second and it 28 00:01:56,220 --> 00:01:57,960 is exactly where we used to be. 29 00:01:58,140 --> 00:02:02,650 So now we're going to go ahead and start with the images for our application. 30 00:02:02,670 --> 00:02:07,260 Now the first thing you want to do is you want to add the images that I provided you which are all of 31 00:02:07,320 --> 00:02:09,190 these into your project. 32 00:02:09,360 --> 00:02:14,110 By the end of the development I will explain to you how you can add your own images. 33 00:02:14,130 --> 00:02:17,790 These images are nothing new or nothing out of the ordinary. 34 00:02:17,790 --> 00:02:24,140 There are a lot of J-P images as well as two images that one of them is called question that PMG and 35 00:02:24,140 --> 00:02:26,670 they are the ones that take P and G. 36 00:02:26,700 --> 00:02:30,270 So you could actually have your own images if you want here. 37 00:02:30,360 --> 00:02:36,690 But for now you have to keep in mind that the naming of them should maintain this particular format 38 00:02:36,920 --> 00:02:38,620 or EMG underscore. 39 00:02:38,670 --> 00:02:46,860 And then it starts from 0 0 I goes up 1 to 3 all the way to I think I have like 35 with three different 40 00:02:46,860 --> 00:02:47,440 images. 41 00:02:47,580 --> 00:02:53,280 So I'm less like all of these and I'm going to add them to my project somewhere up there I'm going to 42 00:02:53,280 --> 00:02:59,760 copy them and then the other thing I usually do is because I don't want to let my ex navigate to be 43 00:02:59,760 --> 00:03:06,150 so crowded like this one and actually going to select all the images and I'm going to put them all inside 44 00:03:06,210 --> 00:03:11,970 a group I'm going to say no group from selection right click group from selection and I'm going to call 45 00:03:11,970 --> 00:03:13,030 that one. 46 00:03:13,060 --> 00:03:16,320 Maybe images group or my images or anything like that. 47 00:03:16,320 --> 00:03:19,700 So the majors group would do. 48 00:03:19,710 --> 00:03:22,610 So that's what I have all the images in here. 49 00:03:22,770 --> 00:03:27,790 Now we have loaded all the majors in here and they are named in a very particular format. 50 00:03:27,870 --> 00:03:33,760 I m g underscore part doesn't obviously mother but they're all there from zero to 33 and that's something 51 00:03:33,760 --> 00:03:35,170 that is important. 52 00:03:35,280 --> 00:03:41,280 And I just like I said I will explain to you how to not have that or that because I understand that's 53 00:03:41,280 --> 00:03:46,010 a tedious work if you want to take I not healthy images and rename all of them. 54 00:03:46,140 --> 00:03:50,750 But for the sake of simplicity at this beginning I chose to make it like that. 55 00:03:50,760 --> 00:03:54,840 Now let's go ahead and see how we're going to use the actual images. 56 00:03:54,870 --> 00:04:01,800 Now if you remember we had a mild label class that actually holds onto the information for our neighbors. 57 00:04:01,800 --> 00:04:07,860 The one we are using which has an internal number a question marks symbol and a symbol of a smile. 58 00:04:08,010 --> 00:04:12,490 Let me reformat this properly so it is easier to view everything. 59 00:04:12,570 --> 00:04:13,520 Something like that. 60 00:04:13,530 --> 00:04:18,820 I don't need to know any of the comments anymore because you guys already know what they are. 61 00:04:18,820 --> 00:04:26,700 So in order to use an image instead of is you I labels I have to make a new class for my images so I'm 62 00:04:26,700 --> 00:04:32,070 actually going to write the class in here and then I'm going to duplicated or cut and paste it in a 63 00:04:32,070 --> 00:04:32,950 new find. 64 00:04:33,120 --> 00:04:40,800 So the class is going to be like this class and is going to be my image and it is actually a subclass 65 00:04:40,830 --> 00:04:41,620 of you. 66 00:04:41,790 --> 00:04:48,120 Image view because it has to show us something just like how label shows us things. 67 00:04:48,390 --> 00:04:50,050 Then built into it. 68 00:04:50,160 --> 00:04:57,900 I have our internal internal Nahm just like the last thing we had with the neighbors. 69 00:04:57,930 --> 00:05:01,100 And that's an integer not so. 70 00:05:01,160 --> 00:05:03,640 So far it is exactly like my label. 71 00:05:03,640 --> 00:05:10,240 When you initialize my major with an internal number that number is used to compare the content of the 72 00:05:10,240 --> 00:05:12,950 two tiles that we top on. 73 00:05:12,970 --> 00:05:17,190 But there are some other things that we need for the email that are different than my label. 74 00:05:17,350 --> 00:05:19,160 One of them is this thing. 75 00:05:19,450 --> 00:05:25,450 I need to have a static value let's clone this one our last name be called the Smile. 76 00:05:25,480 --> 00:05:33,910 This time it is called a tick and tick is going to be a white image and that image is an image name 77 00:05:34,540 --> 00:05:37,440 and the name of it is actually the name I have in here. 78 00:05:37,480 --> 00:05:45,790 It's actually called sign that PND your Tic-Tacs PMG So that's going to be take that P and G. 79 00:05:45,790 --> 00:05:50,000 So that's essentially De Courval and of the smile. 80 00:05:50,440 --> 00:05:53,680 Then I'm going to have to duplicate this whole thing. 81 00:05:53,980 --> 00:05:55,720 Obviously the next one seems easy. 82 00:05:55,730 --> 00:06:01,280 That's going to be question and the e-mail for it would be this guy question that PMG. 83 00:06:01,450 --> 00:06:04,430 So that's easy question. 84 00:06:04,480 --> 00:06:05,670 P N G. 85 00:06:06,010 --> 00:06:07,140 Now here's the thing. 86 00:06:07,150 --> 00:06:13,300 Last time when we had laborer's we could get the internal number convert into a text and shoy it on 87 00:06:13,340 --> 00:06:18,910 the text value of the label on an image view we have to do something similar. 88 00:06:18,920 --> 00:06:25,600 If you have to get the internal number produce an internal image and show that image on our image of 89 00:06:25,600 --> 00:06:25,930 you. 90 00:06:26,030 --> 00:06:31,480 So I'm going to go in here and say I have another label let's call it into an image that's going to 91 00:06:31,480 --> 00:06:33,450 be a new image. 92 00:06:33,490 --> 00:06:38,680 So unlike the last time that we only had to deal with the internal number this time we have to deal 93 00:06:38,680 --> 00:06:40,330 with the internal number. 94 00:06:40,420 --> 00:06:47,370 I'm going to write it for comparisons and we have to have an internal image for display. 95 00:06:47,410 --> 00:06:53,950 Now you could argue that we could actually use the internal number only if we wanted to stick to this 96 00:06:53,950 --> 00:06:55,280 naming convention. 97 00:06:55,360 --> 00:07:00,940 If you have the number we can find the image we don't have to have the actual image but because you 98 00:07:00,940 --> 00:07:06,790 may not have the same format of the numbers I would actually rather if you have an internal image that 99 00:07:06,790 --> 00:07:12,580 produces an image from anything that you might have in there and that's something that is you know looking 100 00:07:12,800 --> 00:07:18,670 for forward into things that might happen and that really helps me from developing an application to 101 00:07:18,670 --> 00:07:24,690 know that things are going to happen in a certain way obviously in this particular example I have done 102 00:07:24,690 --> 00:07:26,860 it before and that's how I know it. 103 00:07:26,890 --> 00:07:32,020 But sometimes when you're developing You can also think of the situations that might come up later. 104 00:07:32,050 --> 00:07:42,500 Now in any case I'm gonna go ahead and start a new file called this new file my image on my image has 105 00:07:42,650 --> 00:07:47,760 this thing that's placed in here. 106 00:07:47,840 --> 00:07:50,090 And of course I need to get the UI kit. 107 00:07:50,210 --> 00:07:53,970 So import you get. 108 00:07:53,990 --> 00:08:01,250 So now we have an image class that can show us images but obviously we haven't really done anything 109 00:08:01,250 --> 00:08:01,710 like that. 110 00:08:01,730 --> 00:08:05,620 And there is loads of code that we have to change because of that. 111 00:08:05,630 --> 00:08:11,630 I'm actually going to go one file at the time so I'm going to go to View Controller and see in here 112 00:08:11,630 --> 00:08:19,570 that we have toys or a mate of my labels actually have to be made of my image. 113 00:08:19,730 --> 00:08:22,040 So that's the first thing they had to change. 114 00:08:22,040 --> 00:08:26,890 And then I can see that the first and the second time are meant to be my label. 115 00:08:26,930 --> 00:08:30,620 They actually have to be my image so I have to change that everywhere. 116 00:08:30,920 --> 00:08:34,080 They found tiles are meant to be of the type labeled. 117 00:08:34,100 --> 00:08:36,200 I'm going to make them my image. 118 00:08:36,350 --> 00:08:41,720 I should mention this right now for some of you who are wondering this doesn't seem like a very intuitive 119 00:08:41,720 --> 00:08:42,650 solution. 120 00:08:42,650 --> 00:08:43,980 It certainly is not. 121 00:08:44,000 --> 00:08:49,940 And in the coming lesson which is the advanced stuff I will essentially go through a solution that we 122 00:08:49,940 --> 00:08:56,750 make something called My toilet and that tile can either be an image or a text and we'll talk about 123 00:08:56,750 --> 00:08:58,120 that when the time comes. 124 00:08:58,250 --> 00:09:03,660 But for now I want to go one step at a time I don't want to overcomplicate things for you. 125 00:09:03,660 --> 00:09:05,480 Now let's go to the reset reset. 126 00:09:05,480 --> 00:09:06,670 Does all of these things. 127 00:09:06,710 --> 00:09:11,110 None of those is really relevant and we don't have to do anything in here. 128 00:09:11,360 --> 00:09:17,390 Now that's all well in there isn't this go to the touchiest and that isn't that I'm going to say if 129 00:09:17,390 --> 00:09:21,470 the top Time is of the type might emerge. 130 00:09:21,740 --> 00:09:22,740 So that's good. 131 00:09:22,790 --> 00:09:28,490 We found that one then I did in there and then do all of these things and then compare them against 132 00:09:28,490 --> 00:09:29,220 each other. 133 00:09:29,480 --> 00:09:34,500 And then it says the tool functions revealed and compare it to reveal. 134 00:09:34,650 --> 00:09:37,070 Are not expecting something of the type. 135 00:09:37,070 --> 00:09:40,250 Might you make there rather expecting something of the type. 136 00:09:40,310 --> 00:09:44,150 My label and that's something that we have to fix real soon. 137 00:09:44,150 --> 00:09:50,000 So I'm going to go to reveal and compare say the type of argument is my image then we do all of those 138 00:09:50,000 --> 00:09:50,590 things. 139 00:09:50,670 --> 00:09:54,070 Here's the first thing that we have to correct in here. 140 00:09:54,380 --> 00:10:01,630 If the time that we are revealing and comparing is not a label it doesn't have it takes time. 141 00:10:01,770 --> 00:10:11,050 So is sort of a text thinks it actually has an empty title that EMH that it has to become implied that 142 00:10:11,210 --> 00:10:13,010 internal image. 143 00:10:13,310 --> 00:10:17,470 So that's something I'm going to keep in mind and I'm actually going to comment this out. 144 00:10:17,480 --> 00:10:21,520 I'm not gonna delete it so you can see the comparison between the two of them. 145 00:10:21,620 --> 00:10:27,510 If the tires were off the type text or label it would have a text value in them. 146 00:10:27,620 --> 00:10:31,230 If they are of the type you are made you view they will have an image. 147 00:10:31,400 --> 00:10:36,230 And if they were labeled they could use the internal number converted and formatted. 148 00:10:36,230 --> 00:10:42,270 And if they are of the type image views the internal image to show on them next thing is flip to a smile. 149 00:10:42,290 --> 00:10:43,850 Very similar situation. 150 00:10:43,890 --> 00:10:53,140 We have to have an image as an input value and we have to say if that happens then input time not the 151 00:10:53,150 --> 00:11:01,500 major becomes my EMH dot tech sign because the smile and take are exactly the same thing. 152 00:11:01,760 --> 00:11:07,680 I mean in the sense of they are the equivalent of each other between my age and my label. 153 00:11:07,970 --> 00:11:10,310 And I'm going to comments this one out. 154 00:11:10,410 --> 00:11:13,340 It's go to flip back and the flip back again. 155 00:11:13,430 --> 00:11:16,960 We have to read the type of tile that is my image. 156 00:11:17,210 --> 00:11:26,420 If we do that we have to set that into a question so I'm going to say imply that image becomes my image 157 00:11:26,480 --> 00:11:27,920 dodged question. 158 00:11:28,250 --> 00:11:36,200 So it Coupeville end of question in terms of a text label is question image of my image and I'm going 159 00:11:36,200 --> 00:11:38,120 to comment this one out as well. 160 00:11:39,020 --> 00:11:44,810 This go to flip to reveal a very similar situation because that might emerge instead of getting that 161 00:11:44,810 --> 00:11:47,090 text based on the internal number. 162 00:11:47,090 --> 00:11:57,110 Now we have to say empathize dot image becomes input tied that internal image and that's all we have 163 00:11:57,110 --> 00:11:58,020 to do. 164 00:11:58,860 --> 00:12:04,420 It's got to compare the compare We don't really have to change anything because they both still have 165 00:12:04,420 --> 00:12:05,890 internal numbers. 166 00:12:05,920 --> 00:12:07,780 They compare against each other. 167 00:12:07,780 --> 00:12:10,270 And a decision gets made based on that. 168 00:12:10,390 --> 00:12:12,950 Let's to the state and the state. 169 00:12:12,970 --> 00:12:17,430 Again the count of them hasn't changed not the value changes. 170 00:12:17,430 --> 00:12:19,740 So everything is good in the game mode. 171 00:12:19,750 --> 00:12:21,430 Obviously nothing changes. 172 00:12:21,430 --> 00:12:24,180 We go to make time which is the most important one. 173 00:12:24,180 --> 00:12:26,050 And so much has to change in here. 174 00:12:26,260 --> 00:12:31,740 So if you are making tiles we sit Altoids and centers will be empty values. 175 00:12:31,750 --> 00:12:34,440 We get our tile size based on the game mode. 176 00:12:34,600 --> 00:12:40,750 We get our CGI size all of these things are well except that when we make it tight we shouldn't make 177 00:12:40,750 --> 00:12:42,370 it half the time type my label. 178 00:12:42,450 --> 00:12:44,880 You have to make it tough to type my image. 179 00:12:44,920 --> 00:12:50,830 Now if you make it time of the type might image it doesn't have a font anymore and doesn't have a text 180 00:12:50,830 --> 00:12:54,060 alignment anymore because it's not a UI label. 181 00:12:54,220 --> 00:12:58,030 So you don't have to set those to be just enough to set its center. 182 00:12:58,050 --> 00:13:02,740 We still have to go through the counter models and this is actually a good thing for us to be doing 183 00:13:02,740 --> 00:13:06,360 a quick review of everything that we have done so far. 184 00:13:06,640 --> 00:13:10,000 And then we have to say is interaction enabled value. 185 00:13:10,010 --> 00:13:12,150 We have to say it's internal number. 186 00:13:12,160 --> 00:13:17,860 The next thing that we have to do is that instead of sitting at text for it which is something that 187 00:13:17,860 --> 00:13:24,730 we usually have for a new label we have to set an image for it which is based on the number that we 188 00:13:24,730 --> 00:13:25,250 have. 189 00:13:25,360 --> 00:13:32,770 So I'm going to say tile Daut internal image that internal image. 190 00:13:32,800 --> 00:13:40,500 I'm going to say it has to become a you image and that image is name and the name for it. 191 00:13:40,500 --> 00:13:45,730 It needs a string format so that you actually get it in a separate entity. 192 00:13:45,730 --> 00:13:47,230 I'm going to say let. 193 00:13:47,430 --> 00:13:50,710 I am J'en name to be a stream. 194 00:13:50,920 --> 00:13:57,010 And the next thing I'm going to say it has a format and the format is like this. 195 00:13:57,010 --> 00:14:02,060 It's all I N G underscore because they all are like that. 196 00:14:02,090 --> 00:14:04,470 I m g underscore. 197 00:14:04,630 --> 00:14:08,840 Then I need at least one leading zero. 198 00:14:08,860 --> 00:14:11,250 So zero to the. 199 00:14:11,410 --> 00:14:12,610 And then dot J. 200 00:14:12,620 --> 00:14:13,510 P. G. 201 00:14:13,780 --> 00:14:18,880 And the value of it will be based on counter so counter here. 202 00:14:19,120 --> 00:14:21,040 So what happens in here is this. 203 00:14:21,070 --> 00:14:24,070 We say if count that is for instance 12. 204 00:14:24,070 --> 00:14:28,360 This becomes MGE underscored 12 Dadge EPG. 205 00:14:28,580 --> 00:14:37,120 If the counter is 3 it becomes our AMG at least 1 0 3 that JP G which is exactly the same numbering 206 00:14:37,150 --> 00:14:44,280 or that we have in here because our numbers they have in leading zero is not I m g underscore to it 207 00:14:44,290 --> 00:14:46,700 is IMJ underscore 0 2. 208 00:14:46,990 --> 00:14:52,870 So now that they have that I'm going to put the AMG name in the name for the internal image and I'm 209 00:14:52,870 --> 00:15:01,840 going to make sure that my tiles they actually show the question marks so tile that image becomes my 210 00:15:01,900 --> 00:15:07,230 image dot question and I don't need that anymore because it's not a label anymore. 211 00:15:07,420 --> 00:15:14,310 I think that's all we had to do in this fight so let's move on to the next one in the randomise we're 212 00:15:14,310 --> 00:15:19,330 going to go ahead to any time in the tiles or hit you with a new center that we don't have to change 213 00:15:19,690 --> 00:15:20,720 in the timer function. 214 00:15:20,740 --> 00:15:24,370 We don't have to change anything in the view did load up. 215 00:15:24,580 --> 00:15:27,740 We don't have to change anything because we're just resetting the values. 216 00:15:27,870 --> 00:15:29,870 And I think that's all we had to do. 217 00:15:29,990 --> 00:15:31,660 It's just issuing two errors. 218 00:15:31,660 --> 00:15:33,600 Let me see what are those. 219 00:15:33,690 --> 00:15:37,310 Maybe they're going to go away because they're just haven't cleaned up yet. 220 00:15:37,420 --> 00:15:40,350 The Reveal and compare are now different values. 221 00:15:40,360 --> 00:15:41,840 Let me save these files. 222 00:15:41,910 --> 00:15:46,250 I'm going to save that and save save save that and save that. 223 00:15:46,360 --> 00:15:51,670 And if I bought that much isn't that now these 20 years will go Covais automatically will clean itself 224 00:15:51,670 --> 00:15:52,150 up. 225 00:15:52,150 --> 00:15:58,890 So these are the ones they go away on their own because these two functions are now expecting topped 226 00:15:59,080 --> 00:16:01,970 tile of the type might image. 227 00:16:02,140 --> 00:16:08,740 So let's go ahead and run the application now so now we have all of these. 228 00:16:08,740 --> 00:16:11,910 Which is a question mark based on image. 229 00:16:11,950 --> 00:16:16,930 And if I tap on it it shows me an image and then we can compare them against each other. 230 00:16:17,080 --> 00:16:23,230 Obviously it becomes a feast for me personally become surprisingly difficult to find them because they 231 00:16:23,230 --> 00:16:28,360 all seem very similar to each other but that kind of does the trick for me. 232 00:16:28,510 --> 00:16:34,330 Maybe you want to change the background color because that take itself is red and against purple doesn't 233 00:16:34,330 --> 00:16:37,870 really show itself but I'm not going to worry about that right now. 234 00:16:38,050 --> 00:16:43,570 Here is another thing that I have to mention before we move out of this lesson is that if you play the 235 00:16:43,570 --> 00:16:47,450 game in a six by six that is 36 so we're going to need 18. 236 00:16:47,440 --> 00:16:51,080 This thing emerges if we play the game in an 8 by 8 mode. 237 00:16:51,220 --> 00:16:57,050 That would be 64 blocks and we would need at least half or not that is exactly half of that. 238 00:16:57,160 --> 00:16:59,640 Thirty two distinct images. 239 00:16:59,680 --> 00:17:01,490 That is why my image is in here. 240 00:17:01,510 --> 00:17:03,470 I have 33 images. 241 00:17:03,550 --> 00:17:07,000 I think I have one or two extra ones but that doesn't really matter. 242 00:17:07,120 --> 00:17:11,600 But keep in mind that if you're replacing the majors the number of them matters. 243 00:17:11,600 --> 00:17:17,100 So if you have less than the number that you need obviously some of them are going to be empty. 244 00:17:17,110 --> 00:17:18,880 That's one thing I should mention. 245 00:17:18,880 --> 00:17:19,960 The other one is this. 246 00:17:20,080 --> 00:17:25,010 Let's say you had a group of images that they didn't have the naming convention. 247 00:17:25,030 --> 00:17:26,220 Evey I have them. 248 00:17:26,320 --> 00:17:30,550 You have just randomly named them or you read them from some online resource. 249 00:17:30,640 --> 00:17:32,350 And the names are quite random. 250 00:17:32,500 --> 00:17:37,420 So I'm going to go ahead and show you a solution for that which is a very very simple solution. 251 00:17:37,540 --> 00:17:44,170 You would come to your viewpoint or you would introduce a new valuable called Images array that is going 252 00:17:44,170 --> 00:17:46,690 to be an array of strings. 253 00:17:46,780 --> 00:17:49,700 So those are the names of your images. 254 00:17:49,700 --> 00:17:56,110 Then you would go to your view controller view the load or something like that and you would say I am 255 00:17:56,140 --> 00:18:01,900 the array that would become an array of all the names that you have. 256 00:18:01,900 --> 00:18:06,900 Maybe one of your files is called My email does JP G. 257 00:18:07,270 --> 00:18:13,720 And maybe your other one is some random numbers because you read it from some online resource and maybe 258 00:18:13,760 --> 00:18:23,800 that one is again names such as Sky beauty foun Sony camarade dirth JP or something that if it doesn't 259 00:18:23,800 --> 00:18:28,820 really matter what the names are for it does that is that you place them in an array. 260 00:18:29,050 --> 00:18:36,880 And if you have the NRA and the NRA has an order built into it then in your make tiles function which 261 00:18:36,880 --> 00:18:45,560 is here you can actually go ahead and say instead of producing the name based on this particular format 262 00:18:45,770 --> 00:18:52,680 I would say give me images array and I would get them at the counter. 263 00:18:53,000 --> 00:19:00,950 And this is how you could replace my images which are numbered properly with an array of random objects 264 00:19:00,950 --> 00:19:08,140 the objects that they don't have any any meaning for you know not naming convention between them and 265 00:19:08,150 --> 00:19:11,870 this would work exactly identical to to what we have in here. 266 00:19:11,870 --> 00:19:13,750 So for now I don't want to go that route. 267 00:19:13,760 --> 00:19:17,730 I want to stick to this naming convention because it simplifies my life. 268 00:19:17,840 --> 00:19:18,950 But that was just for you. 269 00:19:18,950 --> 00:19:22,640 So you know if you need it you could actually add other images as well. 270 00:19:22,640 --> 00:19:25,010 They don't have to be named like that. 271 00:19:25,010 --> 00:19:30,370 It is important to keep that in mind because most likely the images you deal with are coming from another 272 00:19:30,410 --> 00:19:34,390 resos Internet online banking back in network. 273 00:19:34,550 --> 00:19:37,670 And you won't have any control over the namings of them. 274 00:19:37,730 --> 00:19:42,780 So you have to get used to using essentially any name that that comes on. 275 00:19:43,010 --> 00:19:49,090 So with that in mind we now have a functioning application that can work with images. 276 00:19:49,100 --> 00:19:51,000 It's very difficult to solve. 277 00:19:51,210 --> 00:19:55,920 And let's move on to our next ascent which is the advanced stuff about this application.