﻿1
00:00:00,000 --> 00:00:04,000

2
00:00:04,005 --> 00:00:08,005

3
00:00:08,007 --> 00:00:12,007

4
00:00:12,010 --> 00:00:16,010

5
00:00:16,011 --> 00:00:20,011

6
00:00:20,012 --> 00:00:24,012

7
00:00:24,015 --> 00:00:28,015

8
00:00:28,018 --> 00:00:32,018

9
00:00:32,019 --> 00:00:36,019

10
00:00:36,022 --> 00:00:40,022

11
00:00:40,024 --> 00:00:44,024

12
00:00:44,026 --> 00:00:48,026

13
00:00:48,029 --> 00:00:52,029

14
00:00:52,032 --> 00:00:56,032

15
00:00:56,033 --> 00:01:00,033

16
00:01:00,034 --> 00:01:04,034

17
00:01:04,036 --> 00:01:08,036

18
00:01:08,038 --> 00:01:12,038
(อาจารย์) สวัสดีค่ะ

19
00:01:12,039 --> 00:01:16,039
พร้อมเรียนหรือยัง ก่อนอื่นเปิด

20
00:01:16,040 --> 00:01:20,040
Sublime Text เปิดอะไรอีก

21
00:01:20,040 --> 00:01:24,040
เปิด Google

22
00:01:24,041 --> 00:01:28,041
วันนี้เปิดเพิ่มอีกตัวหนึ่ง เปิด

23
00:01:28,042 --> 00:01:32,042
โปรแกรม Paint ด้วย

24
00:01:32,043 --> 00:01:36,043
ให้เปิดโปรแกรม

25
00:01:36,046 --> 00:01:40,046
วันนี้เปิด 3 อย่างนะ เปิด

26
00:01:40,048 --> 00:01:44,048
เปิด Google Chrome

27
00:01:44,053 --> 00:01:48,053
ต้องใช้ Paint นะคะ

28
00:01:48,056 --> 00:01:52,056
หาโปรแกรม paint ด้วย

29
00:01:52,057 --> 00:01:56,057
สัญญาณภาพฝั่งนู้น

30
00:01:56,059 --> 00:02:00,059
ฝีางโน้นกระตุก วันนี้ ๆ

31
00:02:00,062 --> 00:02:04,062
สำหรับวันนี้เราจะมาทำ

32
00:02:04,064 --> 00:02:08,064
Animation

33
00:02:08,065 --> 00:02:12,065
ทำให้ตัวเกมเรามันเป็น

34
00:02:12,066 --> 00:02:16,066
การเคลื่อนไหวแบบ Animation นะคะ

35
00:02:16,070 --> 00:02:20,070
คือ ในครั้งก่อนน่ะยังไม่ได้เป็น Animation

36
00:02:20,071 --> 00:02:24,071
แล้วให้ Candy มันตกใช่หรือเปล่า

37
00:02:24,072 --> 00:02:28,072
ภาพเคลื่อนไหวแบบนั้นคนละแบบนะคะ อันนั้นแค่

38
00:02:28,073 --> 00:02:32,073
แต่ทีนี้

39
00:02:32,075 --> 00:02:36,075
สิ่งแรกที่เราจะต้องทำนะคะ

40
00:02:36,076 --> 00:02:40,076
เดี๋ยวขอข้ามตัวนี้ไปก่อน

41
00:02:40,078 --> 00:02:44,078
ต้องมาที่ตัวนี้ก่อน

42
00:02:44,079 --> 00:02:48,079
นะคะ คือ

43
00:02:48,081 --> 00:02:52,081
ต้องรู้จักตัวนี้ก่อน

44
00:02:52,082 --> 00:02:56,082
sprite Sheet

45
00:02:56,086 --> 00:03:00,086
Sprite Sheet คืออะไร ให้

46
00:03:00,087 --> 00:03:04,087
นึกถึง image หรือภาพ

47
00:03:04,089 --> 00:03:08,089
ตัวเดิมน่ะ มันก็เป็นรูป

48
00:03:08,091 --> 00:03:12,091
1 รูปใช่ไหมคะ แต่ sprite Sheet น่ะ

49
00:03:12,094 --> 00:03:16,094
ก็คือภาพมันจะมีความต่อเนื่อง หรือ

50
00:03:16,096 --> 00:03:20,096
ถ้าแปลด้วยตัวแปลภาษา ถ้าแปลด้วยภาษา

51
00:03:20,105 --> 00:03:24,105
ไทยมันจะขึ้นว่า "ภาพต่อเรียง" หรือ "

52
00:03:24,107 --> 00:03:28,107
ภาพที่มันเรียงต่อกันไป ให้นึกถึง

53
00:03:28,109 --> 00:03:32,109
การ์ตูนในสมัยก่อน เวลาเขาเอาการ์

54
00:03:32,110 --> 00:03:36,110
มาทำเป็นเคลื่อนไหว

55
00:03:36,112 --> 00:03:40,112
ได้น่ะ ก็คือภาพมันจะต้องต่อเนื่อง

56
00:03:40,113 --> 00:03:44,113
ตัวอย่างข้างบนอาจจะเห็นไม่ชัด ให้ดูที่ตัวอย่างข้างล่าง

57
00:03:44,115 --> 00:03:48,115
ภาพไดโนเสาร์ตัวนี้เห็นไหมคะ ภาพแรก

58
00:03:48,115 --> 00:03:52,115
พอภาพที่ 2 ลักษณะของ

59
00:03:52,117 --> 00:03:56,117
เท้าใช่ไหมมันเปลี่ยน ภาพที่ 3

60
00:03:56,121 --> 00:04:00,121
ทั้งเท้าทั้งแขนเปลี่ยนไปใช่ไหมคะ

61
00:04:00,122 --> 00:04:04,122
เห็นไหมคะ ก็คือภาพที่มัน

62
00:04:04,122 --> 00:04:08,122
เป็นภาพที่วาดขึ้นมาแล้วมีกระบวนการ

63
00:04:08,123 --> 00:04:12,123
ภาพต่อเนื่อง ถ้าให้นึกถึงการถ่ายรูป

64
00:04:12,124 --> 00:04:16,124
ก็คือถ่ายภาพที่หลาย ๆ ช็อต

65
00:04:16,125 --> 00:04:20,125
ต่อ ๆ กัน มันก็จะพอเอามา

66
00:04:20,127 --> 00:04:24,127
เล่นต่อ ๆ กันมันจะเป็นภาพเคลื่นไหวน่ะ

67
00:04:24,128 --> 00:04:28,128
เพราะฉะนั้น เราจะต้องเอาภาพนี้มาใช้

68
00:04:28,129 --> 00:04:32,129
ทีนี้ คือ ถ้าหาวาดจะเสียเวลา

69
00:04:32,130 --> 00:04:36,130
นะคะ แม่ก็ไปค้นมาแล้วว่ามันมี

70
00:04:36,132 --> 00:04:40,132
เว็บฯ ให้ Download

71
00:04:40,133 --> 00:04:44,133
เพราะถ้าวาดจะเสียเวลา อันนั้นเอาไว้ตอนเรียน

72
00:04:44,134 --> 00:04:48,134
ออกแบบค่อยมาสอนวาดภาพ

73
00:04:48,136 --> 00:04:52,136
ลักษณะนี้เพื่อเอามาใช้ในเวลาทำโครงงาน

74
00:04:52,137 --> 00:04:56,137
ตอนปี 4 ก็ได้นะคะ อันดับแรก

75
00:04:56,139 --> 00:05:00,139
เราจะไปโหลดก่อน เพราะฉะนั้นเปิด google chrome

76
00:05:00,142 --> 00:05:04,142
นะคะ แล้วมันจะมี 2 เว็บ(ไซต์)

77
00:05:04,143 --> 00:05:08,143
แสดงว่าเรียงไอ้นี่ผิด

78
00:05:08,145 --> 00:05:12,145
ให้ Download นะคะ ถ้าใคร

79
00:05:12,146 --> 00:05:16,146
จะเอารูปไดโนเสาร์เหมือนตัวอย่างที่แม่

80
00:05:16,148 --> 00:05:20,148
ยกมาก็ได้ แล้วมันก็มีรูปอื่น เข้าได้ทั้ง 2 อันนะคะ

81
00:05:20,149 --> 00:05:24,149
พิมพ์เลย พิมพ์เข้าได้ทั้ง 2 เว็ย

82
00:05:24,151 --> 00:05:28,151
แต่เราไม่พิมพ์เพราะเราทำลิงก์ไว้แล้ว

83
00:05:28,153 --> 00:05:32,153

84
00:05:32,155 --> 00:05:36,155
.

85
00:05:36,156 --> 00:05:40,156
เดี๋ยว ๆ เปิดให้ดูแป๊บหนึ่ง ขอโหลดของ

86
00:05:40,158 --> 00:05:44,158
นี่มันจะขึ้นเป็น Free เพราะฉะนั้น เราจะเอามาใช้

87
00:05:44,163 --> 00:05:48,163
ได้นะคะ ถ้าเป็นฟรี ถ้าเป็นฟรี ก็คือ

88
00:05:48,164 --> 00:05:52,164
ไม่มีปัญหาเรื่องลิขสิทธิ์แน่นอนนะคะ

89
00:05:52,166 --> 00:05:56,166
ในตัวแรกนี่จะมี

90
00:05:56,167 --> 00:06:00,167
ตัวการ์ตูนหลายตัวเลย ถ้าเด็ก ๆ ไม่เอาไดโนเสาร์เหมือนคร

91
00:06:00,171 --> 00:06:04,171
เด็ก ๆ ก็เปลี่ยนไปใช้ Boy Girl

92
00:06:04,174 --> 00:06:08,174
เลือกเอาตัวใดตัวหนึ่งนะคะ แล้วต้อง Save ไปไว้

93
00:06:08,176 --> 00:06:12,176
ที่ไหน จำได้ไหมคะ อย่าลืมว่าเอาไป

94
00:06:12,176 --> 00:06:16,176
ใส่ใน Folder ที่เราสร้างใน Python

95
00:06:16,178 --> 00:06:20,178
จะเป็นชื่อ Mygame หรือเป็น

96
00:06:20,180 --> 00:06:24,180
ชื่อของเด็ก ๆ จำได้นะ ไฟล์นี้

97
00:06:24,182 --> 00:06:28,182
เอาไป Save

98
00:06:28,182 --> 00:06:32,182
นะคะ เซฟใส่ใน Folder ที่นักเรียนสร้าง

99
00:06:32,183 --> 00:06:36,183
นะคะ มันจะมี 2 ตัว

100
00:06:36,186 --> 00:06:40,186
ใช่ไหม มีตัวนี้แล้วก็อีกตัวหนึ่ง

101
00:06:40,191 --> 00:06:44,191
นี่

102
00:06:44,192 --> 00:06:48,192
แต่ถ้าอันนี้ ถ้าเป็นเว็บฯ

103
00:06:48,194 --> 00:06:52,194
Vectice Vecticies

104
00:06:52,195 --> 00:06:56,195
Vecteezy นี่ให้เด็ก ๆ

105
00:06:56,197 --> 00:07:00,197
ดูด้านล่าง ให้เลือกที่มันขึ้นว่า Free น่ะ

106
00:07:00,197 --> 00:07:04,197
ถึงเอามาใช้เข้าใจไหม ให้ดูที่

107
00:07:04,198 --> 00:07:08,198
ดูที่มีคำว่า "ฟรี" กำกับ

108
00:07:08,199 --> 00:07:12,199
เขามาใช้เด้อ เด้อหรือเปล่านะ

109
00:07:12,200 --> 00:07:16,200
เด้อ แล้ว ออกภาษาถิ่น

110
00:07:16,200 --> 00:07:20,200
เด้อ เดี๋ยวพี่ฝั่งโน้นงง เด้ออะไร

111
00:07:20,206 --> 00:07:24,206
นะคะ ก็คือให้เลื่อนลงมา

112
00:07:24,207 --> 00:07:28,207
แล้วหาที่มันมีคำว่า "Free" กำกับนะ

113
00:07:28,208 --> 00:07:32,208
อย่าไป คือถ้าไปเปิดอันอื่นมันจะมีบอกว่า

114
00:07:32,209 --> 00:07:36,209
ให้จ่ายตัง เพราะฉะนั้นให้เราเลือกที่เป็น

115
00:07:36,210 --> 00:07:40,210
ฟรีนะลูกนะ เพราะฉะนั้น เลือกเอาจะเอารูปไหน

116
00:07:40,211 --> 00:07:44,211
นะคะ

117
00:07:44,212 --> 00:07:48,212
โอ.เค. ไหม ใครจะเอารูปไหน เลือกเอา

118
00:07:48,213 --> 00:07:52,213
อย่าลืมว่าเอาไปเซฟ

119
00:07:52,214 --> 00:07:56,214
ไว้ที่ Folder ชื่อที่ตัวเองสร้างไว้นะ

120
00:07:56,215 --> 00:08:00,215
อย่าลืมนะคะ Save ให้ถูกที่ด้วย เดี๋ยว

121
00:08:00,216 --> 00:08:04,216
ไม่เจอ เดี๋ยวจะขึ้น Error

122
00:08:04,217 --> 00:08:08,217
เห็นชัดไหม พิมพ์ ๆ อันไหน

123
00:08:08,218 --> 00:08:12,218
ก็ได้ อันใดอันหนึ่ง

124
00:08:12,219 --> 00:08:16,219
อันนี้บัง

125
00:08:16,221 --> 00:08:20,221
ให้แคปฯ แล้วก็พิมพ์จะได้เข้า

126
00:08:20,222 --> 00:08:24,222
ง่าย ๆ จะได้ไปตรงที่เลยจะได้ Download

127
00:08:24,223 --> 00:08:28,223
ได้

128
00:08:28,226 --> 00:08:32,226
เข้าเว็บฯ ได้หรือยัง ต้องเข้าเว็บฯ ให้ได้ก่อน

129
00:08:32,226 --> 00:08:36,226
ใบเตยเข้าได้หรือยังลูก ได้ไหม เอา

130
00:08:36,228 --> 00:08:40,228
อันไหน เลือกอันหนึ่ง มันน่าจะเป็นไฟล์ Zip น

131
00:08:40,230 --> 00:08:44,230
บางอันก็เป็นไฟล์ Zip เดี๋ยว

132
00:08:44,231 --> 00:08:48,231
ใครได้ไฟล์ Zip เดี๋ยวค่อยยกมือ แล้ว

133
00:08:48,232 --> 00:08:52,232
บอกวิธีแตกไฟล์นะคะ ใครที่ได้ไฟล์ซิป

134
00:08:52,234 --> 00:08:56,234
ตอนนี้ใครโหลดรูปมาแล้ว ตัวเอง

135
00:08:56,235 --> 00:09:00,235
ยังไม่ได้โหลดเดี๋ยวโหลดบ้าง

136
00:09:00,236 --> 00:09:04,236
อยากได้รูปอะไร ใบเตยจะเอารูปตัวไหน

137
00:09:04,236 --> 00:09:08,236
แม่จะได้โหลดเหมือนกัน

138
00:09:08,238 --> 00:09:12,238
เอารูปอะไรลูก เอาเว็บฯ แรก

139
00:09:12,239 --> 00:09:16,239
หรือเว็บฯ ที่ 2

140
00:09:16,243 --> 00:09:20,243
เดี๋ยวเปิดให้ดู

141
00:09:20,244 --> 00:09:24,244
อัน... ชื่อเว็บฯ นี่ เด็ก ๆ มี

142
00:09:24,245 --> 00:09:28,245
ทุกคนแล้วนะ เดี๋ยวแม่จะสลับ

143
00:09:28,247 --> 00:09:32,247
หน้าจอไปดาวโหลดบ้างนะคะ

144
00:09:32,248 --> 00:09:36,248
เด็ก ๆ พิมพ์แล้วเข้าเว็บฯ เดี๋ยวเราจะไปดูเว็บฯ เราบ้าง

145
00:09:36,248 --> 00:09:40,248
ไหนเอ่ย

146
00:09:40,249 --> 00:09:44,249
เอาอันไหนอันนี้หรือเปล่า

147
00:09:44,250 --> 00:09:48,250
เอาจากเว็บนี้หรือเปล่า เอาเว็บนี้

148
00:09:48,252 --> 00:09:52,252
เอารูปไหนล่ะใบเตย

149
00:09:52,253 --> 00:09:56,253
อศัวิน

150
00:09:56,253 --> 00:10:00,253
ใบเตยเอาอัศวินนะคะ แม่ก็จะเอาอัศวิน

151
00:10:00,256 --> 00:10:04,256
เหมือนใบเตย เสร็จแล้วพอเข้ามากด

152
00:10:04,256 --> 00:10:08,256
คลิกที่ Freedownload นะ เหมือนใครเลือก

153
00:10:08,257 --> 00:10:12,257
ของ...

154
00:10:12,258 --> 00:10:16,258
Vecti

155
00:10:16,259 --> 00:10:20,259
นี่ ถ้าคลิกเลือกรูป เช่น ๆ

156
00:10:20,260 --> 00:10:24,260
น้องหมี น้องหมีทำอะไรดี

157
00:10:24,261 --> 00:10:28,261
น้องหมีกระโดดอย่างนี้นะคะ

158
00:10:28,264 --> 00:10:32,264
อาจจะเอาน้องหมีเดินก็ได้

159
00:10:32,265 --> 00:10:36,265
เห็นไหมคะ ก็คลิกที่ Free Dowload เหมือนกัน

160
00:10:36,267 --> 00:10:40,267
เราคลิก

161
00:10:40,269 --> 00:10:44,269
แล้วนะคะ มันดาวน์โหลดอัตโนมัติ

162
00:10:44,271 --> 00:10:48,271
นะ นี่สังเกตบางเครื่อง

163
00:10:48,273 --> 00:10:52,273
วิธีการเราจะไปย้ายไฟล์นี้ทำอย่างไร

164
00:10:52,275 --> 00:10:56,275
เดี๋ยวให้มันโหลดเสร็จก่อน ของใคร

165
00:10:56,276 --> 00:11:00,276
ได้เป็นไฟล์ซิปบ้าง

166
00:11:00,276 --> 00:11:04,276
ใบเตยก็เซฟไว้ จ๊าบโหลดหรือยังลูก

167
00:11:04,278 --> 00:11:08,278
เป็นไฟล์ Zip หรือเปล่า

168
00:11:08,279 --> 00:11:12,279
2 หนุ่ม 2 สาว

169
00:11:12,279 --> 00:11:16,279
อะตอม, คราม แล้วก็บี

170
00:11:16,281 --> 00:11:20,281
โหลดได้หรือยัง

171
00:11:20,282 --> 00:11:24,282
โอ.เค. เป็นไฟล์ Zip ไหม

172
00:11:24,283 --> 00:11:28,283
เดี๋ยวรอแป๊บหนึ่ง ยังขึ้นโหลดไม่เสร็จ

173
00:11:28,284 --> 00:11:32,284
ให้ดูนะคะ ใครที่โหลดเสร็จแล้ว

174
00:11:32,285 --> 00:11:36,285
ให้คลิปที่ Show all เห็นไหมคะ

175
00:11:36,286 --> 00:11:40,286
มุมนี้ Show All นี่

176
00:11:40,289 --> 00:11:44,289

177
00:11:44,291 --> 00:11:48,291
ถ้าโหลดเสร็จแล้ว ไอ้วิ่ง ๆ มันจะหายไปนะ

178
00:11:48,292 --> 00:11:52,292
คลิกที่ Show All มุมข้างล่างนี่

179
00:11:52,292 --> 00:11:56,292
แล้วก็เลือก Show in Folder ไป

180
00:11:56,293 --> 00:12:00,293
เปิดโฟลเดอร์ที่ไฟล์ Zip มันมาน่ะ

181
00:12:00,294 --> 00:12:04,294
นะคะ เราจะ Move

182
00:12:04,295 --> 00:12:08,295
มันไปคลิกขวา

183
00:12:08,297 --> 00:12:12,297
แล้วเลือกตัดเลย Cut เลย

184
00:12:12,297 --> 00:12:16,297
ย้ายเดี๋ยวจะหายาก Cut ไปเลย

185
00:12:16,299 --> 00:12:20,299
Cute ไปแล้ว

186
00:12:20,302 --> 00:12:24,302
แล้วก็ Folder ที่ให้สร้างไว้

187
00:12:24,304 --> 00:12:28,304
ของจ๊าบ เครื่องจ๊าบมันจะอยู่ที่ MSI นะ

188
00:12:28,307 --> 00:12:32,307
จำได้นะ เครื่องใครเครื่องมันนะคะ

189
00:12:32,309 --> 00:12:36,309
MyGame ปุ๊บ

190
00:12:36,310 --> 00:12:40,310
คลิกขวาแล้วก็ plass วาง

191
00:12:40,312 --> 00:12:44,312
ไฟล์ Zip เราจะเข้ามาอยู่

192
00:12:44,316 --> 00:12:48,316
ในโฟลเดอร์ที่เราจะใช้เขียน Coding เรานะ

193
00:12:48,317 --> 00:12:52,317
ต้องมาอยู่ที่

194
00:12:52,318 --> 00:12:56,318
โอ.เค. ไหม เสร็จแล้วให้

195
00:12:56,320 --> 00:13:00,320
ทำการแตกไฟล์ คลิกขวาอีก 1 ครั้ง

196
00:13:00,322 --> 00:13:04,322

197
00:13:04,324 --> 00:13:08,324
แล้วก็...

198
00:13:08,325 --> 00:13:12,325
เวอร์ชั่นนี้ไม่มีให้

199
00:13:12,327 --> 00:13:16,327
Extract Here

200
00:13:16,328 --> 00:13:20,328
ไปที่ Winrar แล้วก็เลือก

201
00:13:20,329 --> 00:13:24,329
นี่นะคะ เลือกลำดับที่ 3  Add

202
00:13:24,330 --> 00:13:28,330
ให้มันแตกที่นี้ แตกให้ Folder

203
00:13:28,333 --> 00:13:32,333
นี้ ให้แตกไฟล์

204
00:13:32,334 --> 00:13:36,334
ไว้ที่โฟลเดอร์นี้ นี่

205
00:13:36,335 --> 00:13:40,335
เด็ก ๆ ก็จะได้ Fodle

206
00:13:40,335 --> 00:13:44,335
เห็นไหมคะ มีภาพ

207
00:13:44,337 --> 00:13:48,337

208
00:13:48,339 --> 00:13:52,339
โอ.เค. ไหม ทีนี้สิ่งที่จะต้องทำ

209
00:13:52,340 --> 00:13:56,340
เพราะเหมือนของใบเตยมันเป็นเซ็ต

210
00:13:56,341 --> 00:14:00,341
ใหญ่มันมีทุกท่า ให้เลือกก่อน

211
00:14:00,342 --> 00:14:04,342
ทำท่าเดียวนะคะ ท่าอื่นก็ไป

212
00:14:04,344 --> 00:14:08,344
อัปเดตเอาออก เข้าใจนะ ให้แม่สอนทุกท่าไม่หมดแน่

213
00:14:08,346 --> 00:14:12,346
ทุกค่ามันก็ไม่หมดแน่ชัวโมงนี้

214
00:14:12,348 --> 00:14:16,348
ต้องได้ท่าเคลื่อนไหว 1 ท่าก่อน

215
00:14:16,350 --> 00:14:20,350
สังเกตที่ชื่อไฟล์นึกออกไหมลูก เห็นไหม

216
00:14:20,351 --> 00:14:24,351
เขาตั้งชื่อไฟล์ไว้ Walk นั่นหมายถึง

217
00:14:24,352 --> 00:14:28,352
ท่าเดิน เราจะเอาท่าไหน

218
00:14:28,353 --> 00:14:32,353
มีลำดับด้วย เราต้องเอามาให้หมด

219
00:14:32,355 --> 00:14:36,355
นึกออกไหม ถ้า walk มันมี 8

220
00:14:36,356 --> 00:14:40,356
เราก็ต้องเอา Walk 1 ถึง Walk 8

221
00:14:40,358 --> 00:14:44,358
จะเลือกท่าไหน เลือกได้เลยนะคะ แต่ต้องเอามาทั้งหมด

222
00:14:44,359 --> 00:14:48,359
โอ.เค. ไหม เข้าใจนะ เพราะอะไร

223
00:14:48,361 --> 00:14:52,361
อันดับแรก อยากรู้ว่ารูป

224
00:14:52,363 --> 00:14:56,363
มันใหญ่ไหมก่อน เพราะถ้ารูปใหญ่น่ะ พอเวลาเอามาลง

225
00:14:56,370 --> 00:15:00,370
ในฉากเรานะ

226
00:15:00,371 --> 00:15:04,371
แล้วไปกำหนดค่า x y

227
00:15:04,372 --> 00:15:08,372
เวลาเคลื่อนไหวน่ะ มันจะหาตำแหน่งที่มัน Mark ยาก

228
00:15:08,374 --> 00:15:12,374
นึกออกไหม เราอาจจะต้องปรับ Size

229
00:15:12,375 --> 00:15:16,375
เดี๋ยวเรามาดูก่อนว่ารูปนี้ พอเวลาเปิดมา

230
00:15:16,381 --> 00:15:20,381
ใหญ่ขนาดไหน เอาท่าไหน

231
00:15:20,382 --> 00:15:24,382
ใบเตย วิ่ง run นะคะ

232
00:15:24,385 --> 00:15:28,385
ใบเตยจะเลือกท่าวิ่งใช่ไหม เดี๋ยว

233
00:15:28,400 --> 00:15:32,400
แม่จะขอลองเปิดไฟล์นี้ก่อนว่าไฟล์

234
00:15:32,402 --> 00:15:36,402
ใหญ่ไหมนะคะ อันดับแรก

235
00:15:36,404 --> 00:15:40,404
เลือกท่าที่จะใช้ ก็คือ run 1 จน

236
00:15:40,405 --> 00:15:44,405
ถึง Run ไหน

237
00:15:44,406 --> 00:15:48,406
ถึง 10 ใช่ไหม

238
00:15:48,408 --> 00:15:52,408
ขอเลือก 1 รูปก่อน ขอดูก่อน คลิกขวาแล้ว

239
00:15:52,409 --> 00:15:56,409
เลือก Open With > Paint

240
00:15:56,410 --> 00:16:00,410
เปิดด้วย Paint นะคะลูก

241
00:16:00,411 --> 00:16:04,411
เห็นไหม อยากรู้ว่ามัน

242
00:16:04,412 --> 00:16:08,412
ตัวเล็กตัวใหญ่ ในโปรแกรม Paint นะคะ

243
00:16:08,414 --> 00:16:12,414
ให้เด็ก ๆ ไปที่เมนู

244
00:16:12,415 --> 00:16:16,415
ที่ชื่อว่า View ก่อน

245
00:16:16,416 --> 00:16:20,416
ไปที่ View ก่อน

246
00:16:20,417 --> 00:16:24,417
แล้วก็คลิกที่ไม้บรรทัด luler

247
00:16:24,419 --> 00:16:28,419
และดูที่ 100 เปอร์เซ็นต์ 100 เปอร์เซ็นต์

248
00:16:28,420 --> 00:16:32,420
เห็นไหม รูป 100 เปอร์เซ็นต์นี่ ขนาดภาพ...

249
00:16:32,422 --> 00:16:36,422
ดูตำแหน่งค่านี่

250
00:16:36,424 --> 00:16:40,424
แกน x แกน y เป็น pixcel นะคะ

251
00:16:40,426 --> 00:16:44,426
คิดดูว่าขนาดภาพถึง

252
00:16:44,427 --> 00:16:48,427
500-600 pixels นี่ใหญ่นะคะ ถือว่าใหญ่

253
00:16:48,429 --> 00:16:52,429
รูปมันใหญ่ ทีนี้แม่

254
00:16:52,430 --> 00:16:56,430
ต้องการรูปที่มีขนาด

255
00:16:56,432 --> 00:17:00,432
หารเลย 6 เท่า

256
00:17:00,434 --> 00:17:04,434
เอาแค่เท่าเดียวน่ะ นึกออกนะ เพราะฉะนั้น

257
00:17:04,435 --> 00:17:08,435
ถ้า 600 มันก็จะเหลือแค่ประมาณสัก 100

258
00:17:08,436 --> 00:17:12,436
วิธีเปลี่ยนขนาดมาดูนะคะ

259
00:17:12,438 --> 00:17:16,438
มาดูนะคะ มาดูวิธีเปลี่ยนขนาดภาพก่อน

260
00:17:16,440 --> 00:17:20,440
การเปลี่ยนขนาดภาพ

261
00:17:20,442 --> 00:17:24,442

262
00:17:24,443 --> 00:17:28,443
ทำไมมันไม่ play ให้

263
00:17:28,445 --> 00:17:32,445

264
00:17:32,446 --> 00:17:36,446
วิดีโอไม่ Run ช่างมันข้ามไป

265
00:17:36,447 --> 00:17:40,447
ดาวน์โหลดมาแล้วนะ คือเราต้องทำให้มัน

266
00:17:40,449 --> 00:17:44,449
ใหญ่ ๆ ให้มันเหลือตัวเท่านี้

267
00:17:44,454 --> 00:17:48,454
เห็นไหม จากภาพต้นฉบับที่มันใหญ่น่ะ

268
00:17:48,455 --> 00:17:52,455
เห็นไหม ลด Size มันลงตั้งเยอะน่ะ เห็นไหม

269
00:17:52,456 --> 00:17:56,456
เห็นนะ เพราะฉะนั้น มาดูวิธีเปลี่ยนขนาดด้วย

270
00:17:56,457 --> 00:18:00,457
เปิดโปรแกรม Paint

271
00:18:00,459 --> 00:18:04,459
แล้วไปที่

272
00:18:04,460 --> 00:18:08,460
แถบเครื่องมือที่ชื่อว่า resize นะคะ

273
00:18:08,461 --> 00:18:12,461
Resize หรือยัง

274
00:18:12,462 --> 00:18:16,462
ใครเห็น Rezise

275
00:18:16,463 --> 00:18:20,463
เห็นไหมคะ อยู

276
00:18:20,464 --> 00:18:24,464
มาหน้า Home กลับมาหน้า Home ก่อน เมื่อกี้เราไปหน้า View นะคะ

277
00:18:24,465 --> 00:18:28,465
Home แล้วก็คลิกที่ Resize

278
00:18:28,467 --> 00:18:32,467
ตรง tool ที่ชื่อ image Re-zise

279
00:18:32,468 --> 00:18:36,468
จะได้หน้าต่างนี้มา

280
00:18:36,470 --> 00:18:40,470

281
00:18:40,473 --> 00:18:44,473
จากเปอร์เซ็นต์ให้มาเลือกเป็น Pixcle

282
00:18:44,474 --> 00:18:48,474
คลิกที่ตำแหน่ง Pixcels

283
00:18:48,475 --> 00:18:52,475
เห็นไหมคะ ขนาดเดิมมัน 500 กว่าน่ะ

284
00:18:52,476 --> 00:18:56,476
587 ลดลงไป ให้ลดลงไป

285
00:18:56,478 --> 00:19:00,478

286
00:19:00,480 --> 00:19:04,480
เอาสัก 5 เท่า หาร 500

287
00:19:04,481 --> 00:19:08,481
เป็น 100 เอาสัก 120 ดูสิ

288
00:19:08,489 --> 00:19:12,489
ดูก่อนได้ ๆ เพราะเรายังไม่ Save ใช่ไหม

289
00:19:12,490 --> 00:19:16,490
เราลอง Re-size ดูก่อน

290
00:19:16,491 --> 00:19:20,491
เปลี่ยน

291
00:19:20,492 --> 00:19:24,492
ตัวเลขเสร็จ คลิก OK

292
00:19:24,493 --> 00:19:28,493
คลิก OK ดู

293
00:19:28,494 --> 00:19:32,494
ตัวเท่านี้เห็นไหม จากเดิมเห็นไหมคะ ลงมาจากนี่

294
00:19:32,495 --> 00:19:36,495
ถึงนี่นู่น เกือบมาถึงนี้

295
00:19:36,495 --> 00:19:40,495
ขนาดเท่านี้ โอ.เค. แล้ว น่าจะใช้การได้

296
00:19:40,496 --> 00:19:44,496
เอาเท่านี้ก็ได้ ทีนี้ให้ฟัง

297
00:19:44,500 --> 00:19:48,500
ตอน Save

298
00:19:48,501 --> 00:19:52,501
เคลื่องนี้หา Paint ไม่เจอ

299
00:19:52,502 --> 00:19:56,502

300
00:19:56,505 --> 00:20:00,505

301
00:20:00,506 --> 00:20:04,506

302
00:20:04,507 --> 00:20:08,507

303
00:20:08,511 --> 00:20:12,511

304
00:20:12,512 --> 00:20:16,512

305
00:20:16,513 --> 00:20:20,513
อุ้ย

306
00:20:20,515 --> 00:20:24,515
จำไว้นะครางหน้า

307
00:20:24,517 --> 00:20:28,517
ห้ามลงโปรแกรมเทอมหน้า

308
00:20:28,518 --> 00:20:32,518
เทอมหน้าห้ามใช่ภาษาไทย

309
00:20:32,519 --> 00:20:36,519
จริง แปลเป็นภาษาไทยแล้ว

310
00:20:36,520 --> 00:20:40,520
ปวดตับมากเลย

311
00:20:40,521 --> 00:20:44,521
เทปเปลี่ยนเป็นรูปภาพ

312
00:20:44,523 --> 00:20:48,523
ไม่ใช่เลยนะ งงมากเลย เพราะฉะนั้น

313
00:20:48,524 --> 00:20:52,524
เพราะเรา Coding

314
00:20:52,526 --> 00:20:56,526
ก็หัดให้ใช้ภาษาอังกฤษไปเลย

315
00:20:56,527 --> 00:21:00,527
แล้วจำไว้เลย ปวดตับมากเลย

316
00:21:00,529 --> 00:21:04,529
พอมาแปลเป็นไทยนี่

317
00:21:04,530 --> 00:21:08,530
ตอนเซฟให้ดูตอนเซฟ

318
00:21:08,531 --> 00:21:12,531
เพราะดูที่ Folder เราก่อนนะ ให้ย้อนกลับไปดู

319
00:21:12,532 --> 00:21:16,532
ที่ Folder

320
00:21:16,534 --> 00:21:20,534
ตัวนี้ไฟล์ที่มันแตกน่ะ มันเข้าไปในโฟลเดอร์มันจะยาก

321
00:21:20,537 --> 00:21:24,537
พอตอน Save as ให้

322
00:21:24,538 --> 00:21:28,538
เข้าใน Folder มัน ให้รูปมันวางอยู่ข้างนอก

323
00:21:28,539 --> 00:21:32,539
อย่างนี้ นึกออกนะ วิธีการ

324
00:21:32,540 --> 00:21:36,540

325
00:21:36,542 --> 00:21:40,542
ไปไหนแล้ว คลิกที่ไฟล์ แล้วก็ Save

326
00:21:40,543 --> 00:21:44,543
as นามสกุลโดยส่วนใหญ่ นามสกุล

327
00:21:44,544 --> 00:21:48,544
ภาพมัน ก็คือ PNG อยู่แล้วนะคะ อยู่ไหนล่ะ

328
00:21:48,545 --> 00:21:52,545

329
00:21:52,547 --> 00:21:56,547
ไปที่ไหน ไปที่ Foldle

330
00:21:56,550 --> 00:22:00,550
C.

331
00:22:00,551 --> 00:22:04,551
Folder นี่

332
00:22:04,553 --> 00:22:08,553
ทีนี้จะเอาชื่อเดิมเลยก็ได้

333
00:22:08,554 --> 00:22:12,554
หรือเปลี่ยนก็ได้ ตัวเล็ก

334
00:22:12,555 --> 00:22:16,555
เดี๋ยว ๆ ช่วย ๆ

335
00:22:16,557 --> 00:22:20,557

336
00:22:20,558 --> 00:22:24,558
เขาบอกตัวเล็กมองไม่เห็น

337
00:22:24,560 --> 00:22:28,560
พอลดขนาดเสร็จนะคะ ให้เด็ก ๆ เลือก Save as

338
00:22:28,561 --> 00:22:32,561
ใช่ไหมเอาไปไว้ที่ C.

339
00:22:32,562 --> 00:22:36,562
แล้วก็ชื่อ Folder

340
00:22:36,562 --> 00:22:40,562
ของแม่ตั้งชื่อ MyGame ของตัวเองตั้งชื่ออะไรไปที่โฟลเดอรนั้น

341
00:22:40,563 --> 00:22:44,563
เสร็จแล้ว ทีนี้

342
00:22:44,564 --> 00:22:48,564
ชื่อถ้าไม่อยากพิมพ์มีวงเล็บ

343
00:22:48,565 --> 00:22:52,565
แก้ได้ใช่ไหม ก็เป็น

344
00:22:52,566 --> 00:22:56,566
Run แล้วลบวงเล็บออก เป็น Run 1

345
00:22:56,566 --> 00:23:00,566
จะได้ง่าย ๆ เวลาเอาไปใช้งานก็จะได้

346
00:23:00,568 --> 00:23:04,568
ง่าย ๆ เอาวงเล็บออกด้วย

347
00:23:04,569 --> 00:23:08,569
เอาไปติดกัน ไม่ต้องเว้นวรรค

348
00:23:08,571 --> 00:23:12,571
เห็นไหมคะ นั่นก็คือ

349
00:23:12,574 --> 00:23:16,574
รูปนี้เป็นท่าของการวิ่งท่าที่ 1

350
00:23:16,574 --> 00:23:20,574
เพราะฉะนั้น ใบเตยต้องทำต่ออีกกี่รูป

351
00:23:20,576 --> 00:23:24,576
เพราะฉะนั้น ทำเลยค่ะ

352
00:23:24,577 --> 00:23:28,577
ใครที่ได้รูปที่ 1 แล้ว รูปที่ 2 รูปที่ 3

353
00:23:28,580 --> 00:23:32,580
รูปที่ 4 ก็ Resize ให้ก

354
00:23:32,582 --> 00:23:36,582
นึกออกนะ แล้วก็ Save ลงในนี้เพราะตอนนี้

355
00:23:36,584 --> 00:23:40,584
ก็คือเป็นเวลาที่เด็ก ๆ จะต้อง

356
00:23:40,585 --> 00:23:44,585
Resize ภาพแล้วก็ Save ลงในโฟลเดอร์ เพื่อจะเอามาใช้ได้

357
00:23:44,586 --> 00:23:48,586
ของรูปตัวเองในท่านั้นน่ะ

358
00:23:48,587 --> 00:23:52,587
มีกี่รูป

359
00:23:52,589 --> 00:23:56,589
ของอะตอมมีกี่รูป

360
00:23:56,590 --> 00:24:00,590
เด็ก ๆ เปิดระบบไหม เดี๋ยวถามให้

361
00:24:00,591 --> 00:24:04,591
ก็ได้

362
00:24:04,592 --> 00:24:08,592

363
00:24:08,594 --> 00:24:12,594

364
00:24:12,595 --> 00:24:16,595

365
00:24:16,597 --> 00:24:20,597

366
00:24:20,602 --> 00:24:24,602
ไม่ ๆ ๆ มันยังไม่ถึง 70

367
00:24:24,603 --> 00:24:28,603
เดี๋ยว Save ก่อน ดูนะ ๆ

368
00:24:28,605 --> 00:24:32,605
ดูใหม่ ๆ

369
00:24:32,606 --> 00:24:36,606
ดูที่ไหน ดูที่ชื่อนี่ ดูที่ชื่อมันนี่

370
00:24:36,608 --> 00:24:40,608
สมมตเลือก Run นี่ Run มี

371
00:24:40,609 --> 00:24:44,609
ลำดับที่ถึงเท่าไร

372
00:24:44,611 --> 00:24:48,611
เพราะฉะนั้น ก็ 1-10 โอ.เค. ไหม

373
00:24:48,613 --> 00:24:52,613
ของอันนี้เอารูปอะไร

374
00:24:52,614 --> 00:24:56,614
อุ้ยมันไม่ขึ้นหน้านั้นแล้ว

375
00:24:56,615 --> 00:25:00,615
ไอ้นี่

376
00:25:00,616 --> 00:25:04,616
ไม่ขึ้นหน้าที่

377
00:25:04,618 --> 00:25:08,618
จะกดไปหาเด็ก ๆ

378
00:25:08,620 --> 00:25:12,620

379
00:25:12,621 --> 00:25:16,621

380
00:25:16,622 --> 00:25:20,622

381
00:25:20,628 --> 00:25:24,628

382
00:25:24,631 --> 00:25:28,631

383
00:25:28,633 --> 00:25:32,633

384
00:25:32,634 --> 00:25:36,634

385
00:25:36,636 --> 00:25:40,636

386
00:25:40,640 --> 00:25:44,640

387
00:25:44,642 --> 00:25:48,642

388
00:25:48,644 --> 00:25:52,644

389
00:25:52,645 --> 00:25:56,645

390
00:25:56,645 --> 00:26:00,645

391
00:26:00,648 --> 00:26:04,648

392
00:26:04,656 --> 00:26:08,656

393
00:26:08,659 --> 00:26:12,659

394
00:26:12,661 --> 00:26:16,661

395
00:26:16,663 --> 00:26:20,663

396
00:26:20,665 --> 00:26:24,665

397
00:26:24,668 --> 00:26:28,668

398
00:26:28,671 --> 00:26:32,671

399
00:26:32,675 --> 00:26:36,675

400
00:26:36,678 --> 00:26:40,678

401
00:26:40,679 --> 00:26:44,679

402
00:26:44,683 --> 00:26:48,683

403
00:26:48,685 --> 00:26:52,685

404
00:26:52,686 --> 00:26:56,686

405
00:26:56,688 --> 00:27:00,688

406
00:27:00,693 --> 00:27:04,693

407
00:27:04,694 --> 00:27:08,694

408
00:27:08,697 --> 00:27:12,697

409
00:27:12,700 --> 00:27:16,700

410
00:27:16,701 --> 00:27:20,701

411
00:27:20,703 --> 00:27:24,703

412
00:27:24,705 --> 00:27:28,705

413
00:27:28,707 --> 00:27:32,707

414
00:27:32,709 --> 00:27:36,709

415
00:27:36,710 --> 00:27:40,710

416
00:27:40,711 --> 00:27:44,711
บี...

417
00:27:44,714 --> 00:27:48,714
แบมสิ หลงคน

418
00:27:48,715 --> 00:27:52,715
ดูนะ แบมภาพที่แบม

419
00:27:52,717 --> 00:27:56,717
เลือกมาใช้รูปแรกชื่ออะไร

420
00:27:56,718 --> 00:28:00,718
หรือชื่อไหน ชี้

421
00:28:00,719 --> 00:28:04,719

422
00:28:04,720 --> 00:28:08,720

423
00:28:08,722 --> 00:28:12,722

424
00:28:12,723 --> 00:28:16,723
เพราะฉะนั้น

425
00:28:16,724 --> 00:28:20,724
ถ้าภาพแรกเลือก

426
00:28:20,725 --> 00:28:24,725
อันนี้แบมก็ตังเอาตั้งแต่

427
00:28:24,726 --> 00:28:28,726
ภาพที่ 1 จนถึงภาพที่เท่าไร

428
00:28:28,727 --> 00:28:32,727
10 เหมือนกันหรือ

429
00:28:32,729 --> 00:28:36,729
ถึง 10 นึกออกไหม มัน Resize

430
00:28:36,730 --> 00:28:40,730
ให้หมดเมื่อกี้ได้ 1 แล้ว

431
00:28:40,732 --> 00:28:44,732
ก็อันที่ 2 ภาพที่ 3 ภาพที่ 4

432
00:28:44,732 --> 00:28:48,732
ไปเรื่อย ๆ จนครบ 10 รูป เข้าใจหรือยัง

433
00:28:48,733 --> 00:28:52,733
เข้าใจไหม แบมกับบี

434
00:28:52,734 --> 00:28:56,734

435
00:28:56,735 --> 00:29:00,735

436
00:29:00,736 --> 00:29:04,736
ก็แบมก็มาคลิกเปิด

437
00:29:04,740 --> 00:29:08,740
เมื่อกี้รูปที่ 1 ทำเสร็จแล้วนะ รูปที่ 2 ก็

438
00:29:08,741 --> 00:29:12,741
เดิมน่ะลูก คลิก Open with

439
00:29:12,742 --> 00:29:16,742
Paint เหมือนเดิม

440
00:29:16,743 --> 00:29:20,743
เสร็จแล้วก็คลิก

441
00:29:20,744 --> 00:29:24,744
Resiz

442
00:29:24,745 --> 00:29:28,745
ตัวที่ 1 นึกออกนะ พอลดขนาด

443
00:29:28,746 --> 00:29:32,746
เสร็จก็ 120

444
00:29:32,747 --> 00:29:36,747
ก็คลิก Save As

445
00:29:36,748 --> 00:29:40,748
แล้วก็เอามาไว้ที่

446
00:29:40,750 --> 00:29:44,750
นี่ Folder ที่เป็นชื่อเราเหมือนเดิม

447
00:29:44,751 --> 00:29:48,751
แล้วก็แก้ชื่อให้เหมือนตัวแรก

448
00:29:48,752 --> 00:29:52,752
แต่เปลี่ยนแค่หมายเลข นึกออกนะ

449
00:29:52,753 --> 00:29:56,753
ตัวเลข ก็คือให้ลบวงเล็บออก

450
00:29:56,754 --> 00:30:00,754
เข้าไปติดชื่อที่แก้นะคะ เพราะฉะนั้น เราจะต้อง

451
00:30:00,755 --> 00:30:04,755
มีภาพลำดับที่ 1 ถึง

452
00:30:04,756 --> 00:30:08,756
ลำดับที่ 10 เพื่อเอา

453
00:30:08,757 --> 00:30:12,757
มาใช้ โอ.เค. ไหม เข้าใจหรือยัง

454
00:30:12,759 --> 00:30:16,759
อะตอมกับคราม โอ.เค. แล้วนะ โอ.เค.

455
00:30:16,760 --> 00:30:20,760
งั้นขอเวลาอาจารย์ 10 นาทีนะคะ

456
00:30:20,762 --> 00:30:24,762
จะ Resize ภาพมาใช้เหมือนกันนะคะ

457
00:30:24,763 --> 00:30:28,763
นะคะ

458
00:30:28,766 --> 00:30:32,766
เพราะไม่อย่างนั้นถ้ามาเลือกภาพที่

459
00:30:32,768 --> 00:30:36,768
ไม่ต่อเนื่อง นึกออกนะ ภาพมันก็จะ

460
00:30:36,768 --> 00:30:40,768
เป็นไม่มีความต่อเนื่องน่ะ เราต้อง

461
00:30:40,769 --> 00:30:44,769
เลือกภาพที่มันเป็นเซตเดียวกัน

462
00:30:44,771 --> 00:30:48,771
ที่มันระบุไว้แล้วนะคะ

463
00:30:48,773 --> 00:30:52,773
Cancle ก่อน เพราะรูปของ

464
00:30:52,774 --> 00:30:56,774
ข้าพเจ้าไม่ใช่รูปนี้

465
00:30:56,775 --> 00:31:00,775

466
00:31:00,776 --> 00:31:04,776
ของเรา คือ Run ทั้งหมดทั้งปวง

467
00:31:04,778 --> 00:31:08,778
ไปเปิด Run 2 ก็คือทำซ้ำไปเรื่อย ๆ

468
00:31:08,780 --> 00:31:12,780
Resize ซ้ำกลับไปเรื่อย ๆ จนครบ 10 รูปน่ะลูก

469
00:31:12,781 --> 00:31:16,781

470
00:31:16,782 --> 00:31:20,782

471
00:31:20,783 --> 00:31:24,783

472
00:31:24,785 --> 00:31:28,785

473
00:31:28,787 --> 00:31:32,787
ดูนะคะ นี่ทำซ้ำอีก ภาพ

474
00:31:32,789 --> 00:31:36,789
ที่ 2 นี่เสร็จแล้วก็กด Save

475
00:31:36,790 --> 00:31:40,790

476
00:31:40,791 --> 00:31:44,791

477
00:31:44,793 --> 00:31:48,793
นี่

478
00:31:48,795 --> 00:31:52,795

479
00:31:52,795 --> 00:31:56,795
นะคะได้รูปที่ 2 แล้วก็ทำรูปที่ 3

480
00:31:56,799 --> 00:32:00,799
ต่อ ทำเหมือนเดิม ก็คือคลิกรูปนั้น แล้วก็คลิก

481
00:32:00,800 --> 00:32:04,800
Open

482
00:32:04,801 --> 00:32:08,801
ตรง Pixcels ก็เปลี่ยนเป็น

483
00:32:08,802 --> 00:32:12,802
120 เพราะเมื่อกี้เราลองดูแล้ว

484
00:32:12,803 --> 00:32:16,803
โอ.เค. Size ใช้ได้นะคะ เสร็จแล้วเราก็ Save As

485
00:32:16,804 --> 00:32:20,804
Save as

486
00:32:20,805 --> 00:32:24,805

487
00:32:24,806 --> 00:32:28,806

488
00:32:28,808 --> 00:32:32,808

489
00:32:32,809 --> 00:32:36,809

490
00:32:36,810 --> 00:32:40,810

491
00:32:40,812 --> 00:32:44,812

492
00:32:44,815 --> 00:32:48,815

493
00:32:48,818 --> 00:32:52,818
เดี๋ยวก่อน

494
00:32:52,819 --> 00:32:56,819
อันเดิมอย่างเพิ่งเอาไว้ทีหลัง

495
00:32:56,820 --> 00:33:00,820
ก็บอกแล้ว FFolder น่ะ

496
00:33:00,821 --> 00:33:04,821
มันอยู่ที่โฟลเดอร์ที่ตัวเองเอารูปไปเก็บ มันต้องอยู่โฟลเดอร์เดียวกับ

497
00:33:04,822 --> 00:33:08,822
ที่เขียน Code ถ้าย้าย

498
00:33:08,823 --> 00:33:12,823
ก็ต้องเอาไปไว้ที่เดียวกัน

499
00:33:12,824 --> 00:33:16,824
อันเดิมน่ะปล่อยไปก่อน ต้อง

500
00:33:16,827 --> 00:33:20,827
แก้หลังจากไอ้นี่แล้ว

501
00:33:20,829 --> 00:33:24,829

502
00:33:24,830 --> 00:33:28,830
5 แล้วนะคะ

503
00:33:28,835 --> 00:33:32,835
ตอนนี้เรากำลัง Resize รูปที่ 5

504
00:33:32,836 --> 00:33:36,836

505
00:33:36,838 --> 00:33:40,838

506
00:33:40,840 --> 00:33:44,840
1, 2, 3 กระโดดข้ามรูป

507
00:33:44,842 --> 00:33:48,842
ที่ 4 เดี๋ยวย้อนได้ไม่เป็นอะไร เพราะเลขมันเรียง

508
00:33:48,843 --> 00:33:52,843
ตามลำดับอยู่แล้ว

509
00:33:52,844 --> 00:33:56,844

510
00:33:56,845 --> 00:34:00,845

511
00:34:00,846 --> 00:34:04,846

512
00:34:04,848 --> 00:34:08,848
ใบเตยเสร็จหรือยัง

513
00:34:08,850 --> 00:34:12,850
โอ.เค. เปิด Sublime ยัง

514
00:34:12,851 --> 00:34:16,851
เปิด Sublime  รอเลย ใคร

515
00:34:16,852 --> 00:34:20,852
ที่ Resize เสร็จ

516
00:34:20,854 --> 00:34:24,854
หรือถ้าของตัวเองมี 5 ภาพ ก็แค่ 5 ภาพ

517
00:34:24,855 --> 00:34:28,855
นะคะ ก็คือตามจำนวนภาพที่ตัวเองมี ให้เปิด

518
00:34:28,858 --> 00:34:32,858
Sublime ขึ้นมาด้วย

519
00:34:32,860 --> 00:34:36,860

520
00:34:36,860 --> 00:34:40,860

521
00:34:40,862 --> 00:34:44,862

522
00:34:44,864 --> 00:34:48,864

523
00:34:48,867 --> 00:34:52,867

524
00:34:52,868 --> 00:34:56,868

525
00:34:56,872 --> 00:35:00,872

526
00:35:00,874 --> 00:35:04,874

527
00:35:04,875 --> 00:35:08,875

528
00:35:08,878 --> 00:35:12,878

529
00:35:12,881 --> 00:35:16,881

530
00:35:16,883 --> 00:35:20,883

531
00:35:20,885 --> 00:35:24,885

532
00:35:24,887 --> 00:35:28,887
ใบเตย

533
00:35:28,889 --> 00:35:32,889
ดูนะ ถ้ามันมีนามสกุลขึ้นมาอย่างนี้

534
00:35:32,890 --> 00:35:36,890

535
00:35:36,891 --> 00:35:40,891

536
00:35:40,894 --> 00:35:44,894

537
00:35:44,896 --> 00:35:48,896

538
00:35:48,899 --> 00:35:52,899

539
00:35:52,901 --> 00:35:56,901

540
00:35:56,903 --> 00:36:00,903

541
00:36:00,904 --> 00:36:04,904

542
00:36:04,908 --> 00:36:08,908

543
00:36:08,910 --> 00:36:12,910

544
00:36:12,911 --> 00:36:16,911

545
00:36:16,913 --> 00:36:20,913

546
00:36:20,915 --> 00:36:24,915

547
00:36:24,918 --> 00:36:28,918

548
00:36:28,920 --> 00:36:32,920

549
00:36:32,924 --> 00:36:36,924

550
00:36:36,927 --> 00:36:40,927

551
00:36:40,930 --> 00:36:44,930

552
00:36:44,932 --> 00:36:48,932

553
00:36:48,934 --> 00:36:52,934

554
00:36:52,935 --> 00:36:56,935

555
00:36:56,936 --> 00:37:00,936

556
00:37:00,939 --> 00:37:04,939

557
00:37:04,940 --> 00:37:08,940

558
00:37:08,941 --> 00:37:12,941

559
00:37:12,943 --> 00:37:16,943

560
00:37:16,944 --> 00:37:20,944

561
00:37:20,946 --> 00:37:24,946

562
00:37:24,949 --> 00:37:28,949

563
00:37:28,950 --> 00:37:32,950

564
00:37:32,952 --> 00:37:36,952

565
00:37:36,953 --> 00:37:40,953

566
00:37:40,959 --> 00:37:44,959

567
00:37:44,961 --> 00:37:48,961

568
00:37:48,963 --> 00:37:52,963

569
00:37:52,964 --> 00:37:56,964

570
00:37:56,966 --> 00:38:00,966

571
00:38:00,968 --> 00:38:04,968

572
00:38:04,970 --> 00:38:08,970

573
00:38:08,972 --> 00:38:12,972

574
00:38:12,974 --> 00:38:16,974

575
00:38:16,977 --> 00:38:20,977

576
00:38:20,979 --> 00:38:24,979

577
00:38:24,981 --> 00:38:28,981

578
00:38:28,983 --> 00:38:32,983

579
00:38:32,984 --> 00:38:36,984

580
00:38:36,985 --> 00:38:40,985

581
00:38:40,987 --> 00:38:44,987

582
00:38:44,990 --> 00:38:48,990
ถ้าใครโหลดเสร็จแล้วปิดโปรแกรม Paint ได้เลย

583
00:38:48,992 --> 00:38:52,992
นะคะ แล้วมาดูที่ Folder

584
00:38:52,994 --> 00:38:56,994
ชื่อนี้เห็นไหม เด็ก ๆ จะต้องมีภาพ

585
00:38:56,995 --> 00:39:00,995
1 เคลื่อนไหวนี่ให้ครบ

586
00:39:00,996 --> 00:39:04,996
นะคะ

587
00:39:04,997 --> 00:39:08,997

588
00:39:08,999 --> 00:39:12,999

589
00:39:13,000 --> 00:39:17,000
แล้วใครมีครบ 10 รูป หรือกี่รูปก็

590
00:39:17,001 --> 00:39:21,001
แล้วหรือกี่รูปก็แล้วแต่เปิด sublime text

591
00:39:21,002 --> 00:39:25,002
ขึ้นมานะคะ

592
00:39:25,004 --> 00:39:29,004

593
00:39:29,005 --> 00:39:33,005
คลิกที่ File Ne

594
00:39:33,006 --> 00:39:37,006
ก็คือเราจะสร้าง Project

595
00:39:37,008 --> 00:39:41,008
python ของเรานะคะ New File

596
00:39:41,012 --> 00:39:45,012
แล้วก็

597
00:39:45,014 --> 00:39:49,014
คลิก Save

598
00:39:49,015 --> 00:39:53,015
เกมนี้

599
00:39:53,016 --> 00:39:57,016
เราจะตั้งชื่อว่าอะไร Animation

600
00:39:57,017 --> 00:40:01,017
Animation ก็ได้

601
00:40:01,020 --> 00:40:05,020

602
00:40:05,020 --> 00:40:09,020
อย่าลืมใส่ .py ด้วยนะคะ

603
00:40:09,021 --> 00:40:13,021
Animation

604
00:40:13,023 --> 00:40:17,023
.py

605
00:40:17,024 --> 00:40:21,024
.py ด้วย ต้อง

606
00:40:21,026 --> 00:40:25,026
อยู่ที่เห็นไหมคะ Folder

607
00:40:25,029 --> 00:40:29,029
ชื่อของเรานะ ต้องอยู่

608
00:40:29,029 --> 00:40:33,029
บอกแล้วรูปกับไฟล์โค้ดน่ะ

609
00:40:33,030 --> 00:40:37,030
ไฟล์โปรแกรมน่ะ เวลามันไปเรียก

610
00:40:37,031 --> 00:40:41,031
ถ้าไฟล์อยู่ตรงนี้รูปอยู่ตรงนี้มันจะได้

611
00:40:41,031 --> 00:40:45,031
หากันมันจะได้เจอกันนะคะ เพราะฉะนั้น มันจะต้องอยู่ที่เดียวกัน

612
00:40:45,034 --> 00:40:49,034
Animation

613
00:40:49,034 --> 00:40:53,034
เห็นไหมล่ะ เดี๋ยว ฃ

614
00:40:53,036 --> 00:40:57,036

615
00:40:57,038 --> 00:41:01,038
ขอเปิดตัวช่วยอีกตัวหนึ่ง

616
00:41:01,039 --> 00:41:05,039

617
00:41:05,041 --> 00:41:09,041

618
00:41:09,043 --> 00:41:13,043

619
00:41:13,047 --> 00:41:17,047

620
00:41:17,048 --> 00:41:21,048

621
00:41:21,051 --> 00:41:25,051

622
00:41:25,053 --> 00:41:29,053

623
00:41:29,055 --> 00:41:33,055

624
00:41:33,056 --> 00:41:37,056
พิมพ์

625
00:41:37,058 --> 00:41:41,058
ตามใน Noet pet

626
00:41:41,059 --> 00:41:45,059
A-n-

627
00:41:45,061 --> 00:41:49,061
i-m-a-t-

628
00:41:49,062 --> 00:41:53,062
i-m-a-t-i-o-n .py

629
00:41:53,063 --> 00:41:57,063
นะคะ ชื่อโปรแกรมของเรา

630
00:41:57,064 --> 00:42:01,064
ที่จะสร้างในวันนี้ เพราะเราจะทำ Animation

631
00:42:01,066 --> 00:42:05,066
เพราะฉะนั้น ให้สังเกตด้วย

632
00:42:05,068 --> 00:42:09,068
เห็นไหมคะ โฟลเดอร์ที่เก็บรูป

633
00:42:09,069 --> 00:42:13,069
กับโปรแกรมจะต้องเป็น Folder เดียวกัน ซึ่ง

634
00:42:13,070 --> 00:42:17,070
Foler ที่เราเซฟ ที่ตั้ง

635
00:42:17,071 --> 00:42:21,071
ชื่อของเด็ก ๆ แต่ละคนนะคะ

636
00:42:21,072 --> 00:42:25,072
ชื่อตรงนี้ก็

637
00:42:25,073 --> 00:42:29,073
จะเปลี่ยนเป็น Animation ชื่อตรงนี้

638
00:42:29,075 --> 00:42:33,075
ก็จะเป็นชื่อเดียวกัน

639
00:42:33,076 --> 00:42:37,076
ต้องเหมือนข้างบนนี้

640
00:42:37,077 --> 00:42:41,077

641
00:42:41,079 --> 00:42:45,079

642
00:42:45,082 --> 00:42:49,082

643
00:42:49,084 --> 00:42:53,084

644
00:42:53,086 --> 00:42:57,086

645
00:42:57,091 --> 00:43:01,091

646
00:43:01,096 --> 00:43:05,096

647
00:43:05,097 --> 00:43:09,097

648
00:43:09,099 --> 00:43:13,099

649
00:43:13,102 --> 00:43:17,102

650
00:43:17,104 --> 00:43:21,104

651
00:43:21,105 --> 00:43:25,105

652
00:43:25,107 --> 00:43:29,107

653
00:43:29,111 --> 00:43:33,111

654
00:43:33,112 --> 00:43:37,112

655
00:43:37,114 --> 00:43:41,114

656
00:43:41,116 --> 00:43:45,116

657
00:43:45,119 --> 00:43:49,119

658
00:43:49,120 --> 00:43:53,120

659
00:43:53,123 --> 00:43:57,123

660
00:43:57,124 --> 00:44:01,124

661
00:44:01,126 --> 00:44:05,126
เหลืออีก

662
00:44:05,128 --> 00:44:09,128
2-3 คนตอนนี้รอแป๊ปหนึ่ง

663
00:44:09,132 --> 00:44:13,132
ยัง Resize ไม่เสร็จ

664
00:44:13,133 --> 00:44:17,133

665
00:44:17,134 --> 00:44:21,134

666
00:44:21,136 --> 00:44:25,136

667
00:44:25,137 --> 00:44:29,137

668
00:44:29,139 --> 00:44:33,139

669
00:44:33,142 --> 00:44:37,142

670
00:44:37,145 --> 00:44:41,145

671
00:44:41,147 --> 00:44:45,147

672
00:44:45,148 --> 00:44:49,148

673
00:44:49,151 --> 00:44:53,151

674
00:44:53,153 --> 00:44:57,153

675
00:44:57,155 --> 00:45:01,155

676
00:45:01,157 --> 00:45:05,157

677
00:45:05,160 --> 00:45:09,160

678
00:45:09,163 --> 00:45:13,163

679
00:45:13,165 --> 00:45:17,165

680
00:45:17,166 --> 00:45:21,166

681
00:45:21,169 --> 00:45:25,169

682
00:45:25,171 --> 00:45:29,171

683
00:45:29,174 --> 00:45:33,174

684
00:45:33,175 --> 00:45:37,175

685
00:45:37,177 --> 00:45:41,177

686
00:45:41,180 --> 00:45:45,180

687
00:45:45,183 --> 00:45:49,183

688
00:45:49,186 --> 00:45:53,186

689
00:45:53,187 --> 00:45:57,187

690
00:45:57,188 --> 00:46:01,188

691
00:46:01,191 --> 00:46:05,191

692
00:46:05,193 --> 00:46:09,193

693
00:46:09,195 --> 00:46:13,195

694
00:46:13,197 --> 00:46:17,197

695
00:46:17,201 --> 00:46:21,201

696
00:46:21,203 --> 00:46:25,203

697
00:46:25,205 --> 00:46:29,205

698
00:46:29,207 --> 00:46:33,207

699
00:46:33,208 --> 00:46:37,208

700
00:46:37,210 --> 00:46:41,210

701
00:46:41,212 --> 00:46:45,212

702
00:46:45,214 --> 00:46:49,214

703
00:46:49,217 --> 00:46:53,217

704
00:46:53,219 --> 00:46:57,219

705
00:46:57,219 --> 00:47:01,219

706
00:47:01,222 --> 00:47:05,222

707
00:47:05,225 --> 00:47:09,225

708
00:47:09,228 --> 00:47:13,228

709
00:47:13,230 --> 00:47:17,230

710
00:47:17,231 --> 00:47:21,231

711
00:47:21,234 --> 00:47:25,234

712
00:47:25,236 --> 00:47:29,236

713
00:47:29,238 --> 00:47:33,238

714
00:47:33,240 --> 00:47:37,240

715
00:47:37,241 --> 00:47:41,241

716
00:47:41,243 --> 00:47:45,243

717
00:47:45,247 --> 00:47:49,247

718
00:47:49,249 --> 00:47:53,249

719
00:47:53,250 --> 00:47:57,250

720
00:47:57,252 --> 00:48:01,252

721
00:48:01,254 --> 00:48:05,254

722
00:48:05,258 --> 00:48:09,258

723
00:48:09,260 --> 00:48:13,260

724
00:48:13,261 --> 00:48:17,261

725
00:48:17,263 --> 00:48:21,263

726
00:48:21,266 --> 00:48:25,266
ใครที่

727
00:48:25,267 --> 00:48:29,267
Resize รูปเสร็จ

728
00:48:29,269 --> 00:48:33,269
นะคะ เปิด Sublime แล้วก็

729
00:48:33,270 --> 00:48:37,270
สร้างไฟล์ใหม่ โดยเซฟ

730
00:48:37,272 --> 00:48:41,272
ชื่อไฟล์ว่า Animation.py

731
00:48:41,272 --> 00:48:45,272

732
00:48:45,274 --> 00:48:49,274

733
00:48:49,275 --> 00:48:53,275

734
00:48:53,277 --> 00:48:57,277

735
00:48:57,283 --> 00:49:01,283

736
00:49:01,287 --> 00:49:05,287

737
00:49:05,289 --> 00:49:09,289
แบมเสร็จหรือยัง

738
00:49:09,290 --> 00:49:13,290
ทำไมภาพแบมมันนิ่ง

739
00:49:13,292 --> 00:49:17,292

740
00:49:17,293 --> 00:49:21,293
ไม่ได้นะนี่ ภาพไอ้แบม

741
00:49:21,295 --> 00:49:25,295
ไม่ได้ สัญญาณภาพเด็กไม่ได้

742
00:49:25,297 --> 00:49:29,297
ไม่เป็นไร

743
00:49:29,298 --> 00:49:33,298
แบมดูพี่เขาแล้วกัน

744
00:49:33,298 --> 00:49:37,298

745
00:49:37,300 --> 00:49:41,300
โอ.เค. ไหม เสร็จหมดทุกคนหรือยัง

746
00:49:41,303 --> 00:49:45,303
เสร็จแล้วนะคะ ก่อนอื่น

747
00:49:45,304 --> 00:49:49,304
ก่อนจะทำได้นี่ ต้องทำความเข้าใจก่อนว่า

748
00:49:49,305 --> 00:49:53,305
โปรแกรมที่เราจะเขียนวันนี้มีลักษณะเป็นอย่างไรนะคะ ฃ

749
00:49:53,305 --> 00:49:57,305
มาดู

750
00:49:57,307 --> 00:50:01,307
ย้อนกลับไป

751
00:50:01,308 --> 00:50:05,308
เพราะหัวข้อบอก OOP

752
00:50:05,309 --> 00:50:09,309
นะคะ Object

753
00:50:09,310 --> 00:50:13,310
กับ Class & Object

754
00:50:13,312 --> 00:50:17,312
create 2D animation นะคะ หัวข้อ

755
00:50:17,312 --> 00:50:21,312
แรกก่อน เนื่องจาก

756
00:50:21,313 --> 00:50:25,313
Python เรานี่มันเป็นโปรแกรม OOP

757
00:50:25,314 --> 00:50:29,314
นะคะ หรือชื่อเต็มมันก็มาจาก

758
00:50:29,315 --> 00:50:33,315
มาจาก object-Oriented Programming

759
00:50:33,316 --> 00:50:37,316
หรือแปลเป็นไทยว่า "การเขียนโปรแกรม

760
00:50:37,319 --> 00:50:41,319
เชิงวัสถุ ก็คือลักษณะการเขียนโปรแกรมเชิงวัสถุน

761
00:50:41,319 --> 00:50:45,319
ก็คือเราจะต้องมองสิ่งที่เราจะเขียนนี่

762
00:50:45,321 --> 00:50:49,321
ให้มันเป็นวัตถุเพราะอะไร เพราะ

763
00:50:49,322 --> 00:50:53,322
Object แปลว่า วัตถุนะคะ

764
00:50:53,325 --> 00:50:57,325
Object 1 อย่าง หรือวัสถุ 1 ชิ้นนี่ ต้องมี

765
00:50:57,326 --> 00:51:01,326
Data หรือมีข้อมูลนะคะ

766
00:51:01,327 --> 00:51:05,327
เช่น ๆ เช่น ๆ ยกตัวอย่าง

767
00:51:05,328 --> 00:51:09,328
ให้เห็นใกล้ ๆ ตัว

768
00:51:09,329 --> 00:51:13,329
นะคะ ปากกานี่

769
00:51:13,330 --> 00:51:17,330
ปากกาแม่กับปากกาเด็ก ๆ

770
00:51:17,331 --> 00:51:21,331
เหมือนกันไหม ไหนทุกคน

771
00:51:21,332 --> 00:51:25,332
ลองยกปากกาตัวเองขึ้นมาสิ

772
00:51:25,336 --> 00:51:29,336
ไม่ได้พก โชว์ปากกาหน่อย โชว์ปากกา

773
00:51:29,336 --> 00:51:33,336
ของตัวเองหน่อย เอาปากกาขึ้นมา

774
00:51:33,337 --> 00:51:37,337
นะคะ เห็นไหม

775
00:51:37,338 --> 00:51:41,338
ปากกา ชื่อปากกาเหมือนกันใช่ไหม

776
00:51:41,338 --> 00:51:45,338
ปากกาเหมือนกันใช่ไหม แต่ให้ดู Data หรือข้อมูล

777
00:51:45,340 --> 00:51:49,340
เหมือนของเซฟ สีเหมือนไหม

778
00:51:49,341 --> 00:51:53,341
ยี่ห้อเหมือนไหม นี่คือ Data

779
00:51:53,342 --> 00:51:57,342
เห็นไหมคะ

780
00:51:57,344 --> 00:52:01,344
ของเซฟเป็นแบบกดไหม ไม่ใช่ใช่ไหม

781
00:52:01,345 --> 00:52:05,345
ของเซฟมีปอกปากกา

782
00:52:05,346 --> 00:52:09,346
วัตถุชิ้นนี้นะคะ 1 ชิ้น

783
00:52:09,347 --> 00:52:13,347
นี่นะคะ แล้วมีสิ่ง

784
00:52:13,348 --> 00:52:17,348
ที่เรียกว่าใน object นี่นอกจากมี data แล้ว ยังมี method

785
00:52:17,349 --> 00:52:21,349
Method ก็คือตัวที่

786
00:52:21,351 --> 00:52:25,351
แสดงเขาเรียกว่า

787
00:52:25,352 --> 00:52:29,352
ถ้าเป็นภาษาไทยน่ะ ภาษาไทยเวลา

788
00:52:29,353 --> 00:52:33,353
เขียนประโยคมันจะมีประธาน กิริยา กรรม นะคะ

789
00:52:33,354 --> 00:52:37,354
Method นั้นให้นึกถึงลักษณะของกริยา

790
00:52:37,355 --> 00:52:41,355
ก็คือการกระทำนะคะ แต่ในภาษา

791
00:52:41,356 --> 00:52:45,356
คอมพิวเตอร์นี่ Method นี่จะเป็นพฤติกรรม

792
00:52:45,357 --> 00:52:49,357
หรือสิ่งที่เราต้องการให้วัสถุชิ้นนั้น

793
00:52:49,358 --> 00:52:53,358
มันสามารถทำได้

794
00:52:53,359 --> 00:52:57,359
หรือเกิดอะไรก็ได้กับวัตถุชิ้นนั้น

795
00:52:57,358 --> 00:53:01,358
เช่น เหมือนปากกาแม่นี่

796
00:53:01,360 --> 00:53:05,360
นึกออกนะ

797
00:53:05,362 --> 00:53:09,362
สิ่งที่จะให้มันทำ เช่น เมื่อกดใช่ไหมคะ

798
00:53:09,363 --> 00:53:13,363
กระทำโดยการกดใช่ไหม แล้วมันจะมีหัวปาก

799
00:53:13,364 --> 00:53:17,364
ออกมาใช่ไหมคะ อย่างนี้ นั่นคือสิ่งที่ให้

800
00:53:17,366 --> 00:53:21,366
เกิดการกระทำในตัววัตถุชิ้นนั้น หรือ

801
00:53:21,367 --> 00:53:25,367
ปากกาทำอะไรได้อีก เขียนได้ รุ่นใหม่ทำอะไรได้อีก

802
00:53:25,368 --> 00:53:29,368
ปากการุ่นใหม่ที่ปากกาลบได้

803
00:53:29,369 --> 00:53:33,369
นะคะ นั่นคือ Method ซึ่งจะเป็นตัว

804
00:53:33,370 --> 00:53:37,370
ควบคุมหรือสั่ง Data นั่นเอง

805
00:53:37,371 --> 00:53:41,371
สั่งข้อมูลนะคะ ซึ่ง Data ใน

806
00:53:41,372 --> 00:53:45,372
หลักของการเขียนโปรแกรม Data จะหมายถึง

807
00:53:45,372 --> 00:53:49,372
Variable หรือตัวแปร ซึ่งเราจะกำหนดตัวแปร

808
00:53:49,374 --> 00:53:53,374
เพื่อให้คอมพิวเตอร์มันรู้จัก นึกออกนะ เราจะ

809
00:53:53,375 --> 00:53:57,375
ไม่มาเขียน Data ใส่ล

810
00:53:57,377 --> 00:54:01,377
นะคะ เพราะฉะนั้นบางที

811
00:54:01,378 --> 00:54:05,378
Object 1 กับ Object 2

812
00:54:05,379 --> 00:54:09,379
อาจจะใช้ method ร่วมกันได้ เห็นไหมคะ

813
00:54:09,380 --> 00:54:13,380
เพราะอะไร เพราะเหมือนที่บอกปากกา

814
00:54:13,380 --> 00:54:17,380
มีบางสิ่งที่เหมือนกัน เช่น

815
00:54:17,381 --> 00:54:21,381
การกระทำนั่น ก็คือใช้เขียนใช่ไหมคะ

816
00:54:21,382 --> 00:54:25,382
มันก็คือใช้ method เดียวกัน เห็นไหมคะ อย่างนี้เป็นต้น

817
00:54:25,383 --> 00:54:29,383
เดี๋ยวคลิกให้เห็นการเชื่อมโยง Method

818
00:54:29,386 --> 00:54:33,386
ตัวนี้มาใส่ตัวนี้ได้

819
00:54:33,388 --> 00:54:37,388
นะคะ ให้ Method มันเชื่อมโยงกันได้

820
00:54:37,389 --> 00:54:41,389
ของการเขียนโปรแกรมเชิงวัตถุนี่

821
00:54:41,391 --> 00:54:45,391
มันจะมีการห่อห้มตัว Object เห็นไ

822
00:54:45,394 --> 00:54:49,394
วัตถุไว้ข้างในนี่ วัตถุมันตัวกลม ๆ

823
00:54:49,396 --> 00:54:53,396
ต้องหุ้มมันไว้ หุ้มข้อมูลกับตัว

824
00:54:53,397 --> 00:54:57,397
ของ method ไว้

825
00:54:57,398 --> 00:55:01,398
นะคะ ซึ่งเขาบอกไว้

826
00:55:01,402 --> 00:55:05,402
ว่าที่เรามาใช้โปรแกรมนี้ โปรแกรม

827
00:55:05,403 --> 00:55:09,403
เชิงวัตถุนี่เพราะเราต้องการลด

828
00:55:09,404 --> 00:55:13,404
คือ แต่เดิมนี่ โปรแกรมแบบเดิมเป็น

829
00:55:13,405 --> 00:55:17,405
ภาษาแบบที่เป็นโครงสร้างนี่ เขียนแค่

830
00:55:17,406 --> 00:55:21,406
1-20 บรรทัดนี่มัน โอ.เค. อยู่

831
00:55:21,407 --> 00:55:25,407
แต่พอเยอะ ๆ น่ะ แล้วทีนี้โปรแกรมที่เขียน

832
00:55:25,409 --> 00:55:29,409
จริง ๆ นี่ เหมือนโปรแกรมขนาดใหญ่น่ะ

833
00:55:29,409 --> 00:55:33,409
มันไม่ได้เขียนแค่ 1-20 บรรทัดไง

834
00:55:33,411 --> 00:55:37,411
มันเลยทำให้เกิดการสร้างวิธีการสร้างโปรแกรมเชิงวัตถุ

835
00:55:37,412 --> 00:55:41,412
ขึ้นมา ก็คือเพื่อลดเห็นไหมคะ

836
00:55:41,413 --> 00:55:45,413
รองรับงานที่ซ้ำซ้อน เพราะบางทีน่ะ

837
00:55:45,414 --> 00:55:49,414
จะต้องมาเขียน

838
00:55:49,415 --> 00:55:53,415
กระทำบางอย่างซ้ำ ๆ นึกออกนะ

839
00:55:53,417 --> 00:55:57,417
ในโปรแกรมเดียวนี่ ซึ่งมันอาจะทำให้

840
00:55:57,418 --> 00:56:01,418
เกิดปัญหา Error ได้ เหมือนสัปดาห์ที่แล้วน่ะ

841
00:56:01,419 --> 00:56:05,419
ทำไมถึงมี pos_x แล้วยังมี x

842
00:56:05,420 --> 00:56:09,420
เป็นแกน x แต่มันเป็นตัวแปรที่แทน

843
00:56:09,421 --> 00:56:13,421
ค่าแกน X ของตัวนี้อีกตัวหนึ่ง

844
00:56:13,422 --> 00:56:17,422
อย่างนี้ นึกออกนะ ไม่ให้มันซ้ำกัน เพราะถ้ามันซ้ำกัน

845
00:56:17,423 --> 00:56:21,423
กับไอ้ตัวแปรเดิมใช่ไหมคะ ให้นึกภาพนี้นะคะ

846
00:56:21,425 --> 00:56:25,425
มันก็เลยเพื่อไม่ให้ข้อมูลมีความซ้ำ

847
00:56:25,426 --> 00:56:29,426
ซ้อนนะคะ อันนี้

848
00:56:29,428 --> 00:56:33,428
เขายกตัวอย่างเป็นรถยนต์ ถ้า

849
00:56:33,429 --> 00:56:37,429
เทียบกับการเขียนโปรแกรมเป็นรถยนต์นี่

850
00:56:37,430 --> 00:56:41,430
แบบ OOP เป็รรถยนต์นี่ ถ้า OOP

851
00:56:41,432 --> 00:56:45,432
แยกเป็นชิ้น ๆ ออกมานี่

852
00:56:45,433 --> 00:56:49,433
ออกมานี่นะคะ เห็นไหมคะ ชิ้นส่วน

853
00:56:49,435 --> 00:56:53,435
วัตถุนี่เขาจะเรียกว่า "Object"

854
00:56:53,436 --> 00:56:57,436
ที่เราจะเขียนนี่ให้มองมันเป็น Object  ไว้ก่อน

855
00:56:57,438 --> 00:57:01,438
แล้วทีนี้ถ้าให้เปรียบถึงรถ

856
00:57:01,439 --> 00:57:05,439
เดี๋ยวมีรูปให้ดู ก็คือพอดึงชิ้นส่วน

857
00:57:05,441 --> 00:57:09,441
แต่ละอย่างออกจากกันนี่ บางทีให้นึกถึงเวลา

858
00:57:09,442 --> 00:57:13,442
ซ่อมรถนึกออกไหม อาไหล่รถ

859
00:57:13,443 --> 00:57:17,443
ตัวนี้อาจจะเอาไปซ่อมรถอีกคันหนึ่งได้

860
00:57:17,444 --> 00:57:21,444
เห็นไหมคะ ลดการซ้ำซ้อน ก็คือไม่ต้องไปสร้างอะไหล่

861
00:57:21,445 --> 00:57:25,445
อะไหล่ใหม่เพื่อใช้กับรถคันใหม่

862
00:57:25,446 --> 00:57:29,446
ตัวเดิมไปใช้ด้วยกันได้ให้มอง

863
00:57:29,448 --> 00:57:33,448
เป็นรูป ถ้ามองแบบเขียน Coding

864
00:57:33,449 --> 00:57:37,449
เหมือนช่างน่ะ ซ้อมน่ะ เขาก็ Adapt ได้

865
00:57:37,451 --> 00:57:41,451
เหมือนอะไหล่รถยุโรปกับรถญี่ปุ่น

866
00:57:41,453 --> 00:57:45,453
นึกออกนะคะ ไม่ใช่ว่าพอ

867
00:57:45,454 --> 00:57:49,454
อะไหล่รถญี่ปุ่นเสีย

868
00:57:49,455 --> 00:57:53,455
เอาของรถยุโรปมาใช้ไม่ได้อย่างนี้

869
00:57:53,457 --> 00:57:57,457
มันก็จะกลายเป็นว่า ต้องไปสร้างใหม่ หรือทำอะไหล่ใหม่

870
00:57:57,459 --> 00:58:01,459
คือ บางอย่างเขาเรียกว่า

871
00:58:01,460 --> 00:58:05,460
มันเป็นการเอื้อให้มันมาใช้ได้ ทีนี้

872
00:58:05,461 --> 00:58:09,461
เวลาจะดู object นะคะ หรือแบ่ง object ในทางโปรแกรมนี่

873
00:58:09,462 --> 00:58:13,462
เราสามารถแบ่งลักษณะของ Object นี่

874
00:58:13,463 --> 00:58:17,463
ออกเป็น 2 ประเภท

875
00:58:17,465 --> 00:58:21,465
แบบที่ 1 คือ รูปธรรม รูปธรรมนั้นคือ

876
00:58:21,466 --> 00:58:25,466
มันจับต้องได้

877
00:58:25,467 --> 00:58:29,467
เช่น ให้นึกถึงจักรยานรถสุนัข

878
00:58:29,468 --> 00:58:33,468
นะคะ แต่ถ้าเป็นนามธรรมจับต้องไม่ได้

879
00:58:33,469 --> 00:58:37,469
มันจะเป็นเหมือนการพูดถึงน่ะ

880
00:58:37,470 --> 00:58:41,470
เที่ยวบินอะไรอย่างนี้ เขาก็จะ... พอเขียนโปรแกรมนี่

881
00:58:41,471 --> 00:58:45,471
ไม่ใช่เฉพาะวัตถุอย่างเดียวุถึงจะเป็น Object

882
00:58:45,471 --> 00:58:49,471
พวกเหมือนเราทำเที่ยวบินนี่

883
00:58:49,472 --> 00:58:53,472
เที่ยวบินมันจับต้องไม่ได้แต่มันต้องมีรูปธรรม

884
00:58:53,474 --> 00:58:57,474
ไปยุโรปมีสายการบินไหนบินบ้าง เห็นไหมคะ

885
00:58:57,476 --> 00:59:01,476
อันนี้น่ะคือจับต้องไม่ได้

886
00:59:01,477 --> 00:59:05,477
ถ้าไปยุโรปมีไปประเทศไหน

887
00:59:05,479 --> 00:59:09,479
นะคะ อย่างนี้เป็นต้นนะคะ ฉะนั้น

888
00:59:09,480 --> 00:59:13,480
นั่นจะมองไม่เห็น เหมือนวิ่งน่ะ วิธีวิ่งของคนแต่ละคน

889
00:59:13,481 --> 00:59:17,481
นึกออกนะ วิ่งเหมือนกันไหม ไม่เหมือนนะคะ บางคน

890
00:59:17,483 --> 00:59:21,483
จะถนัดวิ่งช้า ๆ วิ่งเร็ว ๆ

891
00:59:21,484 --> 00:59:25,484
นะคะ ทีนี้ที่พูดถึงเพราะ

892
00:59:25,486 --> 00:59:29,486
มันจะต้องถ้าเขียนแบบ object ปุ๊บนี่

893
00:59:29,487 --> 00:59:33,487
มันจะต้องมีการ มีองค์ประกอบอยู่ 2 อย่าง ก็คือมี

894
00:59:33,488 --> 00:59:37,488
Class กับ Object  การ

895
00:59:37,490 --> 00:59:41,490
เขียนโปรแกรมในวันนี้จะมีการ

896
00:59:41,491 --> 00:59:45,491
เขียน Class ด้วยนะคะ ทีนี้ก่อนจะเขียนได้ ต้องมารู้ก่อนว่า

897
00:59:45,493 --> 00:59:49,493
Class กับ Object นี่มัน

898
00:59:49,494 --> 00:59:53,494
มีความสำคัญด้วยกันอย่างไร ก็คือ

899
00:59:53,494 --> 00:59:57,494
ถ้าเราจะทำ Object ได้

900
00:59:57,495 --> 01:00:01,495
เราจะต้องมี Class ขึ้นมาก่อน กำหนด Class ขึ้นมาก่อน

901
01:00:01,496 --> 01:00:05,496
ในนี้เขาบอกว่าให้นึกถึง Class เป็น

902
01:00:05,497 --> 01:00:09,497
มีแม่แบบเพื่อกำหนดว่า object  นี้

903
01:00:09,498 --> 01:00:13,498
มันจะมี Data อะไร

904
01:00:13,499 --> 01:00:17,499
มี method อะไร นึกออกนะ

905
01:00:17,500 --> 01:00:21,500

906
01:00:21,501 --> 01:00:25,501
ทีนี้ใน object นี่จะประกอบไปด้วย

907
01:00:25,502 --> 01:00:29,502
สิ่งที่เรียกว่า "คุณสมบัติอยู่ 2 ประการ"

908
01:00:29,503 --> 01:00:33,503
เห็นไหมคะ ตัวแรก

909
01:00:33,503 --> 01:00:37,503
นะคะ คุณสมบัติที่เรียกว่า "ค

910
01:00:37,505 --> 01:00:41,505
นะคะ ก็คือบ่งบอกถึง

911
01:00:41,505 --> 01:00:45,505
ลักษณะข้อมูลทั่วไปของวัตถุ

912
01:00:45,506 --> 01:00:49,506
นั่นเองนะคะ มันจะเรียก "attribute" นะคะ

913
01:00:49,507 --> 01:00:53,507
หรือ Data แต่ในภาษานัก

914
01:00:53,508 --> 01:00:57,508
Programming นี่

915
01:00:57,509 --> 01:01:01,509
นะคะ จะเรียกตัวแรก แล้วส่วนของ

916
01:01:01,510 --> 01:01:05,510
พฤติกรรมหรือสิ่งที่ให้

917
01:01:05,512 --> 01:01:09,512
มันกระทำ หรือถ้าแปลเป็นภาษาไทย ก็คือ

918
01:01:09,513 --> 01:01:13,513
กริยานั่นเองนะคะ การกระทำนี่ ในภาษา

919
01:01:13,514 --> 01:01:17,514
คอมนี่เราจะใช้คำว่า "Method"

920
01:01:17,515 --> 01:01:21,515
ก็คือเมื่อเราสร้าง Class ขึ้นมา ใน Class นั้นจะต้องมี

921
01:01:21,517 --> 01:01:25,517
Attribute กับ Method อยู่ข้างในนะคะ

922
01:01:25,518 --> 01:01:29,518
เช่น ยกตัวอย่างให้เห็น

923
01:01:29,519 --> 01:01:33,519
รถยนต์ถ้าเราสร้าง Class

924
01:01:33,521 --> 01:01:37,521
ของรถยนต์นี่ attribute ของมัน

925
01:01:37,522 --> 01:01:41,522
นะคะ ก็ควรจะมีบอกว่ายี่ห้ออะไร

926
01:01:41,523 --> 01:01:45,523
เห็นไหมเพราะรถยนต์มีหลายยี่ห้อ

927
01:01:45,525 --> 01:01:49,525
นะคะ เพราะฉะนั้น จะทำ

928
01:01:49,526 --> 01:01:53,526
โปรแกรมสำหรับเก็บหรือ

929
01:01:53,528 --> 01:01:57,528
ทำให้เกิด Class ของรถยนต์นี่มี

930
01:01:57,529 --> 01:02:01,529
อะไรบ้าง เก็บยี่ห้อ เก็บรุ่น เก็บสี

931
01:02:01,529 --> 01:02:05,529
นะคะ อยากเก็บเพิ่มมากกว่านี้ก็เก็บได้

932
01:02:05,530 --> 01:02:09,530
นะคะ แล้วสิ่งที่ method ใน Class รถยนต์

933
01:02:09,531 --> 01:02:13,531
จะต้องมี รถยานต์ทำอะไรได้

934
01:02:13,532 --> 01:02:17,532
เปลี่ยนเกียร์ได้ แต่

935
01:02:17,533 --> 01:02:21,533
มีคลัช แต่รุ่นใหม่ไม่มี

936
01:02:21,533 --> 01:02:25,533
Auto ใช่ไหม มันมีครัช ถ้ารถรุ่นก่อน

937
01:02:25,535 --> 01:02:29,535
ก็จะมีเปลี่ยนครัชได้ มันก็จะมี

938
01:02:29,536 --> 01:02:33,536
Method ก็คือสิ่งที่รถยนต์จะ

939
01:02:33,537 --> 01:02:37,537
สามารถกระทำออกมาได้ หรือเราต้องการให้

940
01:02:37,538 --> 01:02:41,538
รถยนต์นั้นกระทำนะคะ เช่น

941
01:02:41,551 --> 01:02:45,551
อะไรนะ เปิดแอร์ได้ ให้นึก

942
01:02:45,553 --> 01:02:49,553
ถ้านึกถึงวิวัฒนาการของรถยนต์

943
01:02:49,554 --> 01:02:53,554
ก็เป็นเปิดพัดลมอย่างนี้แทนนะคะ

944
01:02:53,555 --> 01:02:57,555
หรือตรงเปิดแอร์หรือปรับอุณหภูมินี่อาจจะมี

945
01:02:57,557 --> 01:03:01,557
เปิดเป็นแอร์ เปิดเป็นพัดลมเฉย ๆ อย่างนี้ก็ได้

946
01:03:01,558 --> 01:03:05,558
นั่นก็คือเวลาเราเรียน Class 1 Class

947
01:03:05,560 --> 01:03:09,560
เราจะต้องมีองค์ประกอบข้างในคือ

948
01:03:09,562 --> 01:03:13,562
attribute กับ method นะคะ ขาดไม่ได้

949
01:03:13,563 --> 01:03:17,563
ถ้า Attribute นี่ เวลาพอเขียนเป็นโปรแกรมออกมา

950
01:03:17,565 --> 01:03:21,565
หมายถึงตัวแปรน่ะสร้างตัวแปรขึ้นมา

951
01:03:21,566 --> 01:03:25,566
หรือรับค่า แล้วส่วนของ Method ก็คือ

952
01:03:25,567 --> 01:03:29,567
พวกเงื่อนไขนั่นเอง เงื่อนไขที่ให้เกิด Event

953
01:03:29,569 --> 01:03:33,569
หรือเหตุการณ์ หรือการกระทำนะคะ

954
01:03:33,570 --> 01:03:37,570
ทีนี้รูปแบบเวลาเขียนนะคะ

955
01:03:37,571 --> 01:03:41,571
เรานะต้องพิมพ์รูปแบบ

956
01:03:41,572 --> 01:03:45,572
ก็คือพิมพ์คำว่า "class"

957
01:03:45,574 --> 01:03:49,574
แล้วตามด้วยชื่อ ClassName ส่วนสิ่งที่

958
01:03:49,576 --> 01:03:53,576
หรือสิ่งที่อยู่ข้างใน Class ก็จะมี

959
01:03:53,578 --> 01:03:57,578
Method อยู่ข้างใน จะต้องมี Attribute กับ Method

960
01:03:57,579 --> 01:04:01,579
อยู่ข้างในนะคะ ทีนี้เราจะ

961
01:04:01,580 --> 01:04:05,580
มาเริ่มเขียน Code แล้วนะคะ

962
01:04:05,581 --> 01:04:09,581
อันนี้ข้าม

963
01:04:09,582 --> 01:04:13,582
อันดับแรก

964
01:04:13,583 --> 01:04:17,583
ก็คือเราจะต้อง import module เข้ามาก่อน

965
01:04:17,586 --> 01:04:21,586
ใช่ไหมคะ บรรทัดที่ 1 บรรทัดที่ 2 ตั้งค่าทั่วไป

966
01:04:21,587 --> 01:04:25,587
และบรรทัดที่ 3 ตั้งค่าการแสดงผล

967
01:04:25,588 --> 01:04:29,588
ทำไมหายไป

968
01:04:29,589 --> 01:04:33,589

969
01:04:33,590 --> 01:04:37,590
สิ่งหนึ่งที่หายไป บรรทัดแรก เห็นไหมคะ

970
01:04:37,592 --> 01:04:41,592
import Module ที่ช

971
01:04:41,594 --> 01:04:45,594
เพราะฉะนั้น บรรทัดที่ 1

972
01:04:45,595 --> 01:04:49,595
พิมพ์เลย import

973
01:04:49,597 --> 01:04:53,597
เปิด Sublime

974
01:04:53,598 --> 01:04:57,598
นะคะ พิมพ์... เดี๋ยว

975
01:04:57,599 --> 01:05:01,599

976
01:05:01,600 --> 01:05:05,600
คลิก import pygame,

977
01:05:05,601 --> 01:05:09,601
กับ

978
01:05:09,602 --> 01:05:13,602
sys เห็นไหมคะ sys

979
01:05:13,603 --> 01:05:17,603
Module นะคะ Six Module

980
01:05:17,605 --> 01:05:21,605
ก็คือ import module ที่ชื่อ pygame

981
01:05:21,606 --> 01:05:25,606
กับ import ที่ชื่อ modle

982
01:05:25,607 --> 01:05:29,607
หรือระบบ เราจะไปดึง

983
01:05:29,609 --> 01:05:33,609
ระบบมาใช้ด้วย เพราะมันมี เพราะเราจะ

984
01:05:33,610 --> 01:05:37,610
เปิด class

985
01:05:37,612 --> 01:05:41,612
เมื่อได้

986
01:05:41,617 --> 01:05:45,617
ทำการ import เสร็จ สิ่ง

987
01:05:45,618 --> 01:05:49,618
ที่เราจะต้องทำนะคะ ก็คือ

988
01:05:49,619 --> 01:05:53,619
การตั้งค่าทั่วไป ก็คือ

989
01:05:53,620 --> 01:05:57,620
บอกให้ pygame

990
01:05:57,621 --> 01:06:01,621
รู้แล้วเราจะเริ่มโปรแกรมใช่ไหมคะ

991
01:06:01,622 --> 01:06:05,622
อีกตัวหนึ่ง ค่า Clock

992
01:06:05,623 --> 01:06:09,623
ถ้าพูดถึง ก็คือนาฬิกานั่นเอง ค่า clock

993
01:06:09,625 --> 01:06:13,625
เพราะอะไร เพราะการจะทำให้ภาพมันเคลื่อนไหว

994
01:06:13,626 --> 01:06:17,626
นี่มันต้องใช้ตัว...

995
01:06:17,627 --> 01:06:21,627
ตัว Function Clock ช่วย

996
01:06:21,630 --> 01:06:25,630
ให้รูปมัน...

997
01:06:25,632 --> 01:06:29,632
คือการเคลื่อนที่ของภาพน่ะ ให้ภาพ

998
01:06:29,636 --> 01:06:33,636
มันต้องใช้ตัวนี้เป็นตัวช่วยนะคะ

999
01:06:33,637 --> 01:06:37,637
เสร็จแล้วก็สร้างส่วน

1000
01:06:37,638 --> 01:06:41,638
การแสดงผลของ clock เห็นไหมคะ clock.tick

1001
01:06:41,640 --> 01:06:45,640
หมายถึง ฟังก์ชันติ๊ก

1002
01:06:45,641 --> 01:06:49,641
การนับน่ะค่ะ การนับเวลาเข็ม

1003
01:06:49,642 --> 01:06:53,642
นาฬิกาน่ะ นึกออกนะ เข็มวิมันก็

1004
01:06:53,644 --> 01:06:57,644
1 tick นะคะ 60 วิ(นาที)

1005
01:06:57,646 --> 01:07:01,646
ภายใน 60 วินาทีนี่ เพราะค่า

1006
01:07:01,648 --> 01:07:05,648
ของ Clock นี่เลข 60 หมายถึง

1007
01:07:05,649 --> 01:07:09,649

1008
01:07:09,651 --> 01:07:13,651
FPS น่ะ FPS ก็คือ Fast

1009
01:07:13,653 --> 01:07:17,653
แปลว่า ความเร็ว

1010
01:07:17,654 --> 01:07:21,654
sec

1011
01:07:21,656 --> 01:07:25,656
ต่อวินาที ก็คือความเร็วที่จะให้

1012
01:07:25,657 --> 01:07:29,657
ไอ้ตัวรูปน่ะมันแสดงผลน่ะ ต่อวินาทีนี่

1013
01:07:29,659 --> 01:07:33,659
เท่านี้ นะคะ เพราะฉะนั้น เรา

1014
01:07:33,660 --> 01:07:37,660
ทำก่อนอื่นเราจะต้อง import Module

1015
01:07:37,661 --> 01:07:41,661
เข้าไปตามหลักทั่วไปแล้วก็เซ็ตค่าที่

1016
01:07:41,663 --> 01:07:45,663
มันจะได้ใช้ตลอดนะคะ

1017
01:07:45,664 --> 01:07:49,664
โอ.เค. นะ ถึงไหนแล้ว

1018
01:07:49,664 --> 01:07:53,664
ตามเรามา ตามเรามา

1019
01:07:53,666 --> 01:07:57,666
ด้วย Import pygame เว้น 2 บรรทัด แล้ว

1020
01:07:57,666 --> 01:08:01,666
ใส่ Hashtag (#) เพื่อจะได้รู้ว่า

1021
01:08:01,668 --> 01:08:05,668
เราจะตั้งค่า

1022
01:08:05,669 --> 01:08:09,669
ตั้งแค่เบื้องต้นน่ะ ตั้งค่าเบื้องต้น

1023
01:08:09,672 --> 01:08:13,672
ก็คือ

1024
01:08:13,673 --> 01:08:17,673
pygame

1025
01:08:17,675 --> 01:08:21,675

1026
01:08:21,676 --> 01:08:25,676

1027
01:08:25,678 --> 01:08:29,678

1028
01:08:29,681 --> 01:08:33,681

1029
01:08:33,682 --> 01:08:37,682
Error จริง ๆ ด้วย

1030
01:08:37,684 --> 01:08:41,684

1031
01:08:41,686 --> 01:08:45,686
Function นะคะ Function

1032
01:08:45,687 --> 01:08:49,687
อย่าลืม เมื่อเรียกเป็น function จะต้องมีวงเล็บ

1033
01:08:49,688 --> 01:08:53,688
มี ()

1034
01:08:53,691 --> 01:08:57,691
เห็นไหมคะ () ทันที

1035
01:08:57,691 --> 01:09:01,691
แล้วก็ Clock ค่ะ Clock =

1036
01:09:01,693 --> 01:09:05,693
อันนี้คือตัวแปรนะคะ

1037
01:09:05,694 --> 01:09:09,694
ประกาศตัวแปรก่อน Clock

1038
01:09:09,696 --> 01:09:13,696
= py

1039
01:09:13,698 --> 01:09:17,698
pygame module.

1040
01:09:17,700 --> 01:09:21,700
.Clock() เห็นไหม . อะไร

1041
01:09:21,701 --> 01:09:25,701
.time.clock

1042
01:09:25,702 --> 01:09:29,702
Clock Function เห็นไหม

1043
01:09:29,703 --> 01:09:33,703
เราก็จะเรียกใช้

1044
01:09:33,705 --> 01:09:37,705
pygame.time

1045
01:09:37,706 --> 01:09:41,706
time นะคะ module

1046
01:09:41,707 --> 01:09:45,707

1047
01:09:45,708 --> 01:09:49,708
แล้วก็ Function

1048
01:09:49,709 --> 01:09:53,709
สังเกตเห็นไหมคะ ว่า

1049
01:09:53,710 --> 01:09:57,710
Clock ที่เป็นชื่อตัวแปร

1050
01:09:57,711 --> 01:10:01,711
เห็นไหม เห็นไหม Clock Function จะ

1051
01:10:01,713 --> 01:10:05,713
เป็นตัวใหญ่ขึ้นต้นด้วยตัวใหญ๋

1052
01:10:05,713 --> 01:10:09,713
จะเป็นคนละตัวกันนะคะ

1053
01:10:09,714 --> 01:10:13,714
ได้ส่วนของการตั้งค่าทั่วไป แล้วก็ส่วนของการแสดงผล

1054
01:10:13,716 --> 01:10:17,716
Clock.tick มีค่า =

1055
01:10:17,717 --> 01:10:21,717
60 นะคะ กำหนดค่าของ

1056
01:10:21,718 --> 01:10:25,718
การแสดงผล ตามมา

1057
01:10:25,720 --> 01:10:29,720
เว้นไปสัก

1058
01:10:29,722 --> 01:10:33,722
ตรงนี้จะเป็นส่วนของการแสดงผลลัพธ์

1059
01:10:33,723 --> 01:10:37,723
เรานะคะ

1060
01:10:37,724 --> 01:10:41,724

1061
01:10:41,725 --> 01:10:45,725

1062
01:10:45,727 --> 01:10:49,727

1063
01:10:49,728 --> 01:10:53,728

1064
01:10:53,729 --> 01:10:57,729

1065
01:10:57,732 --> 01:11:01,732

1066
01:11:01,736 --> 01:11:05,736
นะคะ Clock.tick(60) อย่าง

1067
01:11:05,738 --> 01:11:09,738

1068
01:11:09,739 --> 01:11:13,739
อย่าลืมดู

1069
01:11:13,740 --> 01:11:17,740

1070
01:11:17,741 --> 01:11:21,741
โอ.เค. ไหมคะ

1071
01:11:21,742 --> 01:11:25,742
1 2 3 4 4 บรรทัดนี้

1072
01:11:25,743 --> 01:11:29,743
ใครเสร็จแล้วยกมือขึ้น

1073
01:11:29,744 --> 01:11:33,744
เสร็จหรือยัง เสร็จแล้วนะ จ๊าบเสร็จหรือยัว

1074
01:11:33,746 --> 01:11:37,746
ถึงบรรทัดไหนแล้ว

1075
01:11:37,748 --> 01:11:41,748
Clock ติ๊กหรือยัง โอ.เค. รอเพื่อนแป๊บหนึ่ง

1076
01:11:41,749 --> 01:11:45,749

1077
01:11:45,750 --> 01:11:49,750
โอ.เค. ไหม เสร็จแล้วนะคะ

1078
01:11:49,751 --> 01:11:53,751
ไปแล้ว ส่วนต่อไปที่เราจะทำ

1079
01:11:53,752 --> 01:11:57,752
ก็คือ

1080
01:11:57,753 --> 01:12:01,753
ก็ต้องสร้างหน้าจอให้มันใช่ไหมคะ ก็คือ

1081
01:12:01,754 --> 01:12:05,754
การตั้งค่าหน้าจอเกมนะคะ กำหนดตัวแปรชื่อว่า

1082
01:12:05,755 --> 01:12:09,755
Width สำหรับค่าความ

1083
01:12:09,756 --> 01:12:13,756
กว้างแล้วก็ Hight

1084
01:12:13,757 --> 01:12:17,757
อันนี้ปรับได้นะคะ ตัวเลขไม่จำเป็นต้องเป็น 600

1085
01:12:17,758 --> 01:12:21,758
แล้วก็เรียก แล้วก็สร้างตัวแปร

1086
01:12:21,759 --> 01:12:25,759
เป็นตัวแปรสำหรับ

1087
01:12:25,760 --> 01:12:29,760
หน้าจอนั่นเองนะคะ

1088
01:12:29,761 --> 01:12:33,761
แล้วก็ใน Caption น่ะ

1089
01:12:33,763 --> 01:12:37,763
พิมพ์ว่า "

1090
01:12:37,764 --> 01:12:41,764

1091
01:12:41,765 --> 01:12:45,765

1092
01:12:45,766 --> 01:12:49,766
สร้างหน้าจอก็จะอยู่ต่อกับ

1093
01:12:49,768 --> 01:12:53,768
ตั้งค่าเบื้องต้นนี่เอ

1094
01:12:53,770 --> 01:12:57,770

1095
01:12:57,771 --> 01:13:01,771
เรา

1096
01:13:01,772 --> 01:13:05,772
จะสร้างจอเกมกันแล้วนะคะ อันดับแรก

1097
01:13:05,773 --> 01:13:09,773
สร้างตัวแปร y ค่ะ อันนี้พิมพ์เองนะคะ

1098
01:13:09,775 --> 01:13:13,775
นะคะ W-i-d-t-h

1099
01:13:13,776 --> 01:13:17,776
ค่า Width เราเท่ากับ

1100
01:13:17,777 --> 01:13:21,777
เครื่องนี้อาจจะใหญ่ ลองเอา

1101
01:13:21,778 --> 01:13:25,778
เท่าตัวอย่างก่อนก็ได้ 600 กว้าง 600

1102
01:13:25,779 --> 01:13:29,779
height h-i-g-h-t

1103
01:13:29,781 --> 01:13:33,781
ตัวแปร Hight สำหรับความสูง

1104
01:13:33,782 --> 01:13:37,782
ของจอ ตอนนี้อยากได้

1105
01:13:37,784 --> 01:13:41,784
สี่เหลี่ยมจัตุรัส

1106
01:13:41,786 --> 01:13:45,786
ถ้าอยากได้ผืนผ้าก็ต้องทำให้

1107
01:13:45,787 --> 01:13:49,787
Width เยอะกว่า Hight นะคะ

1108
01:13:49,788 --> 01:13:53,788
เสร็จแล้วกำหนดตัวแปร screen

1109
01:13:53,791 --> 01:13:57,791
ตัวแปรชื่อ "SceenW

1110
01:13:57,792 --> 01:14:01,792
เพื่อทำอะไร

1111
01:14:01,792 --> 01:14:05,792
เพื่อสร้างจอนั่นเองนะคะ

1112
01:14:05,794 --> 01:14:09,794
module pygame.display เลือก

1113
01:14:09,795 --> 01:14:13,795
.display

1114
01:14:13,797 --> 01:14:17,797
นะคะ แล้วก็ .

1115
01:14:17,800 --> 01:14:21,800
ลืมน่ะ ทำไมวันนี้

1116
01:14:21,802 --> 01:14:25,802
Error memory ตัวเองไม่ค่อยดี .set_mode นะคะ

1117
01:14:25,804 --> 01:14:29,804
ตามด้วยค่า ชื่อตัวแปร

1118
01:14:29,805 --> 01:14:33,805
เรากำหนดตัวแปรแล้วเราไม่ใช้ตัวเลขแล้ว

1119
01:14:33,808 --> 01:14:37,808
Function Set_mode นะคะ

1120
01:14:37,810 --> 01:14:41,810
.set

1121
01:14:41,811 --> 01:14:45,811
เลือก set mode ฟังกชืั

1122
01:14:45,811 --> 01:14:49,811
ใส่ 2 ครั้ง

1123
01:14:49,814 --> 01:14:53,814
2 วงเล็บนะะค แล้วก็

1124
01:14:53,815 --> 01:14:57,815
พิมพ์ width width ไหน width ตัวนี้

1125
01:14:57,817 --> 01:15:01,817

1126
01:15:01,820 --> 01:15:05,820
พิมพ์ hight ให้ดู

1127
01:15:05,821 --> 01:15:09,821
นะคะ Statement หรือตัวแปรที่เราสร้างนี่

1128
01:15:09,822 --> 01:15:13,822
ก็คือมันหมายถึงตัวนี้

1129
01:15:13,823 --> 01:15:17,823

1130
01:15:17,824 --> 01:15:21,824
ทะลุเดือด ลด Size ลงหน่อย

1131
01:15:21,827 --> 01:15:25,827

1132
01:15:25,828 --> 01:15:29,828
นะคะ

1133
01:15:29,829 --> 01:15:33,829
อีกบรรทัดหนึ่ง

1134
01:15:33,830 --> 01:15:37,830
อีกบรรทัด หน

1135
01:15:37,832 --> 01:15:41,832
ใส่ Caption

1136
01:15:41,832 --> 01:15:45,832
ใช้ module pygame.display.set_caption นะคะ

1137
01:15:45,833 --> 01:15:49,833
สร้าง Caption ของเกม ถ้เาใค

1138
01:15:49,833 --> 01:15:53,833
ใส่เอาเองเพิ่ม อันนี้จะข้ามไปก่อน

1139
01:15:53,833 --> 01:15:57,833

1140
01:15:57,835 --> 01:16:01,835
เรียกใช้ module pygame.display เหมือนเดิ

1141
01:16:01,835 --> 01:16:05,835
.displ

1142
01:16:05,836 --> 01:16:09,836
เหมือนเดิม

1143
01:16:09,838 --> 01:16:13,838
แล้วก็ .caption

1144
01:16:13,839 --> 01:16:17,839
set_caption นะคะ set_caption

1145
01:16:17,840 --> 01:16:21,840

1146
01:16:21,841 --> 01:16:25,841
.set_ception

1147
01:16:25,843 --> 01:16:29,843
ในวงเล็บใส่เครื่องหมายคำพูด

1148
01:16:29,844 --> 01:16:33,844
ชื่อ caption

1149
01:16:33,846 --> 01:16:37,846

1150
01:16:37,847 --> 01:16:41,847

1151
01:16:41,848 --> 01:16:45,848
เราจะใช้ caption

1152
01:16:45,850 --> 01:16:49,850
จอมีชื่อว่า GameAnimation นะคะ

1153
01:16:49,854 --> 01:16:53,854
GameAnimation

1154
01:16:53,856 --> 01:16:57,856
4 บรรทัดนี้ โอ.เค. หรือยัง

1155
01:16:57,857 --> 01:17:01,857

1156
01:17:01,858 --> 01:17:05,858

1157
01:17:05,859 --> 01:17:09,859

1158
01:17:09,860 --> 01:17:13,860

1159
01:17:13,861 --> 01:17:17,861
นะคะ

1160
01:17:17,863 --> 01:17:21,863

1161
01:17:21,864 --> 01:17:25,864

1162
01:17:25,865 --> 01:17:29,865

1163
01:17:29,866 --> 01:17:33,866

1164
01:17:33,869 --> 01:17:37,869

1165
01:17:37,874 --> 01:17:41,874
เสร็จ...

1166
01:17:41,876 --> 01:17:45,876
เสร็จหรือยังคะ

1167
01:17:45,877 --> 01:17:49,877
เซฟกับไอซ์เสร็จหรือยัง

1168
01:17:49,880 --> 01:17:53,880
อะตอม, คราม เสร็จหรือยังคะ

1169
01:17:53,881 --> 01:17:57,881
เสร็จแล้ว

1170
01:17:57,884 --> 01:18:01,884
เสร็จแล้ว ใบเตยเสร็จ...

1171
01:18:01,884 --> 01:18:05,884
เหลือจ๊าบกับเสือน้อย

1172
01:18:05,885 --> 01:18:09,885
จ๊าบเสร็จหรือยังครับ จ๊าบเสร็จแล้ว เสือน้อยล่ะ

1173
01:18:09,886 --> 01:18:13,886
โอ.เค. ได้

1174
01:18:13,887 --> 01:18:17,887
ส่วนของจอเกมแล้วนะคะ สิ่งที่เราจะทำ

1175
01:18:17,888 --> 01:18:21,888
ต่อไป

1176
01:18:21,890 --> 01:18:25,890
ก็คือเห็นไหม

1177
01:18:25,892 --> 01:18:29,892
ใส่สี screen.file

1178
01:18:29,894 --> 01:18:33,894
การใส่สีให้จอนะคะ ค่าสี RGB

1179
01:18:33,895 --> 01:18:37,895
ของเรา ก็คือ 255 255 นั่นก็คือ

1180
01:18:37,896 --> 01:18:41,896
สีขาว จำได้นะ นึกค่าสี อยากจะเปลี่ยนค่าสีก็ให้

1181
01:18:41,897 --> 01:18:45,897
ไปดูที่ rgb

1182
01:18:45,899 --> 01:18:49,899
เพราะฉะนั้น ในส่วนของการแสดงผล

1183
01:18:49,900 --> 01:18:53,900
ให้เรียกใช้

1184
01:18:53,901 --> 01:18:57,901
screen นะคะ แล้วก็ fill

1185
01:18:57,902 --> 01:19:01,902
ก็คือใส่สีเข้าไป ก็คือสีทีเราจะใส่

1186
01:19:01,904 --> 01:19:05,904
นะคะ

1187
01:19:05,905 --> 01:19:09,905
มาที่ส่วนนี้นะคะ

1188
01:19:09,906 --> 01:19:13,906
เรียก screen นะคะ ต้องให้

1189
01:19:13,908 --> 01:19:17,908
มันขึ้น Statement

1190
01:19:17,909 --> 01:19:21,909
fill function ใส่

1191
01:19:21,911 --> 01:19:25,911
วงเล็บต้องมี 2 อัน

1192
01:19:25,912 --> 01:19:29,912
ถูกไหม

1193
01:19:29,914 --> 01:19:33,914
สังเกตถ้าเป็นค่าที่เป็นตัวเลขนี่ หรือเป็นค่า

1194
01:19:33,916 --> 01:19:37,916
พวกนี้นะคะ

1195
01:19:37,917 --> 01:19:41,917

1196
01:19:41,917 --> 01:19:45,917
ถ้าสีขาวของเรา

1197
01:19:45,920 --> 01:19:49,920
ก็คือ 255 ทั้ง 3 อันเลยนะ สีขาว

1198
01:19:49,922 --> 01:19:53,922
ล้วน

1199
01:19:53,923 --> 01:19:57,923
255

1200
01:19:57,924 --> 01:20:01,924
R ก็ 255

1201
01:20:01,926 --> 01:20:05,926
g ก็ 255 แล้วก็

1202
01:20:05,928 --> 01:20:09,928
B ก็ 255

1203
01:20:09,931 --> 01:20:13,931
นะคะ นี่คือค่า RGB นั่นเอง

1204
01:20:13,932 --> 01:20:17,932
Red, Green, Blue 255, 255, 255

1205
01:20:17,935 --> 01:20:21,935
นะคะ นี่คือ

1206
01:20:21,937 --> 01:20:25,937
เราสร้างจอแล้วนะ ยังไม่ Run เดี๋ยว Error

1207
01:20:25,937 --> 01:20:29,937
จะต้องตามแก้ Run ทีเดียวเลยจะได้จบ

1208
01:20:29,939 --> 01:20:33,939
ส่วนต่อมา

1209
01:20:33,941 --> 01:20:37,941
โอ.เค. ไหม เสร็จแล้วนะ ทุกคนเสร็จแล้วนะ

1210
01:20:37,942 --> 01:20:41,942
โอ.เค. อันนี้เพราะ

1211
01:20:41,943 --> 01:20:45,943
เพิ่มอีกแค่ 1 บรรทัดนะคะ สิ่ง

1212
01:20:45,944 --> 01:20:49,944
ที่จะทำ ก็คือ Loop ใช่ไหม สร้าง Loop

1213
01:20:49,946 --> 01:20:53,946
สร้าง Loop สำหรับ

1214
01:20:53,948 --> 01:20:57,948
ให้โปรแกรมพอสร้างจอแล้วก็สร้าง Loop

1215
01:20:57,949 --> 01:21:01,949
ใช่ไหมคะ เปิดแล้วก็ต้องมีปิดเหมือนเดิม

1216
01:21:01,949 --> 01:21:05,949

1217
01:21:05,951 --> 01:21:09,951

1218
01:21:09,953 --> 01:21:13,953

1219
01:21:13,956 --> 01:21:17,956
นะคะ ตอนนี้เราจะทำ Loop

1220
01:21:17,957 --> 01:21:21,957
ก็คือ while ทำเมื่อเป็นจริง while True

1221
01:21:21,958 --> 01:21:25,958
whie True:

1222
01:21:25,959 --> 01:21:29,959

1223
01:21:29,960 --> 01:21:33,960
Loop จะอยู่ต่อจากตรงนี้นะคะ

1224
01:21:33,961 --> 01:21:37,961

1225
01:21:37,962 --> 01:21:41,962

1226
01:21:41,962 --> 01:21:45,962
เลือก while tr

1227
01:21:45,964 --> 01:21:49,964
นะคะ เราจะทำ Loop while

1228
01:21:49,966 --> 01:21:53,966
True ตัวใหญ่ T ตัวใหญ่นะคะ

1229
01:21:53,967 --> 01:21:57,967
ทำเมื่อเป็นจริง เห็นไหมคะ while Trup

1230
01:21:57,970 --> 01:22:01,970

1231
01:22:01,971 --> 01:22:05,971

1232
01:22:05,974 --> 01:22:09,974
for แล้วก็ if

1233
01:22:09,976 --> 01:22:13,976
.event.get():

1234
01:22:13,977 --> 01:22:17,977
memory ไม่ค่อยดีวันนี้

1235
01:22:17,978 --> 01:22:21,978
for ค่ะ

1236
01:22:21,980 --> 01:22:25,980
ใน Loop ก็คือใส่เงื่อนไข for loop เข้าไป

1237
01:22:25,980 --> 01:22:29,980
for ตรงนี้ใส่

1238
01:22:29,982 --> 01:22:33,982
ตัวแปร event e-v-e-

1239
01:22:33,984 --> 01:22:37,984
n-t event ก็คือหมายถึงเหตุการณ์นะคะ

1240
01:22:37,985 --> 01:22:41,985
เหตุการณ์นะคะ ใน... ในอะไร

1241
01:22:41,986 --> 01:22:45,986
เหตุการณ์ใน pygame.

1242
01:22:45,987 --> 01:22:49,987
event.get pygae

1243
01:22:49,989 --> 01:22:53,989
นะคะ เรีย

1244
01:22:53,990 --> 01:22:57,990

1245
01:22:57,991 --> 01:23:01,991
นะคะ

1246
01:23:01,992 --> 01:23:05,992
เรียกใช้ Module pygame

1247
01:23:05,993 --> 01:23:09,993
.event

1248
01:23:09,995 --> 01:23:13,995
event module นะคะ

1249
01:23:13,996 --> 01:23:17,996
แล้วก็ .get get

1250
01:23:17,997 --> 01:23:21,997
function ใส่วงเล็บ

1251
01:23:21,999 --> 01:23:25,999
มือไปโดนอะไรนี่ ขอโทษ ๆ

1252
01:23:26,000 --> 01:23:30,000
มันไวไปหน่อย ใส่ () นะคะ เป็น function get

1253
01:23:30,003 --> 01:23:34,003
เพราะเป็นฟังก์ชัน get

1254
01:23:34,004 --> 01:23:38,004
เมื่อ while เห็นไหมคะ เป็นจริง

1255
01:23:38,005 --> 01:23:42,005
ถ้าเหตุการณ์ใน pygame

1256
01:23:42,007 --> 01:23:46,007
get ก็คือการรับค่านั่นเองนะคะ รับค่าอะไร

1257
01:23:46,009 --> 01:23:50,009
มาดูกัน ค่าที่เราจะรับ ก็คือ

1258
01:23:50,011 --> 01:23:54,011
ถ้า event type

1259
01:23:54,011 --> 01:23:58,011
pygame.quite

1260
01:23:58,012 --> 01:24:02,012
ก็ให้ออก ก็คือจบนั่นเอง สิ้นสุด

1261
01:24:02,013 --> 01:24:06,013
หรือ sys.exit() นะคะ

1262
01:24:06,015 --> 01:24:10,015

1263
01:24:10,017 --> 01:24:14,017
นะคะ

1264
01:24:14,019 --> 01:24:18,019
ก็คือถ้าเกิดเหตุการณ์นี้ if ก็คือถ้า

1265
01:24:18,021 --> 01:24:22,021
ถ้า if condit

1266
01:24:22,022 --> 01:24:26,022
ถ้า

1267
01:24:26,023 --> 01:24:30,023
event

1268
01:24:30,026 --> 01:24:34,026

1269
01:24:34,028 --> 01:24:38,028
evtnt.type == pygame

1270
01:24:38,030 --> 01:24:42,030

1271
01:24:42,031 --> 01:24:46,031
Event.type นะคะ .type

1272
01:24:46,032 --> 01:24:50,032
นี่นะคะ type statement นี่

1273
01:24:50,033 --> 01:24:54,033
==

1274
01:24:54,035 --> 01:24:58,035
pygame

1275
01:24:58,036 --> 01:25:02,036
pygame module

1276
01:25:02,039 --> 01:25:06,039
QUIT ตัวใหญ่นะคะ Q ตัวใหญ่ เพราะเราจะเรียกใช้

1277
01:25:06,040 --> 01:25:10,040
Statement นี้ นั่นก็คือถ้าเป็นจริงนี่

1278
01:25:10,041 --> 01:25:14,041
ถ้าเป็นจริงนี่ ถ้ามีการกด

1279
01:25:14,042 --> 01:25:18,042
type นี่ก็คือกดพิมพ์หรือ

1280
01:25:18,044 --> 01:25:22,044
กดปุ่มนี่ จะออกจากโปรแกรม

1281
01:25:22,045 --> 01:25:26,045

1282
01:25:26,047 --> 01:25:30,047
เมื่อมันเป็นจริง เพราะฉะนั้น pygame module

1283
01:25:30,049 --> 01:25:34,049
.quite

1284
01:25:34,051 --> 01:25:38,051
QUIT function นะคะ ไปเรียกใช้

1285
01:25:38,053 --> 01:25:42,053
จบโปรแกรม

1286
01:25:42,054 --> 01:25:46,054
ส่วน system module

1287
01:25:46,055 --> 01:25:50,055
นะคะ ก็จะเรียกใช้

1288
01:25:50,056 --> 01:25:54,056
.exit() function exit

1289
01:25:54,058 --> 01:25:58,058
exit

1290
01:25:58,059 --> 01:26:02,059
นะคะ

1291
01:26:02,060 --> 01:26:06,060
ตอนนี้เราทำ Loop

1292
01:26:06,065 --> 01:26:10,065
เพราะเมื่อเราเปิดแล้วต้องมีปิด

1293
01:26:10,065 --> 01:26:14,065
Loop นี้จะมีทุกอันอยู่แล้ว จะมี

1294
01:26:14,067 --> 01:26:18,067
ที่ Code มาจะต้องมี Loop ในการ

1295
01:26:18,068 --> 01:26:22,068
ปิดเกมเสมอนะคะ

1296
01:26:22,070 --> 01:26:26,070
มีให้พิมพ์บ่อย ๆ จะได้ชิน ไม่อยากให้ไป Copy

1297
01:26:26,071 --> 01:26:30,071
นะคะ ได้ส่วนของ Loop แล้ว

1298
01:26:30,072 --> 01:26:34,072
แล้วสิ่งที่เราจะทำต่อไป โอ.เค. ไหม เสร็จแล้ว

1299
01:26:34,073 --> 01:26:38,073
ใบเตยเสร็จไหม

1300
01:26:38,074 --> 01:26:42,074
จ๊าบเสร็จไหมคะ เหลือตรงไหนเอ่ย

1301
01:26:42,073 --> 01:26:46,073
เหลืออีกกี่บรรทัด

1302
01:26:46,075 --> 01:26:50,075

1303
01:26:50,076 --> 01:26:54,076

1304
01:26:54,078 --> 01:26:58,078

1305
01:26:58,082 --> 01:27:02,082

1306
01:27:02,085 --> 01:27:06,085

1307
01:27:06,090 --> 01:27:10,090

1308
01:27:10,091 --> 01:27:14,091

1309
01:27:14,093 --> 01:27:18,093

1310
01:27:18,095 --> 01:27:22,095

1311
01:27:22,097 --> 01:27:26,097

1312
01:27:26,099 --> 01:27:30,099

1313
01:27:30,100 --> 01:27:34,100

1314
01:27:34,102 --> 01:27:38,102

1315
01:27:38,105 --> 01:27:42,105

1316
01:27:42,108 --> 01:27:46,108
แล้วตรงในส่วนของตรงแสดงผลนะคะ

1317
01:27:46,110 --> 01:27:50,110
เราจะกำหนดความจริงแค่ pygame.

1318
01:27:50,111 --> 01:27:54,111
display.flip

1319
01:27:54,113 --> 01:27:58,113
ไม่เป็นอะไรใส่เลย

1320
01:27:58,114 --> 01:28:02,114
นะคะ

1321
01:28:02,115 --> 01:28:06,115
อย่าเพิ่มใส่ก็ได้ข้ามไปก่อน

1322
01:28:06,116 --> 01:28:10,116
สิ่งที่จะทำต่อมา คือ เราจะ

1323
01:28:10,117 --> 01:28:14,117
สร้าง Class นะคะ

1324
01:28:14,118 --> 01:28:18,118
เห็นไหมคะ ชื่อ class ของเรา ก็คือ Dino

1325
01:28:18,120 --> 01:28:22,120
สังเกต ตัว D จะเป็นตัวพิมพ์

1326
01:28:22,122 --> 01:28:26,122
แล้วเนื่องจาก Class นี้

1327
01:28:26,124 --> 01:28:30,124
เนื่่อิงจาก Class นี้

1328
01:28:30,126 --> 01:28:34,126
class นี้

1329
01:28:34,127 --> 01:28:38,127
ไอ้ตัวนี้มัน

1330
01:28:38,128 --> 01:28:42,128
ชื่ออะไรลูก ตัวนี้ตั้งชื่อ

1331
01:28:42,129 --> 01:28:46,129
ตามตัวการ์ตูนเราน่ะ นึกออกะ

1332
01:28:46,130 --> 01:28:50,130
นึกออกนะ เพราะฉะนั้น ย้อนกลับไปดูก็ได้นะคะ

1333
01:28:50,131 --> 01:28:54,131
ว่าตัวการ์ตูนที่เราเอามามันชื่ออะไร

1334
01:28:54,132 --> 01:28:58,132
ไหนล่ะ

1335
01:28:58,133 --> 01:29:02,133

1336
01:29:02,134 --> 01:29:06,134
เขาชื่อ Knight แปลว่าอัศวินนะคะ

1337
01:29:06,135 --> 01:29:10,135
เราตั้งชื่อนี้นะคะ ให้เด็ก ๆ ดูชื่อตัวการ์ตูนของตัวเองน่ะ

1338
01:29:10,136 --> 01:29:14,136
นึกออกนะ เช่น ถ้า

1339
01:29:14,138 --> 01:29:18,138
ใครเอานี่เห็นไหมมันก็จะมีชื่อ

1340
01:29:18,139 --> 01:29:22,139
โจ อย่างนี้ บอย อย่างนี้ ซานต้า

1341
01:29:22,140 --> 01:29:26,140
นึกออกนะ มันก็คือชื่อของ

1342
01:29:26,143 --> 01:29:30,143
ชื่อของส่วนนี้น่ะ นี่ ๆ

1343
01:29:30,145 --> 01:29:34,145
Class นั่นเอง คือสิ่งที่เราจะเอามาตั้งชื่อ Class

1344
01:29:34,146 --> 01:29:38,146
เข้าใจไหมคะ เข้าใจไหม

1345
01:29:38,147 --> 01:29:42,147
บีกับแบมเข้าใจหรือเปล่า

1346
01:29:42,147 --> 01:29:46,147
ทำตาปิ๊บ ๆ

1347
01:29:46,149 --> 01:29:50,149
เดี๋ยว ๆ

1348
01:29:50,150 --> 01:29:54,150

1349
01:29:54,151 --> 01:29:58,151

1350
01:29:58,154 --> 01:30:02,154

1351
01:30:02,157 --> 01:30:06,157
ชื่อ ชื่อ

1352
01:30:06,159 --> 01:30:10,159
ตรง class นี่นะคะ ชื่อตรง class

1353
01:30:10,160 --> 01:30:14,160
อย่าไปเอาชื่อของ...

1354
01:30:14,161 --> 01:30:18,161

1355
01:30:18,162 --> 01:30:22,162

1356
01:30:22,164 --> 01:30:26,164
ตัวการ์ตูนที่เราไปโหลดมานี่ เอาชื่อนี่ เอา

1357
01:30:26,167 --> 01:30:30,167
ชื่อของมันนี่มาใส่ นึกออกไหม

1358
01:30:30,168 --> 01:30:34,168
ของตัวเองตัวการ์ตูนชื่ออะไร ให้เอา

1359
01:30:34,169 --> 01:30:38,169
ชื่อนั้นมาใส่นึกออกนะ

1360
01:30:38,170 --> 01:30:42,170
จำให้ได้ว่าชื่อตัวเองนี่ชื่ออะไร

1361
01:30:42,172 --> 01:30:46,172
เห็นไหมมันจะมีชื่อของใครของมันใช่ไหมคะ เหมือน

1362
01:30:46,173 --> 01:30:50,173
ตอนที่แม่ Run น่ะ แม่เอาตัวไดโนเสาร์

1363
01:30:50,175 --> 01:30:54,175
แม่ก็เลยใช้ชื่อว่าไดโน

1364
01:30:54,176 --> 01:30:58,176
ใบเตยจะเอา The Knight ก็คืออัศวินใช่ไหมคะ

1365
01:30:58,177 --> 01:31:02,177
เราก็ใช้ชื่อ Class ว่า Niew

1366
01:31:02,181 --> 01:31:06,181
นะคะ ถ้าของแบมหรือ

1367
01:31:06,184 --> 01:31:10,184
ของบีหรือเป็นแซนดาครอส

1368
01:31:10,185 --> 01:31:14,185
ใช้ชื่อนี้นะคะ ของแบมใช้ Girl ก็ใช้ชื่อ Gril

1369
01:31:14,186 --> 01:31:18,186
อย่างนี้นะคะ ชื่อของใครของมัน Class ใคร Class มัน

1370
01:31:18,195 --> 01:31:22,195
class ใคร class มัน เริ่มหรือยัง

1371
01:31:22,197 --> 01:31:26,197
อันดับแรก Class

1372
01:31:26,199 --> 01:31:30,199
จะอยู่ตรงไหน อยู่ต่อจาก ๆ ๆ

1373
01:31:30,200 --> 01:31:34,200
เห็นไหมคะ ต่อจาก Modle

1374
01:31:34,202 --> 01:31:38,202
เลย ต่อจาก import Module เลย

1375
01:31:38,203 --> 01:31:42,203
Class ของเราจะอยู่ตำแหน่งนี้ เพราะฉะนั้นเลื่อนขั้นไป

1376
01:31:42,205 --> 01:31:46,205
ตรง import module

1377
01:31:46,206 --> 01:31:50,206

1378
01:31:50,209 --> 01:31:54,209
class

1379
01:31:54,210 --> 01:31:58,210
ก็จะบอกก็จะได้บอกว่า Class

1380
01:31:58,212 --> 01:32:02,212
class Knight นะคะ โอ.เค.

1381
01:32:02,214 --> 01:32:06,214
mi อะไรนะ

1382
01:32:06,216 --> 01:32:10,216
ไม่จำ ๆ

1383
01:32:10,217 --> 01:32:14,217
k-n-i-g-h-t

1384
01:32:14,218 --> 01:32:18,218

1385
01:32:18,219 --> 01:32:22,219
สังเกตที่ชื่อ Class

1386
01:32:22,220 --> 01:32:26,220
เห็นไหม ตัวแรกจะใช้ตัวอักษรตัวใหญ่เห็นไหม

1387
01:32:26,221 --> 01:32:30,221
เวลาสร้าง Class

1388
01:32:30,221 --> 01:32:34,221
คลิก New class เลย เห็นไหมคะ ตรง class name นี่

1389
01:32:34,222 --> 01:32:38,222
ใส่อะไรเข้าไป ใส่

1390
01:32:38,224 --> 01:32:42,224

1391
01:32:42,225 --> 01:32:46,225

1392
01:32:46,226 --> 01:32:50,226
เพราะ class นี้จะเป็น class ของไอ้เจ้าอัศวิน

1393
01:32:50,227 --> 01:32:54,227
ของเรานั่นเอง บอกให้รู้ว่า Class ของ

1394
01:32:54,229 --> 01:32:58,229
นะคะ ในนี้ใน

1395
01:32:58,229 --> 01:33:02,229
ส่วนของ Object วัตถุ

1396
01:33:02,229 --> 01:33:06,229
ที่จะใส่เข้าไปมีอะไรบ้างมาดูกัน

1397
01:33:06,230 --> 01:33:10,230
เราจะเรียก... วัตถุของเรา

1398
01:33:10,230 --> 01:33:14,230
ก็จะมี pygame.sprite.sprite

1399
01:33:14,235 --> 01:33:18,235
ตัว Sheet เรานั่นเองนะคะ วัตถุของเรา

1400
01:33:18,234 --> 01:33:22,234
ก็คือจะประกอบด้วย sprite Sheet ของเรา

1401
01:33:22,240 --> 01:33:26,240
sprite ของเรานั่นเอง

1402
01:33:26,242 --> 01:33:30,242
ใส่เลยในวัตถุที่ชื่อ

1403
01:33:30,243 --> 01:33:34,243

1404
01:33:34,244 --> 01:33:38,244
นี่เห็นไหม ใช้ sprite module นะคะ

1405
01:33:38,254 --> 01:33:42,254
แล้วก็ .

1406
01:33:42,256 --> 01:33:46,256

1407
01:33:46,258 --> 01:33:50,258

1408
01:33:50,259 --> 01:33:54,259
sprite class นะคะ

1409
01:33:54,261 --> 01:33:58,261
ใช่ไหม ใช่หรือเปล่า

1410
01:33:58,262 --> 01:34:02,262
เห็นไหมคะ สังเกตตรง Object  นี่

1411
01:34:02,264 --> 01:34:06,264
มันจะมี pygame sprites มันจะมี 2 ตัว

1412
01:34:06,265 --> 01:34:10,265
มันจะมี sprite เล็กที่เป็น module กับ sprite

1413
01:34:10,266 --> 01:34:14,266
เห็นไหม สังเกตว่า ถ้าเป็นชื่อ Class

1414
01:34:14,267 --> 01:34:18,267
ตัวอักษรตัวแรกข

1415
01:34:18,267 --> 01:34:22,267
ของชื่อจะเป็นตัวใหญ่เวลาจะพิมพ์

1416
01:34:22,269 --> 01:34:26,269
Sprite class ต้องพิมพ์ S ตัวใหญ่

1417
01:34:26,270 --> 01:34:30,270
นะคะ ดูใหม่นะคะ ให้ดูใหม่ ตอน

1418
01:34:30,271 --> 01:34:34,271
ระบุ Object ตอนระบุ

1419
01:34:34,277 --> 01:34:38,277
Object ดูดี ๆ นะ

1420
01:34:38,279 --> 01:34:42,279
Object แรก ก็คือ pygame

1421
01:34:42,280 --> 01:34:46,280
.sprite แล้วก็เลือก

1422
01:34:46,280 --> 01:34:50,280
sprite module แล้วก็เลือก

1423
01:34:50,282 --> 01:34:54,282
S ใหญ่ เห็นไหมคะ มันจะขึ้นว่า Sprit

1424
01:34:54,283 --> 01:34:58,283

1425
01:34:58,286 --> 01:35:02,286
เพราะตอนนี้เราจะ...

1426
01:35:02,287 --> 01:35:06,287

1427
01:35:06,288 --> 01:35:10,288
สังเกต

1428
01:35:10,289 --> 01:35:14,289
เห็นไหม

1429
01:35:14,290 --> 01:35:18,290
Class Sprite นี่ ในนี้ไ

1430
01:35:18,293 --> 01:35:22,293
แต่ตัวนี้ คือ โปรแกรม

1431
01:35:22,300 --> 01:35:26,300
pygame

1432
01:35:26,301 --> 01:35:30,301
ชื่อ Sprite มา ก็คือ Class นี้จะไปเรียกใช้งาน

1433
01:35:30,303 --> 01:35:34,303
วัตถุที่เป็น Sprite น่ะ

1434
01:35:34,304 --> 01:35:38,304
มานะคะ โอ.เค. ไหม ในส่วน

1435
01:35:38,305 --> 01:35:42,305
ของ Class นะคะ บรรทัดแรก เสร็

1436
01:35:42,306 --> 01:35:46,306
เสร็จเรียบร้อยแล้ว บรรทัดต่อไป

1437
01:35:46,307 --> 01:35:50,307
บรรทัดต่อไป เว้นลงไปเย๊ะ ๆ

1438
01:35:50,310 --> 01:35:54,310
ได้ Class แล้วนะคะ ได้ชื่อกับ Class

1439
01:35:54,311 --> 01:35:58,311
ในนี้นอกจาก Class

1440
01:35:58,312 --> 01:36:02,312
กับชื่อ Class มันยังมี statement ต่อนะคะ สิ่งที่เราระบุต่อไป

1441
01:36:02,313 --> 01:36:06,313
นะคะ

1442
01:36:06,317 --> 01:36:10,317
method นะคะ method ที่ชื่อว่า

1443
01:36:10,318 --> 01:36:14,318
init ทีนี้เด้ก  ๆ มาดูนะคะ

1444
01:36:14,321 --> 01:36:18,321
ถ้าคำสั่ง definition

1445
01:36:18,322 --> 01:36:22,322
def นี่มันจะเป็นการสร้าสง

1446
01:36:22,323 --> 01:36:26,323
มันจะเป็นการสร้าง Function เมื่อมัน

1447
01:36:26,325 --> 01:36:30,325
เข้ามาอยู่ใน Class มันจะเป็นการสร้าง method

1448
01:36:30,326 --> 01:36:34,326
วิธีที่ให้เห็นความแตกต่างว่าสร้าง function กับสร้าง method

1449
01:36:34,328 --> 01:36:38,328
เป็นอย่างไร เห็นไหมคะ เวลาสร้าง method_init_()

1450
01:36:38,329 --> 01:36:42,329
ใส่ _ ก่อน _ เปิด _ ปิด

1451
01:36:42,335 --> 01:36:46,335
เพื่อบอกให้รู้ว่าสิ่งนี้คือ methoded

1452
01:36:46,336 --> 01:36:50,336
นะคะ ก็คือจะมี _

1453
01:36:50,339 --> 01:36:54,339
และก็ตามด้วยชื่อ Method แล้วก็ตามด้วย

1454
01:36:54,340 --> 01:36:58,340
วงเล็บนะคะ แต่ถ้าเป็น Function น่ะ

1455
01:36:58,342 --> 01:37:02,342
พิมพ์ชื่อใช่ไหม

1456
01:37:02,343 --> 01:37:06,343
def แล้วก็ตามด้วยชื่อเลย จะไม่มีไอ้ 2 ตัวนี้

1457
01:37:06,347 --> 01:37:10,347
ตัวนั้นจะเป็น function จะเป็นคนละแบบ

1458
01:37:10,348 --> 01:37:14,348
มันจะโดนเรียกว่าเป็น method นะคะ ดังนั้น

1459
01:37:14,349 --> 01:37:18,349
Function ที่ชื่อ init นี่

1460
01:37:18,352 --> 01:37:22,352
เป็น function ที่สร้างอัตโนมัตินะคะ

1461
01:37:22,354 --> 01:37:26,354
มันจะโดนเรียกใช้อัตโนมัติ ก็คือทุกครั้งที่

1462
01:37:26,355 --> 01:37:30,355
สร้าง Class นี้ต้องสร้าง Method นี้

1463
01:37:30,356 --> 01:37:34,356
เสมอ จำไว้เลยนะคะ แล้วก็

1464
01:37:34,357 --> 01:37:38,357
มีการเรียกใช้มันเห็นไหม บรรทัดที่ 2 เป็นการเรียกใช้

1465
01:37:38,358 --> 01:37:42,358
โดยใช้คำว่า "super.

1466
01:37:42,362 --> 01:37:46,362
method_init_()

1467
01:37:46,366 --> 01:37:50,366

1468
01:37:50,367 --> 01:37:54,367
ต่อไป

1469
01:37:54,368 --> 01:37:58,368

1470
01:37:58,369 --> 01:38:02,369
เห็นไหมคะ

1471
01:38:02,370 --> 01:38:06,370
โปรแกรมมันจะให้

1472
01:38:06,371 --> 01:38:10,371
ขึ้นไอ้ตัวนี้ขึ้นมาอัตโนมัติเลย

1473
01:38:10,372 --> 01:38:14,372
เห็นไหมคะ สร้างขึ้นมาอัตโนมัติ

1474
01:38:14,373 --> 01:38:18,373
เปลี่ยน ก็คือค่าตรงนี้ ค่าของ super

1475
01:38:18,374 --> 01:38:22,374
เห็นไหมคะ แล้วก็เลือก ClassName

1476
01:38:22,375 --> 01:38:26,375
ตามด้วย ClassName นะคะ แล้วก็ตามด้วยอันนี้ แต่จะยังไม่เรียก

1477
01:38:26,376 --> 01:38:30,376
มาดูกัน

1478
01:38:30,378 --> 01:38:34,378
เห็นไหม

1479
01:38:34,379 --> 01:38:38,379
เดี๋ยว ๆ ลบออกให้ดูก่อน พอสร้างเสร็จปุ๊บน่ะ

1480
01:38:38,381 --> 01:38:42,381
ไอ้ตัวนี้มันขึ้นมาเอง

1481
01:38:42,382 --> 01:38:46,382

1482
01:38:46,384 --> 01:38:50,384

1483
01:38:50,386 --> 01:38:54,386
เห็นไหมครับ พอ

1484
01:38:54,387 --> 01:38:58,387
เราเลือก New Class น่ะเห็นไหม method นี้มันจะขึ้นมา

1485
01:38:58,392 --> 01:39:02,392
ที่เราจะมาแก้ ก็คือตัวนี้

1486
01:39:02,393 --> 01:39:06,393
กับค่าตรงนี้

1487
01:39:06,394 --> 01:39:10,394

1488
01:39:10,395 --> 01:39:14,395

1489
01:39:14,396 --> 01:39:18,396

1490
01:39:18,397 --> 01:39:22,397

1491
01:39:22,401 --> 01:39:26,401
docstring for kinght

1492
01:39:26,404 --> 01:39:30,404
ก็คือกำหนดค่า ตรงนี้นะคะ

1493
01:39:30,406 --> 01:39:34,406
เราแก้ค่าตัวที่ 2 เห็นหรือเปล่า

1494
01:39:34,407 --> 01:39:38,407
ตัวที่ 2 นี่มีตำแหน่งค่ะ เราจะกำหนด

1495
01:39:38,408 --> 01:39:42,408
pos_x pos_y นั่นเองนะคะเด็ก ๆ

1496
01:39:42,410 --> 01:39:46,410

1497
01:39:46,411 --> 01:39:50,411

1498
01:39:50,412 --> 01:39:54,412

1499
01:39:54,414 --> 01:39:58,414

1500
01:39:58,418 --> 01:40:02,418

1501
01:40:02,421 --> 01:40:06,421

1502
01:40:06,423 --> 01:40:10,423
นะคะ

1503
01:40:10,424 --> 01:40:14,424
เพราะพอสร้าง Class นี่ Method

1504
01:40:14,426 --> 01:40:18,426
มันจะขึ้นมาอัตโนมัติ แล้วเรียกอะไร

1505
01:40:18,428 --> 01:40:22,428
ตรง super เห็นไหมคะ

1506
01:40:22,430 --> 01:40:26,430

1507
01:40:26,431 --> 01:40:30,431

1508
01:40:30,432 --> 01:40:34,432
ตรง super นี่เราเอาตรงนี้ออก

1509
01:40:34,435 --> 01:40:38,435
นะคะ ไม่มีค่า ให้เป็นค่าว่างเปล่า

1510
01:40:38,437 --> 01:40:42,437
แล้วตรง self ที่

1511
01:40:42,439 --> 01:40:46,439
เราจะเรียกใช้ Sprite ค่ะ

1512
01:40:46,440 --> 01:40:50,440
sp

1513
01:40:50,441 --> 01:40:54,441
เรียก sprites

1514
01:40:54,441 --> 01:40:58,441
ก้ามปู

1515
01:40:58,443 --> 01:41:02,443
วงเล็บใหญ่น่ะ

1516
01:41:02,446 --> 01:41:06,446
เห็นไหม เรียก sprites ตัวเล็กนะ

1517
01:41:06,447 --> 01:41:10,447
เห็นไหมเรียก sprites

1518
01:41:10,449 --> 01:41:14,449

1519
01:41:14,450 --> 01:41:18,450

1520
01:41:18,451 --> 01:41:22,451

1521
01:41:22,453 --> 01:41:26,453

1522
01:41:26,455 --> 01:41:30,455

1523
01:41:30,456 --> 01:41:34,456

1524
01:41:34,457 --> 01:41:38,457
sprites ที่เราใช้ es

1525
01:41:38,458 --> 01:41:42,458
นี่นะคะ เราจะเรียก sprites

1526
01:41:42,459 --> 01:41:46,459
มาแทนนะคะ ดูดี ๆ นะ sprites นี้นะคะ

1527
01:41:46,460 --> 01:41:50,460
Sprites

1528
01:41:50,462 --> 01:41:54,462
มี es นะคะ มี es เติมมา

1529
01:41:54,462 --> 01:41:58,462
นี่ คนละตัวกับ...

1530
01:41:58,463 --> 01:42:02,463

1531
01:42:02,464 --> 01:42:06,464
นะคะ

1532
01:42:06,466 --> 01:42:10,466
ต่อไป

1533
01:42:10,467 --> 01:42:14,467
ก็คือพอเสร็จแล้วนี่ ตรงส่วน

1534
01:42:14,469 --> 01:42:18,469
นี้ คือ เราจะโหลดน่ะ คำสั่ง self

1535
01:42:18,470 --> 01:42:22,470
ที่ชื่อ Sprites ก็คือค่าว่างของ

1536
01:42:22,471 --> 01:42:26,471
ค่าเริ่มต้นของการโหลด sprites นี่ คือ ค่าว่าง

1537
01:42:26,473 --> 01:42:30,473
ก็คือไม่มีค่า เสร็จแล้วก็มาโหลดนะคะ

1538
01:42:30,491 --> 01:42:34,491
self.sprites.aooend

1539
01:42:34,493 --> 01:42:38,493
นะคะ pygame.load แล้วก็

1540
01:42:38,495 --> 01:42:42,495
ตามด้วยชื่อภาพ มาดูกัน มาดูบรรทัดนี้กันนะคะ

1541
01:42:42,496 --> 01:42:46,496

1542
01:42:46,497 --> 01:42:50,497

1543
01:42:50,498 --> 01:42:54,498

1544
01:42:54,502 --> 01:42:58,502
เลือก self นี่นะคะ

1545
01:42:58,503 --> 01:43:02,503
.

1546
01:43:02,504 --> 01:43:06,504
เลือก statements sprites

1547
01:43:06,505 --> 01:43:10,505
นะคะ

1548
01:43:10,508 --> 01:43:14,508
บรรทัดที่ 2

1549
01:43:14,509 --> 01:43:18,509
.apnet

1550
01:43:18,511 --> 01:43:22,511
แล้วก็ตามด้วยวงเล็บ

1551
01:43:22,513 --> 01:43:26,513
วงเล็บ 2 ครั้งนะคะ

1552
01:43:26,514 --> 01:43:30,514
จัดได้แล้ว

1553
01:43:30,515 --> 01:43:34,515
.

1554
01:43:34,516 --> 01:43:38,516
append function

1555
01:43:38,517 --> 01:43:42,517
ซ้อนกัน

1556
01:43:42,518 --> 01:43:46,518

1557
01:43:46,519 --> 01:43:50,519
ตามด้วย

1558
01:43:50,520 --> 01:43:54,520
.image ค่ะ image

1559
01:43:54,522 --> 01:43:58,522
module นะคะ แล้วก็ .load เพราะบอกแล้ว

1560
01:43:58,524 --> 01:44:02,524
เราจะไปโหลดรูป load function

1561
01:44:02,526 --> 01:44:06,526
ขอโทษ ๆ

1562
01:44:06,528 --> 01:44:10,528
เดี๋ยว ๆ ใส่วงเล็บเกินเอาใหม่

1563
01:44:10,529 --> 01:44:14,529
appain Function

1564
01:44:14,531 --> 01:44:18,531
แล้วก็เรียกใช้ module pygame

1565
01:44:18,532 --> 01:44:22,532
.image module

1566
01:44:22,533 --> 01:44:26,533
แล้วก็ .load

1567
01:44:26,534 --> 01:44:30,534
load Function เพราะฉะนั้น ใส่วงเล็บ

1568
01:44:30,535 --> 01:44:34,535
อันนี้ถูกแล้ว

1569
01:44:34,537 --> 01:44:38,537
ใน function load

1570
01:44:38,539 --> 01:44:42,539
ใส่ singel quort

1571
01:44:42,540 --> 01:44:46,540
เพื่อไม่ให้ Copy File ผิดใช่ไหมคะ

1572
01:44:46,543 --> 01:44:50,543
เราก็ไปเปิดไฟล์ของเรา

1573
01:44:50,544 --> 01:44:54,544
ไม่ใช่ตัวนี้นะ ไฟล์ที่เราเซฟไว้

1574
01:44:54,548 --> 01:44:58,548
นี่ตัวแรกเลย ก็คืออะไรคะ

1575
01:44:58,549 --> 01:45:02,549
Properties

1576
01:45:02,550 --> 01:45:06,550
Run1 Copy

1577
01:45:06,551 --> 01:45:10,551
ตัดปัญหาไม่ให้พิมพ์ชื่อไฟล์ผิด

1578
01:45:10,552 --> 01:45:14,552
เสร็จแล้วเด็ก ๆ

1579
01:45:14,553 --> 01:45:18,553
เนื่องจากมันมี 10 รูปใช่ไหมคะ

1580
01:45:18,553 --> 01:45:22,553
ก๊อบ(ปี้) ค่ะ แล้ววางไปให้ครบ 10 ครั้ง

1581
01:45:22,554 --> 01:45:26,554

1582
01:45:26,555 --> 01:45:30,555

1583
01:45:30,557 --> 01:45:34,557
3, 4, 5,

1584
01:45:34,558 --> 01:45:38,558
6, 7, 8, 9,

1585
01:45:38,560 --> 01:45:42,560
10 10 ใช่ไหม

1586
01:45:42,561 --> 01:45:46,561
เราก็มาเปลี่ยนแค่ตัวเลข 2,

1587
01:45:46,562 --> 01:45:50,562
3,

1588
01:45:50,564 --> 01:45:54,564
4 ถูกไหม เพราะรูป

1589
01:45:54,568 --> 01:45:58,568
เราตั้งชื่อให้มันเรียงตามลำดับแล้ว

1590
01:45:58,569 --> 01:46:02,569
เพราะฉะนั้นเราก็มา copy เรียงกันให้ได้ 1

1591
01:46:02,571 --> 01:46:06,571
6, 7,

1592
01:46:06,572 --> 01:46:10,572
8,

1593
01:46:10,574 --> 01:46:14,574
9, 10

1594
01:46:14,575 --> 01:46:18,575
ของเราครบ 10 แล้วนะครับ

1595
01:46:18,576 --> 01:46:22,576
ก็คือบอกให้ไปโหลดภาพ

1596
01:46:22,577 --> 01:46:26,577
sprites ของเรานั่นเองมานะคะ

1597
01:46:26,578 --> 01:46:30,578
เรามี 10 รูป เราก็โหลด 10 รูป เรามี

1598
01:46:30,580 --> 01:46:34,580
11 รูป โอ.เค. ไหมครบไหม

1599
01:46:34,581 --> 01:46:38,581
เช็กชื่อรูปด้วยนะ

1600
01:46:38,582 --> 01:46:42,582
ว่าตรงกันไหม

1601
01:46:42,588 --> 01:46:46,588
เซฟไว้ถูกที่แล้วนะ รอบนี้ไม่ขึ้น

1602
01:46:46,589 --> 01:46:50,589
นะ

1603
01:46:50,590 --> 01:46:54,590
หยุด Stop Stop

1604
01:46:54,592 --> 01:46:58,592
ชื่อตรงนี้เปิดโฟลเดอร์ ให้

1605
01:46:58,593 --> 01:47:02,593
เปิด Folder ๆ Folder

1606
01:47:02,595 --> 01:47:06,595
ตัวเอง อย่ามาเอาชื่อเหมือนแม่สิ ตัวเองตั้งชื่อเหมือนแม่หรือ

1607
01:47:06,596 --> 01:47:10,596
เปล่า นึกออกไหม เออ ชื่อไฟล์

1608
01:47:10,597 --> 01:47:14,597
รูปตัวเองน่ะ เข้าใจหรือยัง เดี๋ยวก็

1609
01:47:14,598 --> 01:47:18,598
ทำไมโหลดไม่ได้ ไม่ใช่นะคะ ตัวเองอีกชื่อหนึ่ ง

1610
01:47:18,601 --> 01:47:22,601
เพราะฉะนั้น ช่วยเช็กชื่อด้วย ตัวเอง

1611
01:47:22,602 --> 01:47:26,602
ก็เปิดโฟลเดอร์ตัวเอง แล้วดูชื่อรูแตัวเอง

1612
01:47:26,603 --> 01:47:30,603
แล้วก็ก๊อบฯ มาวาง 1 อัน แล้วค่อยมา Run เลขใหม่

1613
01:47:30,609 --> 01:47:34,609
เข้าใจไหม อะตอม

1614
01:47:34,610 --> 01:47:38,610
เสร็จหรือยัง ครามเสร็จหรือยัง เสร็จแล้ว

1615
01:47:38,612 --> 01:47:42,612
โอ.เค. เหลือ 2 สาว

1616
01:47:42,612 --> 01:47:46,612

1617
01:47:46,613 --> 01:47:50,613

1618
01:47:50,615 --> 01:47:54,615

1619
01:47:54,617 --> 01:47:58,617

1620
01:47:58,618 --> 01:48:02,618

1621
01:48:02,621 --> 01:48:06,621

1622
01:48:06,623 --> 01:48:10,623

1623
01:48:10,625 --> 01:48:14,625

1624
01:48:14,627 --> 01:48:18,627

1625
01:48:18,630 --> 01:48:22,630

1626
01:48:22,633 --> 01:48:26,633

1627
01:48:26,635 --> 01:48:30,635

1628
01:48:30,637 --> 01:48:34,637

1629
01:48:34,638 --> 01:48:38,638

1630
01:48:38,640 --> 01:48:42,640

1631
01:48:42,641 --> 01:48:46,641

1632
01:48:46,643 --> 01:48:50,643

1633
01:48:50,644 --> 01:48:54,644

1634
01:48:54,645 --> 01:48:58,645

1635
01:48:58,647 --> 01:49:02,647

1636
01:49:02,648 --> 01:49:06,648

1637
01:49:06,653 --> 01:49:10,653

1638
01:49:10,655 --> 01:49:14,655

1639
01:49:14,657 --> 01:49:18,657

1640
01:49:18,659 --> 01:49:22,659

1641
01:49:22,661 --> 01:49:26,661

1642
01:49:26,664 --> 01:49:30,664
อย่าลืมนะคะ พอได้ภาพที่ 1 แล้ว copy ไป

1643
01:49:30,666 --> 01:49:34,666
จนถึง 10 รูปน่ะ แล้วก็แก้เลข

1644
01:49:34,668 --> 01:49:38,668
โอ.เค.

1645
01:49:38,669 --> 01:49:42,669

1646
01:49:42,671 --> 01:49:46,671

1647
01:49:46,673 --> 01:49:50,673

1648
01:49:50,676 --> 01:49:54,676

1649
01:49:54,678 --> 01:49:58,678

1650
01:49:58,680 --> 01:50:02,680

1651
01:50:02,682 --> 01:50:06,682

1652
01:50:06,683 --> 01:50:10,683

1653
01:50:10,686 --> 01:50:14,686

1654
01:50:14,687 --> 01:50:18,687

1655
01:50:18,689 --> 01:50:22,689

1656
01:50:22,691 --> 01:50:26,691

1657
01:50:26,693 --> 01:50:30,693

1658
01:50:30,695 --> 01:50:34,695

1659
01:50:34,697 --> 01:50:38,697

1660
01:50:38,699 --> 01:50:42,699

1661
01:50:42,702 --> 01:50:46,702

1662
01:50:46,704 --> 01:50:50,704

1663
01:50:50,705 --> 01:50:54,705

1664
01:50:54,706 --> 01:50:58,706

1665
01:50:58,709 --> 01:51:02,709

1666
01:51:02,713 --> 01:51:06,713

1667
01:51:06,714 --> 01:51:10,714

1668
01:51:10,716 --> 01:51:14,716
ใครที่

1669
01:51:14,718 --> 01:51:18,718
มีรูปครบตามจำนวนตัวเองแล้วนะคะ สิ่ง

1670
01:51:18,719 --> 01:51:22,719
ที่จะต้องเขียนต่อมา ก็คือ

1671
01:51:22,720 --> 01:51:26,720
เราจะสร้าง สั่งให้มันสร้างการเคลื่อนไหวนั่นเอง

1672
01:51:26,722 --> 01:51:30,722
สร้าง Animation นะคะ เริ่มต่อจาก

1673
01:51:30,723 --> 01:51:34,723
ภาพที่ 10 เดี๋ยวรอแป๊บหนึ่ง รอ

1674
01:51:34,723 --> 01:51:38,723
ใคร...

1675
01:51:38,725 --> 01:51:42,725

1676
01:51:42,726 --> 01:51:46,726

1677
01:51:46,727 --> 01:51:50,727

1678
01:51:50,729 --> 01:51:54,729

1679
01:51:54,730 --> 01:51:58,730

1680
01:51:58,733 --> 01:52:02,733

1681
01:52:02,736 --> 01:52:06,736

1682
01:52:06,738 --> 01:52:10,738

1683
01:52:10,739 --> 01:52:14,739

1684
01:52:14,740 --> 01:52:18,740

1685
01:52:18,743 --> 01:52:22,743

1686
01:52:22,746 --> 01:52:26,746

1687
01:52:26,748 --> 01:52:30,748

1688
01:52:30,749 --> 01:52:34,749

1689
01:52:34,751 --> 01:52:38,751

1690
01:52:38,753 --> 01:52:42,753

1691
01:52:42,755 --> 01:52:46,755

1692
01:52:46,756 --> 01:52:50,756

1693
01:52:50,756 --> 01:52:54,756
ถ้า

1694
01:52:54,758 --> 01:52:58,758
โหลดภาพน่ะ

1695
01:52:58,759 --> 01:53:02,759
ต้องมีชื่อไฟล์ แล้วก็นามสกุลมันด้วยนะ

1696
01:53:02,761 --> 01:53:06,761
.png ทั้งหมด เพราะตัวนี้เป็นไฟล์ Animation

1697
01:53:06,762 --> 01:53:10,762
เราจะทำเป็น Animation

1698
01:53:10,763 --> 01:53:14,763

1699
01:53:14,765 --> 01:53:18,765

1700
01:53:18,766 --> 01:53:22,766

1701
01:53:22,769 --> 01:53:26,769

1702
01:53:26,771 --> 01:53:30,771

1703
01:53:30,772 --> 01:53:34,772

1704
01:53:34,774 --> 01:53:38,774

1705
01:53:38,777 --> 01:53:42,777

1706
01:53:42,779 --> 01:53:46,779

1707
01:53:46,780 --> 01:53:50,780

1708
01:53:50,782 --> 01:53:54,782

1709
01:53:54,784 --> 01:53:58,784

1710
01:53:58,786 --> 01:54:02,786

1711
01:54:02,788 --> 01:54:06,788

1712
01:54:06,791 --> 01:54:10,791

1713
01:54:10,792 --> 01:54:14,792

1714
01:54:14,796 --> 01:54:18,796

1715
01:54:18,797 --> 01:54:22,797

1716
01:54:22,799 --> 01:54:26,799

1717
01:54:26,801 --> 01:54:30,801

1718
01:54:30,803 --> 01:54:34,803

1719
01:54:34,806 --> 01:54:38,806

1720
01:54:38,807 --> 01:54:42,807
เหมือนเสร็จ

1721
01:54:42,810 --> 01:54:46,810
โหลดภาพเสร็จหมดทุกคนแล้วนะคะ

1722
01:54:46,811 --> 01:54:50,811
สร้าง ก็คือ

1723
01:54:50,813 --> 01:54:54,813
ให้มันกำหนด เหมือน

1724
01:54:54,813 --> 01:54:58,813
การเคลื่อนไหวน่ะ ก็คือสร้างการเคลื่อนไหวให้มันนะคะ

1725
01:54:58,815 --> 01:55:02,815
คำสั่ง self เหมือน

1726
01:55:02,817 --> 01:55:06,817
มี self อะไรบ้าง

1727
01:55:06,819 --> 01:55:10,819
self.current = 0

1728
01:55:10,820 --> 01:55:14,820

1729
01:55:14,822 --> 01:55:18,822

1730
01:55:18,823 --> 01:55:22,823
มันจะอยู่นี่นะคะ พิมพ์ self เลือก

1731
01:55:22,824 --> 01:55:26,824
self

1732
01:55:26,824 --> 01:55:30,824
เลือก self นี่นะคะ

1733
01:55:30,825 --> 01:55:34,825
.sprites

1734
01:55:34,826 --> 01:55:38,826
เพราะเราชื่อเดียวกันเลย

1735
01:55:38,830 --> 01:55:42,830
นะคะ Statements

1736
01:55:42,831 --> 01:55:46,831
ตัวแปร sprite เรานั่นล่ะ

1737
01:55:46,833 --> 01:55:50,833
อ๋อ กำหนด

1738
01:55:50,834 --> 01:55:54,834
ค่าปัจจบันให้ sprites

1739
01:55:54,836 --> 01:55:58,836

1740
01:55:58,837 --> 01:56:02,837
self

1741
01:56:02,838 --> 01:56:06,838
.current

1742
01:56:06,840 --> 01:56:10,840
_sprite =

1743
01:56:10,841 --> 01:56:14,841
= 0 มีค่าเท่ากับ 0

1744
01:56:14,842 --> 01:56:18,842
ก็คือค่าของไอ้ตัวนี้

1745
01:56:18,843 --> 01:56:22,843
ค่าเริ่มต้นนี่มันจะต้องเป็น 0

1746
01:56:22,844 --> 01:56:26,844
ต่อมากำหนดเห็นไหมคะ

1747
01:56:26,846 --> 01:56:30,846
กำหนด เห็นไหมคะ ให้ images นี่ เท่ากับ

1748
01:56:30,852 --> 01:56:34,852
current_sprite นั่นเอง

1749
01:56:34,854 --> 01:56:38,854
self.image นี่

1750
01:56:38,855 --> 01:56:42,855
self.current_sprit

1751
01:56:42,856 --> 01:56:46,856
นะคะ ส่วนตัว Rect นี่

1752
01:56:46,857 --> 01:56:50,857
มาจาก rect หรือสี่เหลี่ยม

1753
01:56:50,858 --> 01:56:54,858
จะเป็นตัวพิกัดน่ะ พิกัด

1754
01:56:54,859 --> 01:56:58,859
ของตัวทำ... คือ ทำรูป

1755
01:56:58,861 --> 01:57:02,861
แล้วเรายังทำพื้นที่ที่จะให้

1756
01:57:02,861 --> 01:57:06,861
ไอ้รูปของเราน่ะมันเคลื่อนไหวนะคะ

1757
01:57:06,863 --> 01:57:10,863
ก็คือพิกัดของมันน่ะ

1758
01:57:10,864 --> 01:57:14,864
ก็คือ วาดเป็นลักษณะ 4 เหลี่ยม

1759
01:57:14,866 --> 01:57:18,866
นะคะ พื้นที่ของตัว Animation

1760
01:57:18,867 --> 01:57:22,867
เรานั่นเองนะคะ เพราะอยู่ ๆ

1761
01:57:22,868 --> 01:57:26,868
Animation มันไม่เคลื่อนไปเองแน่ ถ้าไม่กำหนดเขต

1762
01:57:26,870 --> 01:57:30,870
ให้มันนะคะ self เหมือน

1763
01:57:30,873 --> 01:57:34,873
เดิมขึ้นด้วย Self

1764
01:57:34,874 --> 01:57:38,874
.

1765
01:57:38,874 --> 01:57:42,874
image นะคะ .image

1766
01:57:42,876 --> 01:57:46,876
=

1767
01:57:46,877 --> 01:57:50,877
self

1768
01:57:50,878 --> 01:57:54,878
.sprites นะคะ sprites statements

1769
01:57:54,880 --> 01:57:58,880
Statement แล้วก็

1770
01:57:58,881 --> 01:58:02,881
ปีกกาใหญ่ กดผิด ๆ

1771
01:58:02,882 --> 01:58:06,882
ไม่ใช่ปีกกา

1772
01:58:06,883 --> 01:58:10,883
ก้ามปูเป็น self

1773
01:58:10,884 --> 01:58:14,884
เป็น

1774
01:58:14,885 --> 01:58:18,885
current current_sprite

1775
01:58:18,887 --> 01:58:22,887
โอ.เค. บรรทัดที่ 2 นะคะ

1776
01:58:22,889 --> 01:58:26,889
ก็คือระบุภาพเรานี่ มันจะต้อง

1777
01:58:26,890 --> 01:58:30,890
เป็นแบบนี้นะคะ อยู่ตำแหน่ง

1778
01:58:30,892 --> 01:58:34,892
current_sprite

1779
01:58:34,893 --> 01:58:38,893
ถูกต้องไหม

1780
01:58:38,894 --> 01:58:42,894
เห็นไหมคะ self.sprites

1781
01:58:42,897 --> 01:58:46,897
ใส่ self ด้วย ขาดไป 1 ประโยค

1782
01:58:46,900 --> 01:58:50,900

1783
01:58:50,903 --> 01:58:54,903

1784
01:58:54,904 --> 01:58:58,904

1785
01:58:58,906 --> 01:59:02,906

1786
01:59:02,908 --> 01:59:06,908
โอ.เค. นะคะ

1787
01:59:06,911 --> 01:59:10,911
คือใน Class นี่

1788
01:59:10,911 --> 01:59:14,911
มันจะมีไอ้ตัวนี้ ไอ้ตัว self

1789
01:59:14,913 --> 01:59:18,913
แค่นั้นเอง ต้องใส่ พอเวลาเราจะเรียก

1790
01:59:18,914 --> 01:59:22,914
ใช้งานมันจะต้องมีตัวนี้นะคะ

1791
01:59:22,915 --> 01:59:26,915
บรรทัดต่อไประบุ image แล้ว

1792
01:59:26,916 --> 01:59:30,916
ต่อไประบุอะไร ระบุพิกัด

1793
01:59:30,919 --> 01:59:34,919
ก็คือ self.rect

1794
01:59:34,920 --> 01:59:38,920
tanbl

1795
01:59:38,920 --> 01:59:42,920
=

1796
01:59:42,922 --> 01:59:46,922
self.image.get_rect()

1797
01:59:46,924 --> 01:59:50,924
.get_

1798
01:59:50,925 --> 01:59:54,925
= self.image

1799
01:59:54,928 --> 01:59:58,928
ตัวบนนี่

1800
01:59:58,929 --> 02:00:02,929

1801
02:00:02,931 --> 02:00:06,931

1802
02:00:06,932 --> 02:00:10,932

1803
02:00:10,934 --> 02:00:14,934

1804
02:00:14,936 --> 02:00:18,936

1805
02:00:18,940 --> 02:00:22,940
.get get

1806
02:00:22,941 --> 02:00:26,941
เอ่ย เก็ทอะไรครับ

1807
02:00:26,946 --> 02:00:30,946
get อะไร ๆ ๆ

1808
02:00:30,948 --> 02:00:34,948
get_rect()

1809
02:00:34,949 --> 02:00:38,949
get เล็กนะคะ get

1810
02:00:38,950 --> 02:00:42,950
เรียกใช้ รับค่าให้มันรับค่า

1811
02:00:42,951 --> 02:00:46,951
get_rec ขึ้นไหม r

1812
02:00:46,952 --> 02:00:50,952
ตัวเดียวน่าจะขึ้นแล้ว เรียกใช้ function

1813
02:00:50,954 --> 02:00:54,954
get_rect()

1814
02:00:54,955 --> 02:00:58,955
นะคะ

1815
02:00:58,957 --> 02:01:02,957
ก็คือขอบเขตนี่

1816
02:01:02,958 --> 02:01:06,958

1817
02:01:06,959 --> 02:01:10,959
ตำแหน่ง เห็นไหมคะ

1818
02:01:10,960 --> 02:01:14,960
บนซ้าย สร้าง

1819
02:01:14,962 --> 02:01:18,962
ตัว rectangle นี่ ตั้งแต่

1820
02:01:18,963 --> 02:01:22,963
บนซ้ายมีค่าเท่ากับ pos_x, pos_y

1821
02:01:22,967 --> 02:01:26,967

1822
02:01:26,969 --> 02:01:30,969

1823
02:01:30,971 --> 02:01:34,971
self เหมือนเดิม .rec

1824
02:01:34,972 --> 02:01:38,972

1825
02:01:38,974 --> 02:01:42,974
self.e

1826
02:01:42,976 --> 02:01:46,976
ไปต่อ .topleft นะคะ

1827
02:01:46,978 --> 02:01:50,978
.topleft นะคะ .topleft ก็คือตำแหน่ง

1828
02:01:50,979 --> 02:01:54,979
.topleft เห็นไหมคะ topleft

1829
02:01:54,982 --> 02:01:58,982
topleft =

1830
02:01:58,983 --> 02:02:02,983
เริ่มที่ซ้ายบนสุด บนสุดซ้าย

1831
02:02:02,984 --> 02:02:06,984
topleft แล้วก็ =

1832
02:02:06,985 --> 02:02:10,985

1833
02:02:10,987 --> 02:02:14,987
[pos_x

1834
02:02:14,989 --> 02:02:18,989
อะไรคะ pos_y ใช่ไหมคะ

1835
02:02:18,990 --> 02:02:22,990
ลืมอะไรหรือเปล่า ทำไม

1836
02:02:22,991 --> 02:02:26,991
อ๋อ ลืมใส่ก้ามปูเข้าไปให้

1837
02:02:26,993 --> 02:02:30,993
=

1838
02:02:30,994 --> 02:02:34,994
ต้องใส่ก้ามปูเข้าไปด้วย

1839
02:02:35,001 --> 02:02:39,001
เอาใหม่ ๆ ก้ามปูนะคะ ก้า

1840
02:02:39,002 --> 02:02:43,002
แล้วก็ตามด้วย

1841
02:02:43,004 --> 02:02:47,004
pos_x,

1842
02:02:47,005 --> 02:02:51,005
pos_y เห็นไหมคะ

1843
02:02:51,007 --> 02:02:55,007
สังเกต pos_x pos_y จะเปลี่ยนชื่อ

1844
02:02:55,008 --> 02:02:59,008
เป็นตัวนี้

1845
02:02:59,009 --> 02:03:03,009
ดูดี ๆ เห็นไหม

1846
02:03:03,011 --> 02:03:07,011
นี่ parum นี่ parum

1847
02:03:07,013 --> 02:03:11,013
เพราะอะไร เพราะนี่มันอยู่ตรงนี้นี่ ตรง

1848
02:03:11,014 --> 02:03:15,014
ค่านี้เห็นไหม ตรงการกำหนดตรงนี้เห็นไหมคะ

1849
02:03:15,016 --> 02:03:19,016
ก็คือตัวนี้ตัวเดียวกัน

1850
02:03:19,017 --> 02:03:23,017
มันจะไปเรียกใช้มาแล้ว

1851
02:03:23,018 --> 02:03:27,018
ได้ส่วนของโหลดรูปมาแล้ว

1852
02:03:27,020 --> 02:03:31,020
กำหนดพื้นที่ที่มันจะเคลื่อนไหว แล้วก็สร้างพื้นที่ให้มันเคลื่อนไหว

1853
02:03:31,022 --> 02:03:35,022
แล้วก็สั่งค่าเริ่มต้นของ

1854
02:03:35,023 --> 02:03:39,023
มันแล้วสิ่งที่จะทำต่อไปนะคะ

1855
02:03:39,024 --> 02:03:43,024

1856
02:03:43,025 --> 02:03:47,025
นี่

1857
02:03:47,027 --> 02:03:51,027
สร้างตัว sprites

1858
02:03:51,028 --> 02:03:55,028
ก็คือ กำหนดค่า

1859
02:03:55,030 --> 02:03:59,030
ให้การเคลื่อนไหวน่ะ เสร็จแล้วก็ Group รูป

1860
02:03:59,031 --> 02:04:03,031
เพราะรูปมันเยอะใช่หรือเปล่า ให้ดูตรงชื่อนะคะ

1861
02:04:03,033 --> 02:04:07,033
ชื่อตรงนี้ ตัวแปรนี่เห็นไหมคะ

1862
02:04:07,034 --> 02:04:11,034
ตัวนี้ คือ ชื่อ Class เราให้มันตรงกับชื่อ

1863
02:04:11,035 --> 02:04:15,035
Class ที่สร้าง ชื่อตรงนี้

1864
02:04:15,037 --> 02:04:19,037
คือ ชื่อ Class ของเรา ชื่อตัวแปร

1865
02:04:19,038 --> 02:04:23,038
กับชื่อ Class ใช้เหมือนกันก็ได้

1866
02:04:23,043 --> 02:04:27,043
เพราะ Class นี้ คือ Class ของตัวการ์ตูนที่เราจะเอามา

1867
02:04:27,044 --> 02:04:31,044
ทำให้มันเคลื่อนไหวนะคะ

1868
02:04:31,046 --> 02:04:35,046

1869
02:04:35,048 --> 02:04:39,048
อันนี้คือค่าตำแหน่งที่จะวางไอ้รูปนั้นน่ะ

1870
02:04:39,049 --> 02:04:43,049
วางรูปนะคะ เขาก็เลยบอกว่า

1871
02:04:43,051 --> 02:04:47,051
เอา Sprites นี่ไปไว้ที่ไหน

1872
02:04:47,053 --> 02:04:51,053
นะคะ ระบุตำแหน่งรูป มาดูกัน

1873
02:04:51,054 --> 02:04:55,054
ตัวนี้จะอยู่เอาไว้ต่อจาก

1874
02:04:55,056 --> 02:04:59,056
loop while นะค

1875
02:04:59,057 --> 02:05:03,057
ก็คือจากหลาย ๆ ภาพนี่

1876
02:05:03,060 --> 02:05:07,060
ให้มัน Groups ภาพเข้าไป เป็น fun

1877
02:05:07,062 --> 02:05:11,062
นั่นเองนะคะ

1878
02:05:11,063 --> 02:05:15,063

1879
02:05:15,065 --> 02:05:19,065

1880
02:05:19,066 --> 02:05:23,066
เอามาไว้ตรงนี้นะคะ

1881
02:05:23,069 --> 02:05:27,069

1882
02:05:27,070 --> 02:05:31,070

1883
02:05:31,071 --> 02:05:35,071

1884
02:05:35,074 --> 02:05:39,074

1885
02:05:39,079 --> 02:05:43,079
แปลเป็นไทน

1886
02:05:43,085 --> 02:05:47,085

1887
02:05:47,088 --> 02:05:51,088

1888
02:05:51,089 --> 02:05:55,089

1889
02:05:55,090 --> 02:05:59,090
ก็คือตรงนี้

1890
02:05:59,091 --> 02:06:03,091
เราจะสร้างตัวที่ให้มันสร้างภาพไปต่อเนื่อง

1891
02:06:03,093 --> 02:06:07,093
รวมให้มัน คือ ไม่ให้ภาพมันแตกออกน่ะ

1892
02:06:07,095 --> 02:06:11,095
นึกออกนะ คือ ภาพ 1, 2, 3, 4 นี่

1893
02:06:11,097 --> 02:06:15,097
รวม เรียงไปแล้ว แต่มันเข้ามาเป็นภาพ

1894
02:06:15,098 --> 02:06:19,098
แล้วก็รวมภาพนะคะ

1895
02:06:19,099 --> 02:06:23,099
คำสั่งที่ใช้ ก็คือ

1896
02:06:23,100 --> 02:06:27,100
move สร้างตัวแปร moving

1897
02:06:27,101 --> 02:06:31,101
= pygame.sprite.Gor

1898
02:06:31,103 --> 02:06:35,103
ใช้ function นี้

1899
02:06:35,104 --> 02:06:39,104
สร้างตัวแปรชื่อว่า moving

1900
02:06:39,106 --> 02:06:43,106

1901
02:06:43,107 --> 02:06:47,107
ไม่อยากพิมพ์ยาว move

1902
02:06:47,109 --> 02:06:51,109
ก็เลย Move_sprites

1903
02:06:51,111 --> 02:06:55,111
ตัวแปรของเรานะคะ

1904
02:06:55,113 --> 02:06:59,113
เท่ากับ

1905
02:06:59,118 --> 02:07:03,118

1906
02:07:03,120 --> 02:07:07,120
Move_sprites

1907
02:07:07,123 --> 02:07:11,123
.group เรียก module แล้วก็

1908
02:07:11,124 --> 02:07:15,124
function Group() มาใช้งานนะคะ

1909
02:07:15,125 --> 02:07:19,125
= module pygame.

1910
02:07:19,126 --> 02:07:23,126
. sprites เรียก module

1911
02:07:23,127 --> 02:07:27,127
sprites มาใช้แล้วก็เรียก function Group

1912
02:07:27,128 --> 02:07:31,128
Group ตัวใหญ่

1913
02:07:31,130 --> 02:07:35,130
อ๋อ เรียก Class Group

1914
02:07:35,131 --> 02:07:39,131
มาใช้ ไม่ได้เรียก Function

1915
02:07:39,132 --> 02:07:43,132
Class ที่ชื่อ Group

1916
02:07:43,133 --> 02:07:47,133
มือไวไปหน่อย

1917
02:07:47,134 --> 02:07:51,134
เห็นไหมคะ เห็นไหม Gropu

1918
02:07:51,135 --> 02:07:55,135
Class ที่เราไม่ได้สร้างไว้ แต่เป็น Module ที่

1919
02:07:55,138 --> 02:07:59,138
pygame มันสร้างไว้แล้วน่ะ เราก็ไปเรียกใช้ได้เลย

1920
02:07:59,141 --> 02:08:03,141
นะคะ ไม่ต้องไปสร้างใหม่ เห็นไหม ก็คือ

1921
02:08:03,142 --> 02:08:07,142
ที่บอกไง มันลดการซ้ำซ้อน

1922
02:08:07,147 --> 02:08:11,147
พอเขียนโปรแกรมใหม่ก็ไปสร้างใหม่เห็นไหม

1923
02:08:11,151 --> 02:08:15,151
นะคะ แล้วก็ตามด้วยชื่อตัวแปร

1924
02:08:15,153 --> 02:08:19,153
ตัวการ์ตูนของเรา แล้วก็เรียก Class ตัวการ์ตูนนั้นมานะคะ

1925
02:08:19,154 --> 02:08:23,154

1926
02:08:23,155 --> 02:08:27,155
ตามด้วย Knight K

1927
02:08:27,156 --> 02:08:31,156

1928
02:08:31,160 --> 02:08:35,160

1929
02:08:35,165 --> 02:08:39,165

1930
02:08:39,168 --> 02:08:43,168
แล้วก็เรียก

1931
02:08:43,170 --> 02:08:47,170
Class เห็นไหมคะ เรียก Class ที่เราสร้าง

1932
02:08:47,171 --> 02:08:51,171
แล้วก็ตามด้วย... เห็นไหมคะ

1933
02:08:51,172 --> 02:08:55,172
มันจะบอกเลย

1934
02:08:55,175 --> 02:08:59,175
Knight นี่ตามด้วย pos_x pos_y แ

1935
02:08:59,175 --> 02:09:03,175
pos_x แล้วก็

1936
02:09:03,176 --> 02:09:07,176
pos_y ให้มันไว้ที่ (10,10๗

1937
02:09:07,176 --> 02:09:11,176

1938
02:09:11,179 --> 02:09:15,179
แล้วก็ทำตัวแปร Move อีก

1939
02:09:15,180 --> 02:09:19,180
move

1940
02:09:19,181 --> 02:09:23,181
sprites เหมือนเดิมไหม sprites

1941
02:09:23,182 --> 02:09:27,182
แล้ว add เข้าไปตัวแปร

1942
02:09:27,183 --> 02:09:31,183
รูปเรานะคะ

1943
02:09:31,184 --> 02:09:35,184
move_sprites.

1944
02:09:35,185 --> 02:09:39,185
.add function

1945
02:09:39,186 --> 02:09:43,186
add function นะคะ

1946
02:09:43,187 --> 02:09:47,187
ใน Knight k เล็ก knight

1947
02:09:47,188 --> 02:09:51,188
statement

1948
02:09:51,190 --> 02:09:55,190
ดูดี ๆ นะคะ ชื่อนี่

1949
02:09:55,192 --> 02:09:59,192
คือตัวแปร ชื่อ

1950
02:09:59,193 --> 02:10:03,193
ตัวนี้ คือ class ที่เราสร้างไว้ข้างบน

1951
02:10:03,194 --> 02:10:07,194
ตรงนี้เลื่อนขึ้นไปให้ดูนี่

1952
02:10:07,197 --> 02:10:11,197
เด็ก ๆ ไปดู Class ตัวเองตั้งชื่ออะไร

1953
02:10:11,198 --> 02:10:15,198
เข้าใจนะ Class ตัวเองฃ

1954
02:10:15,199 --> 02:10:19,199
ตัวเองชื่ออะไร ตอนมาเรียกใช้

1955
02:10:19,200 --> 02:10:23,200
ก็ต้องเรียกใช้ชื่อให้มันตรงกันนะคะ

1956
02:10:23,201 --> 02:10:27,201
นะคะ

1957
02:10:27,202 --> 02:10:31,202
เพราะฉะนั้น ย้อนกลับ

1958
02:10:31,207 --> 02:10:35,207
ไปดู class ตัวเองด้วย

1959
02:10:35,208 --> 02:10:39,208
Class name ตัวเองด้วยนะคะ

1960
02:10:39,209 --> 02:10:43,209

1961
02:10:43,210 --> 02:10:47,210
ได้ส่วนของการสร้างภาพแล้ว

1962
02:10:47,212 --> 02:10:51,212
สิ่งต่อไป

1963
02:10:51,213 --> 02:10:55,213
โอ.เค. ไหม บรรทัด 3 บรรทัดนี้เสร็จหรือยัง

1964
02:10:55,214 --> 02:10:59,214

1965
02:10:59,216 --> 02:11:03,216

1966
02:11:03,217 --> 02:11:07,217

1967
02:11:07,219 --> 02:11:11,219

1968
02:11:11,221 --> 02:11:15,221

1969
02:11:15,226 --> 02:11:19,226

1970
02:11:19,228 --> 02:11:23,228

1971
02:11:23,230 --> 02:11:27,230

1972
02:11:27,233 --> 02:11:31,233

1973
02:11:31,234 --> 02:11:35,234
ส่วนตรงนี้เห็นไหมคะ King

1974
02:11:35,237 --> 02:11:39,237
ตังเล็กนี่ ก็คือชื่อตัวแปร เปลี่ยนให้เหมือนชื่อ Class

1975
02:11:39,238 --> 02:11:43,238
ก็ได้แต่เปลี่ยนตัวพิมพ์น่ะ เป็นตัวพิมพ์เล็กทั้งหมด

1976
02:11:43,240 --> 02:11:47,240
แต่ถ้าเป็นชื่อ Class น่ะ

1977
02:11:47,242 --> 02:11:51,242
ตรงบรรทัดที่ 45 เห็นไหมคะ

1978
02:11:51,243 --> 02:11:55,243
ชื่อตัวแรกมันจะเป็นตัวแปร เราใช้

1979
02:11:55,244 --> 02:11:59,244
ตัวนี้เราไปเรียก Class ที่เราสร้างไว้ตั้งแต่

1980
02:11:59,246 --> 02:12:03,246
ครั้งแรกน่ะมา สังเกต

1981
02:12:03,247 --> 02:12:07,247
ชื่อ Class 2 ตัวแรกมัน

1982
02:12:07,248 --> 02:12:11,248
สีมันจะเป็นสีนี้

1983
02:12:11,249 --> 02:12:15,249
นะคะ ถ้าใครไม่เรียก Class ตัวเองมามันก็จะไม่ขึ้น

1984
02:12:15,250 --> 02:12:19,250
สิ่งต่อไป

1985
02:12:19,250 --> 02:12:23,250
ที่เราจะทำ

1986
02:12:23,252 --> 02:12:27,252

1987
02:12:27,253 --> 02:12:31,253
นะคะ

1988
02:12:31,254 --> 02:12:35,254
จะสร้าง function Run กับ

1989
02:12:35,256 --> 02:12:39,256
function Run กับ

1990
02:12:39,257 --> 02:12:43,257
Function นี้ ก็คือ Function

1991
02:12:43,258 --> 02:12:47,258
แสดงค่า ถ้าของเรา

1992
02:12:47,259 --> 02:12:51,259
มันเป็นวิ่งก็ใช้ Run ก็ได้ แต่ถ้าของเรามันเป็นอะไรนะ

1993
02:12:51,260 --> 02:12:55,260
กระโดด หรือ wack

1994
02:12:55,261 --> 02:12:59,261
Function ตรงนี้ ชื่อ Function นี้

1995
02:12:59,262 --> 02:13:03,262
ตั้งค่าตามกิริยาหรือ

1996
02:13:03,263 --> 02:13:07,263
การกระทำของตัวการ์ตูนนั้น ๆ

1997
02:13:07,264 --> 02:13:11,264
โอ.เค. ไหม

1998
02:13:11,265 --> 02:13:15,265
คือ เวลาตั้งมันจะต้องสื่อไง จะได้รู้ว่า

1999
02:13:15,266 --> 02:13:19,266
ตัวนี้มันทำอะไร มันวิ่งใช่ไหม เพราะสังเกต

2000
02:13:19,267 --> 02:13:23,267
ที่ตัวการ์ตูนเรา มันนอกจากมันมีวิ่งแล้ว

2001
02:13:23,268 --> 02:13:27,268
บางอันมันมีทั้งกระโดด มีทั้งอะไร

2002
02:13:27,270 --> 02:13:31,270
ใช่ไหมคะ เราก็ไปเปลี่ยนได้นะคะ

2003
02:13:31,271 --> 02:13:35,271
โอ.เค. นะคะ เราจะ

2004
02:13:35,272 --> 02:13:39,272
มาสร้าง function ให้มัน เพื่อให้มันทำงานน่ะ

2005
02:13:39,273 --> 02:13:43,273
ตาม function ที่กำหนด

2006
02:13:43,274 --> 02:13:47,274
เริ่มที่ Function แรกก่อน

2007
02:13:47,274 --> 02:13:51,274

2008
02:13:51,276 --> 02:13:55,276

2009
02:13:55,277 --> 02:13:59,277

2010
02:13:59,279 --> 02:14:03,279

2011
02:14:03,281 --> 02:14:07,281
ดูนะคะ

2012
02:14:07,282 --> 02:14:11,282

2013
02:14:11,283 --> 02:14:15,283

2014
02:14:15,285 --> 02:14:19,285
Function จะอยู่... ขอโทษ ๆ

2015
02:14:19,287 --> 02:14:23,287
ตำแหน่ง ๆ จะอยู่ต่อจาก

2016
02:14:23,288 --> 02:14:27,288

2017
02:14:27,289 --> 02:14:31,289
ต่อจาก Class ของเรานั่นเอง

2018
02:14:31,290 --> 02:14:35,290
นะคะ เราไป Class ค่ะ

2019
02:14:35,292 --> 02:14:39,292
เราจะสร้าง Function

2020
02:14:39,293 --> 02:14:43,293
ตรงนี้นะคะ

2021
02:14:43,295 --> 02:14:47,295

2022
02:14:47,296 --> 02:14:51,296

2023
02:14:51,297 --> 02:14:55,297

2024
02:14:55,298 --> 02:14:59,298

2025
02:14:59,302 --> 02:15:03,302

2026
02:15:03,305 --> 02:15:07,305

2027
02:15:07,306 --> 02:15:11,306

2028
02:15:11,308 --> 02:15:15,308

2029
02:15:15,311 --> 02:15:19,311
สร้าง

2030
02:15:19,314 --> 02:15:23,314
Function Run กับ Update

2031
02:15:23,318 --> 02:15:27,318
ทำไมต้องมีอัปเดตบอกแล้ว

2032
02:15:27,318 --> 02:15:31,318
เพื่อให้มันคืนค่าน่ะ

2033
02:15:31,320 --> 02:15:35,320
พอวิ่ง ๆ ไป มันก็ต้องกลับมาค่าเดิมน่ะค่ะ มัน

2034
02:15:35,321 --> 02:15:39,321
วนกลับไปกลับมานะคะ

2035
02:15:39,323 --> 02:15:43,323

2036
02:15:43,325 --> 02:15:47,325

2037
02:15:47,327 --> 02:15:51,327
Tab เข้าไป 1 ครั้งนะคะ สังเกตตรง function

2038
02:15:51,330 --> 02:15:55,330
ตำแหน่ง Function นะ มันจะ

2039
02:15:55,331 --> 02:15:59,331
ไม่อยู่ชิด เด็ก ๆ ต้อง Tab เข้าไป 1 ครั้งนะคะ เด็ก ๆ จะต้อง

2040
02:15:59,333 --> 02:16:03,333
def function ขึ้นมา ตามด้วย...

2041
02:16:03,335 --> 02:16:07,335
ง

2042
02:16:07,336 --> 02:16:11,336

2043
02:16:11,339 --> 02:16:15,339

2044
02:16:15,343 --> 02:16:19,343

2045
02:16:19,345 --> 02:16:23,345
function แรก คือ function Run

2046
02:16:23,348 --> 02:16:27,348
นะคะ เห็นไหมคะ เนื่องจากบอกแล้ว

2047
02:16:27,350 --> 02:16:31,350
มันอยู่ใน Class ไง มันอยู่ใน Class

2048
02:16:31,351 --> 02:16:35,351
def run

2049
02:16:35,353 --> 02:16:39,353
แต่เราต้องเรียก self มา

2050
02:16:39,354 --> 02:16:43,354
self นะคะ แล้วก็ self

2051
02:16:43,355 --> 02:16:47,355
กำหนดค่า

2052
02:16:47,356 --> 02:16:51,356
ให้

2053
02:16:51,357 --> 02:16:55,357
self.

2054
02:16:55,360 --> 02:16:59,360

2055
02:16:59,362 --> 02:17:03,362

2056
02:17:03,363 --> 02:17:07,363

2057
02:17:07,365 --> 02:17:11,365
=

2058
02:17:11,368 --> 02:17:15,368
นะคะ ก็คือสร้างตัวแปร

2059
02:17:15,392 --> 02:17:19,392
Run Animation นี่ โดยมีการกำหนด

2060
02:17:19,394 --> 02:17:23,394
มีค่าเริ่มต้นที่ 0

2061
02:17:23,395 --> 02:17:27,395

2062
02:17:27,397 --> 02:17:31,397
ไม่ใช่ 0 =true เป็นจ

2063
02:17:31,403 --> 02:17:35,403
= t

2064
02:17:35,406 --> 02:17:39,406
= True ก็คือมันจะวิ่งเมื่อเป็นจริง

2065
02:17:39,407 --> 02:17:43,407

2066
02:17:43,408 --> 02:17:47,408
เสร็จแล้ว function update

2067
02:17:47,409 --> 02:17:51,409
เหมือนเดิม def Function ตามด้วย update

2068
02:17:51,410 --> 02:17:55,410

2069
02:17:55,411 --> 02:17:59,411
update function คลิกเลย

2070
02:17:59,412 --> 02:18:03,412
ในนี้ใส่อะไรบ้าง ใน upd

2071
02:18:03,415 --> 02:18:07,415
อะไรบ้างใน update จะต้องใส่

2072
02:18:07,416 --> 02:18:11,416
self แล้วก็ speed นะคะ

2073
02:18:11,417 --> 02:18:15,417
มี self กับ speed

2074
02:18:15,418 --> 02:18:19,418
การไอ้นั่นน่ะ

2075
02:18:19,419 --> 02:18:23,419
ความเร็วในการเคลื่อนไหวนั่นเองนะคะ

2076
02:18:23,421 --> 02:18:27,421
ที่เราเรียก clock

2077
02:18:27,422 --> 02:18:31,422
มาใช้งานน่ะ เราก็ต้องมี speed ให้มัน ตัวแปร

2078
02:18:31,423 --> 02:18:35,423
นะคะ

2079
02:18:35,423 --> 02:18:39,423

2080
02:18:39,424 --> 02:18:43,424
self แล้วก็

2081
02:18:43,426 --> 02:18:47,426
speed

2082
02:18:47,427 --> 02:18:51,427
นะคะ

2083
02:18:51,428 --> 02:18:55,428

2084
02:18:55,431 --> 02:18:59,431
function update

2085
02:18:59,433 --> 02:19:03,433
โดยที่ถ้า self

2086
02:19:03,434 --> 02:19:07,434
ถ้ามีการวิ่งนะคะ ให้ค่าเป็นจริง

2087
02:19:07,436 --> 02:19:11,436
แล้วตำแหน่ง

2088
02:19:11,438 --> 02:19:15,438
current_sprite นี่

2089
02:19:15,441 --> 02:19:19,441
ตาม speed นั้น

2090
02:19:19,442 --> 02:19:23,442

2091
02:19:23,447 --> 02:19:27,447
if self.run

2092
02:19:27,448 --> 02:19:31,448
กำหนดเงื่อนไขแล้วนะคะว่า ถ้า

2093
02:19:31,449 --> 02:19:35,449
If

2094
02:19:35,450 --> 02:19:39,450
ถ้า Run

2095
02:19:39,450 --> 02:19:43,450
if self

2096
02:19:43,452 --> 02:19:47,452
.run

2097
02:19:47,453 --> 02:19:51,453
.run_

2098
02:19:51,454 --> 02:19:55,454
animation ถ้า if self.run

2099
02:19:55,455 --> 02:19:59,455
ของเราเป็นจริง =

2100
02:19:59,456 --> 02:20:03,456
True ปุ๊บ เป็นจริงเมื่อไหร่

2101
02:20:03,457 --> 02:20:07,457
ถ้าเงื่อนไขเป็นจริงนะคะ

2102
02:20:07,459 --> 02:20:11,459
สิ่งที่จะต้องทำ ก็คือ

2103
02:20:11,460 --> 02:20:15,460

2104
02:20:15,461 --> 02:20:19,461
self.current_sprite หมายถึงตำแหน่ง

2105
02:20:19,464 --> 02:20:23,464
ปัจจุบันนี่ให้เพิ่มเข้าไป

2106
02:20:23,465 --> 02:20:27,465
ก็จะเพิ่ม

2107
02:20:27,466 --> 02:20:31,466
self.

2108
02:20:31,467 --> 02:20:35,467
เรียกใช้ current

2109
02:20:35,468 --> 02:20:39,468
นะคะ + +

2110
02:20:39,469 --> 02:20:43,469
ใส่เครื่องหมาย + =

2111
02:20:43,470 --> 02:20:47,470
บวกหรือ อย่าใส่ +- อีกนะ

2112
02:20:47,471 --> 02:20:51,471
ใครใส่ +- ภาพไม่เคลื่อนนะคะ

2113
02:20:51,472 --> 02:20:55,472
+= นะคะ

2114
02:20:55,473 --> 02:20:59,473
= speed

2115
02:20:59,474 --> 02:21:03,474
speed ตัวนี้ speed แพรม

2116
02:21:03,475 --> 02:21:07,475
เห็นไหม เรียกตัวนี้มา

2117
02:21:07,476 --> 02:21:11,476

2118
02:21:11,478 --> 02:21:15,478
+= นะ ไม่ใช่

2119
02:21:15,479 --> 02:21:19,479

2120
02:21:19,481 --> 02:21:23,481

2121
02:21:23,483 --> 02:21:27,483

2122
02:21:27,484 --> 02:21:31,484
เห็นไหมคะ speed

2123
02:21:31,485 --> 02:21:35,485
นี่ เด็ก ๆ ดูนะ ต้องเลือก

2124
02:21:35,487 --> 02:21:39,487
ตัวที่เป็น speed ตัวนี้นะคะ speed

2125
02:21:39,488 --> 02:21:43,488
เสร็จแล้วอะไรต่อ

2126
02:21:43,490 --> 02:21:47,490
มีเงื่อนไขต่อครับ ค่า...

2127
02:21:47,491 --> 02:21:51,491
หรือค่าใน self_current_sprites

2128
02:21:51,493 --> 02:21:55,493
น้อยกว่าหรือเท่ากับ range

2129
02:21:55,495 --> 02:21:59,495
ของ sprite นี่ มันเริ่ม

2130
02:21:59,496 --> 02:22:03,496
0 เห็นไหมคะ แล้วก็จะ Run

2131
02:22:03,496 --> 02:22:07,496
Animation ถ้าค่าไม่จริง

2132
02:22:07,498 --> 02:22:11,498
ก็จะไป Run ไอ้นี่นะคะ ดูเงื่อนไขดี ๆ

2133
02:22:11,499 --> 02:22:15,499

2134
02:22:15,500 --> 02:22:19,500
if ค่ะ ใส่ if condition

2135
02:22:19,501 --> 02:22:23,501
if self

2136
02:22:23,503 --> 02:22:27,503
ถ้า

2137
02:22:27,505 --> 02:22:31,505
.current_sprite

2138
02:22:31,505 --> 02:22:35,505
current_sprite

2139
02:22:35,508 --> 02:22:39,508

2140
02:22:39,509 --> 02:22:43,509

2141
02:22:43,511 --> 02:22:47,511
อ๋อ เรียก function

2142
02:22:47,512 --> 02:22:51,512
inditure

2143
02:22:51,514 --> 02:22:55,514
ให้มันทำแปลงค่าน่ะค่ะ

2144
02:22:55,516 --> 02:22:59,516
ให้เป็นจำนวนเต็มนั่นเองนะคะ int

2145
02:22:59,525 --> 02:23:03,525

2146
02:23:03,526 --> 02:23:07,526
if ...

2147
02:23:07,527 --> 02:23:11,527
if condition

2148
02:23:11,528 --> 02:23:15,528
int นี่นะคะ

2149
02:23:15,529 --> 02:23:19,529
นี่ ใช้ init ตัวนี้

2150
02:23:19,531 --> 02:23:23,531
class นี่ ใช้ class ที่มันสร้างไว้ให้แล้วนี่

2151
02:23:23,533 --> 02:23:27,533
int class นี่

2152
02:23:27,534 --> 02:23:31,534
โดยที่ self

2153
02:23:31,536 --> 02:23:35,536
.current_sprite

2154
02:23:35,537 --> 02:23:39,537
ของเรานี่

2155
02:23:39,541 --> 02:23:43,541
มีค่าเท่าไร มีค่าเท่าไร

2156
02:23:43,542 --> 02:23:47,542

2157
02:23:47,544 --> 02:23:51,544
น้อยกว่า หรือเท่ากับ

2158
02:23:51,546 --> 02:23:55,546
มันจะไปเลือก class len

2159
02:23:55,548 --> 02:23:59,548
มา

2160
02:23:59,550 --> 02:24:03,550
>= นะคะ

2161
02:24:03,552 --> 02:24:07,552

2162
02:24:07,554 --> 02:24:11,554
function len

2163
02:24:11,556 --> 02:24:15,556
ด้วย

2164
02:24:15,560 --> 02:24:19,560
ในค่านี้ ก็คือค่า x ค่า y

2165
02:24:19,562 --> 02:24:23,562
ค่า len ของเรา ก็คือ

2166
02:24:23,562 --> 02:24:27,562
self sprites

2167
02:24:27,564 --> 02:24:31,564
self_sprites ที่เรากำหนด

2168
02:24:31,565 --> 02:24:35,565
ในครั้งแรก ๆ น่ะ

2169
02:24:35,566 --> 02:24:39,566
เดี๋ยวมันขึ้นมาเองล่ะ self.

2170
02:24:39,567 --> 02:24:43,567
sprites ของเรา

2171
02:24:43,570 --> 02:24:47,570
sprites statement

2172
02:24:47,570 --> 02:24:51,570

2173
02:24:51,571 --> 02:24:55,571
มัน... ถ้าจำนวนเต็มของค่านี้

2174
02:24:55,572 --> 02:24:59,572
น้อยกว่า len นี้ปุ๊บ

2175
02:24:59,572 --> 02:25:03,572
สิ่งที่จะต้องให้ทำ ก็คือ

2176
02:25:03,574 --> 02:25:07,574
ให้ current_sprite เริ่มที่ 0 แล้วให้

2177
02:25:07,576 --> 02:25:11,576
run_animation

2178
02:25:11,579 --> 02:25:15,579
โอ.เค.

2179
02:25:15,580 --> 02:25:19,580

2180
02:25:19,583 --> 02:25:23,583

2181
02:25:23,584 --> 02:25:27,584

2182
02:25:27,586 --> 02:25:31,586
= 0 แล้วก็...

2183
02:25:31,588 --> 02:25:35,588
แล้วก็อะไร

2184
02:25:35,590 --> 02:25:39,590

2185
02:25:39,591 --> 02:25:43,591
= run_animation

2186
02:25:43,595 --> 02:25:47,595
ให้กำหนดค่าของ self.run

2187
02:25:47,597 --> 02:25:51,597
Run Animation นี่

2188
02:25:51,598 --> 02:25:55,598
ให้เป็น False ให้อัปเดตค่านะคะ

2189
02:25:55,603 --> 02:25:59,603
การให้มัน Update ค่านะคะ ก็คือ

2190
02:25:59,604 --> 02:26:03,604
คืนค่าให้...

2191
02:26:03,605 --> 02:26:07,605

2192
02:26:07,612 --> 02:26:11,612
โอ.เค. นะคะ

2193
02:26:11,614 --> 02:26:15,614
เราจะได้ส่วนของ function อะไรเอ่ย

2194
02:26:15,616 --> 02:26:19,616
Function run กับ function update

2195
02:26:19,619 --> 02:26:23,619
Size ใหญ่ไปลดลงให้

2196
02:26:23,620 --> 02:26:27,620
เห็นไหมคะ function run นี่

2197
02:26:27,622 --> 02:26:31,622
เพื่อให้มันสร้าง run_animation

2198
02:26:31,623 --> 02:26:35,623
เสร็จแล้วให้ทำงานนะคะ เสร็จแล้ว

2199
02:26:35,624 --> 02:26:39,624
พอทำไปแล้วนี่ มันต้อง update oี่

2200
02:26:39,627 --> 02:26:43,627
รูปมันมี 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

2201
02:26:43,628 --> 02:26:47,628
กลับไปค่าเริ่มต้นแล้วก็เปลี่ยนค่านะคะ ก็คือ

2202
02:26:47,630 --> 02:26:51,630
update ให้มีค่าคืนค่าให้เป็น 0 นะคะ ให้

2203
02:26:51,632 --> 02:26:55,632
เป็น False

2204
02:26:55,633 --> 02:26:59,633
โอ.เค. ไหม เสร็จหรือยัง

2205
02:26:59,635 --> 02:27:03,635
ส่วนของ function run กับ function

2206
02:27:03,637 --> 02:27:07,637

2207
02:27:07,638 --> 02:27:11,638
สาว ๆ เสร็จหรือยังคะ

2208
02:27:11,640 --> 02:27:15,640
เสร็จแล้วนะ โอ.เค. อย่างนั้นไปต่อ จะได้เห็น

2209
02:27:15,642 --> 02:27:19,642
ผลงานตัวเอง สิ่งที่

2210
02:27:19,643 --> 02:27:23,643
เราจะต้องทำ ก็คือมีรูปแล้วเราจะต้อง

2211
02:27:23,644 --> 02:27:27,644
มาจะใช้คีย์ไหนให้มันวิ่ง

2212
02:27:27,646 --> 02:27:31,646
ใส่ key เข้าไปให้มัน กำหนดค่าคีย์บอร์ดให้มัน

2213
02:27:31,647 --> 02:27:35,647
คำสั่ง

2214
02:27:35,648 --> 02:27:39,648
key ของเรานั่นเองนะคะ กำหนดค่าให้ keybord

2215
02:27:39,649 --> 02:27:43,649
ที่เราจะใช้ ก็คือ Keyboard ที่

2216
02:27:43,650 --> 02:27:47,650
ลูกศรไปทางขวา โทษที ๆ

2217
02:27:47,651 --> 02:27:51,651
โทษที ๆ

2218
02:27:51,652 --> 02:27:55,652
โดยตัวแปรค่า Keyboard

2219
02:27:55,653 --> 02:27:59,653
นะคะ แล้วเรียกใช้ Module

2220
02:27:59,654 --> 02:28:03,654
pygame.key แล้วใช้ process

2221
02:28:03,656 --> 02:28:07,656
นะคะ ก็คือรับค่า

2222
02:28:07,657 --> 02:28:11,657
รับค่าการกดปุ่มนั่นเองนะคะ

2223
02:28:11,658 --> 02:28:15,658
ว่าถ้าเมื่อใดที่กดคีย์ลูกศรขวา

2224
02:28:15,659 --> 02:28:19,659
ลูกศรขวา

2225
02:28:19,661 --> 02:28:23,661
ตัวการ์ตูนเราจะ

2226
02:28:23,663 --> 02:28:27,663
วิ่งตามคำสั่งทันทีนะคะ

2227
02:28:27,664 --> 02:28:31,664
เพราะฉะนั้น ตัวนี้

2228
02:28:31,665 --> 02:28:35,665
ก็จะอยู่ตรงตำแหน่ง y นะคะ ไปที่ y Loop

2229
02:28:35,668 --> 02:28:39,668
ของเรา สิ่งที่จะใส่เพิ่ม

2230
02:28:39,669 --> 02:28:43,669
จะอยู่ตรงกับตำแหน่ง if แรก

2231
02:28:43,670 --> 02:28:47,670
ใส่ค่า key ค่ะ ตัวแปร

2232
02:28:47,671 --> 02:28:51,671
=

2233
02:28:51,673 --> 02:28:55,673
= pygame module.

2234
02:28:55,674 --> 02:28:59,674
.

2235
02:28:59,676 --> 02:29:03,676

2236
02:29:03,677 --> 02:29:07,677
.key.get_pressed()

2237
02:29:07,679 --> 02:29:11,679
.keys

2238
02:29:11,680 --> 02:29:15,680
.key key module นะ

2239
02:29:15,683 --> 02:29:19,683
.

2240
02:29:19,684 --> 02:29:23,684
สังเกตชื่อตัวแปร

2241
02:29:23,686 --> 02:29:27,686
กับชื่อ module คนละตัวนะคะ

2242
02:29:27,688 --> 02:29:31,688
.key นะคะ แล้วก็ .

2243
02:29:31,688 --> 02:29:35,688
get

2244
02:29:35,690 --> 02:29:39,690
get ที่เราเรียกใช้ ก็คือ get_pressed()

2245
02:29:39,700 --> 02:29:43,700
หรือการรับค่าปุ่มกดนั่นเอง

2246
02:29:43,701 --> 02:29:47,701
ก็คือตัวนี้นะคะ ใส่วงเล็บเข้าไป

2247
02:29:47,702 --> 02:29:51,702

2248
02:29:51,703 --> 02:29:55,703
กำหนด... ขอโทษ ๆ ทำไมไปถึงวงเล็บลงมา

2249
02:29:55,704 --> 02:29:59,704
กำหนดเงื่อนไข โดย Tab เข้าไป 1 ครั้ง

2250
02:29:59,706 --> 02:30:03,706
if if condition เรา

2251
02:30:03,708 --> 02:30:07,708
เงื่อนไขว่าถ้า

2252
02:30:07,709 --> 02:30:11,709
key ในที่นี้ คือ ชื่อตัวแปรเรานะคะ

2253
02:30:11,710 --> 02:30:15,710
=

2254
02:30:15,712 --> 02:30:19,712

2255
02:30:19,714 --> 02:30:23,714
ไม่ใช่เท่ากับสิ

2256
02:30:23,715 --> 02:30:27,715
อ๋อ ระบุค่า key เข้าไปว่า K_RIGHT

2257
02:30:27,717 --> 02:30:31,717

2258
02:30:31,718 --> 02:30:35,718
โอ.เค. ๆ

2259
02:30:35,719 --> 02:30:39,719

2260
02:30:39,720 --> 02:30:43,720
ใส่ if นะคะ

2261
02:30:43,722 --> 02:30:47,722
if keysบล

2262
02:30:47,724 --> 02:30:51,724
ก้ามปู

2263
02:30:51,726 --> 02:30:55,726
สอนเสมอว่าเวลา

2264
02:30:55,727 --> 02:30:59,727
ใส่ [ แล้วใส่ปิดมันด้วย

2265
02:30:59,728 --> 02:31:03,728
เช่นเดียวกับใส่

2266
02:31:03,729 --> 02:31:07,729
ใส่เปิดแล้วก็ปิดเพราะเดี๋ยวมันจะขึ้น

2267
02:31:07,730 --> 02:31:11,730
หรือหา Syntax ไม่เจออีก

2268
02:31:11,731 --> 02:31:15,731
key ตัวใหญ่นะคะ K_

2269
02:31:15,732 --> 02:31:19,732
R ตัวใหญ่

2270
02:31:19,733 --> 02:31:23,733
K_RIGHT

2271
02:31:23,734 --> 02:31:27,734
ปุ่มลูกศรขวา

2272
02:31:27,735 --> 02:31:31,735
ก็คือถ้า key ที่เรากดนี่

2273
02:31:31,736 --> 02:31:35,736
คือปุ่มลูกศรขวานี่

2274
02:31:35,737 --> 02:31:39,737
ให้ชื่อตัวแปรเรา

2275
02:31:39,739 --> 02:31:43,739
นะคะ knight นะคะ

2276
02:31:43,742 --> 02:31:47,742
Knight ในวงเ

2277
02:31:47,743 --> 02:31:51,743

2278
02:31:51,744 --> 02:31:55,744
Knight.run()

2279
02:31:55,747 --> 02:31:59,747
มั่วหรือเปล่านี่

2280
02:31:59,766 --> 02:32:03,766
Knight.run() ถูกแล้ว

2281
02:32:03,768 --> 02:32:07,768

2282
02:32:07,769 --> 02:32:11,769

2283
02:32:11,770 --> 02:32:15,770
ชื่อตรงนี้ ก็คือชื่อตัวแปร

2284
02:32:15,773 --> 02:32:19,773
ที่เราสร้างขึ้นมา

2285
02:32:19,774 --> 02:32:23,774
อยู่ไหนแล้ว ๆ ๆ

2286
02:32:23,775 --> 02:32:27,775

2287
02:32:27,776 --> 02:32:31,776

2288
02:32:31,779 --> 02:32:35,779
ตัวนี้นะคะ คือ ตัวนี้ตัวเดียวกัน knight.run()

2289
02:32:35,782 --> 02:32:39,782
ตัวเดียวกัน Nint.run

2290
02:32:39,783 --> 02:32:43,783
Run function

2291
02:32:43,785 --> 02:32:47,785
ใส่ไปโดนอะไรน่ะ

2292
02:32:47,787 --> 02:32:51,787
นะคะ เรียกใช้ function run นี่

2293
02:32:51,788 --> 02:32:55,788
เราจะมาเรียกใช้ function นี้

2294
02:32:55,789 --> 02:32:59,789
เพราะฉะนั้น ก็เลยเป็น Knight.run

2295
02:32:59,790 --> 02:33:03,790
ให้ knight มันวิ่ง เราไปเรียกใช้ Function

2296
02:33:03,791 --> 02:33:07,791
นี่นะคะ นี่ ๆ ๆ ๆ

2297
02:33:07,792 --> 02:33:11,792
ก็ดูด้วย ๆ ให้ตรงกัน

2298
02:33:11,794 --> 02:33:15,794
สิ่งที่จำทำต่อไป ก็คือ

2299
02:33:15,795 --> 02:33:19,795
ได้อะไร ต้องไปที่ส่วนของ

2300
02:33:19,795 --> 02:33:23,795
ยัง ๆ ๆ เด็ก ๆ ยังทดสอบไม่ได้

2301
02:33:23,797 --> 02:33:27,797
เด็ก ๆ ต้องไปเพิ่มค่าตรงตำแหน่งนี้ก่อน

2302
02:33:27,797 --> 02:33:31,797
เพราะเราข้าม

2303
02:33:31,799 --> 02:33:35,799
ตรงนี้ไป

2304
02:33:35,801 --> 02:33:39,801
ตรงส่วนของการแสดงผล

2305
02:33:39,813 --> 02:33:43,813
นะคะ เพราะเราสร้าง

2306
02:33:43,815 --> 02:33:47,815
move_sprites ไปแล้ว

2307
02:33:47,816 --> 02:33:51,816
เพราะฉะนั้น ชื่อตรงนี้นะคะ ใส่เพิ่ม

2308
02:33:51,818 --> 02:33:55,818
ตรงที่ตำแหน่งการแสดงผล

2309
02:33:55,819 --> 02:33:59,819
ของเรานี่นะคะ นี่

2310
02:33:59,821 --> 02:34:03,821
เราเพิ่งมี sceen fill

2311
02:34:03,821 --> 02:34:07,821
แต่เรายังไม่ได้เรียกนี่

2312
02:34:07,823 --> 02:34:11,823
move_sprites ตัวนี้มา

2313
02:34:11,825 --> 02:34:15,825
เพราะฉะนั้น พิมพ์ move

2314
02:34:15,826 --> 02:34:19,826
move_sprites statements

2315
02:34:19,827 --> 02:34:23,827
นะคะ ตรงส่วนของ

2316
02:34:23,829 --> 02:34:27,829
การแสดงผลนะคะ move_sprites

2317
02:34:27,833 --> 02:34:31,833
แล้วตามด้วย drw

2318
02:34:31,834 --> 02:34:35,834
screen ให้สร้าง screen

2319
02:34:35,835 --> 02:34:39,835
อีกอันหนึ่ง move_sprite

2320
02:34:39,837 --> 02:34:43,837
เห็นไหมคะ เรียก function update ขอโทษ ๆ

2321
02:34:43,839 --> 02:34:47,839
เรียกผิด เรียก function update

2322
02:34:47,840 --> 02:34:51,840
เรียกใช้ pygame display

2323
02:34:51,842 --> 02:34:55,842
เลือก Function flip

2324
02:34:55,843 --> 02:34:59,843
การแสดงผลเข้าไปเพิ่มอีก 3 ตัวนะคะ

2325
02:34:59,844 --> 02:35:03,844
move_sprite

2326
02:35:03,845 --> 02:35:07,845
sprites

2327
02:35:07,846 --> 02:35:11,846
ตามด้วย Function อะไรนะ

2328
02:35:11,847 --> 02:35:15,847
ลืมเองอีก

2329
02:35:15,849 --> 02:35:19,849
sprites

2330
02:35:19,854 --> 02:35:23,854

2331
02:35:23,856 --> 02:35:27,856
ลืมเองอีก . เยอะเกิน

2332
02:35:27,857 --> 02:35:31,857
ลืมเองอีก .draw draw function

2333
02:35:31,859 --> 02:35:35,859
ในนั้นใส่ค่า

2334
02:35:35,860 --> 02:35:39,860
ของ...

2335
02:35:39,862 --> 02:35:43,862
draw อะไร draw ตามด้วย surface

2336
02:35:43,863 --> 02:35:47,863
ตามด้วย

2337
02:35:47,865 --> 02:35:51,865
s

2338
02:35:51,866 --> 02:35:55,866
ก็

2339
02:35:55,868 --> 02:35:59,868
คือ ตัวนี้เรียกตัวนี้มา นี่ ๆ

2340
02:35:59,869 --> 02:36:03,869

2341
02:36:03,870 --> 02:36:07,870
ต่อด้วย move อีกเหมือนเดิม

2342
02:36:07,871 --> 02:36:11,871
sprites ของเรานะคะ แต่เป็น .update

2343
02:36:11,873 --> 02:36:15,873

2344
02:36:15,874 --> 02:36:19,874
ในวงเล็บ...

2345
02:36:19,875 --> 02:36:23,875
ตามด้วย ()

2346
02:36:23,876 --> 02:36:27,876
0.25

2347
02:36:27,878 --> 02:36:31,878
ใส่ค่าให้การ update

2348
02:36:31,879 --> 02:36:35,879
อยู่ที่ 0.25

2349
02:36:35,881 --> 02:36:39,881
แล้วก็เรียกใช้ module pygsam

2350
02:36:39,883 --> 02:36:43,883
display module pygame.

2351
02:36:43,884 --> 02:36:47,884
.

2352
02:36:47,885 --> 02:36:51,885
display

2353
02:36:51,887 --> 02:36:55,887
แล้วก็ .

2354
02:36:55,889 --> 02:36:59,889
flip เลือก flip function นะคะ

2355
02:36:59,891 --> 02:37:03,891
flip Function

2356
02:37:03,892 --> 02:37:07,892
เราจะต้อง...

2357
02:37:07,894 --> 02:37:11,894
กำหนดการแสดงผล 3 ตัวนี้เพิ่ม

2358
02:37:11,894 --> 02:37:15,894
เข้ามา

2359
02:37:15,895 --> 02:37:19,895
ถ้าเสร็จแล้วให้กด

2360
02:37:19,896 --> 02:37:23,896
CTrl + B เพื่อ

2361
02:37:23,896 --> 02:37:27,896
ทดสอบโปรแกรม

2362
02:37:27,898 --> 02:37:31,898
ดูตรงนี้ โอ.เค. ไหม

2363
02:37:31,899 --> 02:37:35,899
ขยายขนาดให้

2364
02:37:35,901 --> 02:37:39,901
3 บรรทัดนี้ โอ.เค. ไหม

2365
02:37:39,903 --> 02:37:43,903
ถ้าใส่ส่วนแสดงผลเสร็จ ลองกด

2366
02:37:43,904 --> 02:37:47,904

2367
02:37:47,905 --> 02:37:51,905
ก็มาแล้ว

2368
02:37:51,906 --> 02:37:55,906
ไม่ Error รูปหาย ๆ

2369
02:37:55,908 --> 02:37:59,908
ลืมเรียกอะไร เดี๋ยวนะ

2370
02:37:59,910 --> 02:38:03,910
เลือก move แล้ว เลือก sprites แล้ว

2371
02:38:03,911 --> 02:38:07,911
add knight ขนาด knight เล็กไห

2372
02:38:07,913 --> 02:38:11,913
ขอรูป Knight ดูนะ

2373
02:38:11,915 --> 02:38:15,915

2374
02:38:15,916 --> 02:38:19,916

2375
02:38:19,918 --> 02:38:23,918

2376
02:38:23,920 --> 02:38:27,920
อะไรหายไป ยังหาไม่เจอ

2377
02:38:27,924 --> 02:38:31,924

2378
02:38:31,926 --> 02:38:35,926
เดี๋ยวนะ ตรงการแสดงผลไม่แสดง

2379
02:38:35,928 --> 02:38:39,928
อะไร ขาดตัวไหนไปตัวหนึ่ง

2380
02:38:39,928 --> 02:38:43,928

2381
02:38:43,930 --> 02:38:47,930
flip ใน flip

2382
02:38:47,932 --> 02:38:51,932

2383
02:38:51,933 --> 02:38:55,933
Dino run

2384
02:38:55,934 --> 02:38:59,934

2385
02:38:59,935 --> 02:39:03,935

2386
02:39:03,937 --> 02:39:07,937
moveing_sprites

2387
02:39:07,939 --> 02:39:11,939
add Dino เข้าไป

2388
02:39:11,940 --> 02:39:15,940
นะครับ ขอเช็กโค้ดตัวเองก่อน

2389
02:39:15,942 --> 02:39:19,942
อย่างนั้นเดี๋ยวเรา

2390
02:39:19,943 --> 02:39:23,943
ขอบคุณพี่ล่ามก่อน เพราะว่าส่วนของ

2391
02:39:23,944 --> 02:39:27,944
การ Code เสร็จแล้วเหลือทดสอบ เราจะ

2392
02:39:27,944 --> 02:39:31,944
ขอบคุณพี่ล่ามก่อนนะคะ ขอบพระคุณค่ะ

2393
02:39:31,947 --> 02:39:35,947
สำหรับวันนี้จบเพียงเท่านี้นะคะ

2394
02:39:35,948 --> 02:39:39,948
โอ.เค. ทีนี้

2395
02:39:39,949 --> 02:39:43,949
มาดู Code เราว่าอะไรที่หายไป

2396
02:39:43,951 --> 02:39:47,951

2397
02:39:47,952 --> 02:39:51,952

2398
02:39:51,954 --> 02:39:55,954

2399
02:39:55,956 --> 02:39:59,956

2400
02:39:59,958 --> 02:40:03,958

2401
02:40:03,960 --> 02:40:07,960

2402
02:40:07,962 --> 02:40:11,962

2403
02:40:11,964 --> 02:40:14,965

2404
02:40:15,966 --> 02:40:18,969

2405
02:40:19,968 --> 02:40:22,971

2406
02:40:23,969 --> 02:40:23,970

2407
02:40:27,972 --> 02:40:27,974

2408
02:40:35,980 --> 02:40:35,985

2409
02:40:31,974 --> 02:40:31,979


