﻿1
00:00:18,771 --> 00:00:18,772

2
00:00:18,772 --> 00:00:22,755

3
00:00:22,755 --> 00:00:24,419

4
00:00:24,419 --> 00:00:24,451

5
00:00:24,451 --> 00:00:28,451
(อาจารย์สุธิรา) สวัสดีค่ะ (ล่าม) สวัสดีค่ะ (อาจารย์สุธิรา)

6
00:00:32,703 --> 00:00:34,755
โอเคค่ะ ได้ยินนะคะ

7
00:00:34,755 --> 00:00:38,755
เดี๋ยวเราจะมาทำต่อนะคะ จากสัปดาห์ที่แล้ว สัปดาห์ที่แล้วเราลง

8
00:00:51,055 --> 00:00:50,661
ตัวเกม

9
00:00:46,158 --> 00:00:49,308
เราไปแค่ 1 ตัว แต่ความจริง ตัวเกมเราที่จะใช้นี่ ก็คือถ้าน้อง

10
00:00:49,308 --> 00:00:53,308
เดินอย่างนี้นะคะ มันก็จะมีหลายท่าเหมือนรูปเล็ก ๆ

11
00:00:53,854 --> 00:00:57,854
อย่างนี้เห็นไหม ท่ามันก็เลยจะเปลี่ยน

12
00:01:02,774 --> 00:01:06,774
ก็เลยให้ไปค้น Sprite sheet

13
00:01:16,859 --> 00:01:16,177
ใครยังไม่มี

14
00:01:05,672 --> 00:01:09,672
ภาพแบบนี้ยกมือนะคะ ทีนี้โฟลเดอร์อย่าลืม อย่าลืม

15
00:01:23,311 --> 00:01:21,686
โฟลเดอร์

16
00:01:07,940 --> 00:01:11,940
มันจะต้องอยู่ในโฟลเดอร์ที่ Drive C

17
00:01:17,892 --> 00:01:18,494
นะ แล้วก็โฟลเดอร์ ชื่อ Drive ที่เป็นชื่อของเด็ก ๆ นะคะ

18
00:01:18,494 --> 00:01:22,494
นี่เพราะว่า

19
00:01:22,934 --> 00:01:26,934
ไฟล์ pygame

20
00:01:34,784 --> 00:01:38,784
ที่เรา Coding จะอยู่ในนี้ด้วยเหมือนกัน ก็คือตำแหน่งไฟล์ที่เราจะใช้โค้ดกับรูปภาพมันจะ

21
00:01:39,638 --> 00:01:43,638
อยู่ในที่เก็บเดียวกัน โฟลเดอร์เดียวกันนะคะ พร้อมหรือยัง

22
00:01:45,800 --> 00:01:49,800
ถ้าพร้อมแล้ว สิ่งแรกที่เราจะทำนะคะ

23
00:01:50,422 --> 00:01:54,422
ให้

24
00:01:55,110 --> 00:01:59,110
เปิด Sublime เหมือนเดิม

25
00:02:10,735 --> 00:02:08,681

26
00:02:04,451 --> 00:02:05,273
เปิดไฟล์ Sublime Text เก่าเราขึ้นมาเลย

27
00:02:05,273 --> 00:02:08,488
ใครอยู่ไหนนะคะ

28
00:02:08,488 --> 00:02:12,488

29
00:02:22,770 --> 00:02:26,770
เปิด Sublime แล้วนะคะ แล้ว...

30
00:02:35,722 --> 00:02:44,571

31
00:02:23,878 --> 00:02:25,603

32
00:02:25,603 --> 00:02:28,098

33
00:02:28,098 --> 00:02:32,098

34
00:02:33,985 --> 00:02:36,535
ทีนี้เด็ก ๆ ดูนะคะ

35
00:02:36,535 --> 00:02:40,535
ข้อแรกสิ่งที่เราจะทำ ก็คือเราจะ

36
00:02:43,906 --> 00:02:47,906
ไป import module ขึ้นมาอีก 1 ตัว

37
00:02:52,571 --> 00:02:56,571
นะ คือ ตอนเดิมนี่โมดูลที่เรา import คือ

38
00:02:57,916 --> 00:02:58,341
โมดูล pygame แต่ทีนี้จะมีเพิ่มขึ้นมา 1 ตัว

39
00:02:58,341 --> 00:03:02,341
นะคะ แล้วลำดับที่ 2 เราก็จะมาตั้งค่า พอเราไป

40
00:03:19,616 --> 00:03:18,274
import

41
00:03:10,820 --> 00:03:12,358
มา เราก็ต้องมาตั้งค่าเพื่อ... เพื่อจะเรียกใช้โมดูลตัวใหม่เรา

42
00:03:12,358 --> 00:03:16,358
นี่นะคะ จากนั้นเราก็ไปกำหนดการแสดงผล

43
00:03:17,845 --> 00:03:21,845
ให้โมดูลตัวใหม่นี้ว่ามันแสดงผล

44
00:03:26,824 --> 00:03:28,799
นะคะ มาดูโค้ดกัน คำสั่งแรกคือ import pygame

45
00:03:28,799 --> 00:03:32,799
ใช่ไหม เรา import pygame แล้วเราคั่น

46
00:03:34,945 --> 00:03:38,945
ก็คือเราไม่ต้องไปพิมพ์คำว่า "import" ใหม่ คั่นด้วย

47
00:03:41,785 --> 00:03:42,981
เครื่องหมายโคลอนนะ แล้วก็ตามด้วย sys

48
00:03:42,981 --> 00:03:46,981
s-y-s มาจาก System ตอนนี้เรา

49
00:03:47,807 --> 00:03:48,184
import module ที่ชื่อว่า system

50
00:03:48,184 --> 00:03:49,098
นะคะ

51
00:03:49,098 --> 00:03:53,098
ตัวนี้นะคะ

52
00:04:05,729 --> 00:04:08,451
สี

53
00:03:52,195 --> 00:03:56,195
นี่ไม่ได้

54
00:04:00,495 --> 00:04:04,495
ไม่กะพริบ เอาใหม่ เลือกตัว

55
00:04:08,318 --> 00:04:11,356
สี... สีอะไร นี่นะคะ เราจะ

56
00:04:11,356 --> 00:04:15,356
import module ที่ชื่อ pygame,

57
00:04:21,969 --> 00:04:25,969
system ทีนี้พอ import Module นี้เสร็จนะคะ module นี้จะเอาไว

58
00:04:30,843 --> 00:04:33,208
มันจะช่วยในเรื่องของเวลานะคะ system ก็คือตัวระบบนั่นเอง

59
00:04:33,208 --> 00:04:36,339
นี่เห็นไหมค่าทั่วไปที่จะตั้ง

60
00:04:36,339 --> 00:04:40,339
clock = pygame.time

61
00:04:46,851 --> 00:04:47,678
.clock นะคะ จะกำหนดระคะเวลา แล้ว

62
00:04:47,678 --> 00:04:51,678
พอในส่วนของการแสดงผล เรียกใช้ตัวแปรที่ชื่อ clock เราสร้าง

63
00:04:55,901 --> 00:04:59,901
ตัวแปรชื่อ clock เพื่อเก็บเวลานี่ clock

64
00:05:02,859 --> 00:05:06,859
ในวงเล็บ 60 ก็คือให้ระยะเวลาการทำงานมันอยู่ที่ประมาณ 60 วินาทีนะคะ ในคอมพิวเตอร์

65
00:05:08,859 --> 00:05:12,449
ไม่ใช่ 60 นาทีนะ 60 วินาทีนะเด็ก ๆ

66
00:05:12,449 --> 00:05:16,449
เพราะฉะนั้น เปิด sublime เราขึ้นมา

67
00:05:16,641 --> 00:05:20,641
นะคะ แล้วไปที่ตำแหน่งที่ import ก็คือตำแหน่งแรก บรรทัดนี้นะ

68
00:05:30,123 --> 00:05:29,631

69
00:05:19,352 --> 00:05:21,245
นะคะ

70
00:05:21,245 --> 00:05:25,245
ใส่อะไรคะ : ใช่ไหมคะ

71
00:05:34,323 --> 00:05:38,323
แล้วตามด้วยโมดูลที่ชื่อว่า system หรือ sys s-y-s เห็นนะคะ

72
00:05:39,549 --> 00:05:43,549
เห็นไหม เพระาคำสั่ง import

73
00:05:49,988 --> 00:05:50,969
นะคะ Import Module นี่จะอยู่ที่บรรทัดแรกเสมอเลย เพราะ

74
00:05:50,969 --> 00:05:54,969
การทำงานของโปรแกรมนี่ ก็คือมันจะอ่านจากบนลงล่าง เพราะฉะนั้น เราอยากจะให้มัน

75
00:05:59,571 --> 00:06:03,571
ไปทำอะไรก่อน เราต้องเอามันไปไว้ข้างบน

76
00:06:04,460 --> 00:06:08,460
ว่าอย่างนั้นเถอะ เมื่อได้โมดูลนี้แล้ว ส่วนต่อมาจะอยู่ที่ส่วนนี้

77
00:06:18,541 --> 00:06:16,540
นะคะ

78
00:06:06,825 --> 00:06:10,825
กำหนดค่าทั่วไป ตัวที่ในหมายเลข 2

79
00:06:10,989 --> 00:06:14,989
เด็ก ๆ เห็นนะ

80
00:06:26,107 --> 00:06:23,876
นี่

81
00:06:14,530 --> 00:06:18,530
ก็คือเพิ่ม clock. เอ้ย

82
00:06:22,640 --> 00:06:25,192
clock = นะคะ

83
00:06:25,192 --> 00:06:29,192
เท่ากับนะคะ ตรงนี้ pygame.time

84
00:06:29,323 --> 00:06:33,323
เราจะเรียกใช้ library time

85
00:06:38,889 --> 00:06:40,069
นั่นเองนะคะ เพราะฉะนั้น เราก็เลยต้องเปิดโมดูล

86
00:06:40,069 --> 00:06:42,665
system ขึ้นมานะคะ clock

87
00:06:42,665 --> 00:06:46,665
= pygame.time.Clock ในวงเล็บ

88
00:06:48,229 --> 00:06:52,229
พร้อมนะคะ ใน sublime จะอยู่บรรทัดที่ต่อจากอะไร ดูดี ๆ pygame.init()

89
00:07:03,670 --> 00:07:02,005
เห็นไหม

90
00:06:54,659 --> 00:06:56,011
ตำแหน่งของการตั้งค่าทั่วไปนะคะ

91
00:06:56,011 --> 00:06:57,187

92
00:06:57,187 --> 00:07:01,187
ทำไมมันลบล่ะ

93
00:07:02,520 --> 00:07:06,520
ตรงส่วนนี้เดี๋ยวนะคะ ตรงส่วนนี้

94
00:07:08,883 --> 00:07:12,883
จะแก้ว่าเป็น...

95
00:07:23,257 --> 00:07:20,319

96
00:07:11,378 --> 00:07:12,399

97
00:07:12,399 --> 00:07:16,344

98
00:07:16,344 --> 00:07:20,123

99
00:07:20,123 --> 00:07:24,123

100
00:07:25,410 --> 00:07:28,120

101
00:07:28,120 --> 00:07:32,120

102
00:07:32,473 --> 00:07:36,473

103
00:07:46,919 --> 00:07:47,954

104
00:07:47,954 --> 00:07:48,292

105
00:07:48,292 --> 00:07:52,233

106
00:07:52,233 --> 00:07:56,233
จะเตือนเด็ก ๆ เสมอว่าให้เราใส่ #

107
00:08:06,489 --> 00:08:04,341
เพื่อ

108
00:08:00,659 --> 00:08:01,379
อธิบายว่าตรง Coding นี้

109
00:08:01,379 --> 00:08:02,913
นะคะ เราใช้ทำอะไร เราจะได้รู้ว่า อ๋อ

110
00:08:02,913 --> 00:08:06,913
คำสั่งนี้นะคะ มันเป็นการสั่งให้

111
00:08:11,763 --> 00:08:15,763
นำเข้าโมดูล ซึ่งโมดูลที่เรานำเข้า ก็คือ pygame

112
00:08:18,560 --> 00:08:22,560
นะคะ แล้วก็ sys 2 ตัวนี้นั่นเองนะคะ เสร็จแล้วในส่วนของการตั้งค่าทั่วไป ก็คือ pygame

113
00:08:25,454 --> 00:08:29,454
.init นี่ มันเรียกใช้

114
00:08:38,262 --> 00:08:35,879

115
00:08:30,936 --> 00:08:34,936
pygame โมดูล pygame

116
00:08:40,647 --> 00:08:39,680
และอีกตัวหนึ่ง

117
00:08:32,365 --> 00:08:32,748
อันดับแรกประกาศตัวแปรที่ชื่อว่า

118
00:08:32,748 --> 00:08:36,748
clock

119
00:08:36,854 --> 00:08:40,854
ขอโทษ C นะคะ

120
00:08:42,601 --> 00:08:46,601
พิมพ์ด้วย c-l-o-c-k clock ที่แปลว่า

121
00:08:50,279 --> 00:08:50,644
นาฬิกาน่ะลูก วิธีการประกาศตัวแปร ก็คือ

122
00:08:50,644 --> 00:08:54,644
ชื่อตัวแปรตามด้วยเครื่องหมายเท่ากับ

123
00:08:58,691 --> 00:09:02,691
กดวรรคนะคะ กด Spacebar แล้วก็ใส่เครื่องหมาย = แล้วก็กด Spacebar อีก 1 ครั้ง

124
00:09:06,945 --> 00:09:10,945
แล้วก็พิมพ์ libary.pygame.time

125
00:09:13,714 --> 00:09:14,705
พิมพ์ตัว p ปุ๊บนะคะ

126
00:09:14,705 --> 00:09:18,705
คลิกเลือก pygame บอกแล้วว่าเราจะไม่พิมพ์ยาว

127
00:09:19,137 --> 00:09:23,137
เพราะ Sublime มันจะขึ้นตัวโค้ดที่เราเขียนไปแล้วหรือตัวอะไรก็แล้วแต่

128
00:09:23,964 --> 00:09:27,964
เราก็มาเลือกเอานะคะ

129
00:09:28,841 --> 00:09:32,841
. นะคะ t-i-m-e time

130
00:09:38,294 --> 00:09:40,279
แล้วก็ .clock อีกทีหนึ่ง เลือก clock

131
00:09:40,279 --> 00:09:43,824
นะคะ เห็นไหม มันจะช่วยให้เรา

132
00:09:43,824 --> 00:09:47,824
ไม่ไปพิมพ์ผิด บอกให้รู้ว่าเราจะใช้ตัวแปรตัวนี้

133
00:10:06,978 --> 00:10:04,616

134
00:09:54,971 --> 00:09:55,658
แล้วก็ใส่วงเล็บ เห็นไหมคะ นี่มันจะไม่มีปัญหา

135
00:09:55,658 --> 00:09:59,658
ว่าพิมพ์ตัว o เป็นตัว a แบบนี้

136
00:10:16,328 --> 00:10:20,328
บางทีเด็ก

137
00:10:23,272 --> 00:10:20,223
ๆ

138
00:10:05,259 --> 00:10:05,945
มองแล้วดันเห็นไม่ชัด ไม่ขยาย

139
00:10:05,945 --> 00:10:09,945
นะคะ ตรงนี้คือส่วนของ

140
00:10:11,513 --> 00:10:14,354
การตั้งค่าทั่วไป

141
00:10:14,354 --> 00:10:18,354
ใครยังไม่เสร็จบรรทัดนี้ ทำให้เสร็จนะคะ

142
00:10:22,848 --> 00:10:24,308
ไม่อย่างนั้นไปขั้นตอนต่อไปไม่ได้

143
00:10:24,308 --> 00:10:28,308
นะ ตอนนี้เรา Import แล้ว แล้วเรามาตั้งค่า

144
00:10:30,321 --> 00:10:34,321
กำหนดค่าให้มัน ก็คือให้เป็นตัวแปร

145
00:10:35,450 --> 00:10:38,762
ที่ชื่อว่า clock ทีนี้เราจะไปเรียนใช้งาน

146
00:10:38,762 --> 00:10:41,209

147
00:10:41,209 --> 00:10:45,193

148
00:10:45,193 --> 00:10:49,193

149
00:10:58,985 --> 00:11:02,985

150
00:11:06,989 --> 00:11:10,212
เราจะไปที่ตำแหน่งท้าย ๆ แสดงผล

151
00:11:10,212 --> 00:11:14,212
จะอยู่ประมาณตรง... เดี๋ยวนะ

152
00:11:15,735 --> 00:11:16,530

153
00:11:16,530 --> 00:11:20,361

154
00:11:20,361 --> 00:11:24,361
เอาไปไว้ท้าย ๆ ก่อน

155
00:11:38,933 --> 00:11:40,104

156
00:11:27,421 --> 00:11:31,421
นี่ ๆ ๆ แถว ๆ พวกนี้นี่ แถว screen.blit

157
00:11:37,123 --> 00:11:39,738
อะไรพวกนี้นะ อย่างนั้นเดี๋ยว

158
00:11:39,738 --> 00:11:43,738
ใส่... ใส่ไอ้นี่ให้ก่อนนะคะ ใส่ # ก่อน

159
00:12:01,826 --> 00:12:00,961

160
00:11:50,319 --> 00:11:54,319
ใส่ # เข้าไป

161
00:11:54,670 --> 00:11:58,670
ตรงนี้ส่วนของการแสดงผลนะ คั่นส่วนไว้จะได้รู้

162
00:11:58,981 --> 00:12:02,657
นะคะ

163
00:12:02,657 --> 00:12:06,657
สังเกตตรงการแสดงผลเรา เพราะ screen.blit

164
00:12:22,995 --> 00:12:25,974

165
00:12:14,322 --> 00:12:18,322
ให้มันแสดงภาพพื้นหลังเรานะคะ ความจริงตัวเดียวก็ได้นะนี่ ลบออกก็ได้

166
00:12:33,371 --> 00:12:34,221

167
00:12:19,855 --> 00:12:21,639

168
00:12:21,639 --> 00:12:25,639
ลบตัวนี้

169
00:12:27,180 --> 00:12:31,180
ได้เลยนะนี่ เดี๋ยวค่อยมาลบนะคะ ไล่ลบ

170
00:12:35,429 --> 00:12:39,429
เพราะฉะนั้น คำสั่งที่ 3 ก็คือให้... เดี๋ยวนะ

171
00:12:41,688 --> 00:12:44,190
เราจะ... นี่นะคะ ตรงส่วนของการแสดง

172
00:12:44,190 --> 00:12:45,998
ผลที่บอก ก็คือเราจะเรียก

173
00:12:45,998 --> 00:12:49,998
ตัวแปร clock นะคะ clock.tick นี่ แล้ว

174
00:12:56,794 --> 00:13:00,630
ระบุ ระบุว่าเวลาน่ะ เวลาที่ให้มันทำงานนี่อยู่ที่ประมาณ

175
00:13:00,630 --> 00:13:04,142
60 วินาทีนะคะ วิ

176
00:13:04,142 --> 00:13:08,142
นาทีนะคะ ไม่ใช่นาที เพราะฉะนั้น ตำแหน่ง

177
00:13:09,610 --> 00:13:13,610
ก็จะอยู่ตรงเมื่อกี้ที่มาร์กไว้นะ

178
00:13:15,167 --> 00:13:15,510
การแสดงผล ก็คือตรงนี้นะคะ อย่ากด

179
00:13:15,510 --> 00:13:19,510
Spacebar กด Tab ให้ไปตรงกับ

180
00:13:22,398 --> 00:13:26,398
ตำแหน่ง screen บอกแล้วนะคะ เพราะบางคนจะติด

181
00:13:37,372 --> 00:13:35,243
พอ

182
00:13:25,143 --> 00:13:29,143
เห็นย่อหน้าที่ 2 มันวรรคนี่

183
00:13:30,135 --> 00:13:34,135
ใน sublime มันจะไม่ค่อยใช้วรรค ใช้

184
00:13:36,479 --> 00:13:39,402
ระหว่างคำ แต่ว่าคำย่อหน้านี่เราจะใช้ Tab

185
00:13:39,402 --> 00:13:39,442
นะคะ เราก็เรียกใช้ clock พิมพ์

186
00:13:39,442 --> 00:13:43,442
c ปุ๊บ เลือก clock

187
00:13:46,096 --> 00:13:46,200
ของเรานะคะ แล้วก็ตามด้วย .

188
00:13:46,200 --> 00:13:48,476

189
00:13:48,476 --> 00:13:52,476

190
00:13:54,064 --> 00:13:58,064
memory ไม่ดีนะคะ

191
00:14:04,742 --> 00:14:07,742
จำไม่ได้ค่ะ ขอบอก สมงสมองไปหมด

192
00:14:07,742 --> 00:14:11,742
อากาศเย็น สกลนครหนาวนะคะ

193
00:14:12,780 --> 00:14:16,592
บอกเลยว่าหนาว เด็ก ๆ พากัน

194
00:14:16,592 --> 00:14:20,592
ไม่มานี่ t-i... tick

195
00:14:33,279 --> 00:14:31,750
นี่

196
00:14:24,159 --> 00:14:25,617
เป็นคำสั่งใน library นั่นเองนะคะ

197
00:14:25,617 --> 00:14:28,689
แล้วก็ตามด้วยวงเล็บ ใส่ 60

198
00:14:28,689 --> 00:14:32,689
ตัวเดิมน่ะ 60 เดี๋ยวตัวเลข

199
00:14:36,871 --> 00:14:40,871
เราแก้ได้ ให้นึกถึงนะ ถ้าเราลอง Run โปรแกรมแล้ว

200
00:14:41,546 --> 00:14:41,882
ตัวเกมเรามันวิ่งไปเกินไป เราก็ไปเพิ่ม

201
00:14:41,882 --> 00:14:43,976
เวลาให้มัน แต่ถ้ามันวิ่งช้า 60 แล้วมันช้า

202
00:14:43,976 --> 00:14:47,976
เราก็

203
00:14:51,152 --> 00:14:55,152
ลดเวลาลงนะคะ ก็คือให้นึกถึงน่ะ เวลา

204
00:14:55,985 --> 00:14:58,441
1 วินาที 2 วินาที 3 วินาที 1 คือ เพิ่มใช่ไหม

205
00:14:58,441 --> 00:15:02,441
พอ 1 มันเร็วไปเราก็ต้องเพิ่มให้มันช้า

206
00:15:05,231 --> 00:15:09,231
ก็ต้องเพิ่ม แต่ถ้ามันช้าเราต้องลด ลดตัวเลข

207
00:15:10,816 --> 00:15:14,816
ลงนะคะ หลักการ นี่คือเราจะได้ ยังไม่ Run นะคะ เพราะตัวที่เรา Run

208
00:15:16,584 --> 00:15:17,786
ถ้าเรากดมันก็จะไม่แสดงผลอะไรใด ๆ ทั้งสิ้น

209
00:15:17,786 --> 00:15:18,334
นะคะ

210
00:15:18,334 --> 00:15:22,334
ยังไม่กด Run นะคะ ไปทำต่อ เรา

211
00:15:23,865 --> 00:15:27,865
ยังเขียนโค้ดไม่เสร็จ อย่าลืมว่าโค้ดไม่ได้มีแค่ 3 บรรทัด

212
00:15:32,998 --> 00:15:33,750
แน่นอนนะคะ กดผิด

213
00:15:33,750 --> 00:15:33,846
อันอีก ไปไสล่ะ

214
00:15:33,846 --> 00:15:36,264

215
00:15:36,264 --> 00:15:40,264

216
00:15:40,311 --> 00:15:44,311
จะเอาตัวชี้ออก

217
00:15:44,976 --> 00:15:48,976
t ถัดไปนะคะ

218
00:15:52,909 --> 00:15:56,272

219
00:15:56,272 --> 00:16:00,272

220
00:16:05,935 --> 00:16:06,158

221
00:16:06,158 --> 00:16:10,158
ลำดับ

222
00:16:13,587 --> 00:16:17,587
ต่อมานะคะ เรา

223
00:16:30,762 --> 00:16:31,751

224
00:16:15,223 --> 00:16:19,223
กำหนดไอ้นี่ไปเรียบร้อยแล้วนะ

225
00:16:20,329 --> 00:16:24,329
ข้ามนะคะ เราตั้งค่าหน้าจอเกมเรา

226
00:16:30,063 --> 00:16:34,063
ตั้งไปแล้ว set mode หรือ

227
00:16:34,557 --> 00:16:38,557

228
00:16:41,367 --> 00:16:42,905
เรา

229
00:16:42,905 --> 00:16:46,905
จะมาทำ Loop นะคะ มาทำ Loop ให้เขา

230
00:16:59,376 --> 00:16:57,872
เราทำ

231
00:16:50,905 --> 00:16:52,958
ไปแล้ว เดี๋ยวจะข้ามส่วนนี้

232
00:16:52,958 --> 00:16:56,478
เพราะเรามาทำต่อจากอันเดิมนะ

233
00:16:56,478 --> 00:16:58,404
นี่ ๆ ๆ เราจะ

234
00:16:58,404 --> 00:17:02,404
ใส่ moving sprite เข้าไปได้นี่นะคะ

235
00:17:07,416 --> 00:17:08,508
เราต้องไปตรงนี้ก่อน

236
00:17:08,508 --> 00:17:12,282

237
00:17:12,282 --> 00:17:16,282

238
00:17:16,343 --> 00:17:20,343
เราจะมาสร้าง class ให้ก่อน สร้าง

239
00:17:26,304 --> 00:17:30,304
class เพื่อ... เพื่อที่จะทำอะไร

240
00:17:30,894 --> 00:17:32,451
จำได้นะ ตัวเกมบอกแล้ว ในหนก่อน

241
00:17:32,451 --> 00:17:36,417
เราใส่เข้าไปแค่ตัวเดียว แต่ทีนี้เราจะเอาน้อง

242
00:17:36,417 --> 00:17:40,417
มาทั้งเซ็ตเลย น้องการ์ตูนเรามาทั้งเซ็ต

243
00:17:42,854 --> 00:17:46,821
เลยนะคะ เพราะฉะนั้น

244
00:17:46,821 --> 00:17:50,821
เราจะต้องสร้าง class ให้น้อง เพื่อจะเรียกใช้

245
00:17:53,953 --> 00:17:57,609
เราจะได้เรียกตามชื่อ class ครั้งเดียวพอจบนะคะ ทีนี้ตอนจะสร้าง

246
00:17:57,609 --> 00:18:01,609
class นี่นะคะ รูปแบบ ก็คือ

247
00:18:05,157 --> 00:18:09,157
เราจะต้องพิมพ์คำว่า "class" แล้วก็ตามด้วยชื่อของ class

248
00:18:10,203 --> 00:18:10,425
คือ ในการเขียนโปรแกรมนี่ การสร้าง class จะช่วยให้เราไม่ต้อง

249
00:18:10,425 --> 00:18:14,425
เขียนโปรแกรมใหญ่มาก ๆ หลาย ๆ ครั้ง

250
00:18:19,019 --> 00:18:20,342
หรือเขียนเรียกใช้ตัวอะไรก็แล้วแต่นะคะ

251
00:18:20,342 --> 00:18:24,342
ตัวรูปภาพนี่หลาย ๆ ครั้ง เหมือนใน class นี้

252
00:18:27,376 --> 00:18:30,919
รูปมันมีหลายรูปน่ะ ไม่อย่างนั้นเราต้องไปเรียกรูปหลายรูปเลย

253
00:18:30,919 --> 00:18:34,919
ว่าอย่างนั้นเถอะ เราจะเรียกแค่ตรงใน class

254
00:18:39,158 --> 00:18:43,158
ครั้งเดียวนะคะ แล้วก็ใส่ : พอเสร็จชื่อ class ปุ๊บนี่จะต้องระบุ :

255
00:18:54,551 --> 00:18:53,346
เข้าไป

256
00:18:45,023 --> 00:18:48,617
นะคะ แล้วก็ใส่ statments เงื่อนไขอะไร

257
00:18:48,617 --> 00:18:50,461
ตามหลังมา พร้อมนะคะ เราจะไปต่อนะคะ ดูดี ๆ นะคะ

258
00:18:50,461 --> 00:18:54,461
ชื่อ class จำไว้เลยนะคะ ถ้าเมื่อไรเมื่อให้สร้าง

259
00:18:55,408 --> 00:18:59,408
class เด็ก ๆ

260
00:19:03,064 --> 00:19:07,064
จะต้องพิมพ์ชื่อ class

261
00:19:08,066 --> 00:19:12,066
ตัวแรกด้วยตัวพิมพ์ใหญ่ เพราะฉะนั้น เตรียมกด Caps lock

262
00:19:14,732 --> 00:19:16,405
นะคะ นะคะ เมื่อเราสร้าง class เสร็จ ลำดับ

263
00:19:16,405 --> 00:19:20,405
ต่อมา เราจะมาสร้าง method นะคะ

264
00:19:22,515 --> 00:19:26,515
ให้ class ของเรานั่นเองนะคะ method

265
00:19:29,675 --> 00:19:33,601
method inite

266
00:19:33,601 --> 00:19:37,601
ก่อนหน้าเราจะเปิดหน้านี้ไว้นะคะ เริ่มค่ะ ไปที่ Sublime

267
00:19:40,587 --> 00:19:44,587
เหมือนเดิม ทีนี้เขาบอกว่าอยากให้มันต้องอยู่ข้างบนเสมอเลย class มันจะอยู่

268
00:19:46,272 --> 00:19:50,272
ตรงส่วนที่เมื่อกี้นะ

269
00:19:52,209 --> 00:19:56,209
ในที่โค้ดจะเห็นว่า class จะอยู่ต่อจากส่วนของ import

270
00:20:03,185 --> 00:20:07,185
นะคะ ใส่ # ค่ะ เพื่อจะได้รู้ว่า

271
00:20:14,865 --> 00:20:12,760
ตรงนี้

272
00:20:06,729 --> 00:20:07,538
เป็น... เราจะทำอะไร

273
00:20:07,538 --> 00:20:11,538
เราจะสร้าง class อยู่ต่อ

274
00:20:14,815 --> 00:20:15,519
จาก... เดี๋ยวนะ เพราะเมื่อกี้

275
00:20:15,519 --> 00:20:18,127
มันต้องอยู่ต่อจาก...

276
00:20:18,127 --> 00:20:22,127

277
00:20:22,344 --> 00:20:26,344
อยู่ต่อจากการตั้งค่าทั่วไปนะคะ เราจะ

278
00:20:27,881 --> 00:20:31,881
อยู่ตำแหน่งนี้ ถัดมา เพราะตรงนี้จะต้องโดนเรียกใช้

279
00:20:36,185 --> 00:20:38,944
ก่อนแล้วก็ค่อยมาตรงนี้ได้ ทำไมเป็นภาษาไทย

280
00:20:38,944 --> 00:20:40,326
กดผิดหรือนะคะ

281
00:20:40,326 --> 00:20:44,326

282
00:20:44,374 --> 00:20:48,374

283
00:20:59,198 --> 00:21:01,167

284
00:21:01,167 --> 00:21:05,167

285
00:21:15,208 --> 00:21:16,591
ตอนนี้ใส่

286
00:21:16,591 --> 00:21:20,591
# เพื่ออธิบายว่าเราจะสร้าง class เพื่อนำเข้า

287
00:21:22,382 --> 00:21:26,382
ภาพต่อเนื่อง หรือ Sprite Sheet เรานั่นเอง

288
00:21:28,826 --> 00:21:29,561
นะคะ อธิบายไว้เด็ก ๆ จะได้รู้นะคะ

289
00:21:29,561 --> 00:21:32,360

290
00:21:32,360 --> 00:21:36,360

291
00:21:36,921 --> 00:21:40,921

292
00:21:43,783 --> 00:21:47,783
ถ้าใครพิมพ์ # หรือคอมเมนต์เสร็จแล้วนะคะ

293
00:21:49,800 --> 00:21:53,800
ก็จะจะสร้าง class ได้เลยนะคะ

294
00:21:56,424 --> 00:21:56,503

295
00:21:56,503 --> 00:22:00,503

296
00:22:00,883 --> 00:22:04,423

297
00:22:04,423 --> 00:22:08,423

298
00:22:08,775 --> 00:22:12,775

299
00:22:13,400 --> 00:22:17,400

300
00:22:26,455 --> 00:22:30,455

301
00:22:35,253 --> 00:22:39,253

302
00:22:43,256 --> 00:22:47,256

303
00:22:47,332 --> 00:22:48,727
พิมพ์นะคะ

304
00:22:48,727 --> 00:22:52,727
พิมพ์ C บางคนพิมพ์ C ยังไม่ขึ้น พิมพ์ C-l

305
00:22:58,137 --> 00:22:59,685
ก็ได้นะคะ แล้วเลือกตัวแรก Class ew class นะคะ คลิก

306
00:22:59,685 --> 00:23:03,685
เข้าไป กด Enter

307
00:23:04,539 --> 00:23:08,539
เห็นไหมคะ มันจะสร้างโครงสร้างของ class ขึ้นมา

308
00:23:11,691 --> 00:23:12,030
เลย มี Class Name นะคะ แล้วก็

309
00:23:12,030 --> 00:23:16,030
มี Definition  ที่จะตั้งค่านะคะ

310
00:23:19,205 --> 00:23:23,205
รูปแบบเหมือนไหม

311
00:23:23,417 --> 00:23:27,417
เหมือนในสไลด์เราไหม เห็นไหมคะ

312
00:23:34,018 --> 00:23:40,189
สร้าง Class แล้วก็มีตัวนี้

313
00:23:25,418 --> 00:23:29,081
เห็นไหม ส่วนของ class ต่าง ๆ นี่นะคะ ขึ้นมา

314
00:23:29,081 --> 00:23:29,774

315
00:23:29,774 --> 00:23:33,766

316
00:23:33,766 --> 00:23:37,766
ทีนี้มาดูตรงนี้ ClassName ที่เขียว ๆ แล้วมีไฟกะพริบ

317
00:23:46,412 --> 00:23:50,412
เด็ก ๆ ทำแถบครอบ ตรง ClassName นี่ ที่มัน

318
00:23:50,499 --> 00:23:54,342
ขึ้นสีเขียว ๆ นี่ คือ เราจะต้องเป็นคน

319
00:23:54,342 --> 00:23:58,342
ตั้งชื่อให้ class ของเรานะคะ เพราะฉะนั้น class นี้ ที่

320
00:23:59,821 --> 00:24:02,896
จะนำมาใช้หรือตัวเกมที่เรานำมาใช้คือตัวอะไรคะ

321
00:24:02,896 --> 00:24:05,461
เด็ก ๆ จำได้นะ ขอ

322
00:24:05,461 --> 00:24:08,958
งใครให้ดูที่ตัวนี้ ตัวเกม

323
00:24:08,958 --> 00:24:12,958
ที่เราเอามาใช้ในครั้งก่อนนี่ เราใช้คำว่า "cat" ใช่ไหม

324
00:24:14,158 --> 00:24:14,656
ของเด็ก ๆ ชื่ออะไรคะ

325
00:24:14,656 --> 00:24:18,656
เพราะฉะนั้น เอาชื่อ class เป็นตัวนี้ แต่

326
00:24:24,507 --> 00:24:28,507
อย่าลืมว่าตัวต้นของมันคืออะไรคะ ตัวใหญ่

327
00:24:28,535 --> 00:24:32,535
ใช่ไหม เดี๋ยวเราค่อยไปลบบรรทัดนั้น เรายังไม่ Run ยังไม่มีปัญหา

328
00:24:35,055 --> 00:24:38,454
กด C-a-

329
00:24:38,454 --> 00:24:40,575
t เป็นตัวใหม่นะคะ class กับ Cat

330
00:24:40,575 --> 00:24:44,293
เห็นไหม class จะพิมพ์ด้วยตัวแรก

331
00:24:44,293 --> 00:24:48,293
จะต้องเป็นตัวพิมพ์ใหญ่เสมอ ชื่อ class ต้อง

332
00:24:51,009 --> 00:24:55,009
ใหญ่เสมอนะคะ ทีนี้มาดูในส่วนไอ้เขียว ๆ นี้อีกที่เราจะต้องแก้

333
00:24:55,200 --> 00:24:59,200
Object มัน วัตถุที่เราจะเอามา

334
00:25:03,299 --> 00:25:03,513
เราจะระบุอะไรลงไปนะคะ ใน Objects

335
00:25:03,513 --> 00:25:06,666
ของอุบลตัวอะไรนะลูก

336
00:25:06,666 --> 00:25:10,666
ก็ boy แต่เดิม boy เล็ก

337
00:25:29,850 --> 00:25:28,740
ก็เป็นตัว

338
00:25:19,306 --> 00:25:19,951
ใหญ่นะคะ อย่าลืมนะคะ ตัวอักษรตัวแรกต้องเป็นตัวใหญ่นะลูก ถ้าเป็นชื่อ Class

339
00:25:19,951 --> 00:25:23,951
ชื่อ class สังเกตชื่อตัวแปรตัวเล็กตัวใหญ่ก็ได้

340
00:25:29,778 --> 00:25:33,778
แต่เมื่อตั้งไปแล้วตั้งเช็ก นึกออกนะ แต่ถ้าชื่อ class น่ะ

341
00:25:35,314 --> 00:25:38,696
ต้องขึ้นต้นด้วยตัวใหญ่เสมอ ต่อมา Object ใน Object

342
00:25:38,696 --> 00:25:41,510
นี้เราจะใส่อะไรเข้าไปใน class ของเรานะคะ

343
00:25:41,510 --> 00:25:45,510
มาดูกัน Object ที่เราจะใส่

344
00:25:57,147 --> 00:25:54,746

345
00:25:48,294 --> 00:25:50,599
ก็คือเรียกใช้ sprite คือ pygame

346
00:25:50,599 --> 00:25:54,599
มันจะมี library บอกแล้ว เพราะฉะนั้น Library ที่จะใช้

347
00:25:59,099 --> 00:26:03,099
ก็คือดูนะคะ เด็ก ๆ ดูดี ๆ Sprite Sheet นี่

348
00:26:03,324 --> 00:26:07,324
2 ครั้งนี่ sprite ตัวแรก ตัวพิมพ์เล็ก

349
00:26:18,989 --> 00:26:15,742

350
00:26:07,323 --> 00:26:07,845
มันจะเป็นคนละตัว นึกออกนะ

351
00:26:07,845 --> 00:26:08,977
เพราะอะไร เพราะเห็นไหม sprite ตัวที่ 2

352
00:26:08,977 --> 00:26:12,977
ขึ้นต้นตัว s มันจะเป็นตัวใหญ่

353
00:26:13,632 --> 00:26:17,632
แล้วถ้าเวลาแม่บอกว่าเรียกใช้ Sprite ตัวใหญ่

354
00:26:23,335 --> 00:26:27,152
เราต้องพิมพ์ตัวใหญ่ก่อน นึกออกนะ แต่ถ้าพิมพ์

355
00:26:27,152 --> 00:26:31,152
เล็กทั้งหมดนะคะ มันจะมี 2 ตัวนะคะ เพราะฉะนั้น ใน Object เราจะเรียกใช้

356
00:26:34,889 --> 00:26:38,577
Library pygame

357
00:26:38,577 --> 00:26:40,368
.Sprite ใหญ่ ว่าอย่างนั้นเถอะ

358
00:26:40,368 --> 00:26:44,368
เพราะฉะนั้น กลับมาที่ตัวนี้เรา ใน Object

359
00:26:56,092 --> 00:26:54,291
เห็นไหมคะ

360
00:26:46,546 --> 00:26:50,546
เราพิมพ์ p ตัว p

361
00:26:54,580 --> 00:26:58,580
pygame กด Enter ได้เลย

362
00:27:06,990 --> 00:27:07,614
พิมพ์ p

363
00:26:58,303 --> 00:27:02,303
แล้วกด Enter นะ . ใส่ . นะคะ Sprites

364
00:27:18,957 --> 00:27:15,892

365
00:27:07,354 --> 00:27:11,354
ขึ้น Sprite ใหญ่

366
00:27:14,474 --> 00:27:16,218
ยังไม่กดนะเด็ก ๆ เพราะ sprite แรก คือ sprite

367
00:27:16,218 --> 00:27:20,218
ตัวเล็กนะคะ s-p-r-i-

368
00:27:21,331 --> 00:27:25,331
t-e

369
00:27:26,042 --> 00:27:28,841
.Sprite ที่ 2

370
00:27:28,841 --> 00:27:32,841
ต้องเลือก Sprite ตัวใหญ่ ไปไหนแล้ว

371
00:27:34,240 --> 00:27:38,240
อยู่เกือบล่างสุดเลยเห็นไหม คือ Sprite ตัวที่ 2

372
00:27:40,453 --> 00:27:44,453
มันสร้างไว้ใน คือ Library

373
00:27:46,201 --> 00:27:50,201
มันมีอยู่แล้วนึกออกนะ โอเคนะคะ เพราะตัว : เราไม่ต้องใส่เลย

374
00:27:53,607 --> 00:27:57,607
เราอย่างนี้ ไอ้พวกเครื่องหมายมันจะไม่หาย ดูใหม่นะ ไอ้ sprite ที่ 2

375
00:28:00,906 --> 00:28:01,739
นะ กด S ปุ๊บ ให้เลื่อนไปหา

376
00:28:01,739 --> 00:28:05,739
Sprite ใหญ่ เห็นไหมคะ กด Enter

377
00:28:09,267 --> 00:28:13,267
เพราะมันเป็นตัวที่เป็นอยู่ใน Library แล้ว

378
00:28:15,373 --> 00:28:16,585
ว่าอย่างนั้นเถอะ แต่ Sprite บอกว่า ฉัน

379
00:28:16,585 --> 00:28:17,333
สร้างตัวนี้ขึ้นมานะคะ เพื่อจะเรียกใช้

380
00:28:17,333 --> 00:28:21,333
เขาบอก

381
00:28:24,482 --> 00:28:28,482
ตรงนี้เราจะลบออกนะคะ เป็นแค่อธิบาย ซึ่งเราอธิบาย

382
00:28:29,410 --> 00:28:33,410
ไว้ข้างบนแล้ว เรากด Delete ได้เลย เรา

383
00:28:37,932 --> 00:28:41,932
พยายามลดบรรทัดในการเขียนโค้ด นึกออกนะคะ คือ 1 บรรทัดจะใช้พื้นที่ในการเก็บ

384
00:28:45,267 --> 00:28:47,025
นะคะ เมื่อกี้เราสร้าง class ไปแล้ว ทีนี้

385
00:28:47,025 --> 00:28:51,025
เราจะมาสร้างส่วนของ Statements นี่

386
00:28:51,695 --> 00:28:55,695
นะคะ ต่อ

387
00:29:08,429 --> 00:29:06,182

388
00:28:53,539 --> 00:28:57,289
ก็คือส่วนนี้ เห็นไหม

389
00:28:57,289 --> 00:29:01,289
def def ย่อมาจาก

390
00:29:06,409 --> 00:29:08,922
Definition init นะคะ

391
00:29:08,922 --> 00:29:12,922
มันจะพิมพ์ของมันมาแล้ว เพราะฉะนั้น

392
00:29:16,460 --> 00:29:20,460
ถ้าเด็ก ๆ พิมพ์เอง จะพิมพ์ไม่ถูก มันพิมพ์มาแล้ว เราจะมาแก้เฉพาะ

393
00:29:22,614 --> 00:29:24,977
ในวงเล็บ

394
00:29:24,977 --> 00:29:28,617

395
00:29:28,617 --> 00:29:32,617
เอาตัวนั้นออก มันบัง

396
00:29:47,614 --> 00:29:45,703
มันบัง

397
00:29:38,241 --> 00:29:40,953
โค้ดเรานะคะ  เราจะพิมพ์จนถึง

398
00:29:40,953 --> 00:29:44,953
ตัวนี้ก่อน super init() นี

399
00:29:51,407 --> 00:29:51,436
น่าจะพิมพ์มาแล้วนะคะ self

400
00:29:51,436 --> 00:29:55,436
ต่อจาก self self แล้วตามด้วยอะไร

401
00:30:01,739 --> 00:30:02,313
เห็นไหม

402
00:30:02,313 --> 00:30:06,313
นะคะ ดูนะคะ

403
00:30:09,146 --> 00:30:13,146
pos_x, pos_y

404
00:30:15,113 --> 00:30:19,113
ตัวแปร pos_x, pos_y นะคะ ย้ายตำแหน่งนะ

405
00:30:19,985 --> 00:30:23,985
เดี๋ยวพิมพ์ไปก่อน

406
00:30:31,422 --> 00:30:35,422

407
00:30:43,426 --> 00:30:47,426
pos...

408
00:30:50,755 --> 00:30:54,755
ใช้ _x คั่น ตัวเดียวกันน่ะล่ะ

409
00:30:55,261 --> 00:30:59,261
แล้วแต่จะตั้ง  คือแยกนี่ ใส่ _ เข้าไปนี่

410
00:31:01,663 --> 00:31:03,368
มันจะได้เห็นว่า

411
00:31:03,368 --> 00:31:07,368
pos มาจาก position นั่นเองนะคะ นี่ pos

412
00:31:09,121 --> 00:31:10,882
นี่ pos มาจาก position นะคะ

413
00:31:10,882 --> 00:31:14,882
แล้วก็ตามด้วย _x ก็คือตำแหน่ง

414
00:31:15,853 --> 00:31:19,853
แกน x ตำแหน่งของแกน x แกน y นั่นเอง

415
00:31:33,096 --> 00:31:30,832

416
00:31:26,354 --> 00:31:26,971
ก็คือเราจะเอาไอ้รูปนี้มาวางในตำแหน่งนี้ ในแกน x แกน y ที่ระบุ

417
00:31:26,971 --> 00:31:30,919

418
00:31:30,919 --> 00:31:34,919
นะคะ

419
00:31:35,792 --> 00:31:36,717

420
00:31:36,717 --> 00:31:40,717
บรรทัดนี้นะคะ ก็คือจะเริ่ม

421
00:31:41,401 --> 00:31:45,401
กำหนดว่าตำแหน่งของ

422
00:31:46,427 --> 00:31:50,427
สิ่งที่เราจะเรียกมานี่จะอยู่ตรงไหนอะไรอย่างไร

423
00:31:57,346 --> 00:32:01,346
บอกตำแหน่ง ระบุตำแหน่งแล้ว บรรทัดต่อมา มันจะเริ่ม

424
00:32:04,630 --> 00:32:08,630
ยาวขึ้นแล้วนะเด็ก ๆ ดูดี ๆ นะ

425
00:32:10,081 --> 00:32:12,826

426
00:32:12,826 --> 00:32:16,826
ตรงช่องนี้เห็นไหมคะ class

427
00:32:27,230 --> 00:32:29,561
name เราไม่ต้องระบุลงไป ลบออกให้มันเป็นเปล่า ๆ

428
00:32:29,561 --> 00:32:30,282
แล้วเหลือแค่นี้ บรรทัด

429
00:32:30,282 --> 00:32:34,282
ที่ต่อจาก Definition

430
00:32:35,746 --> 00:32:39,746
นะคะ บรรทัด Super() นี่ตรงที่อยู่นี้

431
00:32:47,477 --> 00:32:51,477
ลบออกนะคะ บรรทัดนี้ เราจะเหลือแค่นี้ โอเคนะคะ

432
00:32:52,766 --> 00:32:56,766
บรรทัดถัดจากนี้ พอเริ่ม

433
00:32:59,112 --> 00:33:02,458
เรียก self นี่มันจะยาวขึ้นนะคะ

434
00:33:02,458 --> 00:33:03,828
แต่เราจะพิมพ์แค่ 1 ครั้ง

435
00:33:03,828 --> 00:33:07,689
แล้วใช้วิธีคัดลอกแล้วก็ไปแก้

436
00:33:07,689 --> 00:33:11,689
แก้เฉพาะตัวนะคะ

437
00:33:15,672 --> 00:33:19,672
ดูนะคะ ดู

438
00:33:33,406 --> 00:33:48,148
self

439
00:33:16,595 --> 00:33:20,595

440
00:33:29,300 --> 00:33:29,783

441
00:33:29,783 --> 00:33:33,783
sprite นะคะ

442
00:33:39,193 --> 00:33:43,193

443
00:33:47,495 --> 00:33:51,495
self ตัวแรก

444
00:34:02,962 --> 00:34:01,521
arg

445
00:33:54,323 --> 00:33:54,341
ตัวแรกนี่ sprite

446
00:33:54,341 --> 00:33:58,341

447
00:33:59,135 --> 00:34:03,135
sprite เล็ก แล้วเติม s ให้เขาด้วย มันจะเป็น

448
00:34:11,301 --> 00:34:15,094
คนละตัวกับตัวบนนะคะเด็ก ๆ เติม s เข้าไป

449
00:34:15,094 --> 00:34:19,094
ตรงนี้ค่าที่ใส่ ก็คือสี่เหลี่ยม วงเล็บแบบสี่เหลี่ยม โอเคไหม

450
00:34:24,059 --> 00:34:27,083
ดูดี ๆ นะคะ sprite

451
00:34:27,083 --> 00:34:31,083
ใน self นี่เป็น sprites ที่เติม s เข้าไป

452
00:34:31,473 --> 00:34:35,473
ด้วย เราเรียก sprites ปุ๊บ

453
00:34:38,143 --> 00:34:42,143
กดมี sprite ขึ้นมานี่นะคะ แล้วเติม s เพิ่มเข้าไป

454
00:34:51,970 --> 00:34:54,216

455
00:34:39,333 --> 00:34:43,333
โอเคนะ

456
00:34:43,902 --> 00:34:47,902
มันจะเป็นคนละตัวนะ มันมีหลายตัว

457
00:34:52,135 --> 00:34:55,757
ถ้าบอก sprites พอเรียกไปแล้วนี่

458
00:34:55,757 --> 00:34:59,108
อย่ารีบ อย่ารีบ เห็นไหม ตัวนี้ 1 ใช่ไหม

459
00:34:59,108 --> 00:35:03,108
2. Sprite ใหญ่ 3

460
00:35:11,523 --> 00:35:12,800
ตอนนี้ sprites เรามี 3 sprites นะคะ

461
00:35:12,800 --> 00:35:16,800

462
00:35:18,957 --> 00:35:22,957
โอเคนะคะ บรรทัดที่เหลือ

463
00:35:25,019 --> 00:35:27,363
จะเริ่มไปเรียกใช้

464
00:35:27,363 --> 00:35:30,831
คำสั่งที่มันให้โหลดรูป

465
00:35:30,831 --> 00:35:34,831
ที่เราเก็บไว้น่ะมานะคะ เราต้องวางเรียงให้ครบหมด เรามีกี่รูป

466
00:35:41,991 --> 00:35:45,991
เราต้องวางเรียงจนครบทั้งหมด เรามีกี่รูปเราก็วางไปให้ครบ

467
00:35:46,936 --> 00:35:46,944
นั้นนะคะ เดี๋ยวเขียนให้ดูก่อน ตอนนี้เราระบุ

468
00:35:46,944 --> 00:35:50,944
sprite ไปแล้ว sprites ไปแล้ว

469
00:35:59,537 --> 00:36:03,159
สิ่งที่เราจะทำต่อมา บรรทัดต่อไป เราก็พิมพ์ self

470
00:36:03,159 --> 00:36:05,821
s-e เลือก self เหมือนเดิมนะคะ

471
00:36:05,821 --> 00:36:09,821
.sprites เหมือนกัน

472
00:36:13,701 --> 00:36:17,701
แต่เลือก sprites sprites ที่มีตัว s

473
00:36:25,165 --> 00:36:23,460
เห็นไหมคะ

474
00:36:15,714 --> 00:36:19,714
เลือกให้ถูก ตามด้วย . self.sprites.

475
00:36:26,659 --> 00:36:30,659
เพราะตัวแรก sprites

476
00:36:36,204 --> 00:36:40,204
ตัวแรกเราแจ้งโปรแกรมไปแล้ว ครั้งที่ 2 เราใช้ sprites มานะ

477
00:36:47,558 --> 00:36:51,289
มันได้เลยนะคะ . แล้วก็ตามด้วย โค้ดจะยาวหน่อย ขออีก

478
00:36:51,289 --> 00:36:52,070
รอบหนึ่ง ขออีกรอบหนึ่ง .append

479
00:36:52,070 --> 00:36:52,790
แล้วก็ pygame.image.load โอเค

480
00:36:52,790 --> 00:36:56,790

481
00:37:03,565 --> 00:37:07,565
.append a-p-p-e-n-d

482
00:37:12,614 --> 00:37:12,690
นะคะ

483
00:37:04,393 --> 00:37:08,393
เรียกใช้คำ... ใน Library

484
00:37:10,964 --> 00:37:14,964
append.

485
00:37:27,526 --> 00:37:27,049

486
00:37:14,434 --> 00:37:18,434
พิมพ์ append ผิดตรงไหนนะ append

487
00:37:23,575 --> 00:37:27,575
. ในวงเล็บ ใส่วงเล็บนะคะ pygame. p-y

488
00:37:28,205 --> 00:37:32,205
กด py แล้วกด Enter ให้เลือกใช้

489
00:37:35,579 --> 00:37:39,579
.image เหมือนเดิม i-m

490
00:37:45,519 --> 00:37:51,990
เลือก image

491
00:37:38,464 --> 00:37:42,464
นะคะ .load เลือก load

492
00:37:43,731 --> 00:37:47,731
ถ้าใครไม่ขึ้นแสดงว่าบางทีพิมพ์ผิด

493
00:37:54,808 --> 00:37:57,397
ลองลบออกก่อน เดี๋ยวย่อลงก่อนนะคะ

494
00:37:57,397 --> 00:38:01,397
ที่ต้องย่อเพราะว่ามันยังมีต่อ

495
00:38:04,994 --> 00:38:08,994
อีก เดี๋ยวเด็ก ๆ จะไม่เห็นว่าในบรรทัดนี้มันมีอะไร

496
00:38:12,583 --> 00:38:16,583
ต่อนะคะ ก็คือตอนนี้เราจะมาเรียก self.sprites.append

497
00:38:18,545 --> 00:38:22,545

498
00:38:23,593 --> 00:38:25,428
แล้วก็ให้สั่งให้ pygame มันไปโหลดภาพ แล้วมาดูภาพที่เราจะโหลด

499
00:38:25,428 --> 00:38:29,428
กดผิดนี่น่ะ วงเล็บทีหลัง

500
00:38:36,901 --> 00:38:39,313
วงเล็บหลัง load นะ append.pygame.

501
00:38:39,313 --> 00:38:41,285
image.load แล้วก็ชื่อรูป รูป

502
00:38:41,285 --> 00:38:44,336
ตัวไหน ชื่อรูปเด็ก ๆ ดูนะคะ บอกแล้ว

503
00:38:44,336 --> 00:38:48,336
บอกวิธีไปแล้วนะ ถ้าไม่อยากพิมพ์ผิด

504
00:39:00,006 --> 00:38:59,906

505
00:38:51,853 --> 00:38:55,853
เหมือนอย่างนี้ เราไปที่ไฟล์ภาพเราแล้วเราคลิกขวา

506
00:38:58,238 --> 00:39:02,238
ที่ตำแหน่ง Properties แล้วเราก็ก๊อปฯ

507
00:39:03,926 --> 00:39:07,926
ชื่อไฟล์มันมาเลย มันจะทำให้เราไม่พิมพ์

508
00:39:09,076 --> 00:39:13,076
ชื่อไฟล์ผิด นึกออกนะ แล้วก็เช็กด้วยว่านามสกุล

509
00:39:13,163 --> 00:39:17,163
มันเป็นนามสกุลอะไร .png โอเค

510
00:39:26,666 --> 00:39:31,756

511
00:39:13,957 --> 00:39:14,791

512
00:39:14,791 --> 00:39:18,791

513
00:39:21,024 --> 00:39:25,024
.png แบบนี้นะคะ มันจะไม่เกิดปัญหาการพิมพ์

514
00:39:29,932 --> 00:39:33,932
ชื่อไฟล์ผิด เพราะฉะนั้น ภาพที่เป็น sprites เรามีกี่รูป

515
00:39:41,759 --> 00:39:39,176

516
00:39:32,748 --> 00:39:36,748
บรรทัดต่อไปไม่ต้องพิมพ์ใหม่

517
00:39:41,142 --> 00:39:44,519
เด็ก ๆ ดูนะคะ ใช้วิธี Copy บรรทัดที่เราสั่งมันโหลดภาพ กด

518
00:39:44,519 --> 00:39:48,519
Ctrl + C แล้วก็กด

519
00:39:53,288 --> 00:39:57,288
Ctrl + V ลงไป เราก็เปลี่ยนแค่อะไรคะ หมายเลข

520
00:40:01,700 --> 00:40:05,700
ใช่ไหม 2 ถูกไหมคะ ตรงนี้

521
00:40:10,051 --> 00:40:14,051
นะคะ sprites เด็ก ๆ ต้องไปสั่งให้มันโหลด

522
00:40:15,861 --> 00:40:16,158
รูปที่เราจะเอามาใช้น่ะ

523
00:40:16,158 --> 00:40:20,158
ให้ครบตามจำนวน นึกออกไหมลูก เพราะฉะนั้น

524
00:40:21,677 --> 00:40:25,677
เพิ่มบรรทัดเอาเองนะ ของใครมีกี่รูป

525
00:40:34,145 --> 00:40:35,716

526
00:40:28,148 --> 00:40:32,148
จำนวนบรรทัดของรูปที่โหลด มันก็จะเท่ากับภาพตัวเอง นึกออกนะ

527
00:40:34,895 --> 00:40:38,895
Copy Copy อันที่ 1 แล้วก็ไปเปลี่ยนหมายเลขถูกไหม ถ้าของใครมีหมายเลข ถ้าใคร

528
00:40:42,811 --> 00:40:45,140
ไม่มีหมายเลข นึกออกนะ แล้วก็วาง

529
00:40:45,140 --> 00:40:45,501
จนกว่ามันจะครบจำนวนไอ้ตัวนั้นของเรา

530
00:40:45,501 --> 00:40:49,501
นะคะ เดี๋ยว...

531
00:41:00,049 --> 00:41:04,049
วางของตัวเอง

532
00:41:05,321 --> 00:41:11,841

533
00:40:47,215 --> 00:40:49,131

534
00:40:49,131 --> 00:40:53,027

535
00:40:53,027 --> 00:40:57,027

536
00:41:02,355 --> 00:41:03,158
ตรงนี้นะคะ

537
00:41:03,158 --> 00:41:07,158
ชื่อไฟล์ภาพนี่ ให้ดูในเครื่องตัวเอง

538
00:41:09,818 --> 00:41:13,818
นะลูก ไม่ใช่มาพิมพ์ตาม

539
00:41:17,747 --> 00:41:18,552
ก็คือชื่อภาพใครภาพมัน... ภาพของใครของมัน อันนี้

540
00:41:18,552 --> 00:41:19,727
ชื่อไฟล์ภาพที่อยู่ในเครื่องของแม่ ของ

541
00:41:19,727 --> 00:41:23,727
เด็ก ๆ ชื่ออะไร เด็ก ๆ ก็ดูเอาในโฟลเดอร์ตัวเอง

542
00:41:25,084 --> 00:41:29,084
นะคะ มีกี่รูปเดี๋ยว

543
00:41:30,483 --> 00:41:34,483
ขอไปดูก่อนนะ ว่าของเรามีทั้งหมดกี่รูป

544
00:41:35,127 --> 00:41:39,127
ของเครื่องแม่มีถึง 10 นะคะ

545
00:41:43,910 --> 00:41:45,124
เพราะฉะนั้น ก็จะใส่เพิ่มอีก 5 ตัว

546
00:41:45,124 --> 00:41:49,124
มีเยอะก็จะก็อบฯ

547
00:41:52,255 --> 00:41:56,255
แผงใหญ่ ๆ เลย 5 แล้วก็นับต่อ

548
00:41:57,176 --> 00:41:58,548
6 7

549
00:41:58,548 --> 00:42:02,548
8 9

550
00:42:02,799 --> 00:42:06,799
10 เพราะฉะนั้น ให้เด็ก ๆ ดูใน

551
00:42:08,678 --> 00:42:12,678
โฟลเดอร์ตัวเองนะ ไฟล์ภาพใคร

552
00:42:13,927 --> 00:42:17,927
ชื่ออะไรก็ก็อบฯ มาวาง แล้วค่อยมาแก้

553
00:42:21,549 --> 00:42:25,549
อย่างนี้นะคะ อันนี้ของแม่มี 10 ภาพ แม่ก็ใส่จนครบแล้ว 10 รูปนะคะ ของเด็ก ๆ มีกี่รูป

554
00:42:28,440 --> 00:42:28,922
เดี๋ยวไปช่วยดูให้ จะตรวจให้นะคะ ของใคร

555
00:42:28,922 --> 00:42:31,690
มีกี่รูป

556
00:42:31,690 --> 00:42:35,690
ใส่วงเล็บน่ะถูกแล้ว เห็นไหมล่ะ

557
00:42:38,305 --> 00:42:39,735
เราว่า

558
00:42:39,735 --> 00:42:43,735
ไม่ใส่ถึงว่าทำไมมันไม่ขึ้น

559
00:42:45,608 --> 00:42:47,853
ตรง pygame

560
00:42:47,853 --> 00:42:50,023
ใส่วงเล็บให้ด้วยนะ

561
00:42:50,023 --> 00:42:52,807

562
00:42:52,807 --> 00:42:56,807

563
00:42:58,354 --> 00:43:01,258

564
00:43:01,258 --> 00:43:05,258

565
00:43:15,707 --> 00:43:19,707

566
00:43:23,734 --> 00:43:25,671

567
00:43:25,671 --> 00:43:29,671

568
00:43:34,092 --> 00:43:38,092
นั่นล่ะ ก็ว่าใส่แล้วจำ

569
00:43:40,729 --> 00:43:41,560
ไม่ได้

570
00:43:41,560 --> 00:43:45,560
ตอนแรกน่ะใส่แล้ว แล้วก็ว่ามันไม่ขึ้น

571
00:43:50,465 --> 00:43:54,465
ก็เลยเข้าใจว่าตัวเองใส่ผิด

572
00:44:10,830 --> 00:44:23,557

573
00:43:57,324 --> 00:44:01,324

574
00:44:01,522 --> 00:44:05,097

575
00:44:05,097 --> 00:44:09,097

576
00:44:09,529 --> 00:44:12,892

577
00:44:12,892 --> 00:44:16,892
เดี๋ยวไปเดินดู

578
00:44:23,400 --> 00:44:26,426
นะคะ มันจะต้องขึ้นอย่างนี้

579
00:44:26,426 --> 00:44:30,426
เป็นเซ็ต ๆ เลย self สีส้ม มี append

580
00:44:46,650 --> 00:44:43,772
คั่น

581
00:44:35,747 --> 00:44:37,446
เป็นสีฟ้า แล้วไปปิดด้วย load

582
00:44:37,446 --> 00:44:38,409

583
00:44:38,409 --> 00:44:41,145

584
00:44:41,145 --> 00:44:45,145

585
00:44:55,748 --> 00:44:59,748

586
00:44:59,753 --> 00:45:03,753

587
00:45:03,755 --> 00:45:04,002

588
00:45:04,002 --> 00:45:08,002

589
00:45:11,760 --> 00:45:15,760

590
00:45:15,763 --> 00:45:19,763

591
00:45:19,764 --> 00:45:23,764

592
00:45:23,766 --> 00:45:27,766

593
00:45:27,768 --> 00:45:31,768

594
00:45:31,770 --> 00:45:35,770

595
00:45:35,770 --> 00:45:39,770

596
00:45:39,772 --> 00:45:43,772

597
00:45:47,776 --> 00:45:51,776

598
00:45:51,778 --> 00:45:55,778

599
00:45:55,780 --> 00:45:59,780

600
00:45:59,784 --> 00:46:03,784

601
00:46:03,787 --> 00:46:07,787

602
00:46:07,791 --> 00:46:11,790

603
00:46:11,790 --> 00:46:15,790

604
00:46:15,795 --> 00:46:19,795

605
00:46:19,797 --> 00:46:23,797

606
00:46:27,798 --> 00:46:31,798

607
00:46:31,802 --> 00:46:35,802

608
00:46:35,805 --> 00:46:38,117

609
00:46:38,117 --> 00:46:42,117

610
00:46:47,809 --> 00:46:51,809

611
00:46:51,810 --> 00:46:55,810

612
00:46:59,818 --> 00:47:03,818

613
00:47:03,819 --> 00:47:07,819

614
00:47:07,820 --> 00:47:11,820

615
00:47:15,823 --> 00:47:19,823

616
00:47:19,829 --> 00:47:23,829

617
00:47:23,830 --> 00:47:27,830

618
00:47:31,842 --> 00:47:35,841

619
00:47:35,841 --> 00:47:39,841

620
00:47:39,841 --> 00:47:43,841

621
00:47:43,843 --> 00:47:47,843

622
00:47:47,845 --> 00:47:51,845

623
00:47:51,853 --> 00:47:55,853

624
00:47:55,859 --> 00:47:59,859

625
00:47:59,859 --> 00:48:03,859

626
00:48:03,862 --> 00:48:07,862

627
00:48:07,862 --> 00:48:11,862

628
00:48:11,866 --> 00:48:15,866

629
00:48:15,868 --> 00:48:19,868

630
00:48:19,871 --> 00:48:23,871

631
00:48:23,871 --> 00:48:27,871

632
00:48:27,876 --> 00:48:31,875

633
00:48:31,875 --> 00:48:35,875

634
00:48:35,878 --> 00:48:39,878

635
00:48:39,881 --> 00:48:43,881

636
00:48:43,883 --> 00:48:47,883

637
00:48:47,885 --> 00:48:51,885

638
00:48:51,886 --> 00:48:55,886

639
00:48:55,887 --> 00:48:59,887

640
00:48:59,892 --> 00:49:03,892

641
00:49:03,892 --> 00:49:07,892

642
00:49:07,897 --> 00:49:11,896

643
00:49:11,896 --> 00:49:15,896

644
00:49:15,900 --> 00:49:19,900

645
00:49:19,900 --> 00:49:23,900

646
00:49:23,904 --> 00:49:27,904

647
00:49:27,906 --> 00:49:31,906

648
00:49:31,906 --> 00:49:35,906

649
00:49:35,910 --> 00:49:39,910

650
00:49:39,912 --> 00:49:43,912

651
00:49:43,912 --> 00:49:47,912

652
00:49:47,916 --> 00:49:51,916

653
00:49:51,919 --> 00:49:55,919

654
00:49:55,926 --> 00:49:59,925

655
00:49:59,925 --> 00:50:03,925

656
00:50:03,928 --> 00:50:07,928

657
00:50:11,935 --> 00:50:15,935

658
00:50:15,939 --> 00:50:19,939

659
00:50:19,944 --> 00:50:23,944

660
00:50:23,946 --> 00:50:27,946

661
00:50:27,948 --> 00:50:31,948

662
00:50:31,949 --> 00:50:35,949

663
00:50:35,950 --> 00:50:39,950

664
00:50:43,957 --> 00:50:47,956

665
00:50:47,956 --> 00:50:51,956

666
00:50:51,957 --> 00:50:55,957

667
00:50:59,962 --> 00:51:03,962

668
00:51:03,964 --> 00:51:07,964

669
00:51:07,965 --> 00:51:11,965

670
00:51:11,967 --> 00:51:15,967

671
00:51:15,971 --> 00:51:19,971

672
00:51:19,974 --> 00:51:23,974

673
00:51:31,981 --> 00:51:35,981

674
00:51:35,982 --> 00:51:37,700

675
00:51:37,700 --> 00:51:41,700

676
00:51:47,997 --> 00:51:51,997

677
00:51:52,000 --> 00:51:56,000

678
00:52:00,004 --> 00:52:04,004

679
00:52:04,006 --> 00:52:08,006

680
00:52:08,007 --> 00:52:12,007

681
00:52:12,010 --> 00:52:16,010

682
00:52:16,014 --> 00:52:20,014

683
00:52:20,018 --> 00:52:24,018

684
00:52:24,020 --> 00:52:28,020

685
00:52:28,021 --> 00:52:32,021

686
00:52:32,023 --> 00:52:36,023

687
00:52:36,026 --> 00:52:40,026

688
00:52:40,026 --> 00:52:44,026

689
00:52:44,028 --> 00:52:48,028

690
00:52:48,031 --> 00:52:52,030

691
00:52:52,030 --> 00:52:56,030

692
00:52:56,034 --> 00:53:00,034

693
00:53:00,035 --> 00:53:04,035

694
00:53:04,036 --> 00:53:08,036

695
00:53:08,039 --> 00:53:12,039

696
00:53:12,040 --> 00:53:16,040

697
00:53:16,049 --> 00:53:20,044

698
00:53:20,044 --> 00:53:24,044

699
00:53:24,049 --> 00:53:28,049

700
00:53:28,052 --> 00:53:32,051

701
00:53:32,051 --> 00:53:36,051

702
00:53:36,052 --> 00:53:40,052

703
00:53:40,058 --> 00:53:44,058

704
00:53:44,058 --> 00:53:48,058

705
00:53:48,060 --> 00:53:52,060

706
00:53:52,061 --> 00:53:56,061

707
00:53:56,061 --> 00:54:00,061

708
00:54:00,066 --> 00:54:04,066

709
00:54:04,068 --> 00:54:08,068

710
00:54:08,068 --> 00:54:12,068

711
00:54:12,070 --> 00:54:16,070

712
00:54:16,073 --> 00:54:20,073

713
00:54:20,074 --> 00:54:24,074

714
00:54:24,076 --> 00:54:28,076

715
00:54:28,079 --> 00:54:32,079

716
00:54:32,079 --> 00:54:36,079

717
00:54:36,081 --> 00:54:40,081

718
00:54:40,083 --> 00:54:44,083

719
00:54:44,085 --> 00:54:48,085

720
00:54:48,087 --> 00:54:52,087

721
00:54:52,090 --> 00:54:56,090

722
00:54:56,091 --> 00:55:00,091

723
00:55:00,093 --> 00:55:04,093

724
00:55:04,094 --> 00:55:04,983

725
00:55:04,983 --> 00:55:06,407
ทีนี้

726
00:55:06,407 --> 00:55:09,078
เดี๋ยวดูนะคะ ชื่อ

727
00:55:09,078 --> 00:55:11,434
ไฟล์เราลืมแน่ ๆ เลย

728
00:55:11,434 --> 00:55:15,434
เมื่อกี้เดินไปผิดแน่ ๆ มันต้อง

729
00:55:16,343 --> 00:55:20,343
ใส่อะไร เครื่องหมายอะไร

730
00:55:21,678 --> 00:55:25,678
คำพูด นึกออกนะ ใส่เครื่องหมายคำพูด

731
00:55:28,455 --> 00:55:32,455
จะเอา ' ' หรือ " " หรือ D

732
00:55:36,110 --> 00:55:38,919
ก็ได้ตรงชื่อไฟล์นี่เห็นไหม ใส่ลงไป ลืม ๆ

733
00:55:38,919 --> 00:55:42,919
นะคะ เห็นไหมคะ เด็ก ๆ ใส่เครื่องหมายคำพูดตรง

734
00:55:46,498 --> 00:55:50,498
ที่เราจะเรียกใช้ด้วยลืมเยอะ เยอะหลายน่ะลืม

735
00:55:51,465 --> 00:55:55,465
นี่นะ เมื่อกี้ลืมใส่นะคะ ใส่เครื่องหมายคำพูดเข้าไป

736
00:55:58,682 --> 00:56:02,682
ให้น้องด้วย เห็นไหม เพราะถ้าเช็กจาก

737
00:56:14,813 --> 00:56:15,571
...

738
00:56:05,241 --> 00:56:09,241
จากสไลด์นี่ ตรงชื่อไฟล์

739
00:56:11,005 --> 00:56:15,005
มันจะเป็นสีเหลืองเห็นไหมคะ มันถึงจะถูกต้อง

740
00:56:16,641 --> 00:56:20,641
เพราะฉะนั้น แก้ ใส่ single quote หรือ double quote ก็ได้

741
00:56:25,140 --> 00:56:29,140
ใส่ตัวไหนก็ได้นะคะ ตัวใดตัวหนึ่ง

742
00:56:31,088 --> 00:56:35,088
ใส่ single ก็ใส่ ใครจะใส่ double ก็ใส่

743
00:56:35,330 --> 00:56:39,330
เดี๋ยวทีนี้บางรูปของบางคนนี่รูปมันไม่ต่อนี่

744
00:56:50,295 --> 00:56:50,463

745
00:56:38,049 --> 00:56:42,049
เดี๋ยวตอน Run ออกมามันจะเป็น ฮา ๆ

746
00:56:45,515 --> 00:56:49,515
นะเด็ก ๆ เพราะฉะนั้น เลือกรูปมาใช้ก็มีส่วน

747
00:56:50,812 --> 00:56:54,812
นะคะ เช็กนะคะเช็ก อันดับแรกเช็กที่ชื่อไฟล์ภาพที่เราจะนำ

748
00:56:56,766 --> 00:56:58,524
มาใช้

749
00:56:58,524 --> 00:57:02,524
ว่าชื่อถูกต้องโอเคไหม แล้วก็รูปที่นำมาใช้มีจำนวน

750
00:57:08,059 --> 00:57:12,059
กี่รูป

751
00:57:18,501 --> 00:57:19,620

752
00:57:08,197 --> 00:57:10,036

753
00:57:10,036 --> 00:57:14,036
สังเกตนะคะ ถ้าใครแก้ครบแล้วไอ้

754
00:57:17,216 --> 00:57:21,216
ตัวชื่อไฟล์ภาพจะเป็นสีเหลืองทั้งหมด นั่นแสดงว่า

755
00:57:23,675 --> 00:57:27,675
ถูกต้องแล้วนะเด็ก ๆ

756
00:57:28,147 --> 00:57:32,147
ต้องเป็นอย่างนี้

757
00:57:35,672 --> 00:57:38,138
นะคะ ในโค้ดเราต้องเป็น

758
00:57:38,138 --> 00:57:41,127
อย่างนี้ถึงจะถูก

759
00:57:41,127 --> 00:57:45,127

760
00:57:56,153 --> 00:58:00,153

761
00:58:04,152 --> 00:58:05,408

762
00:58:05,408 --> 00:58:09,408

763
00:58:20,166 --> 00:58:24,165

764
00:58:24,165 --> 00:58:28,165

765
00:58:28,168 --> 00:58:32,168

766
00:58:32,171 --> 00:58:36,171

767
00:58:36,172 --> 00:58:40,172

768
00:58:40,177 --> 00:58:40,721

769
00:58:40,721 --> 00:58:44,721

770
00:58:48,178 --> 00:58:52,178

771
00:58:52,182 --> 00:58:56,181

772
00:58:56,181 --> 00:59:00,181

773
00:59:00,184 --> 00:59:04,184

774
00:59:04,186 --> 00:59:08,185

775
00:59:08,185 --> 00:59:12,185

776
00:59:12,187 --> 00:59:16,187

777
00:59:16,188 --> 00:59:20,188

778
00:59:20,191 --> 00:59:24,191

779
00:59:24,193 --> 00:59:28,193

780
00:59:28,196 --> 00:59:29,391

781
00:59:29,391 --> 00:59:33,391

782
00:59:34,403 --> 00:59:38,403

783
00:59:41,490 --> 00:59:45,490

784
00:59:49,919 --> 00:59:53,919
คือ คำสั่งมันเยอะ

785
00:59:54,235 --> 00:59:58,235
เพราะมันเป็น class คือ มันจะลำบากตอนแรก

786
01:00:01,150 --> 01:00:03,554
เท่านั้นนะคะ ไหนลองสิ

787
01:00:03,554 --> 01:00:07,345

788
01:00:07,345 --> 01:00:10,842

789
01:00:10,842 --> 01:00:14,842
ตัวเล็ก ตัวใหญ่

790
01:00:27,432 --> 01:00:31,432
ไม่เกี่ยว

791
01:00:31,584 --> 01:00:35,937
มันอันนี้เป็นนามสกุลไฟล์ภาพ

792
01:00:17,032 --> 01:00:18,393

793
01:00:18,393 --> 01:00:22,393
มันได้อยู่

794
01:00:27,788 --> 01:00:31,788
มันเป็นนามสกุลนะ แต่ชื่อห้ามผิด

795
01:00:32,668 --> 01:00:36,668
มันรู้อยู่ โปรแกรมมันจะรู้อยู่

796
01:00:48,717 --> 01:00:47,473

797
01:00:33,352 --> 01:00:33,804

798
01:00:33,804 --> 01:00:37,804
มันน่าจะเว้นวรรคผิด

799
01:00:44,690 --> 01:00:45,847
เดี๋ยวตอน Error ก็จะรู้กัน สร้าง method แล้ว

800
01:00:45,847 --> 01:00:49,847

801
01:00:52,102 --> 01:00:54,432
ทำอะไรต่อ

802
01:00:54,432 --> 01:00:58,432
โหลด sprite sheet แล้ว

803
01:01:02,477 --> 01:01:02,816
มีบรรทัด

804
01:01:02,816 --> 01:01:06,816
ต่อนะคะเด็ก ๆ นี่ เราจะระบุ

805
01:01:09,052 --> 01:01:13,052
ตำแหน่งว่าตำแหน่งปัจจุบัน

806
01:01:19,577 --> 01:01:23,577
ของตัว sprite เราจะเริ่มที่ 0 นะคะ แล้วก็จะมาเรียกใช้ จะสร้าง จะทำ Animation

807
01:01:27,453 --> 01:01:31,453
เห็นไหม Create Animation แล้ว

808
01:01:34,850 --> 01:01:38,850
ขั้นต่อไปนะคะ

809
01:01:40,653 --> 01:01:44,653
เราโหลด... ตอนนี้เราสั่งให้มันไปโหลดภาพ

810
01:01:49,745 --> 01:01:53,745
ต่อมาเราจะสร้างส่วนของ Animation นะคะ

811
01:02:03,372 --> 01:02:07,372
เดี๋ยว

812
01:02:10,971 --> 01:02:12,779

813
01:01:52,534 --> 01:01:54,603

814
01:01:54,603 --> 01:01:58,603

815
01:02:04,831 --> 01:02:06,077
ใส่ # ค่ะ

816
01:02:06,077 --> 01:02:08,816
ใส่ # เราจะ

817
01:02:08,816 --> 01:02:12,816
เข้าสู่การสร้าง Animation แล้ว

818
01:02:17,990 --> 01:02:21,990
สร้าง... สร้างภาพเคลื่อนไหวก็ได้ เดี๋ยวจะ

819
01:02:24,072 --> 01:02:26,441
งง

820
01:02:26,441 --> 01:02:30,441

821
01:02:33,038 --> 01:02:36,975
เอาเป็นภาษาไทย สร้างการเคลื่อนไหว

822
01:02:36,975 --> 01:02:38,232
นะคะ

823
01:02:38,232 --> 01:02:42,232

824
01:02:43,173 --> 01:02:47,173
# ไว้ จะได้รู้ส่วน

825
01:02:48,952 --> 01:02:52,952

826
01:02:53,126 --> 01:02:57,126
ตำแหน่งอยู่ตรง self นะคะ

827
01:03:00,792 --> 01:03:04,792
ใช้วิธีกด Tab นะ ใช้วิธีกด Tab นะคะ อย่าใช้ Spacebar

828
01:03:07,487 --> 01:03:09,839
เข้าไปให้ตรงกับตำแหน่ง seft เดิมเรา

829
01:03:09,839 --> 01:03:13,839
พิมพ์ self ภาษาไม่เปลี่ยน พิมพ์ self พิมพ์ s เลือก self

830
01:03:16,450 --> 01:03:17,734

831
01:03:17,734 --> 01:03:21,734
.ดูนะคะ คำสั่งนี้

832
01:03:23,006 --> 01:03:24,504
ยาวหน่อยหนึ่ง self

833
01:03:24,504 --> 01:03:28,504
.current_sprite sprite ธรรมดา

834
01:03:33,603 --> 01:03:35,574
นะคะ อันนี้จะเป็นตัวแปรนะ current

835
01:03:35,574 --> 01:03:39,574
_sprite เพราะฉะนั้น เราต้องพิมพ์เองนะคะ

836
01:03:44,289 --> 01:03:46,855
c-u-r-r-e-n-t

837
01:03:46,855 --> 01:03:50,855
_s-p-r-i-t-e นี่เป็น

838
01:04:04,753 --> 01:04:01,985

839
01:03:49,704 --> 01:03:53,704
ตัวแปรที่เราจะสร้างเพื่อระบุว่าตำแหน่งเริ่มต้นหรือตำแหน่งปัจจุบันนี้

840
01:03:58,231 --> 01:04:02,231
ก็คือให้มันเริ่มที่ 0 self current_s

841
01:04:03,826 --> 01:04:07,141
= 0

842
01:04:07,141 --> 01:04:10,992
1

843
01:04:10,992 --> 01:04:13,824
นะคะ

844
01:04:13,824 --> 01:04:17,824
คำสั่งแรก ก็คือกำหนด

845
01:04:21,571 --> 01:04:23,781
ให้

846
01:04:23,781 --> 01:04:27,781
ตัวแปรที่ชื่อ current_sprite มีค่าที่ 0

847
01:04:32,723 --> 01:04:33,673
ไอ้ตัวนี้ ก็คือเป็นคำสั่งที่บอกว่านี่ค่าเริ่มต้น

848
01:04:33,673 --> 01:04:35,758
ของภาพนะคะ จะต้องเริ่มที่

849
01:04:35,758 --> 01:04:39,758
0 เสมอนะคะ กำหนดไว้

850
01:04:50,165 --> 01:04:47,627

851
01:04:41,860 --> 01:04:45,860
self.current_sprite = 0

852
01:04:48,042 --> 01:04:49,681
current ใส่ _ ด้วยนะครับ

853
01:04:49,681 --> 01:04:53,681
คือ แยก 2 คำน่ะ สาเหตุ

854
01:04:56,421 --> 01:05:00,421
ที่มี _ มีอะไรอย่างนี้ บางทีประโยคมันยาวนี่

855
01:05:10,314 --> 01:05:08,916

856
01:05:02,781 --> 01:05:06,739
ถ้าเราไปพิมพ์ติดกัน เวลาเราเช็กโค้ดมันจะลายตา นึกออกนะ

857
01:05:06,739 --> 01:05:10,739
เพราะฉะนั้นเราใช้ตัว _ เพื่อในการแยกคำน่ะค่ะ

858
01:05:11,569 --> 01:05:15,217

859
01:05:15,217 --> 01:05:17,424

860
01:05:17,424 --> 01:05:21,424

861
01:05:32,332 --> 01:05:33,497

862
01:05:33,497 --> 01:05:37,497

863
01:05:48,344 --> 01:05:52,344

864
01:05:56,346 --> 01:06:00,346

865
01:06:04,348 --> 01:06:08,348

866
01:06:08,350 --> 01:06:12,350
ไปบรรทัด

867
01:06:12,427 --> 01:06:16,427
ต่อไปนะคะ เราจะ

868
01:06:16,772 --> 01:06:20,772
กำหนดให้เรียกใช้ เรียกรูปนั่นเองนะคะ

869
01:06:21,613 --> 01:06:25,613
พิมพ์ s แล้วเลือก self เหมือนเดิม

870
01:06:26,115 --> 01:06:28,026
ตามด้วยเครื่องหมาย .

871
01:06:28,026 --> 01:06:32,026
.อะไร .image

872
01:06:35,141 --> 01:06:39,141
นะคะ คลิก i-m-a-g-e

873
01:06:45,548 --> 01:06:51,132
เห็นไหมคะ .image

874
01:06:37,531 --> 01:06:41,531
= ใส่เครื่องหมาย

875
01:06:42,417 --> 01:06:46,417
เท่ากับนะคะ วรรค =

876
01:06:46,984 --> 01:06:50,984
self อีกครั้งหนึ่งค่ะ เรียกใช้ self อีกครั้งหนึ่ง

877
01:06:56,374 --> 01:07:00,374
แล้วเลือก self.sprite sprites ที่เราจะใช้ตัวนี้ ก็คือ sprites นะคะ

878
01:07:05,706 --> 01:07:09,706
ไปหา sprites นะคะ

879
01:07:12,381 --> 01:07:15,547
เราเลือกตัวนี้นะคะ แล้วก็ใส่วงเล็บสี่เหลี่ยมใหญ่เข้าไป

880
01:07:15,547 --> 01:07:19,547
แล้วพิมพ์

881
01:07:23,889 --> 01:07:27,889
เรียกใช้ self.current_sprites นะคะ รอบต่อมา ในวงเล็บ

882
01:07:30,559 --> 01:07:30,579
สี่เหลี่ยมใหญ่นี่เราจะเรียกใช้

883
01:07:30,579 --> 01:07:33,382
self.

884
01:07:33,382 --> 01:07:37,382
พิมพ์ c แล้วเลือก current...

885
01:07:40,498 --> 01:07:44,498
c-u เห็นไหมคะ เลือก current_sprite

886
01:07:47,611 --> 01:07:50,663
นี่เลย เห็นไหมจะได้ไม่พิมพ์ผิด ที่

887
01:07:50,663 --> 01:07:52,308
เราสร้างไว้นั่นเองนะคะ

888
01:07:52,308 --> 01:07:53,589

889
01:07:53,589 --> 01:07:57,553

890
01:07:57,553 --> 01:08:01,553

891
01:08:03,038 --> 01:08:06,058

892
01:08:06,058 --> 01:08:09,909

893
01:08:09,909 --> 01:08:13,569

894
01:08:13,569 --> 01:08:17,569
บรรทัดต่อมาเลยนะคะ

895
01:08:19,758 --> 01:08:21,971

896
01:08:21,971 --> 01:08:25,971
พิมพ์ self เหมือนเดิม

897
01:08:30,231 --> 01:08:34,231
นะคะ เลือก self.

898
01:08:44,716 --> 01:08:47,520

899
01:08:30,770 --> 01:08:34,770
อันนี้พิมพ์เองนะคะ rect

900
01:08:44,417 --> 01:08:45,113
r-e-c-t rect

901
01:08:45,113 --> 01:08:46,085
self.rect =

902
01:08:46,085 --> 01:08:50,057
self วรรคก่อน self

903
01:08:50,057 --> 01:08:51,909
นะคะ เลือก self

904
01:08:51,909 --> 01:08:55,370
.

905
01:08:55,370 --> 01:08:59,370
เลือก self.

906
01:09:02,149 --> 01:09:06,025
image ค่ะ i เลือก image

907
01:09:06,025 --> 01:09:10,025
แล้วก็ .

908
01:09:16,428 --> 01:09:20,428
get g เห็นไหมคะ .get_

909
01:09:27,218 --> 01:09:35,133

910
01:09:17,847 --> 01:09:21,847

911
01:09:25,824 --> 01:09:29,824
r-e-c-t rect นะคะ แล้วก็วงเล็บ

912
01:09:34,226 --> 01:09:38,226
ก็กำหนดอีกตัวหนึ่งนะคะ self

913
01:09:44,999 --> 01:09:48,999
เหมือนเดิม เลือก self เหมือนเดิม

914
01:09:56,488 --> 01:09:55,813

915
01:09:47,480 --> 01:09:48,087
. เหมือนเดิมค่ะ

916
01:09:48,087 --> 01:09:52,087
อันนี้กำหนดตำแหน่ง

917
01:09:52,201 --> 01:09:56,201
rect top

918
01:10:01,929 --> 01:10:03,033
นะคะ rect ปุ๊บ

919
01:10:03,033 --> 01:10:07,033
เลือก rect แล้วก็ .top

920
01:10:10,674 --> 01:10:14,674
t-o-p top แล้วก็บนซ้าย

921
01:10:15,788 --> 01:10:18,372
top แล้วก็ left l-e-f-t

922
01:10:18,372 --> 01:10:20,735
topleft นะคะ =

923
01:10:20,735 --> 01:10:21,865

924
01:10:21,865 --> 01:10:25,865
วงเล็บใหญ่ วงเล็บสี่เหลี่ยมใหญ่ pos

925
01:10:34,179 --> 01:10:38,080
เลือก pos_x แล้วก็

926
01:10:38,080 --> 01:10:40,810
ใส่ : แล้วก็เลือก pos

927
01:10:40,810 --> 01:10:44,810
_y นะคะ เห็นไหมคะ ระบุตำแหน่งแล้ว อยู่ที่ pos_x, pos_y

928
01:10:52,461 --> 01:10:56,461
ของเรานะคะ ให้ค่าเริ่มต้นในการทำงานเริ่มที่นี่

929
01:10:58,129 --> 01:11:02,129
เช็กดี ๆ นะคะ ถ้าพิมพ์ถูกแล้ว

930
01:11:03,224 --> 01:11:07,224
สีจะขึ้นแบบนี้เลย สี self

931
01:11:09,693 --> 01:11:13,693
สีตัวเลข สี = นี่ จะขึ้นอย่างนี้เลย ถ้าใครไม่ขึ้นนี่แสดงว่าพิมพ์ตรงใดตรงหนึ่ง

932
01:11:17,757 --> 01:11:21,757
ผิดแน่นอน โครงสร้างผิดแน่นอนะคะ Sublime จะช่วย

933
01:11:22,824 --> 01:11:25,057
ในการเช็ก Coding ได้ดีเลยนะคะ

934
01:11:25,057 --> 01:11:29,057
ใครยังพิมพ์ 1 2 3 4 4 บรรทัดนี้ไม่เสร็จ พิมพ์เสร็จหรือยังคะ

935
01:11:33,470 --> 01:11:37,470
ดูดี ๆ นะคะ sprites ที่ใช้ sprites ที่เรียกใช้

936
01:11:46,512 --> 01:11:45,180

937
01:11:35,890 --> 01:11:39,890
คือ sprites นะคะ ตรงนี้ ตรงตำแหน่งนี้

938
01:11:50,824 --> 01:11:48,344

939
01:11:42,544 --> 01:11:43,034
เรียกผิดชีวิตเปลี่ยนนะ

940
01:11:43,034 --> 01:11:46,245
มันจะไม่ขึ้น ไม่อย่างนั้นก็จะ Error ไปเลยนะคะ

941
01:11:46,245 --> 01:11:50,245
โอเคนะคะ

942
01:11:55,607 --> 01:11:59,607
ยังไม่จบ ยังไม่จบ โค้ดมันเยอะหน่อยหนึ่ง แต่พอเวลา

943
01:12:04,484 --> 01:12:06,375
ไปเรียกนิดเดียวจริง ๆ class class ก็คือ class จะใหญ่

944
01:12:06,375 --> 01:12:10,375
หน่อย เรา Create Animation

945
01:12:16,236 --> 01:12:17,036
แล้ว สิ่งที่เราจะทำต่อไป นี่นะคะ เราจะมาเรียกใช้มันแล้วนี่ ๆ ๆ

946
01:12:17,036 --> 01:12:19,082

947
01:12:19,082 --> 01:12:23,082
ไม่ใช่เรียกใช้เราจะทำ sprite น่ะ

948
01:12:40,214 --> 01:12:39,019

949
01:12:30,791 --> 01:12:34,791
จัดมัน Group มัน Group

950
01:12:35,433 --> 01:12:37,212
Group รูปมันน่ะ จากภาพใหญ่ ๆ เป็นภาพ

951
01:12:37,212 --> 01:12:38,814
เดียวนะคะ นี่นะคะ

952
01:12:38,814 --> 01:12:42,814
สร้าง sprite แล้วก็ Group

953
01:12:46,056 --> 01:12:46,484
น้องด้วยนะคะ

954
01:12:46,484 --> 01:12:50,484
คือ คำสั่งนี้เลย

955
01:12:53,191 --> 01:12:54,087

956
01:12:54,087 --> 01:12:57,971

957
01:12:57,971 --> 01:13:01,971

958
01:13:12,516 --> 01:13:16,516

959
01:13:16,521 --> 01:13:20,521
อ๋อ มันเป็นไอ้นี่

960
01:13:26,793 --> 01:13:25,902
อ๋อ

961
01:13:16,632 --> 01:13:17,834
มันเรียนรวม

962
01:13:17,834 --> 01:13:21,834
สอบ

963
01:13:24,512 --> 01:13:28,512
แล้วหรือ สอบแต่...

964
01:13:31,454 --> 01:13:35,454
ดูนะคะ ส่วนต่อมาเมื่อกี้เราจะ

965
01:13:40,892 --> 01:13:44,892
เรียกใช้มัน เราจะสร้างแล้วก็ไอ้นี่ตำแหน่งจะอยู่ที่หลังเงื่อนไขนะ

966
01:13:48,543 --> 01:13:49,277
ตำแหน่ง

967
01:13:49,277 --> 01:13:53,277
โค้ดเสร็จหมดแล้วนะคะ

968
01:13:54,275 --> 01:13:58,275
4 บรรทัดนี้ใครยังไม่เสร็จ โอเคนะคะ

969
01:14:00,812 --> 01:14:04,812
เรามาที่ตำแหน่งนี้

970
01:14:05,367 --> 01:14:08,617
เห็นไหมคะ ตำแหน่งของการแสดงผลนี่ ก่อนตำแหน่ง

971
01:14:08,617 --> 01:14:12,617
นี้นิดหนึ่งนะคะ ใส่ # เข้าไปเพื่อจะอธิบายว่าตรง

972
01:14:15,264 --> 01:14:19,264
ส่วนนี้เราจะสร้าง

973
01:14:25,385 --> 01:14:44,004
สร้างภาพต่อเนื่อง

974
01:14:20,622 --> 01:14:23,843

975
01:14:23,843 --> 01:14:27,843

976
01:14:30,370 --> 01:14:34,370
แล้วก็ มันไม่สร้าง

977
01:14:35,574 --> 01:14:39,574
มันสร้างไปแล้ว เราจะทำภาพต่อเนื่องให้มัน

978
01:14:43,733 --> 01:14:45,584
เป็น... Group มันเข้าไป

979
01:14:45,584 --> 01:14:49,584
ให้มันเหมือนมันเป็นรูปเดียวน่ะ

980
01:14:58,671 --> 01:14:55,557

981
01:14:52,079 --> 01:14:56,079

982
01:14:57,227 --> 01:15:01,227
ชื่อพอแปลเป็นไทย

983
01:15:06,253 --> 01:15:09,838
แปลลำบากมากเลย ขอเป็นภาษาอังกฤษ

984
01:15:09,838 --> 01:15:12,123
แล้วกัน อธิบายยาก คำไทยคำเยอะ

985
01:15:12,123 --> 01:15:16,123
เกินอธิบาย เรานักคอมพิวเตอร์

986
01:15:19,064 --> 01:15:23,064
เราแปลด้วยภาษาอังกฤษเป็นภาษาอังกฤษดีกว่า

987
01:15:28,565 --> 01:15:32,209
c-r-e-a-t-e create

988
01:15:32,209 --> 01:15:36,209
_sprites

989
01:15:36,564 --> 01:15:40,564
and group คือ ไอ้รูป sprite ที่เราทำเสร็จแล้วนี่ เรา

990
01:15:43,738 --> 01:15:44,852
จะนำมันมารวมให้มันเป็นเหลือ

991
01:15:44,852 --> 01:15:48,852
รูปเดียวน่ะ จากหลาย ๆ รูปน่ะ นึกออกนะคะ

992
01:15:51,484 --> 01:15:52,060
นะคะ

993
01:15:52,060 --> 01:15:53,953

994
01:15:53,953 --> 01:15:57,795

995
01:15:57,795 --> 01:16:01,795

996
01:16:12,582 --> 01:16:15,020
เรียน ๆ ๆ

997
01:16:15,020 --> 01:16:19,020
กำหนด

998
01:16:20,400 --> 01:16:24,400
ตัวแปร

999
01:16:33,879 --> 01:16:38,311

1000
01:16:23,660 --> 01:16:26,064

1001
01:16:26,064 --> 01:16:30,064
moving

1002
01:16:35,276 --> 01:16:39,276
เคลื่อนไหวนะคะ เคลื่อนไหว moving

1003
01:16:44,679 --> 01:16:46,699
_ การเคลื่อนไวของภาพ sprite เรา

1004
01:16:46,699 --> 01:16:49,203
moving_sprite

1005
01:16:49,203 --> 01:16:50,020

1006
01:16:50,020 --> 01:16:54,020
=

1007
01:16:57,707 --> 01:17:00,069

1008
01:17:00,069 --> 01:17:04,069
pygame กด p

1009
01:17:04,739 --> 01:17:08,739
เลือก pygame.sprite

1010
01:17:13,828 --> 01:17:17,828
พิมพ์ sprite เลือก

1011
01:17:19,572 --> 01:17:23,572
sprite เล็กนะคะ sprite ตัวเล็กที่ไม่มี s ดูดี ๆ นะคะ ตัวที่เลือก

1012
01:17:25,709 --> 01:17:29,709
pygame.sprite นี่เป็น sprite ที่ไม่มี s นะคะ

1013
01:17:30,386 --> 01:17:34,386
.Group Group นี่

1014
01:17:36,620 --> 01:17:40,620
ใช้ตัวใหญ่ เพราะตัวนี้มันเป็นฟังก์ชัน

1015
01:17:41,810 --> 01:17:45,810
ที่เขาสร้างไว้แล้วนะคะ

1016
01:17:54,954 --> 01:18:00,103
ชื่อว่า Group ไม่ใช่ฟังก์ชันหลัก

1017
01:17:49,212 --> 01:17:53,212
ถ้าตัวใหญ่นี่ มันคือ class class ที่ชื่อว่า group

1018
01:17:56,629 --> 01:18:00,528
อยู่ใน Library นะคะ จะไปเรียกใช้ class จาก group นะคะ

1019
01:18:00,528 --> 01:18:04,528
เพราะฉะนั้น เลยใช้ตัวใหญ่ สังเกตนะคะ

1020
01:18:07,943 --> 01:18:08,788
Group ใหญ่นะคะ ต่อไปบรรทัดต่อไป

1021
01:18:08,788 --> 01:18:11,760
นะคะ

1022
01:18:11,760 --> 01:18:14,859

1023
01:18:14,859 --> 01:18:18,747

1024
01:18:18,747 --> 01:18:22,020

1025
01:18:22,020 --> 01:18:26,020

1026
01:18:27,036 --> 01:18:31,036

1027
01:18:32,651 --> 01:18:34,019

1028
01:18:34,019 --> 01:18:37,901

1029
01:18:37,901 --> 01:18:41,901

1030
01:18:42,089 --> 01:18:46,089

1031
01:18:47,546 --> 01:18:51,546

1032
01:18:54,067 --> 01:18:58,067
สิ่งที่เราจะทำต่อมา ก็คือ

1033
01:18:58,380 --> 01:19:02,380
ประกาศตัวแปรเพื่อเรียกใช้ไอ้

1034
01:19:08,185 --> 01:19:12,185
ตัว class ของเรานะคะ class เราชื่อ class

1035
01:19:12,921 --> 01:19:16,921
ตัวใหญ่มันใช้คำว่า "Cat" ใช่ไหม

1036
01:19:27,586 --> 01:19:26,654
เพราะฉะนั้น

1037
01:19:18,213 --> 01:19:22,213
ตัวแปรเราก็จะใช้เป็นตัวเล็กนะคะ

1038
01:19:24,674 --> 01:19:25,045
ก็จะเป็น cat เล็ก = Cat

1039
01:19:25,045 --> 01:19:29,045
เพราะเราจะเรียกใช้ class เราต้องเรียก Cat ใหญ่

1040
01:19:34,719 --> 01:19:38,487
นะคะ ใน class ก็จะมี

1041
01:19:38,487 --> 01:19:39,298
ด้วย ในวงเล็บใส่อะไร

1042
01:19:39,298 --> 01:19:43,298
ตำแหน่งค่ะ ตำแหน่งของไอ้ตัวนี้

1043
01:19:43,623 --> 01:19:45,901
ลองใส่ก่อนนะ ขอลองที่

1044
01:19:45,901 --> 01:19:49,901
10, 10

1045
01:20:06,046 --> 01:20:03,806
เสียก่อน

1046
01:19:48,338 --> 01:19:52,338
อยากรู้เหมือนกันว่ามันจะไปโผล่ตรงไหน

1047
01:20:00,172 --> 01:20:04,172
แล้วก็กำหนดให้ตัวแปร moving sprite

1048
01:20:12,686 --> 01:20:13,755
นี่นะคะ

1049
01:20:13,755 --> 01:20:16,380
นำเข้าไอ้รูปนั้นน่ะ ให้มัน Group

1050
01:20:16,380 --> 01:20:20,380
พิมพ์ m แล้วเลือก moving_sprites

1051
01:20:23,423 --> 01:20:27,423

1052
01:20:28,689 --> 01:20:31,666
นะคะ sprites นี้ใช้

1053
01:20:31,666 --> 01:20:35,666
sprites ที่เติม s นะคะ ดูดี ๆ

1054
01:20:36,336 --> 01:20:40,336
ไม่เหมือนกันนะคะ ลูก .add เพื่อให้มัน add อะไรเข้าไป

1055
01:20:43,882 --> 01:20:44,370
ให้มัน add

1056
01:20:44,370 --> 01:20:45,853
ตัวแปร

1057
01:20:45,853 --> 01:20:49,853
cat เล็กของเราเข้าไป c-a-t cat

1058
01:21:00,704 --> 01:21:02,138
เล็ก โอเค ให้มันเอาไปไว้

1059
01:21:02,138 --> 01:21:06,138
ที่ cat นี้ คือ เป็นเอาภาพที่มันต่อกันหลาย ๆ ภาพนี่

1060
01:21:08,087 --> 01:21:12,087
มาให้มันทำให้มันเป็นภาพเดียวน่ะค่ะ

1061
01:21:15,487 --> 01:21:19,487
รวมกันเป็นภาพ 1 ภาพ ให้มันดูเหมือนเป็นรูปเดียวนะคะ

1062
01:21:22,180 --> 01:21:26,087
3 บรรทัดนี้เสร็จหรือยังคะ

1063
01:21:26,087 --> 01:21:29,681
ใครยังไม่เสร็จ

1064
01:21:29,681 --> 01:21:33,681
ยังนะคะ ถ้าอย่างนั้นเดี๋ยวไปต่อ

1065
01:21:33,802 --> 01:21:37,802
ไม่ได้ มันจะขาดตอน เช็กนะคะ

1066
01:21:40,127 --> 01:21:44,127
เช็คตรง sprite แรก sprite

1067
01:21:48,639 --> 01:21:52,639
ไม่มี s นะคะ ดูดี ๆ sprites ตัวที่ 2

1068
01:21:52,726 --> 01:21:52,757
ที่เรียกใช้หลัง . มี s นะคะ ต่างกันตรงนี้ เพราะมันจะไม่ขึ้น Error เพราะมันี่เรียกใช้หลัง . มี s นะคะ ต่างกันตรงนี้ เพราะมันจะไม่ขึ้น Error เพราะมัน

1069
01:21:52,757 --> 01:21:56,757
สร้างแล้วมันโดนสร้างแล้ว

1070
01:21:59,228 --> 01:22:03,228
เช็กตรงนี้ 2 จุดนี้

1071
01:22:04,825 --> 01:22:05,110
พอ sprite

1072
01:22:05,110 --> 01:22:09,110
ที่กำหนดใน moving_sprite นี่ไม่มี

1073
01:22:23,440 --> 01:22:22,613
s แต่

1074
01:22:16,731 --> 01:22:19,941
เวลาเรียกน่ะ เรียกต้องมี s

1075
01:22:19,941 --> 01:22:21,587
นะคะ เป็นต้น โอเคนะคะ น่าจะเสร็จกันหมดแล้วทุกคน

1076
01:22:21,587 --> 01:22:25,587
มาดูที่เราจะต้องทำต่อ

1077
01:22:35,449 --> 01:22:32,455

1078
01:22:24,118 --> 01:22:28,003

1079
01:22:28,003 --> 01:22:30,233

1080
01:22:30,233 --> 01:22:34,233
เราจะสร้าง

1081
01:22:35,731 --> 01:22:39,731
ฟังก์ชันให้มันวิ่ง ทีนี้

1082
01:22:41,872 --> 01:22:45,872
นะคะ กำหนดฟังก์ชัน

1083
01:22:51,948 --> 01:22:54,038
Run เห็นไหมคะ แล้วก็ Update

1084
01:22:54,038 --> 01:22:56,157
เมื่อมันวิ่งไปแล้วนะคะ

1085
01:22:56,157 --> 01:22:58,072

1086
01:22:58,072 --> 01:23:02,072

1087
01:23:03,032 --> 01:23:07,032
เด็ก ๆ ต้องบอกว่าทำไมวันนี้

1088
01:23:10,861 --> 01:23:14,861
โค้ดเยอะจังเลย คือ มันยาวน่ะ แต่พอ

1089
01:23:17,207 --> 01:23:21,207
สร้างแล้ว มันจะใช้อันเดียวจบ

1090
01:23:30,945 --> 01:23:39,169

1091
01:23:25,016 --> 01:23:28,653
เอาไปใช้กับครั้งต่อ ๆ ไปได้นะคะ

1092
01:23:28,653 --> 01:23:31,914

1093
01:23:31,914 --> 01:23:35,914
เพราะฉะนั้น ตัวนี้นะคะ

1094
01:23:39,977 --> 01:23:42,111

1095
01:23:42,111 --> 01:23:46,085

1096
01:23:46,085 --> 01:23:50,085

1097
01:23:54,431 --> 01:23:58,431
เราจะไปที่บรรทัดที่ต่อจาก class เห็นไหมคะ

1098
01:24:00,070 --> 01:24:00,767
บรรทัดสุดท้ายของ class นี่นะคะ

1099
01:24:00,767 --> 01:24:04,162
Enter ลงไป ใส่ #

1100
01:24:04,162 --> 01:24:08,162
หน่อย เราจะบอกเขา บอกโปรแกรม

1101
01:24:09,721 --> 01:24:13,721
บอกตัวเอง บอกตัวเองนี่ ถ้าใส่ # บอกตัวเอง

1102
01:24:26,020 --> 01:24:26,840
นะคะ

1103
01:24:15,223 --> 01:24:19,223
ว่าตรงส่วนนี้เราทำอะไร สร้างฟังก์ชันค่ะ สร้างฟังก์ชัน

1104
01:24:20,651 --> 01:24:22,320

1105
01:24:22,320 --> 01:24:26,320
ตรงส่วนนี้เราจะสร้างฟังก์ชัน

1106
01:24:28,814 --> 01:24:29,999

1107
01:24:29,999 --> 01:24:33,999
Run นะคะ

1108
01:24:38,808 --> 01:24:42,808
ที่ชื่อว่า Run กับ Update Run

1109
01:24:48,376 --> 01:24:50,838
แล้วก็ Update 2 ตัว

1110
01:24:50,838 --> 01:24:54,838
รูปแบบ

1111
01:24:58,183 --> 01:25:02,183
ของการสร้างฟังก์ชัน ก็คือ Definition

1112
01:25:03,440 --> 01:25:03,872
คำว่า "def" นั่นเองนะคะ

1113
01:25:03,872 --> 01:25:07,872

1114
01:25:16,805 --> 01:25:20,805

1115
01:25:21,911 --> 01:25:25,911
Tab Tab เข้าไป

1116
01:25:27,177 --> 01:25:31,177
แค่ 1 ครั้งนะคะ มันจะไม่อยู่ตรงกับ self นะ

1117
01:25:35,434 --> 01:25:39,434
มันจะอยู่ก่อน self d เห็นไหมคะ

1118
01:25:49,754 --> 01:25:47,846
เลือก

1119
01:25:36,536 --> 01:25:40,536
def function นะคะเด็ก ๆ

1120
01:25:43,865 --> 01:25:47,865
function นะคะ definition ชื่อฟังก์ชัน

1121
01:26:01,123 --> 01:26:01,125

1122
01:25:50,211 --> 01:25:52,708
ก็คือ Run ตัวแรก ตัวแรก ตัวเขียว ๆ นี่

1123
01:25:52,708 --> 01:25:54,961
ไม่ใช่ในวงเล็บ ที่ขึ้นคำว่า "function"

1124
01:25:54,961 --> 01:25:58,961
เป็น run นะคะ เพราะ function  ที่เราใช้

1125
01:26:01,130 --> 01:26:05,130
มันชื่อว่า run เราจะใช้  run

1126
01:26:14,440 --> 01:26:12,824

1127
01:26:06,587 --> 01:26:08,465
นะคะ แล้วก็เรียก self

1128
01:26:08,465 --> 01:26:12,465
มา กด s แล้วเลือก self

1129
01:26:13,608 --> 01:26:14,511

1130
01:26:14,511 --> 01:26:18,265

1131
01:26:18,265 --> 01:26:22,010

1132
01:26:22,010 --> 01:26:26,010
ในส่วน

1133
01:26:28,316 --> 01:26:32,316
ของบรรทัดที่ 2 นะคะ

1134
01:26:34,299 --> 01:26:38,299
พิมพ์ self ค่ะ กด s เลือก

1135
01:26:39,059 --> 01:26:43,059
self.run

1136
01:26:43,500 --> 01:26:47,500

1137
01:26:52,216 --> 01:26:56,216
_animate นะคะ animate มาจาก animation

1138
01:27:04,803 --> 01:27:06,187
จะยาวไป animate

1139
01:27:06,187 --> 01:27:10,187

1140
01:27:14,504 --> 01:27:18,504
run_anime

1141
01:27:18,921 --> 01:27:22,921
anime นี่สั้นกว่าอีก

1142
01:27:26,409 --> 01:27:28,373
run_anime จะงงไหมล่ะนี่

1143
01:27:28,373 --> 01:27:32,373
เอา animate แล้วกัน

1144
01:27:42,609 --> 01:27:44,068

1145
01:27:32,491 --> 01:27:34,952

1146
01:27:34,952 --> 01:27:38,952
=

1147
01:27:40,285 --> 01:27:44,285
True ทำงานเมื่อเป็นจริง

1148
01:27:56,278 --> 01:27:54,732

1149
01:27:47,132 --> 01:27:51,132
จะใส่เงื่อนไขแล้วนะคะ

1150
01:27:58,732 --> 01:28:07,983
เท่ากับ... True

1151
01:27:53,152 --> 01:27:57,152
นะ t เลือก Ture Ture ใหญ่

1152
01:28:14,366 --> 01:28:11,180

1153
01:28:00,867 --> 01:28:03,052
เรามี function run แล้ว

1154
01:28:03,052 --> 01:28:07,052
สร้างอีก 1 ฟังก์ชันนะคะ def

1155
01:28:08,440 --> 01:28:12,440
เหมือนเดิม เลือก def function

1156
01:28:16,872 --> 01:28:18,863
เหมือนเดิม ตรงตำแหน่งชื่อฟังก์ชัน เปลี่ยนเป็นเราสร้าง 2 ตัวนะ เราบอกเรา

1157
01:28:18,863 --> 01:28:22,863
จะสร้าง 2 ตัว ก็คือ run กับ

1158
01:28:24,180 --> 01:28:28,180
update นะคะ ชื่อฟังก์ชัน

1159
01:28:29,746 --> 01:28:30,109
ไม่จำเป็นต้องใช้ตัวใหญ่

1160
01:28:30,109 --> 01:28:34,109

1161
01:28:40,538 --> 01:28:44,538
เรียกใช้ self ค่ะ self

1162
01:28:45,873 --> 01:28:49,873
แล้วก็ใส่ : แล้วก็เรียกใช้

1163
01:28:53,135 --> 01:28:55,809
speed

1164
01:28:55,809 --> 01:28:59,809

1165
01:29:08,900 --> 01:29:12,900

1166
01:29:16,900 --> 01:29:19,336
ในส่วนของ statements

1167
01:29:19,336 --> 01:29:23,336
หรือ pass นี่นะคะ

1168
01:29:23,894 --> 01:29:27,894
เราจะมากำหนดเงื่อนไขให้

1169
01:29:27,941 --> 01:29:31,617
มันทำงานนั่นเองนะคะ

1170
01:29:31,617 --> 01:29:35,617
ก็คือใช้คำสั่ง if ค่ะ if statements

1171
01:29:37,084 --> 01:29:37,734
นี่ if condition ตัวแรก

1172
01:29:37,734 --> 01:29:41,638

1173
01:29:41,638 --> 01:29:45,638
ไม่พิมพ์เองนะเด็ก ๆ ไม่อย่างนั้นเดี๋ยว

1174
01:29:52,942 --> 01:29:56,637
รูปแบบมันจะผิด ให้เลือก i แล้วเลือก if condition

1175
01:29:56,637 --> 01:30:00,637
นะคะ ไม่พิมพ์นะคะ

1176
01:30:08,945 --> 01:30:10,126
เลือกใช้...

1177
01:30:10,126 --> 01:30:14,126
เรียก self มา self

1178
01:30:14,835 --> 01:30:18,835
. เลือก run_animate

1179
01:30:24,957 --> 01:30:28,957
ที่สร้างไว้มาใช้งาน ถ้ามี if คำสั่ง = มี 2

1180
01:30:32,135 --> 01:30:36,135
ตัวนะคะ == Ture ค่ะ

1181
01:30:40,179 --> 01:30:44,179
True พิมพ์ T แล้วเลือก True ใหญ่นะคะ

1182
01:30:52,962 --> 01:30:53,068
ตรงส่วน statements pass

1183
01:30:53,068 --> 01:30:57,068
เราจะเรียก current_sprite

1184
01:31:01,831 --> 01:31:05,831
มานะคะ พิมพ์ self เหมือนเดิม self self

1185
01:31:12,370 --> 01:31:13,104
.cu เลือก current_sprite กด Enter

1186
01:31:13,104 --> 01:31:14,708

1187
01:31:14,708 --> 01:31:18,708

1188
01:31:22,465 --> 01:31:26,465
เราจะเพิ่ม นึกออกนะ พอเวลาที่มันเคลื่อนน่ะค่ะ

1189
01:31:28,392 --> 01:31:32,392
ตำแหน่งปัจจุบันมันเริ่มที่ 0

1190
01:31:39,706 --> 01:31:43,706
เพราะฉะนั้น

1191
01:31:46,257 --> 01:31:47,153
+

1192
01:31:29,449 --> 01:31:33,449
เราจะต้องเพิ่มค่าให้มัน

1193
01:31:40,419 --> 01:31:41,612
นะคะ  ใส่เครื่องหมาย +

1194
01:31:41,612 --> 01:31:45,612
แล้วก็ = ก็คือเพิ่ม ในความหมาย ก็คือถ้าใส่ +

1195
01:31:51,596 --> 01:31:55,596
ก็คือบวก บวกอะไรเข้าไป ให้บวกเข้าไปใน speed

1196
01:31:59,605 --> 01:32:02,619
ที่เราสร้างไว้ กด sp แล้วเลือก speed

1197
01:32:02,619 --> 01:32:06,619

1198
01:32:08,929 --> 01:32:12,929
กด Enter นะคะ เราจะเพิ่มเงื่อนไขซ้อน

1199
01:32:14,472 --> 01:32:18,472
เงื่อนไข เพราะอันนี้เพิ่มแค่ speed นะ

1200
01:32:22,738 --> 01:32:26,738
เพิ่มความเร็วเข้าไป กด i แล้วเลือก if condition

1201
01:32:33,002 --> 01:32:37,002
เหมือนเดิมนะคะ if init

1202
01:32:40,120 --> 01:32:44,120
int

1203
01:32:45,075 --> 01:32:45,297
ตัวแปรนี้นะคะ ไม่ใช่ตัวแปร มันเป็น...

1204
01:32:45,297 --> 01:32:46,186

1205
01:32:46,186 --> 01:32:50,186
วงเล็บค่ะ

1206
01:32:52,355 --> 01:32:56,355

1207
01:32:56,529 --> 01:33:00,529
ใส่เปิดแล้วปิดใส่เข้ามาทีเดียวเลยนะ จะได้...

1208
01:33:04,988 --> 01:33:08,988
วงเล็บจะได้ไม่หายว่าอย่างนั้นเถอะ

1209
01:33:17,976 --> 01:33:15,188

1210
01:33:10,773 --> 01:33:12,438
พิมพ์ self

1211
01:33:12,438 --> 01:33:16,438
แล้วเลือก self นะคะ

1212
01:33:16,474 --> 01:33:20,474
.current_sprite ค่ะ

1213
01:33:22,459 --> 01:33:26,459
พิมพ์ c-u แล้วเลือก current_sprite

1214
01:33:29,024 --> 01:33:32,202
เงื่อนไข

1215
01:33:32,202 --> 01:33:36,202
ก็คือให้มันเช็กว่ามันยัง

1216
01:33:36,362 --> 01:33:40,362
น้อยกว่าหรือเท่ากับ

1217
01:33:41,404 --> 01:33:44,513

1218
01:33:44,513 --> 01:33:48,513
len len นะคะ l-e-n len

1219
01:33:50,115 --> 01:33:50,179

1220
01:33:50,179 --> 01:33:54,179
ใส่วงเล็บ

1221
01:33:55,981 --> 01:33:59,472
ค่ะ

1222
01:33:59,472 --> 01:34:03,472
เราจะเลือก self

1223
01:34:08,452 --> 01:34:12,452
s พิมพ์ s แล้วเลือก self

1224
01:34:20,621 --> 01:34:20,399
.

1225
01:34:13,702 --> 01:34:15,194
sprites sprites นะคะ

1226
01:34:15,194 --> 01:34:19,194
รอบนี้จะเลือก sprites นะ

1227
01:34:24,671 --> 01:34:28,671
s-p-r-i-t-e-s sprites นะคะ ใน len

1228
01:34:34,017 --> 01:34:38,017
เลือก self.sprites นะคะ

1229
01:34:41,042 --> 01:34:45,042
ตรง statements

1230
01:34:46,518 --> 01:34:50,518
pass นะคะ

1231
01:34:50,644 --> 01:34:54,235

1232
01:34:54,235 --> 01:34:58,235

1233
01:35:09,050 --> 01:35:11,235
พิมพ์ self เหมือนเดิม เลือก self

1234
01:35:11,235 --> 01:35:15,235
. พิมพ์ c-u แล้วเลือก current_sprite

1235
01:35:21,059 --> 01:35:21,441
= 0 นะคะ

1236
01:35:21,441 --> 01:35:25,441
ค่าเริ่มต้นของ self.current_sprite = 0

1237
01:35:29,424 --> 01:35:29,887
ตอนนี้มันกำลังเช็ก ให้มันเช็กค่า

1238
01:35:29,887 --> 01:35:33,887
มันจะวนเหมือนวนลูปน่ะค่ะ

1239
01:35:35,336 --> 01:35:39,336
แล้วก็ self เหมือนเดิม

1240
01:35:42,714 --> 01:35:46,714
run_animate เลือก run_animate

1241
01:35:51,375 --> 01:35:55,375
= False มี True แล้วก็ต้องมี False

1242
01:35:56,302 --> 01:36:00,302
ก็คือถ้าไม่เป็นจริง ก็จะจบการทำงาน จะทำเมื่อเป็นจริง มันจะเข้ามาเช็กค่า

1243
01:36:03,506 --> 01:36:03,610
ค่าก่อน กด F ใหญ่แล้วเลือก False

1244
01:36:03,610 --> 01:36:07,610

1245
01:36:07,896 --> 01:36:10,752

1246
01:36:10,752 --> 01:36:14,752
บรรทัดนี้เสร็จแล้ว

1247
01:36:15,069 --> 01:36:19,069
กดย้อนหลังกลับไปที่ตำแหน่ง

1248
01:36:24,160 --> 01:36:28,160
if แรกนะคะ if ที่หนึ่งเห็นไหม

1249
01:36:33,089 --> 01:36:37,089
if ที่ 1

1250
01:36:44,493 --> 01:36:45,121
พิมพ์ self ค่ะ s self

1251
01:36:45,121 --> 01:36:49,121
.i เลือก image

1252
01:36:50,150 --> 01:36:53,889

1253
01:36:53,889 --> 01:36:56,716
=

1254
01:36:56,716 --> 01:36:58,705

1255
01:36:58,705 --> 01:37:02,705
self

1256
01:37:06,597 --> 01:37:10,597
เหมือนเดิม เลือก self.

1257
01:37:12,080 --> 01:37:16,080
sprites นะคะ เลือก sprites

1258
01:37:21,105 --> 01:37:24,950
ที่เติม s สี่เหลี่ยมใหญ่ วงเล็บสี่เหลี่ยมใหญ่

1259
01:37:24,950 --> 01:37:28,950
เรียก...

1260
01:37:30,840 --> 01:37:34,840
เรียก int เรียก

1261
01:37:39,243 --> 01:37:42,450
int เลือก int ใส่วงเล็บเข้าไป ในวงเล็บ

1262
01:37:42,450 --> 01:37:46,450
เลือก self.current_sprite

1263
01:37:53,128 --> 01:37:57,128
เลือก self มือไวจริง ๆ เลย self.current_sprite

1264
01:38:03,639 --> 01:38:07,633

1265
01:38:07,633 --> 01:38:11,633
ตอนนี้เราทำส่วนของฟังก์ชัน run กับ update เสร็จแล้วนะคะ

1266
01:38:13,552 --> 01:38:14,220
มี

1267
01:38:14,220 --> 01:38:17,105
2 4 6 8 10

1268
01:38:17,105 --> 01:38:21,105
นี่นะคะ เดี๋ยวจะไปเช็กตำแหน่งนะคะเด็ก ๆ

1269
01:38:23,550 --> 01:38:26,681
ตำแหน่งของฟังก์ชัน

1270
01:38:26,681 --> 01:38:30,681

1271
01:38:31,288 --> 01:38:35,288

1272
01:38:45,157 --> 01:38:49,157

1273
01:38:53,159 --> 01:38:54,527

1274
01:38:54,527 --> 01:38:58,527

1275
01:39:09,167 --> 01:39:13,167

1276
01:39:17,171 --> 01:39:21,171

1277
01:39:25,172 --> 01:39:29,172

1278
01:39:33,175 --> 01:39:37,175

1279
01:39:41,180 --> 01:39:45,180

1280
01:39:49,185 --> 01:39:53,185

1281
01:39:53,186 --> 01:39:57,186

1282
01:39:57,187 --> 01:40:01,187

1283
01:40:05,196 --> 01:40:09,196

1284
01:40:13,196 --> 01:40:17,196

1285
01:40:17,200 --> 01:40:21,200

1286
01:40:21,204 --> 01:40:25,204

1287
01:40:29,205 --> 01:40:33,205

1288
01:40:33,208 --> 01:40:37,208

1289
01:40:37,209 --> 01:40:41,209

1290
01:40:41,211 --> 01:40:45,211

1291
01:40:45,216 --> 01:40:49,216

1292
01:40:49,217 --> 01:40:53,217

1293
01:40:53,218 --> 01:40:57,218

1294
01:40:57,220 --> 01:41:01,220

1295
01:41:05,225 --> 01:41:09,225

1296
01:41:17,230 --> 01:41:18,480

1297
01:41:18,480 --> 01:41:22,480

1298
01:41:33,242 --> 01:41:37,242

1299
01:41:41,246 --> 01:41:45,246

1300
01:41:49,249 --> 01:41:53,249

1301
01:41:57,253 --> 01:42:01,253

1302
01:42:01,256 --> 01:42:03,404

1303
01:42:03,404 --> 01:42:07,404
ดูต่อนะคะ วันนี้น่าจะยาว

1304
01:42:08,555 --> 01:42:10,353
หน่อย แต่ผลน่าจะคุ้มค่าพอใจ น่าจะเป็น

1305
01:42:10,353 --> 01:42:10,988
ที่พอใจของเด็ก ๆ อยู่

1306
01:42:10,988 --> 01:42:14,988

1307
01:42:16,608 --> 01:42:20,608
เราจะมาเรียกใช้ตัวนี้นะ

1308
01:42:20,867 --> 01:42:22,376

1309
01:42:22,376 --> 01:42:26,376
key เรากำหนดแล้ว แต่เราต้องเรียกใช้มันน่ะ

1310
01:42:31,045 --> 01:42:32,217
นะคะ

1311
01:42:32,217 --> 01:42:36,217
ตรง... เดี๋ยวนะ

1312
01:42:38,403 --> 01:42:38,937
เงื่อนไข

1313
01:42:38,937 --> 01:42:42,937
if

1314
01:42:45,040 --> 01:42:49,040
key

1315
01:42:51,784 --> 01:42:55,784
velo moving cat

1316
01:42:57,036 --> 01:43:01,036
ตำแหน่งจะต้องเป็น pygame.QUIT

1317
01:43:02,195 --> 01:43:06,195

1318
01:43:07,191 --> 01:43:11,191
ตรง key if key เป็น K_RIGHT

1319
01:43:17,283 --> 01:43:19,616
เป็น K_RIGHT ตำแหน่งนี้นะครับ

1320
01:43:19,616 --> 01:43:22,677

1321
01:43:22,677 --> 01:43:26,677

1322
01:43:29,674 --> 01:43:33,674

1323
01:43:41,293 --> 01:43:42,681

1324
01:43:42,681 --> 01:43:46,681

1325
01:43:57,301 --> 01:44:01,301

1326
01:44:06,394 --> 01:44:07,115
ดู

1327
01:44:07,115 --> 01:44:11,115
นะคะ เด็ก ๆ จะเรียกใช้ตัวแปร Cat

1328
01:44:15,513 --> 01:44:15,855
ที่เรียกฟังก์ชัน run

1329
01:44:15,855 --> 01:44:17,730
มาทำงานนะคะ ทีนี้ที่เราจะ

1330
01:44:17,730 --> 01:44:21,662
ไปลบก็จะมีเดี๋ยวเด้อ

1331
01:44:21,662 --> 01:44:25,662
ลบตรงไหนบ้าง เราจะเริ่มลบแล้วนะ

1332
01:44:32,200 --> 01:44:33,132
ลบตรงนี้นะคะ นำเข้าภาพนี่ ลบออกเลย เพราะเรา

1333
01:44:33,132 --> 01:44:37,132
เอาไปไว้ที่ class แล้ว เด็ก ๆ ไปหาตัวเดิม

1334
01:44:40,552 --> 01:44:44,552
โค้ดเดิมเก่าน่ะ ลบออกเดี๋ยวมันจะงง

1335
01:44:54,073 --> 01:44:59,549

1336
01:44:45,360 --> 01:44:49,360
ที่เรานำรูปเข้าในสัปดาห์

1337
01:44:50,264 --> 01:44:52,515
ก่อนน่ะนะ เราเขียน # ไว้อยู่ เอาออกนะคะ

1338
01:44:52,515 --> 01:44:56,515
ไปไหนอีก

1339
01:45:05,321 --> 01:45:09,321
icon เดี๋ยวเด้อ

1340
01:45:17,324 --> 01:45:18,960
โอเค ลองกด B ดู

1341
01:45:18,960 --> 01:45:22,960
Test ค่ะ Ctrl + B Test

1342
01:45:24,267 --> 01:45:25,618
Error

1343
01:45:25,618 --> 01:45:29,618
ก็มา บรรทัดที่เท่าไรนี่

1344
01:45:34,841 --> 01:45:36,731
line 75 line 75 ไหนนะ ไหนนะ ดูบรรทัดนะคะ

1345
01:45:36,731 --> 01:45:40,731
ใครของมัน มันบอกว่าอย่างไร

1346
01:45:46,527 --> 01:45:50,527
identity inspect

1347
01:45:53,336 --> 01:45:57,336
75 clock มันบอกว่า Identation

1348
01:46:00,875 --> 01:46:04,234
error

1349
01:46:04,234 --> 01:46:08,234
shell command python

1350
01:46:10,787 --> 01:46:14,787
clock.tick error

1351
01:46:17,510 --> 01:46:21,510
เดี๋ยวนะ ขอดูต่อ

1352
01:46:33,616 --> 01:46:38,182

1353
01:46:24,584 --> 01:46:28,584
ขอดูโค้ด

1354
01:46:37,348 --> 01:46:37,867
เดี๋ยว

1355
01:46:37,867 --> 01:46:41,867
ย้อนโค้ดนะคะ

1356
01:46:53,056 --> 01:46:59,511
ไป

1357
01:46:39,315 --> 01:46:42,783

1358
01:46:42,783 --> 01:46:46,783
ที่การตั้งค่า

1359
01:46:52,854 --> 01:46:54,492
ทั่วไป

1360
01:46:54,492 --> 01:46:58,492

1361
01:47:09,365 --> 01:47:13,365

1362
01:47:21,371 --> 01:47:25,371

1363
01:47:25,386 --> 01:47:29,386

1364
01:47:33,379 --> 01:47:37,378

1365
01:47:37,378 --> 01:47:41,378

1366
01:47:41,381 --> 01:47:45,381

1367
01:47:53,390 --> 01:47:57,389

1368
01:47:57,389 --> 01:48:00,495
พอย้ายตำแหน่ง เอา screen

1369
01:48:00,495 --> 01:48:04,495
ใส่ข้างล่างนะคะ

1370
01:48:12,505 --> 01:48:20,943
เอ้ย clock.tick ไปใส่

1371
01:48:07,043 --> 01:48:07,458
ล่างไอ้ screen.blit  นี่นะคะ

1372
01:48:07,458 --> 01:48:10,014

1373
01:48:10,014 --> 01:48:11,078
โอเค

1374
01:48:11,078 --> 01:48:15,078
แล้วก็...

1375
01:48:21,422 --> 01:48:25,253
ไปต่อ ไปต่อ

1376
01:48:25,253 --> 01:48:29,253

1377
01:48:30,566 --> 01:48:32,997
เรา

1378
01:48:32,997 --> 01:48:36,997
น่าจะต้องสร้างอีกตัวหนึ่ง รู้แล้ว

1379
01:48:37,535 --> 01:48:40,981
เราลืมตรงนี้ไปด้วย

1380
01:48:40,981 --> 01:48:42,750

1381
01:48:42,750 --> 01:48:46,750

1382
01:48:56,270 --> 01:49:00,270
โอเคนะคะ เพิ่มโค้ดอีก 3 บรรทัดนี้เห็นไหม moving_sprite

1383
01:49:04,539 --> 01:49:08,539
จะต้องมาอยู่ตรงนี้

1384
01:49:22,272 --> 01:49:43,631
เยอะจนเบลอเหมือนกัน

1385
01:49:17,426 --> 01:49:18,630

1386
01:49:18,630 --> 01:49:22,630

1387
01:49:33,432 --> 01:49:34,823

1388
01:49:34,823 --> 01:49:38,823
เราจะไป

1389
01:49:40,418 --> 01:49:44,418
ที่ตำแหน่งการแสดงผลของเรานะคะ เพิ่มโค้ด

1390
01:49:52,001 --> 01:49:56,001
อีก

1391
01:50:05,447 --> 01:50:09,447

1392
01:50:13,448 --> 01:50:17,448
แล้วก็

1393
01:50:17,777 --> 01:50:21,777
ให้เด็ก ๆ เดี๋ยวก่อนอื่นให้เลือกตรงส่วนของ

1394
01:50:26,183 --> 01:50:30,183
การตั้งค่าทั่วไป 3 บรรทัดนี้นะ แล้วก็กด

1395
01:50:30,248 --> 01:50:34,248
Ctlrl + X

1396
01:50:39,612 --> 01:50:40,484
เอาไปไว้ข้างล่าง class นะคะเด็ก ๆ

1397
01:50:40,484 --> 01:50:44,484
นี่เอามาไว้ก่อนหน้ากำหนดหน้าจอเกม

1398
01:50:46,176 --> 01:50:50,176
ต้องขยับตำแหน่ง

1399
01:50:50,269 --> 01:50:51,635
อะไรสักอย่างหนึ่ง

1400
01:50:51,635 --> 01:50:54,666

1401
01:50:54,666 --> 01:50:58,666

1402
01:51:09,472 --> 01:51:10,703

1403
01:51:10,703 --> 01:51:14,703

1404
01:51:25,477 --> 01:51:29,477

1405
01:51:33,481 --> 01:51:37,481

1406
01:51:41,487 --> 01:51:42,928
พิมพ์ moving

1407
01:51:42,928 --> 01:51:45,925
เห็นไหม เลือก moving_sprites นะ .

1408
01:51:45,925 --> 01:51:47,080
draw ให้มันวาดนะคะ ให้มันวาด

1409
01:51:47,080 --> 01:51:51,080
d-r-a-w

1410
01:51:54,846 --> 01:51:57,526
ให้มันวาด screen

1411
01:51:57,526 --> 01:51:58,578

1412
01:51:58,578 --> 01:51:58,681

1413
01:51:58,681 --> 01:52:02,681

1414
01:52:11,245 --> 01:52:11,702
แล้วก็

1415
01:52:11,702 --> 01:52:15,702
เลือกใช้คำสั่ง update นะคะ

1416
01:52:27,645 --> 01:52:36,860
moving พิมพ์ m แล้วเลือก

1417
01:52:21,503 --> 01:52:22,162
moving_sprite.update

1418
01:52:22,162 --> 01:52:22,769
เลือกฟังก์ชันอัปเดต

1419
01:52:22,769 --> 01:52:26,769
ให้ค่าเริ่มต้นอยู่ที่ 0

1420
01:52:27,558 --> 01:52:31,558
ตำแหน่งนะคะ 25

1421
01:52:43,751 --> 01:52:54,053
แล้วก็

1422
01:52:29,165 --> 01:52:33,165
เรียก

1423
01:52:41,506 --> 01:52:45,506
pygame.display

1424
01:52:46,727 --> 01:52:50,727
มาใช้งาน เลือก dispaly นะคะ .flip

1425
01:52:53,511 --> 01:52:57,511
f-l-

1426
01:52:58,154 --> 01:53:02,154
i-p flip นะคะ

1427
01:53:03,668 --> 01:53:07,152
ใส่วงเล็บ น่าจะ Ctrl + B ดู 76

1428
01:53:07,152 --> 01:53:11,152

1429
01:53:11,409 --> 01:53:15,409
มันบอกว่าอย่างไร screen.blit

1430
01:53:19,976 --> 01:53:23,976
unexpected

1431
01:53:44,558 --> 01:53:43,098
ไม่รู้จัก

1432
01:53:24,542 --> 01:53:28,542

1433
01:53:33,536 --> 01:53:37,536

1434
01:53:41,542 --> 01:53:45,542

1435
01:53:49,543 --> 01:53:53,543

1436
01:53:57,549 --> 01:54:01,549

1437
01:54:01,549 --> 01:54:05,549

1438
01:54:05,554 --> 01:54:09,554

1439
01:54:13,556 --> 01:54:17,556

1440
01:54:21,557 --> 01:54:22,954

1441
01:54:22,954 --> 01:54:26,954

1442
01:54:37,568 --> 01:54:41,568

1443
01:54:45,573 --> 01:54:49,572

1444
01:54:49,572 --> 01:54:53,572

1445
01:54:53,578 --> 01:54:57,578

1446
01:54:57,578 --> 01:55:01,578

1447
01:55:01,585 --> 01:55:05,585

1448
01:55:09,583 --> 01:55:13,583

1449
01:55:13,585 --> 01:55:17,585

1450
01:55:17,588 --> 01:55:21,588

1451
01:55:25,592 --> 01:55:29,592

1452
01:55:33,592 --> 01:55:37,592

1453
01:55:37,594 --> 01:55:41,594

1454
01:55:41,594 --> 01:55:45,594

1455
01:55:49,600 --> 01:55:53,600

1456
01:55:53,600 --> 01:55:57,600

1457
01:55:57,602 --> 01:55:58,553

1458
01:55:58,553 --> 01:56:02,553

1459
01:56:05,606 --> 01:56:09,606

1460
01:56:13,609 --> 01:56:17,609

1461
01:56:21,613 --> 01:56:25,613

1462
01:56:25,614 --> 01:56:29,614

1463
01:56:29,618 --> 01:56:33,618

1464
01:56:33,620 --> 01:56:37,620

1465
01:56:37,620 --> 01:56:41,620

1466
01:56:41,625 --> 01:56:45,625

1467
01:56:45,625 --> 01:56:49,625

1468
01:56:49,625 --> 01:56:53,625

1469
01:56:53,628 --> 01:56:57,628

1470
01:56:57,629 --> 01:57:01,629

1471
01:57:01,631 --> 01:57:05,631

1472
01:57:05,633 --> 01:57:09,633

1473
01:57:09,633 --> 01:57:13,633

1474
01:57:17,637 --> 01:57:21,637

1475
01:57:21,638 --> 01:57:25,638

1476
01:57:25,642 --> 01:57:29,642

1477
01:57:33,643 --> 01:57:37,643

1478
01:57:41,646 --> 01:57:45,646

1479
01:57:45,648 --> 01:57:49,648

1480
01:57:49,652 --> 01:57:53,651

1481
01:57:53,651 --> 01:57:57,651

1482
01:57:57,654 --> 01:58:01,654

1483
01:58:01,658 --> 01:58:05,658
attribute Module

1484
01:58:09,470 --> 01:58:13,470
ผิดตรงไหน

1485
01:58:23,883 --> 01:58:25,344
อ๋อ

1486
01:58:18,636 --> 01:58:20,506
เลือกฟังก์ชันผิดนี่เอง

1487
01:58:20,506 --> 01:58:20,768
ไม่เป็นอะไร

1488
01:58:20,768 --> 01:58:24,768
ทำไมมาขึ้น

1489
01:58:36,065 --> 01:58:40,065
moving

1490
01:58:40,747 --> 01:58:37,685
_

1491
01:58:22,923 --> 01:58:26,923
sprite

1492
01:58:30,331 --> 01:58:34,331
attribute function add

1493
01:58:41,671 --> 01:58:45,671
ผิดอีกหรือ บอกว่าไม่รู้จัก Attribute add แล้วนะ

1494
01:58:45,902 --> 01:58:49,902

1495
01:58:57,675 --> 01:59:01,675

1496
01:59:09,683 --> 01:59:13,683

1497
01:59:17,685 --> 01:59:21,685

1498
01:59:25,689 --> 01:59:26,987
เดี๋ยวนะ มีความ...

1499
01:59:26,987 --> 01:59:30,987
clock เล็ก

1500
01:59:45,309 --> 01:59:48,345
เลือก clock เล็ก

1501
01:59:34,155 --> 01:59:35,096

1502
01:59:35,096 --> 01:59:39,096

1503
01:59:49,697 --> 01:59:50,052

1504
01:59:50,052 --> 01:59:54,052

1505
01:59:57,699 --> 02:00:00,212

1506
02:00:00,212 --> 02:00:04,212

1507
02:00:13,709 --> 02:00:17,709

1508
02:00:21,713 --> 02:00:25,713

1509
02:00:29,716 --> 02:00:33,716

1510
02:00:37,721 --> 02:00:41,721

1511
02:00:45,728 --> 02:00:49,728

1512
02:00:53,728 --> 02:00:57,728

1513
02:01:01,730 --> 02:01:05,730

1514
02:01:09,736 --> 02:01:13,736

1515
02:01:17,741 --> 02:01:19,987

1516
02:01:19,987 --> 02:01:23,987
74

1517
02:01:25,922 --> 02:01:29,922
line 74 in module

1518
02:01:36,800 --> 02:01:40,292
Track moving_sprites

1519
02:01:40,292 --> 02:01:44,292
Attribute Error

1520
02:01:45,274 --> 02:01:49,274
add มันจะเป็นไปได้อย่างไร

1521
02:01:53,304 --> 02:01:55,479
ไม่รู้จัก add ผิดหรือ

1522
02:01:55,479 --> 02:01:59,191

1523
02:01:59,191 --> 02:02:03,191

1524
02:02:13,763 --> 02:02:17,763

1525
02:02:17,766 --> 02:02:21,766

1526
02:02:21,769 --> 02:02:22,384
ไม่รู้จัก add เข้าไม่ได้

1527
02:02:22,384 --> 02:02:26,384
ข้ามตัวไหนไป

1528
02:02:40,738 --> 02:02:50,033
len

1529
02:02:25,596 --> 02:02:27,693

1530
02:02:27,693 --> 02:02:31,693
current self

1531
02:02:39,506 --> 02:02:39,917
self.image

1532
02:02:39,917 --> 02:02:43,917
True event

1533
02:02:47,508 --> 02:02:51,280
Dino

1534
02:02:51,280 --> 02:02:55,280
moving_sprite.add

1535
02:02:57,158 --> 02:03:01,158

1536
02:03:05,786 --> 02:03:09,786

1537
02:03:09,787 --> 02:03:13,787
มีไหม ไม่นี่

1538
02:03:21,364 --> 02:03:42,709
หา add

1539
02:03:10,981 --> 02:03:14,981

1540
02:03:25,794 --> 02:03:29,794

1541
02:03:33,796 --> 02:03:34,445

1542
02:03:34,445 --> 02:03:35,995
ไม่เจอ หมดแล้วนี่น่ะ

1543
02:03:35,995 --> 02:03:39,995
เดี๋ยวติดไว้ก่อน error 1

1544
02:03:48,465 --> 02:03:51,486
บรรทัดนะครับ เดี๋ยวจะไปลอง run อยู่ในเครื่องตัวเอง

1545
02:03:51,486 --> 02:03:55,486
บางทีเรื่องของเรื่อง คือ Run เครื่องตัวเองออก ที่นี

1546
02:04:01,806 --> 02:04:03,158
คือ... คืออะไรครับพี่น้อง โอเคนะคะ Save ไว้ก่อน เดี๋ยวเรามาต่อ

1547
02:04:03,158 --> 02:04:04,348
สัปดาห์หน้า

1548
02:04:04,348 --> 02:04:08,348
มันยังไม่วิ่งให้เรา

1549
02:04:12,941 --> 02:04:16,941
มันขึ้น Error Attribute add

1550
02:04:17,897 --> 02:04:21,897

1551
02:04:21,976 --> 02:04:25,976
มันหายไปไหนท่อนหนึ่ง

1552
02:04:29,767 --> 02:04:33,767

1553
02:04:37,384 --> 02:04:41,384

1554
02:04:45,819 --> 02:04:49,819

1555
02:04:53,827 --> 02:04:57,827

1556
02:05:01,835 --> 02:05:02,204

1557
02:05:02,204 --> 02:05:06,204

1558
02:05:09,835 --> 02:05:13,835

1559
02:05:17,839 --> 02:05:21,839

1560
02:05:21,841 --> 02:05:25,841

1561
02:05:25,847 --> 02:05:29,847

1562
02:05:33,849 --> 02:05:37,849

1563
02:05:41,851 --> 02:05:45,851

1564
02:05:46,985 --> 02:05:50,866
สำหรับ

1565
02:05:50,866 --> 02:05:54,866
วันนี้จะพอแค่นี้ก่อนนะคะ ขอบคุณพี่ล่าม

1566
02:05:57,992 --> 02:05:58,639
นะคะ เดี๋ยวเราจะมาต่อกันในสัปดาห์หน้าค่ะ

1567
02:05:58,639 --> 02:05:59,405
ขอบคุณค่ะ

1568
02:05:59,405 --> 02:06:03,405
display.update

1569
02:06:18,954 --> 02:06:30,543
[สิ้นสุดการถอดความ]

1570
02:06:05,146 --> 02:06:07,278

1571
02:06:07,278 --> 02:06:11,278

1572
02:06:21,871 --> 02:06:25,871

1573
02:06:29,875 --> 02:06:33,875

1574
02:06:37,878 --> 02:06:41,878

1575
02:06:45,885 --> 02:06:49,885


