﻿WEBVTT

1
00:00:00.000 --> 00:00:04.000
(อาจารย์) มืด

2
00:00:04.003 --> 00:00:08.003
ได้ยินไหมคะ

3
00:00:08.006 --> 00:00:12.006
ได้ยินนะคะ โอ.เค. ค่ะ

4
00:00:12.007 --> 00:00:16.007
เด็ก ๆ เข้ามาแล้ว ให้เปิด sublime Text

5
00:00:16.008 --> 00:00:20.008
ไปเปิด Sublime text ของเรา

6
00:00:20.009 --> 00:00:24.009
Dice : C ของเราะ

7
00:00:24.009 --> 00:00:28.009
ไป เข้ามาปุ๊บนี่

8
00:00:28.010 --> 00:00:32.010
เราจะ Coding เราต้องไปเปิด

9
00:00:32.011 --> 00:00:36.011
ตัวช่วยของเราก่อนก็คือ Sublime text

10
00:00:36.012 --> 00:00:40.012
นะคะ เปิดขึ้นมา

11
00:00:40.013 --> 00:00:44.013

12
00:00:44.014 --> 00:00:48.014
เราต้องเขียนต่อจากสัปดาห์ที่แล้ว เราจะโค้ดต่อ

13
00:00:48.017 --> 00:00:52.017
ในสัปดาห์ที่แล้ว ที่เราทำเราเพิ่งได้อะไรคะ

14
00:00:52.018 --> 00:00:56.018
ได้ตารางเกมของเราใช่หรือเปล่า

15
00:00:56.019 --> 00:01:00.019
นะคะ เราเพิ่งทำตารางได้

16
00:01:00.020 --> 00:01:04.020
วันนี้เราจะต้องทำต่อให้เสร็จนะคะ

17
00:01:04.022 --> 00:01:08.022
เพราะฉะนั้นตามให้ทัน

18
00:01:08.022 --> 00:01:12.022
หายไปไหน 2 คน

19
00:01:12.024 --> 00:01:16.024
เพราะไม่อย่างนั้น ถ้าข้ามแล้วจะหลุดไปเลย

20
00:01:16.025 --> 00:01:20.025

21
00:01:20.026 --> 00:01:24.026
ใบเตย ใบเตยได้หรือยัง

22
00:01:24.027 --> 00:01:28.027

23
00:01:28.027 --> 00:01:32.027

24
00:01:32.030 --> 00:01:36.030

25
00:01:36.031 --> 00:01:40.031

26
00:01:40.032 --> 00:01:44.032

27
00:01:44.034 --> 00:01:48.034

28
00:01:48.035 --> 00:01:52.035

29
00:01:52.037 --> 00:01:56.037

30
00:01:56.039 --> 00:02:00.039

31
00:02:00.041 --> 00:02:04.041

32
00:02:04.042 --> 00:02:08.042
จะโค้ด เดี๋ยวจะอธิบาย

33
00:02:08.043 --> 00:02:12.043
จากสไลด์เราไปก่อนนะคะ

34
00:02:12.044 --> 00:02:16.044
นะคะ เราจำทำ

35
00:02:16.046 --> 00:02:20.046
ต่อจาก ก็คือ

36
00:02:20.050 --> 00:02:24.050
จากหนที่แล้วนี่เราสร้างตัว markers

37
00:02:24.051 --> 00:02:28.051
ยังไม่เสร็จนะคะ เพราะว่าทีนี้

38
00:02:28.052 --> 00:02:32.052
มากำหนดเหตุการณ์เมื่อเวลาที่

39
00:02:32.053 --> 00:02:36.053
เราจะ Mark X หรือ ฯO

40
00:02:36.055 --> 00:02:40.055
นะคะ ก็คือเราจะสั่งให้เมาส์นี่

41
00:02:40.055 --> 00:02:44.055
มันจะเป็นฟังก์ชัน สำหรับใช้งานเมาส์

42
00:02:44.056 --> 00:02:48.056
นั่นเองนะคะ ซึ่งถ้าเราคีย์ไปนี่มัน

43
00:02:48.057 --> 00:02:52.057
จะมีขึ้นมานะคะ เดี๋ยวจะอธิบายความหมาย

44
00:02:52.058 --> 00:02:56.058
ก่อนว่า ตัวคำสั่ง

45
00:02:56.059 --> 00:03:00.059
ของการใช้เมาส์นี่ มีความหมายอย่างไร มันจะมีอยู่ 4

46
00:03:00.060 --> 00:03:04.060
ตัว 4 คำสั่งนะคะ

47
00:03:04.062 --> 00:03:08.062
สำหรับการใช้ Mouse นะคะ ถ้าเราใช้

48
00:03:08.063 --> 00:03:12.063
ใช้เมาส์ moUSEBUTTONDOWN

49
00:03:12.065 --> 00:03:16.065
เมาส์ Button down หมายถึง

50
00:03:16.066 --> 00:03:20.066
ปกตินี่ เวลาเรา

51
00:03:20.067 --> 00:03:24.067
จะให้ Mouse ทำงาน ก็คือ

52
00:03:24.068 --> 00:03:28.068
คลิกใช่ไหม คลิกเมาส์ใช่ไหมคะ แต่

53
00:03:28.069 --> 00:03:32.069
หมายถึงไม่คลิกน่ะ พอคลิก

54
00:03:32.071 --> 00:03:36.071
ไปแล้วแล้วเลิกการคลิก ก็คือปล่อย แล้ว

55
00:03:36.073 --> 00:03:40.073
ถ้าปล่อยนี่คือ MOUSEBUTTONDOWN แต่ถ้า

56
00:03:40.074 --> 00:03:44.074
กดลง คือ ตัวที่ 2

57
00:03:44.076 --> 00:03:48.076
เมาส์ Button Up

58
00:03:48.076 --> 00:03:52.076
MOUSEBUTTONUP จะเป็นคำสั่งนี้ ก็คือ

59
00:03:52.077 --> 00:03:56.077
ต้องการให้กดปุ่ม Mouse หรือ คลิก Mouse

60
00:03:56.079 --> 00:04:00.079
ก็คือเราต้องใช้ moUSEBUTTONUP

61
00:04:00.081 --> 00:04:04.081
แต่ถ้าเราต้องการให้นี่

62
00:04:04.080 --> 00:04:08.080
ขยับเมาส์ของเรานี่

63
00:04:08.082 --> 00:04:12.082
ก็คือเลื่อน Mouse ไปปมาน่ะ ก็คือ

64
00:04:12.084 --> 00:04:16.084
คำสั่ง mousemotion

65
00:04:16.085 --> 00:04:20.085
แต่ถ้า MOUSEWHEEL

66
00:04:20.086 --> 00:04:24.086
อันที่ 4 มันจะมีลูกกลิ้งใช่ไหมบนเมาส์

67
00:04:24.087 --> 00:04:28.087
นั่น ก็คือถ้าเมื่อไรที่เราต้องการใช้

68
00:04:28.088 --> 00:04:32.088
ไอ้ตัวที่หมุน ๆ บกลูกกลิ้งน่ะ เราต้องใช้คำสั่ง

69
00:04:32.089 --> 00:04:36.089
MOUSEWHEEL ตัวที่ 4 นี้

70
00:04:36.092 --> 00:04:40.092
ทีนี้ในวันนี้ที่สอนนี้มันจะใช้อยู่ 2 อัน ก็คือ

71
00:04:40.093 --> 00:04:44.093
Up กับ Down

72
00:04:44.095 --> 00:04:48.095
ให้นึกถึงพอเราจะวาง X ในกระดานใช่ไหม

73
00:04:48.096 --> 00:04:52.096
ก็คือกฎก็กดแล้วก็ปล่อย

74
00:04:52.096 --> 00:04:56.096
ใช่ไหมคะ วางในตำแหน่งชองตารางน่ะใช่ไหมคะ

75
00:04:56.096 --> 00:05:00.096
สำหรับคำสั่ง Mouse จะมี

76
00:05:00.097 --> 00:05:04.097
2 อันที่ใช้ แต่ตัวอื่นนี่บอกมาเพิ่ม

77
00:05:04.098 --> 00:05:08.098
ก็คือนั่นหมายความว่า ถ้าให้เขียนโปรแกรมเอง

78
00:05:08.099 --> 00:05:12.099
รู้ใช่ไหมถ้าจะควบคุม Mouse จะมี

79
00:05:12.100 --> 00:05:16.100
ใดบ้างใน 4 ตัวนี้นะคะ แล้วก็มัน

80
00:05:16.101 --> 00:05:20.101
ใช้งานอย่างไร เรียกใช้เพื่อทำอะไรนะคะ

81
00:05:20.102 --> 00:05:24.102
เพราะฉะนั้นเมื่อเรากำหนดเมาส์แล้ว

82
00:05:24.103 --> 00:05:28.103
สิ่งต่อไปที่เราจะทำ ยังไม่ Close

83
00:05:28.104 --> 00:05:32.104
ก็คือมันก็ต้องมาเช็กค่า

84
00:05:32.105 --> 00:05:36.105
เช็กว่าพอคลิกแล้วนี่ เห็นไหมคะ

85
00:05:36.107 --> 00:05:40.107
เป็นจริงหรือเป็นเท็จ เราก็ไปทำงานตามคำ

86
00:05:40.108 --> 00:05:44.108
สั่งน่ะนึกออกนะ มันต้องเช็กก่อนว่าเป็นจริง

87
00:05:44.110 --> 00:05:48.110
หรือเป็นเท็จนี่ เช็กเสียก่อน เช็กข้อมูลเสียก่อน

88
00:05:48.110 --> 00:05:52.110

89
00:05:52.112 --> 00:05:56.112
เพราะฉะนั้นเราก็ต้องมีการประกาศตัวแปร

90
00:05:56.113 --> 00:06:00.113
ที่ชื่อว่า "Click"

91
00:06:00.114 --> 00:06:04.114
จะได้เช็กได้ว่า พอเราคลิก Mouse

92
00:06:04.115 --> 00:06:08.115

93
00:06:08.116 --> 00:06:12.116
เพื่อ Mark ตัว X หรือตัว O ลง

94
00:06:12.117 --> 00:06:16.117
กระดานของ XO เกมนี่

95
00:06:16.118 --> 00:06:20.118
มันก็จะรับค่านี่ จากการคลิกเข้าไปนะคะ

96
00:06:20.119 --> 00:06:24.119

97
00:06:24.120 --> 00:06:28.120
สิ่งต่อมาที่เราจะทำคือ เราจะมาระบุ

98
00:06:28.123 --> 00:06:32.123
ตำแหน่งให้เมื่อคลิกนี่มัน

99
00:06:32.124 --> 00:06:36.124
ต้องเช็กได้ไงว่าตำแหน่งนี้คือตรงไหน

100
00:06:36.125 --> 00:06:40.125
นะคะ ประกาศตัวแปรที่ชื่อว่า... ข้ามไปนี่

101
00:06:40.126 --> 00:06:44.126
เห็นไหมคะ การกำหนดตำแหน่งเมื่อคลิก

102
00:06:44.127 --> 00:06:48.127
เมาส์เราจะมีการกำหนดตำแหน่งของการคลิกเมาส์

103
00:06:48.127 --> 00:06:52.127
โดยใช้ตัวแปรที่ชื่อว่า post

104
00:06:52.129 --> 00:06:56.129
ซึ่งมาจากคำว่า Position

105
00:06:56.130 --> 00:07:00.130
เพราะอยู่ดี ๆ จะคลิกลงไปเลย ก็

106
00:07:00.131 --> 00:07:04.131
ไม่รู้ใช่ไหมว่าคลิปถูกช่องหรือไม่ถูกช่อง

107
00:07:04.132 --> 00:07:08.132
อยู่ช่องไหน ตัว O อยู่ช่องไหน

108
00:07:08.132 --> 00:07:12.132
เดี๋ยวลอง Run ให้ดูว่า

109
00:07:12.133 --> 00:07:16.133
เมื่อเวลาเราสั่งให้ดู

110
00:07:16.134 --> 00:07:20.134
หน้าตาเกมไปด้วย

111
00:07:20.138 --> 00:07:24.138

112
00:07:24.139 --> 00:07:28.139

113
00:07:28.140 --> 00:07:32.140
Run ผิดตัว อันนี้เฉพาะที่มีใน

114
00:07:32.142 --> 00:07:36.142
ตาราง เเอาตัวที่เสร็จสมบูรณ์แล้ว

115
00:07:36.143 --> 00:07:40.143
เดี๋ยว Run ให้ดู ก็คือให้นึกถึงนี่

116
00:07:40.144 --> 00:07:44.144
เห็นไหมคะ เลื่อนเมาส์ไปบนตาราง

117
00:07:44.145 --> 00:07:48.145
ที่เราสร้างใช่ไหม ถ้าสมมติ

118
00:07:48.146 --> 00:07:52.146
เราไม่กำหนดว่าเราจะคลิก X ตรงนี้ อันนี้

119
00:07:52.147 --> 00:07:56.147
โปรแกรมมันสำเร็จแล้ว X มันจะไม่ขึ้นเหมือน

120
00:07:56.148 --> 00:08:00.148
ตอนที่... ตอนที่เราทำ

121
00:08:00.149 --> 00:08:04.149
ใน First Game นี่ ที่เรามีแต่ตัว

122
00:08:04.150 --> 00:08:08.150
ที่เรา

123
00:08:08.151 --> 00:08:12.151
มีแต่ตัวบอร์ดเห็นไหม ใช่ไหมอะไรก็ไม่ขึ้น

124
00:08:12.153 --> 00:08:16.153
คลิกไปก็จะไม่รู้ตำแหน่งใช่ไหมคะ

125
00:08:16.154 --> 00:08:20.154
แต่ถ้าเมื่อใดที่เรากำหนดค่าให้มันแล้วนี่

126
00:08:20.155 --> 00:08:24.155
เหมือนพอคลิก X ลงตรงวงน่ะ มันก็จะรู้ว่า X ลงช่องไหน

127
00:08:24.155 --> 00:08:28.155
ก็คือคำสั่ง

128
00:08:28.156 --> 00:08:32.156
ตัวแปร Position จะเป็นการระบุตำแหน่งที่เราจะวาง

129
00:08:32.157 --> 00:08:36.157
ตัว X ลงไปนั่นเอง ให้มันเช็ก เช็กตำแหน่งให้

130
00:08:36.159 --> 00:08:40.159
นั่นเองนะคะ ก็คือตัวนี้คำสั่งนี้

131
00:08:40.160 --> 00:08:44.160
ตัวแปรนี้นะคะ

132
00:08:44.161 --> 00:08:48.161
ทีนี้

133
00:08:48.162 --> 00:08:52.162
ทำไมถึงต้องมาบอก Shelf X Shelf Y ด้วย

134
00:08:52.163 --> 00:08:56.163
ด้วยตำแหน่งของ position

135
00:08:56.166 --> 00:09:00.166
เพราะดูกระดานเรานะคะ มันก็ไปตามแนว

136
00:09:00.167 --> 00:09:04.167
ใช่ไหมคะ แนวของแกน X แกน Y

137
00:09:04.168 --> 00:09:08.168
เวลาเราสร้าง เพราะฉะนั้นเวลามันเช็ก มันก็เช็ก

138
00:09:08.169 --> 00:09:12.169
ไปตามแนวขึ้นลงอย่างนี้นึกออกนะ

139
00:09:12.169 --> 00:09:16.169
เช็กไปตามแนวที่เรา ที่ได้

140
00:09:16.169 --> 00:09:20.169
อธิบายในสัปดาห์ก่อนว่าพื้นที่ พื้นที่หน้าจอนะ

141
00:09:20.171 --> 00:09:24.171
ก็คือ X คือแนวนอน ฃ

142
00:09:24.172 --> 00:09:28.172
หรือแถว Y คือ แนวตั้งหรือคอลั่ม

143
00:09:28.172 --> 00:09:32.172
นี่อันนี้ ถ้าอย่างนี้คือแนวนอน

144
00:09:32.173 --> 00:09:36.173
ถ้าอย่างนี้คือแนวตั้งหรือคอลัมน์

145
00:09:36.174 --> 00:09:40.174
มันก็จะเช็กไปทีละแถวก่อน

146
00:09:40.176 --> 00:09:44.176
หรือจะเช็กไปตามคอลั่มก่อนขึ้นอยู่ว่าเรา

147
00:09:44.177 --> 00:09:48.177
กำหนดการเช็กนั่นเองนะคะ

148
00:09:48.178 --> 00:09:52.178
เห็นไหมคะ

149
00:09:52.179 --> 00:09:56.179
พอ พอเมาส์

150
00:09:56.181 --> 00:10:00.181
คลิกไปแล้วเห็นไหม มันจะให้ทำอะไรต่อ

151
00:10:00.182 --> 00:10:04.182
พอเช็กตำแหน่งเสร็จ เมื่อมีการคลิก Mouse

152
00:10:04.183 --> 00:10:08.183
นะคะ คำสั่งนี้จะบอกว่า

153
00:10:08.184 --> 00:10:12.184
เมื่อมาร์กลงไปที่ตำแหน่งนี้ ตำแหน่งนี้

154
00:10:12.185 --> 00:10:16.185
ที่ Mark ลงไปมันจะมีอะไรเกิดขึ้น มันจะมี Code

155
00:10:16.186 --> 00:10:20.186
ต่อมานะคะ จะมีการ

156
00:10:20.187 --> 00:10:24.187
ประกาศตัวแปรเพิ่มมากอีก 1 ตัว ที่ชื่อว่า "player"

157
00:10:24.188 --> 00:10:28.188
เพราะเวลาเล่น มันก็จะ

158
00:10:28.189 --> 00:10:32.189
เท่ากับมี 2 คน อีกคนเป็น X อีกคนเป็น

159
00:10:32.190 --> 00:10:36.190
O ใช่ไหมคะ เห็นไหม

160
00:10:36.191 --> 00:10:40.191
ก็คืออันนี้ถ้า X หมายถึงผู้เล่นคนที่ 1 O ก็จะหมายถึงผู้เล่น

161
00:10:40.192 --> 00:10:44.192
คนที่ 2 นั่นเองนะคะ เพราะฉะนั้น

162
00:10:44.193 --> 00:10:48.193
เพราะฉะนั้น Player ประกาศตัวแปรเริ่

163
00:10:48.194 --> 00:10:52.194
มันก็เริ่มจากคนแรกเสมอนะคะ

164
00:10:52.196 --> 00:10:56.196

165
00:10:56.197 --> 00:11:00.197
นะคะ

166
00:11:00.199 --> 00:11:04.199
พอคลิกไปนี่ พอแสดงว่า Mark ลงไปแล้วนี่

167
00:11:04.200 --> 00:11:08.200
คนแรก ก็คือ

168
00:11:08.201 --> 00:11:12.201
คนที่ 1 นะคะ คนต่อไป ก็คือจะเป็นตำแหน่งคนที่ 2

169
00:11:12.202 --> 00:11:16.202
ที่เขาคลิก เขาจะสามารถคลิกได้นะคะ

170
00:11:16.207 --> 00:11:20.207
ทีนี้ในคลั้งก่อนที่เราใช้

171
00:11:20.208 --> 00:11:24.208
คำสั่ง printmark ไว้ เรา

172
00:11:24.209 --> 00:11:28.209
ลบมันออกได้ เพราะว่าเดี๋ยวเราจะมาทำตัวมาร์ก

173
00:11:28.210 --> 00:11:32.210
ก็คือในครั้งก่อน จะไม่มีตัว X กับตัว O

174
00:11:32.211 --> 00:11:36.211
ขึ้นมาครั้งนี้เราจะเริ่มทำตัว X กับ O นี่

175
00:11:36.212 --> 00:11:40.212
นะคะ เพื่อจะให้มันพอเวลา

176
00:11:40.213 --> 00:11:44.213
เรามาร์กลงไปว่าคนที่ 1 เป็น X นี่ คลิกลงไปตรงนี้

177
00:11:44.214 --> 00:11:48.214
X ก็จะต้องขึ้นมา O ก็จะ

178
00:11:48.214 --> 00:11:52.214
ไปตรงนี้ O ก็จะขึ้นมาตรงนี้นะคะ

179
00:11:52.215 --> 00:11:56.215

180
00:11:56.217 --> 00:12:00.217
เพราะฉะนั้น เราก็จะลบมาร์กครั้งเก่าออกไป เพราะไม่ได้ใช้

181
00:12:00.218 --> 00:12:04.218
นะคะ จะทำการลบออก

182
00:12:04.219 --> 00:12:08.219
ทีนี้สิ่งที่เราจะทำในขั้นตอนต่อมา คือ

183
00:12:08.220 --> 00:12:12.220
กำหนด Function กำหนด Function ก็

184
00:12:12.220 --> 00:12:16.220
เพื่อสร้างอะไร เพื่อสร้างเห็นไหม สร้างตัว X

185
00:12:16.221 --> 00:12:20.221
สีเขียวเป็น X

186
00:12:20.222 --> 00:12:24.222
สีแดงจะเป็นตัว O ให้สีแดงเป็นตัว O

187
00:12:24.224 --> 00:12:28.224
ก็จะมีการกำหนดค่าสี

188
00:12:28.225 --> 00:12:32.225
ลืมแก้ ความจริงต้องเป็น green กับ red

189
00:12:32.226 --> 00:12:36.226
นะคะ

190
00:12:36.227 --> 00:12:40.227
สีเขียวกับสีแดงนะคะ

191
00:12:40.229 --> 00:12:44.229
นี่ ให้ดู

192
00:12:44.229 --> 00:12:48.229
ว่าพอเวลาเราวาด เพราะเมื่อเรากำหนดนี่

193
00:12:48.230 --> 00:12:52.230
มันก็จะไปเช็กค่าเห็นไหมคะ โดยมีเงื่อนไข

194
00:12:52.231 --> 00:12:56.231
ว่าตำแหน่งที่ X post เริ่มที่

195
00:12:56.232 --> 00:13:00.232
0 นี่นะคะ เมื่อเราเห็นไหมคะ

196
00:13:00.233 --> 00:13:04.233
ถ้าวาด X ก็คือใช้คำสั่ง

197
00:13:04.234 --> 00:13:08.234
draw line

198
00:13:08.235 --> 00:13:12.235
เห็นไหมคะ ก็เลยต้องวาด 2 เส้นเพื่อให้มัน

199
00:13:12.235 --> 00:13:16.235
ทแยงนึกออกนะ ตำแหน่งที่วาดก็จะอยู่

200
00:13:16.237 --> 00:13:20.237
ตามตัวอย่างนะคะ เดี๋ยวจะบอก

201
00:13:20.238 --> 00:13:24.238
ในตอน Coding

202
00:13:24.240 --> 00:13:28.240
การใช้วิธีวาดตัว X ของเรา ก็คือใช้วิธีการ

203
00:13:28.241 --> 00:13:32.241
วาดเส้นนะคะ ส่วนตัว O ของเรา

204
00:13:32.242 --> 00:13:36.242
เราจะใช้คำสั่ง d

205
00:13:36.244 --> 00:13:40.244
ฟังก์ชัน Draw Circle

206
00:13:40.245 --> 00:13:44.245
วางวงกลมนั่นเองนะคะ มันจะมีรูปแบบของมันเดี๋ยว

207
00:13:44.246 --> 00:13:48.246
อธิบายตอน Coding อีกทีหนึ่ง ให้เราดู

208
00:13:48.247 --> 00:13:52.247
คร่าว ๆ ก่อนว่าจะทำอะไรในช่องตารางนี่

209
00:13:52.248 --> 00:13:56.248
จะทำอะไรลงไปในนี้ได้บ้าง

210
00:13:56.249 --> 00:14:00.249
แล้วทีนี้เมื่อทำแล้ว

211
00:14:00.250 --> 00:14:04.250
ก็คือถ้า

212
00:14:04.250 --> 00:14:08.250
แค่นี้ ถ้าถึงแค่ตัวนี้มันจะวาดแค่ 1 อันใช่ไหม

213
00:14:08.252 --> 00:14:12.252
เพราะฉะนั้นในช่องตารางเรามีทั้งหมด

214
00:14:12.253 --> 00:14:16.253
นี่ 9 ช่องนี้ ทำอย่างไรให้มันวาด

215
00:14:16.254 --> 00:14:20.254
ได้ครบทั้ง 9 ใช่ไหมคะ เรา

216
00:14:20.255 --> 00:14:24.255
ก็จะต้องทำ Loop ให้มันใช่ไหม ให้มันทำซ้ำ

217
00:14:24.256 --> 00:14:28.256
คลิกซ้ำได้ คลิกซ้ำได้

218
00:14:28.257 --> 00:14:32.257
การวาง ก็คือคนที่ 1 กลับมาเล่นได้อีกครั้งหนึ่ง

219
00:14:32.258 --> 00:14:36.258
แต่เล่นได้ไม่เกินเท่าไรครั้ง

220
00:14:36.259 --> 00:14:40.259
เดี๋ยวมันจะมีตัวเช็กให้ และพอเรา

221
00:14:40.260 --> 00:14:44.260
เขียนฟังก์ชันนี้เสร็จ คราวนี้

222
00:14:44.261 --> 00:14:48.261
เราจะไม่ลืมแล้ว ครั้งที่แล้วเรา Draw

223
00:14:48.263 --> 00:14:52.263
ทุกครั้งที่เราสร้างฟังก์ชันเสร็จนี่ เรา

224
00:14:52.264 --> 00:14:56.264
จะเรียกมันมาใช้งาน เพราะถ้าไม่เรียกมาใช้งาน

225
00:14:56.266 --> 00:15:00.266
ก็เท่ากับไม่มีอะไรเกิดขึ้นนะคะ

226
00:15:00.267 --> 00:15:04.267
เราก็จะเรียกมันมาใช้งานนะคะ

227
00:15:04.269 --> 00:15:08.269
ตอนนี้สมาชิกครบแล้วรอเปิดเครื่อง

228
00:15:08.269 --> 00:15:12.269
นะคะ เดี๋ยวอธิบายต่อไปก่อน

229
00:15:12.270 --> 00:15:16.270
ใบเตยเสร็จหรือยัง ของใบเตย

230
00:15:16.271 --> 00:15:20.271
ใบเตย Code เสร็จหรือยัง

231
00:15:20.272 --> 00:15:24.272
นะคะ

232
00:15:24.273 --> 00:15:28.273
เห็นไหมคะ พอวาดได้แล้ว เราก็ต้อง

233
00:15:28.275 --> 00:15:32.275
เช็กให้ได้ด้วยว่า ใครจะเป็นคนชนะ

234
00:15:32.276 --> 00:15:36.276
ก็จะสร้าง Funsion

235
00:15:36.277 --> 00:15:40.277
นะคะ หรือชื่อฟังก์ชันว่า

236
00:15:40.279 --> 00:15:44.279
check_winner วิธีการเช็กจะเช็กตามแถวก่อน

237
00:15:44.280 --> 00:15:48.280
เช็กตามนี้นะคะ

238
00:15:48.281 --> 00:15:52.281
แกนแถวนี่ไป ว่า X

239
00:15:52.282 --> 00:15:56.282
วางครบตามหลักของ XO ก็คือ

240
00:15:56.283 --> 00:16:00.283
ใครที่วางตัว X หรือตัว O

241
00:16:00.284 --> 00:16:04.284
ครบ 3 ตัว ใช่ปะ

242
00:16:04.285 --> 00:16:08.285
ถึงจะเป็นคนชนะใช่ไหมคะ เหมือนอย่างนี้

243
00:16:08.287 --> 00:16:12.287
ยังไม่มีใครชนะเดี๋ยวดูนะคะ สมมติ

244
00:16:12.288 --> 00:16:16.288

245
00:16:16.289 --> 00:16:20.289

246
00:16:20.290 --> 00:16:24.290
นี่เห็นไหม สีแดง

247
00:16:24.291 --> 00:16:28.291
ถึงก่อน ก็คือสีแดง O ครบ

248
00:16:28.292 --> 00:16:32.292
มันก็ขึ้นว่า player 2 win ขึ้นข้อความ

249
00:16:32.294 --> 00:16:36.294
ว่า ผู้ชนะคือคนที่ 2 ผู้เล่น

250
00:16:36.296 --> 00:16:40.296
คนเล่นคนที่ 2 นะคะ แล้วทีนี้

251
00:16:40.297 --> 00:16:44.297
ถ้าต้องการเล่นซ้ำ กดที่ Play Again

252
00:16:44.298 --> 00:16:48.298
ก็จะเคลียร์หน้าจอทั้งหมดแล้วให้เล่นซ้ำได้

253
00:16:48.299 --> 00:16:52.299
วิธีการเช็ก เขาจะเช็ก

254
00:16:52.300 --> 00:16:56.300
ตามแถว แถวที่ 1 ครบไหม มีครบ 3

255
00:16:56.300 --> 00:17:00.300
ตัวไหม แถวที่ 2 มีครบไหมนะคะ เห็นไหม

256
00:17:00.301 --> 00:17:04.301
ตรง sum น่ะ ผลรวมมันจะอยู่ที่ 3

257
00:17:04.302 --> 00:17:08.302
เพราะช่อง ช่องของตาราง XO เรามี

258
00:17:08.303 --> 00:17:12.303
ตามแถวก็มี 3 ช่อง ตาม

259
00:17:12.304 --> 00:17:16.304
คอลัมน์ก็มี 3 ช่อง มันก็เช็กไปทั้ง 3 แถว

260
00:17:16.305 --> 00:17:20.305
แล้วนอกจากเช็กตามแถวแล้ว เราต้องเช็กตาม

261
00:17:20.306 --> 00:17:24.306
แนวทะแยงได้ด้วย หรือ คอส

262
00:17:24.306 --> 00:17:28.306
ใช่ไหมคะ ตามหลักของ XO ก็สามารถ

263
00:17:28.308 --> 00:17:32.308
เรียงตามแนวทแยงอย่างนี้ได้

264
00:17:32.308 --> 00:17:36.308
นึกออกนะ ลืม

265
00:17:36.309 --> 00:17:40.309
อันนี้เอาใหม่ ๆ เรียง

266
00:17:40.310 --> 00:17:44.310
ตามแนวทแยง เช่น

267
00:17:44.311 --> 00:17:48.311
นี่ เห็นไหมคะ

268
00:17:48.312 --> 00:17:52.312
อันนี้ คือ ตอนนี้

269
00:17:52.314 --> 00:17:56.314
ให้ตัวเองเล่นเองคนเดียว เลยดักทางตัวเองได้

270
00:17:56.316 --> 00:18:00.316
แต่ถ้าเราไปกำหนดเงื่อนไขว่าให้คนเล่น

271
00:18:00.317 --> 00:18:04.317
เข้ามาเล่นได้ 2 คนอย่างนี้นะคะ มันต้อง

272
00:18:04.317 --> 00:18:08.317
ใช้วิธีการอย่างไร อะไรอย่างไรนี่

273
00:18:08.318 --> 00:18:12.318
จะเป็นขั้นตอนต่อไป สกิล

274
00:18:12.319 --> 00:18:16.319
อันนี้เอาให้รู้ Basic มันก่อนว่า

275
00:18:16.320 --> 00:18:20.320
สิ่งพวกนี้ขึ้นมาได้ เราทำอะไรบ้าง

276
00:18:20.321 --> 00:18:24.321
มีเช็กตามแถวนะคะ

277
00:18:24.322 --> 00:18:28.322
แล้วต้องมาประกาศตัวแปรให้ผู้ชนะ

278
00:18:28.323 --> 00:18:32.323
กับประกาศตัวแปรให้เวลาจบเกมหรือ Gameover ไว้ด้วย

279
00:18:32.324 --> 00:18:36.324
นะคะ ด้วยเพราะจะได้

280
00:18:36.324 --> 00:18:40.324
เก็บค่าข้อมูลไว้ว่าใครคือผู้ใชนะ

281
00:18:40.325 --> 00:18:44.325
คนแพ้ จบเกมเป็นอะไร

282
00:18:44.326 --> 00:18:48.326
เห็นนะคะ เช็กยังไม่เสร็จนะคะ เช็กตาม

283
00:18:48.327 --> 00:18:52.327
คอลัมน์ เช็กตามคอลัมน์

284
00:18:52.328 --> 00:18:56.328
เห็นไหม แกน Y เห็นไหมคะ แล้วสุดท้ายก็จะเช็ก

285
00:18:56.328 --> 00:19:00.328
ตามแนวทะแยง หรือ Cross เพราะว่าโค้ดมันยาว

286
00:19:00.329 --> 00:19:04.329
Code มันยาวแต่ถามเราคีย์

287
00:19:04.331 --> 00:19:08.331
ตามไอ้นี่อยู่แล้วก็จะเห็นอยู่นะคะ

288
00:19:08.333 --> 00:19:12.333
แล้วมีสิ่งหนึ่งที่เราจะต้องมาเรียกใช้งาน

289
00:19:12.333 --> 00:19:16.333
มันชื่อคีย์เวิร์ดที่ว่า Global

290
00:19:16.336 --> 00:19:20.336
มันจะเป็นคีย์เวิลด์ที่เรียก

291
00:19:20.337 --> 00:19:24.337
ตัวแปรที่อยู่ข้างนอกน่ะมาใช้งาน

292
00:19:24.340 --> 00:19:28.340
นะคะ

293
00:19:28.340 --> 00:19:32.340
เมื่อเราสร้างฟังก์ชันนี้เสร็จ เราก็ต้องเรียกใช้มัน

294
00:19:32.341 --> 00:19:36.341
ฟังก์ชันนี้เสร็จมันก็จะ

295
00:19:36.342 --> 00:19:40.342
ไม่ได้เรียกใช้อยู่ตำแหน่งปกติ แต่จะมาเรียกใช้

296
00:19:40.343 --> 00:19:44.343
เมื่อมีการคลิกเมาส์หรืออะไรแล้ว ตำแหน่งที่เรียกใช้

297
00:19:44.344 --> 00:19:48.344
ต้องเช็กตำแหน่งด้วยนะคะ

298
00:19:48.346 --> 00:19:52.346
ใส่ตรงที่หนึ่ง บางที่ก็ใส่ตรงที่หนึ่งไมเหมือนกัน

299
00:19:52.347 --> 00:19:56.347
สิ่งที่เราจะทำต่อไป

300
00:19:56.348 --> 00:20:00.348
ก็คือให้มันเช็กเวลาเกมจบเกมน่ะ

301
00:20:00.350 --> 00:20:04.350
เกม Over หรือจบสิ้นสุดเกม

302
00:20:04.352 --> 00:20:08.352
ก็คือเล่นครบ 9 ช่องแล้วนะคะ ต้อง

303
00:20:08.353 --> 00:20:12.353
มากำหนดเงื่อนไขให้นะคะ

304
00:20:12.355 --> 00:20:16.355
กำหนด

305
00:20:16.356 --> 00:20:20.356
เพื่ออะไร กำหนดเพื่อสมมติว่า

306
00:20:20.359 --> 00:20:24.359

307
00:20:24.361 --> 00:20:28.361
แสดงว่าเมื่อกี้ปิดไปแล้ว

308
00:20:28.362 --> 00:20:32.362

309
00:20:32.364 --> 00:20:36.364
ไม่สมมติแล้ว เปิดให้ดูเลย

310
00:20:36.365 --> 00:20:40.365
คือ เช็ก 9 ช่องแล้ว

311
00:20:40.365 --> 00:20:44.365
นะคะ ตอนคำสั่งที่กำหนดรูปแบบฟอนต์นี่

312
00:20:44.367 --> 00:20:48.367
มีมาเพื่ออะไร ให้ดูนะคะ ก็คืออยู่ดี ๆ

313
00:20:48.368 --> 00:20:52.368
ถ้ากดไปอย่างนี้

314
00:20:52.369 --> 00:20:56.369
จะครบไหม ไม่ครบ เราจะแสดง

315
00:20:56.370 --> 00:21:00.370
ฟอนต์จะใช้เพื่อแสดงข้อความ

316
00:21:00.371 --> 00:21:04.371
ให้ปรากฏพวกนี้ขึ้นมา เห็นไหมคะ

317
00:21:04.371 --> 00:21:08.371
ประกาศตัวแปรชื่อว่าฟอนต์ แล้ว

318
00:21:08.372 --> 00:21:12.372
ให้เรียกฟังก์ชันของฟอร์น

319
00:21:12.373 --> 00:21:16.373
ให้มันขึ้นอยู่ตรงไหน มีค่าเป็นค่าว่าง

320
00:21:16.374 --> 00:21:20.374
นะคะ ก็คือคำสั่งนี้ font นี่

321
00:21:20.375 --> 00:21:24.375
จะเปลี่ยนไปตามที่เราเงื่อนไข

322
00:21:24.375 --> 00:21:28.375
ของเรานั่นเองนะคะ นี่เห็นไหม

323
00:21:28.376 --> 00:21:32.376
winner นี่ให้วาด

324
00:21:32.377 --> 00:21:36.377
หรือแสดงข้อความน่ะ บอกเมื่อผู้เล่นชนะ เห็นไหมคะ

325
00:21:36.377 --> 00:21:40.377
ก็คือเรากำหนดฟอนต์ เพื่อให้แสดง

326
00:21:40.379 --> 00:21:44.379
ส่วนนั่นขึ้นมาอย่างนี้นะคะ

327
00:21:44.380 --> 00:21:48.380
มีการทำกรอบให้มันด้วยนี่

328
00:21:48.381 --> 00:21:52.381
มีแต่ข้อความเดี๋ยวจะดูยาก ใส่กรอบเข้าไปอย่างนี้นะคะ

329
00:21:52.383 --> 00:21:56.383

330
00:21:56.385 --> 00:22:00.385
นี่นะคะ แล้วก็มากำหนด

331
00:22:00.387 --> 00:22:04.387
สีน้ำเงิน เพื่อเป็นสีของข้อความ

332
00:22:04.389 --> 00:22:08.389

333
00:22:08.390 --> 00:22:12.390
นะคะ นี่คือ

334
00:22:12.391 --> 00:22:16.391
คือ ตรงฟังก์ชันนี้แสดง

335
00:22:16.392 --> 00:22:20.392
ข้อความเมื่อเวลาเราเล่นเสร็จ

336
00:22:20.393 --> 00:22:24.393
เล่นจบเกมนี่ เล่นครบนี่

337
00:22:24.394 --> 00:22:28.394

338
00:22:28.395 --> 00:22:32.395

339
00:22:32.397 --> 00:22:36.397
พอบอกแล้วทุกครั้งเมื่อ

340
00:22:36.399 --> 00:22:40.399
สร้างฟังก์ชันใดเสร็จอย่าลืมเรียกใช้มันนะคะ

341
00:22:40.400 --> 00:22:44.400
ก่อนจะเรียกใช้

342
00:22:44.401 --> 00:22:48.401
มันต้องเช็กก่อนว่ามัน ถ้า Game Over จริง

343
00:22:48.402 --> 00:22:52.402
เห็นไหมคะ Tools มันจะไปใช้ฟังกชัน

344
00:22:52.403 --> 00:22:56.403
ขึ้นมานะคะ ก็คือโปรแกรมมันจะเช็กก่อนว่า

345
00:22:56.404 --> 00:23:00.404
เราเล่นไปจนครบ 9 ช่องแล้ว มันก็จะ

346
00:23:00.405 --> 00:23:04.405
ขึ้นตัวนี้ขึ้นมานะคะ

347
00:23:04.405 --> 00:23:08.405

348
00:23:08.406 --> 00:23:12.406
แล้วก็สร้าง play agian

349
00:23:12.408 --> 00:23:16.408
แล้วก็สร้าง Play again

350
00:23:16.409 --> 00:23:20.409
สังเกตมันจะมีปุ่ม 2 กรอบ

351
00:23:20.411 --> 00:23:24.411
ข้อความ กรอบข้อความแรกแสดงผู้ชนะ

352
00:23:24.412 --> 00:23:28.412
กรอบข้อความที่ 2 คือ เมื่อเล่นจบแล้ว

353
00:23:28.413 --> 00:23:32.413
ถ้าไม่มี Play Again มันจะปิด

354
00:23:32.414 --> 00:23:36.414
ไปเลยเล่นซ้ำไม่ได้แต่บางทีอยากเล่นต่อ

355
00:23:36.414 --> 00:23:40.414
ต้องมี Play Again ให้

356
00:23:40.415 --> 00:23:44.415
เล่นอีก เล่นอีกรอบหนึ่ง เล่นไหมอย่างนี้

357
00:23:44.416 --> 00:23:48.416
นะคะ

358
00:23:48.417 --> 00:23:52.417
ก็จะสร้างแบบเดียวกันนะคะ แต่รูปแบบ

359
00:23:52.419 --> 00:23:56.419
เห็นไหม มีการสร้างรู

360
00:23:56.420 --> 00:24:00.420
สี่เหลี่ยมขึ้นมาด้วย กรอบสี่เหลี่ยม

361
00:24:00.423 --> 00:24:04.423
Guard ตัวแปร

362
00:24:04.424 --> 00:24:08.424
เท่ากับสี่เหลี่ยมผืนผ้า

363
00:24:08.425 --> 00:24:12.425
นั่นเองนะคะ แล้วก็ตามด้วยขนาดของมันนะคะ

364
00:24:12.426 --> 00:24:16.426

365
00:24:16.426 --> 00:24:20.426
เดี๋ยวพอสร้างเสร็จในแต่ละส่วนจะ

366
00:24:20.428 --> 00:24:24.428
ให้ลอง Run ดู Run Coding

367
00:24:24.428 --> 00:24:28.428
เพราะฉะนั้น

368
00:24:28.429 --> 00:24:32.429
พอเมื่อใดที่มีการคลิก Play agian นี่

369
00:24:32.430 --> 00:24:36.430
นะคะ ก็หมายถึงให้เล่นใหม่

370
00:24:36.430 --> 00:24:40.430
มันจะต้องทำการ

371
00:24:40.432 --> 00:24:44.432
Reset ค่าทั้งหมดทั้งปวงที่จะเกิดขึ้น ก็คือ

372
00:24:44.433 --> 00:24:48.433
ค่าของตัวมาร์ก ค่าของตำแหน่ง ค่าของ winner

373
00:24:48.434 --> 00:24:52.434
เพราะอะไร เพราะ Mark ตัว XO ใช่ไหมคะ

374
00:24:52.435 --> 00:24:56.435
Pluse มันก็จะเริ่ม

375
00:24:56.436 --> 00:25:00.436
Mark จุดลงไป แล้วก็ player คือ

376
00:25:00.437 --> 00:25:04.437
ผู้เล่นคนแรก เริ่มที่ผู้เล่นคนแรกเสมอนี่

377
00:25:04.438 --> 00:25:08.438
มันจะต้องรีเซ็ตเพื่อให้ พอกดปุ๊บเห็นไหมคะ

378
00:25:08.439 --> 00:25:12.439
กระดาน XO เราก็จะเคลียออกเพื่อให้

379
00:25:12.440 --> 00:25:16.440
เป็นกระดานเปล่า ๆ อีกครั้งหนึ่งเพื่อเริ่มเล่นใหม่ได้

380
00:25:16.440 --> 00:25:20.440

381
00:25:20.443 --> 00:25:24.443
อย่างนี้นะคะ

382
00:25:24.444 --> 00:25:28.444
นะคะ ก็จะมีการเคลียค่าด้วย

383
00:25:28.445 --> 00:25:32.445
นะคะ Reset ค่านั่นเอง คืนค่ากลับไป

384
00:25:32.446 --> 00:25:36.446
ให้มันกลับไปเริ่มใหม่ แล้วค่าใหม่นะคะ

385
00:25:36.447 --> 00:25:40.447
และสุดท้าย

386
00:25:40.448 --> 00:25:44.448
ท้ายที่สุด

387
00:25:44.449 --> 00:25:48.449
มันจะเช็กกระทั่ง

388
00:25:48.451 --> 00:25:52.451
ตำแหน่งในการมาร์กที่มาร์กปรากฏนะคะ เห็นไหมคะ

389
00:25:52.451 --> 00:25:56.451
เคลียร์ออก อันนี้ให้ดูเป็นทีละท่อน

390
00:25:56.452 --> 00:26:00.452
นะคะ เห็นไหมนี่ ก็คือสุดท้าย

391
00:26:00.453 --> 00:26:04.453
เคลียร์ค่าทั้งหมดทั้งปวง ก็จะสามารถ

392
00:26:04.454 --> 00:26:08.454
Run ได้นะคะ ทดสอบครั้งสุดท้ายจะเป็นตัวนี้

393
00:26:08.455 --> 00:26:12.455
พร้อมจะ Code หรือยัง

394
00:26:12.456 --> 00:26:16.441
รอใครอยู่

395
00:26:16.457 --> 00:26:20.457
เสือน้อยยังไม่เปิดหรือ

396
00:26:20.458 --> 00:26:24.458

397
00:26:24.459 --> 00:26:28.459

398
00:26:28.462 --> 00:26:32.462

399
00:26:32.464 --> 00:26:36.464

400
00:26:36.466 --> 00:26:40.466
ตอนนี้ถ้าเปิด sublime Text นะคะ

401
00:26:40.467 --> 00:26:44.467
ให้เราไปยังตำแหน่งในครั้งก่อน

402
00:26:44.468 --> 00:26:48.468
พิมพ์ไว้ ก็คืออยู่ที่

403
00:26:48.469 --> 00:26:52.469
Event Event ที่

404
00:26:52.470 --> 00:26:56.470
จบเกมนั่นเอง

405
00:26:56.471 --> 00:27:00.471
Play Game . quit()

406
00:27:00.472 --> 00:27:04.472
เรานะคะ first game แล้ว

407
00:27:04.473 --> 00:27:08.473
ให้ไปที่ตำแหน่งที่บอก

408
00:27:08.475 --> 00:27:12.475
อยู่ไหนเอ่ย นี่ ๆ ๆ เห็นไหมคะ

409
00:27:12.477 --> 00:27:16.477

410
00:27:16.478 --> 00:27:20.478
อะไรของ

411
00:27:20.484 --> 00:27:24.484
ข้าพเจ้าหายไป

412
00:27:24.487 --> 00:27:28.487
หายไป 1 บรรทัด Update หาย มิน่า...

413
00:27:28.490 --> 00:27:32.490

414
00:27:32.491 --> 00:27:36.491
หาเจอหรือยัง หาตรง Event pygame

415
00:27:36.494 --> 00:27:40.494
บรรทัดนี้เจอหรือยังคะ เกือบสุดท้าย

416
00:27:40.495 --> 00:27:44.495
ก่อนจบ Update หายไปไหน

417
00:27:44.496 --> 00:27:48.496

418
00:27:48.497 --> 00:27:52.388

419
00:27:52.498 --> 00:27:56.498

420
00:27:56.499 --> 00:28:00.499

421
00:28:00.500 --> 00:28:04.500

422
00:28:04.504 --> 00:28:08.504

423
00:28:08.506 --> 00:28:12.506

424
00:28:12.507 --> 00:28:16.507
เราอย่าลืม

425
00:28:16.508 --> 00:28:20.508
ฟังก์ชัน update นะคะ

426
00:28:20.509 --> 00:28:24.509
ยังอยู่สงสัยน่าจะไปลบตอนที่ Run

427
00:28:24.511 --> 00:28:28.511

428
00:28:28.512 --> 00:28:32.512

429
00:28:32.513 --> 00:28:36.513

430
00:28:36.513 --> 00:28:40.513

431
00:28:40.515 --> 00:28:44.515

432
00:28:44.516 --> 00:28:48.516

433
00:28:48.520 --> 00:28:52.520

434
00:28:52.522 --> 00:28:56.522

435
00:28:56.523 --> 00:29:00.523

436
00:29:00.526 --> 00:29:04.526
เดี๋ยวทีนี้

437
00:29:04.528 --> 00:29:08.528
จะ Run ของครั้งก่อนของเรานะคะ

438
00:29:08.529 --> 00:29:12.529
ครั้งก่อนของเรานี่

439
00:29:12.531 --> 00:29:16.531
มันจะเป็นอย่างนี้ใช่ไหม อะไรหายไป

440
00:29:16.531 --> 00:29:20.531
print markers

441
00:29:20.532 --> 00:29:24.532
เราบอกว่าต้องเรียกใช้งาน

442
00:29:24.534 --> 00:29:28.534
มันจะมี...

443
00:29:28.535 --> 00:29:32.535

444
00:29:32.536 --> 00:29:36.536

445
00:29:36.538 --> 00:29:40.538
ในสัปดาห์ที่แล้ว ที่

446
00:29:40.539 --> 00:29:44.539
เราลืมไป ก็คือเราสร้างมันมาแล้วแต่ไม่ได้เรียก

447
00:29:44.540 --> 00:29:48.540
ใช้มันนะคะ

448
00:29:48.541 --> 00:29:52.541
พอเรียกใช้ปุ๊บ เห็นหรือเปล่าขึ้นมาแล้ว

449
00:29:52.542 --> 00:29:56.542
เราจะมีช่องตารางขึ้นมาแบบนี้

450
00:29:56.542 --> 00:30:00.542
เรามีถึงตอนนี้นะคะ คือ เรา

451
00:30:00.543 --> 00:30:04.543
สร้างฟังก์ชัน Draw_grid ไปแล้ว

452
00:30:04.544 --> 00:30:08.544
แต่ไม่เรียกใช้มันก็เลยไม่ขึ้นในครั้งแรก

453
00:30:08.545 --> 00:30:12.545
ที่สัปดาห์แล้ว Error ไป

454
00:30:12.546 --> 00:30:16.546
ทีนี้สัปดาห์นี้ไม่ลืมแล้ว สร้าง Function เสร็จเรี

455
00:30:16.547 --> 00:30:20.547
ห้ามลืม ๆ

456
00:30:20.548 --> 00:30:24.548
ก่อนอื่นนะคะ ก่อนอื่นบอกแล้วว่า

457
00:30:24.549 --> 00:30:28.549
ทุกครั้งก่อนจะเขียนนี่

458
00:30:28.550 --> 00:30:32.550
ควรจะ Hastag ว่า

459
00:30:32.551 --> 00:30:36.551
ทำอะไรในขั้นตอนนี้นะคะ

460
00:30:36.552 --> 00:30:40.552
ในสไลด์บอกว่าเราจะกำหนดเหตุการณ์ก็ต่อเมื่อ

461
00:30:40.553 --> 00:30:44.553
คลิกเมาส์

462
00:30:44.554 --> 00:30:48.554
เพราะฉะนั้น Comment ของเราก็จะมีว่า

463
00:30:48.555 --> 00:30:52.555
ใส่แฮ็กแท็ช

464
00:30:52.555 --> 00:30:56.555
นะคะ พิมพ์ Hashtag (#) แล้วก็

465
00:30:56.556 --> 00:31:00.556

466
00:31:00.557 --> 00:31:04.557

467
00:31:04.558 --> 00:31:08.558
กำหนด event ก็ได้

468
00:31:08.558 --> 00:31:12.558

469
00:31:12.560 --> 00:31:16.560

470
00:31:16.561 --> 00:31:20.561

471
00:31:20.563 --> 00:31:24.563

472
00:31:24.566 --> 00:31:28.566
กำหนด event ก็คือกำหนดเหตุการณ์ให้เมื่อมีการคลิก

473
00:31:28.570 --> 00:31:32.570
นะคะ จะเอาเป็น

474
00:31:32.571 --> 00:31:36.571
ภาษาไทยไหม เดี๋ยวจะงงอีก

475
00:31:36.572 --> 00:31:40.572

476
00:31:40.572 --> 00:31:44.572

477
00:31:44.573 --> 00:31:48.573

478
00:31:48.575 --> 00:31:52.575
ก็คือในส่วนนี้เราจะกำหนด

479
00:31:52.575 --> 00:31:56.575
เหตุการณ์เมื่อเราทำการคลิก Mouse

480
00:31:56.576 --> 00:32:00.576

481
00:32:00.577 --> 00:32:04.577
เงื่อนไขตัวแรกนี่

482
00:32:04.578 --> 00:32:08.578
ตัวแรกนี่ If ตัวแรกอยู่ตำแหน่งนี้

483
00:32:08.579 --> 00:32:12.579
เสร็จสิ้นประโยคมัน

484
00:32:12.579 --> 00:32:16.579
Stetment ที่ 2 ของเราเห็นไหมคะ

485
00:32:16.581 --> 00:32:20.581
เพราะว่าเป็นเงื่อนไขคนละตัวแล้ว

486
00:32:20.582 --> 00:32:24.582
If จะเริ่มตรงกับตำแหน่ง

487
00:32:24.583 --> 00:32:28.583
if แรกนะคะ 2 ตัวนี้ตำแหน่งจะอยู่ตรง

488
00:32:28.584 --> 00:32:32.584
ตำแหน่ง if จะอยู่ตรง เพราะฉะนั้น เช็กเวลา Tab

489
00:32:32.585 --> 00:32:36.585
Tap ไป 1

490
00:32:36.586 --> 00:32:40.586
ครั้งเห็นไหมคะ จะตรงกับ for มันจะ

491
00:32:40.587 --> 00:32:44.587
ตรงกับ if ต้อง Tab อีกครั้งหนึ

492
00:32:44.588 --> 00:32:48.588
ให้ตำแหน่งมันตรง เห็นไหมคะ

493
00:32:48.589 --> 00:32:52.589
เห็นไหมตรงกัน เพราะไม่อย่างนั้น Run

494
00:32:52.590 --> 00:32:56.590
แล้วจะขึ้น iden eorror

495
00:32:56.591 --> 00:33:00.591
อย่าไปกด Spacebar

496
00:33:00.591 --> 00:33:04.591
คือ กด Tab รู้จัก Tab ไหม ปุ่ม Tab น่ะ

497
00:33:04.592 --> 00:33:08.592

498
00:33:08.593 --> 00:33:12.593
ต่างกันนะคะ ระหว่างกด spacebar ก

499
00:33:12.594 --> 00:33:16.594
เพราะคอมพิวเตอร์มันรู้นะคะ มันอ่าน

500
00:33:16.595 --> 00:33:20.595
คีย์บอร์ดได้ เพราะฉะนั้น ถ้าบอกให้กด Tab

501
00:33:20.597 --> 00:33:24.597
ต้องกด Tab

502
00:33:24.597 --> 00:33:28.597
กด spacebar ก็กด spacebar นะคะ

503
00:33:28.599 --> 00:33:32.599
เริ่มด้วยฟังก์ชัน if เสมอ

504
00:33:32.600 --> 00:33:36.600
เมื่อกำหนดเหตุการณ์ จะต้องใช้ if เป็นตัวกำหนดใช่ไหมคะ

505
00:33:36.602 --> 00:33:40.602
พิมพ์

506
00:33:40.603 --> 00:33:44.603
พิมพ์ i ปุ๊บ

507
00:33:44.604 --> 00:33:48.604
เปลี่ยนก่อน i ปุ๊บเห็น

508
00:33:48.605 --> 00:33:52.605
if ที่เราเลือกก็คือ if condition

509
00:33:52.606 --> 00:33:56.606
ไม่ใช่ If คีย์เวิร์ด คลิก if

510
00:33:56.607 --> 00:34:00.607
if condition

511
00:34:00.608 --> 00:34:04.608
เห็นไหม ระยะเยื้องมันจะขึ้นมาให้

512
00:34:04.609 --> 00:34:08.609
เราจะได้ไม่เกิดปัญหา identition อีก

513
00:34:08.610 --> 00:34:12.610
เวลา Error Tab Error หรือ

514
00:34:12.612 --> 00:34:16.612
จะไม่เกิดขึ้น if เสร้จแล้วตามด้วยอะไรเหมือนเดิม

515
00:34:16.613 --> 00:34:20.613
เพราะเราบอกว่า event เราจะกำหนด event นะคะ

516
00:34:20.614 --> 00:34:24.614
ดูในสไลด์นี่เห็นไหม

517
00:34:24.614 --> 00:34:28.614
Event type เสมอเลย

518
00:34:28.615 --> 00:34:32.615
พิมพ์ใช่ไหมคะ == แต่

519
00:34:32.616 --> 00:34:36.616
ตัวที่ฟังก์ชันที่เราจะเรียกมาตรวจสอบ ก็คือ

520
00:34:36.617 --> 00:34:40.617
ฟังก์ชันเมาส์ เดี๋ยวมาดูจะเรียกอย่างไรนะคะ

521
00:34:40.619 --> 00:34:44.619
if event

522
00:34:44.620 --> 00:34:48.620
ก็เลือก stagement

523
00:34:48.621 --> 00:34:52.621
พิมพ์แค่ตัว e แล้วก็คลิก

524
00:34:52.622 --> 00:34:56.622
เสร็แล้วพิมพ์อะไร dot (.) tpye

525
00:34:56.623 --> 00:35:00.623
ก็คือ ก็คือถ้ามันขึ้นตรงตัวไหน

526
00:35:00.625 --> 00:35:04.625
ไหนที่เป็นสีเทา ๆ ก็กด Enter ได้เลย

527
00:35:04.626 --> 00:35:08.626
แล้วตามด้วยอะไรคะ

528
00:35:08.643 --> 00:35:12.643
กด spacebar 1 ครั้ง

529
00:35:12.645 --> 00:35:16.645
เท่ากับใน pygame หรือใน Python

530
00:35:16.647 --> 00:35:20.647
python จะต้อง

531
00:35:20.648 --> 00:35:24.648
กด 2 ครั้งนะคะ แล้วก็

532
00:35:24.648 --> 00:35:28.648
ตามด้วย spacebar 1 ครั้ง แล้วก็พิมพ์

533
00:35:28.649 --> 00:35:32.649
P P แล้วเลือก

534
00:35:32.651 --> 00:35:36.651
pygame

535
00:35:36.652 --> 00:35:40.652
pygame module แล้วนะคะ ใน

536
00:35:40.653 --> 00:35:44.653
หน้าต่างที่มันขึ้นมานี่ หน้าต่าง Pop-up

537
00:35:44.654 --> 00:35:48.654
นะคะ ถ้าไม่อยู่ใน pygame module

538
00:35:48.655 --> 00:35:52.655
ไปแล้วกด Enter

539
00:35:52.657 --> 00:35:56.657

540
00:35:56.658 --> 00:36:00.658
ทันไหมจ๊าบ

541
00:36:00.663 --> 00:36:04.663
. ทีนี้

542
00:36:04.664 --> 00:36:08.664
M ต้องเป็นตัวใหญ่นะคะ เวลาที่

543
00:36:08.666 --> 00:36:12.666
เราจะใช้ pygame.

544
00:36:12.668 --> 00:36:16.668
ในตำแหน่งนี้ เวลาพิมพ์นี่ข้อความนี่จะต้อง

545
00:36:16.669 --> 00:36:20.669
กด shift เสมอ MO

546
00:36:20.671 --> 00:36:24.671
Mo เพื่อหา MOUSE

547
00:36:24.672 --> 00:36:28.672
เงื่อนไขแรกหรือ

548
00:36:28.673 --> 00:36:32.673
เหตุการณ์แรกนะคะ เราจะกำหนดค่า MOUSE

549
00:36:32.674 --> 00:36:36.674
เป็นอะไร ไปดูกัน Button

550
00:36:36.675 --> 00:36:40.675
Down Bott

551
00:36:40.676 --> 00:36:44.676

552
00:36:44.676 --> 00:36:48.676
M

553
00:36:48.677 --> 00:36:52.677
เห็นไหมคะ เลือก

554
00:36:52.691 --> 00:36:56.691
ไวไปไหม ช้า ๆ นะ ช้า ๆ

555
00:36:56.692 --> 00:37:00.692
M ให่ญ่ พิมพ์ M ใหญ่

556
00:37:00.693 --> 00:37:04.693
เลือกตัวนี้นะคะ เลือก... นี่ ๆ ๆ

557
00:37:04.694 --> 00:37:08.694
เลือก MOUSEBUTTONDOWN

558
00:37:08.695 --> 00:37:12.695
m-o-u

559
00:37:12.696 --> 00:37:16.696
u-t-t-o-n

560
00:37:16.697 --> 00:37:20.697
ยาว ๆ หน่อย สังเกต MOUSE แล้วก็จะมี

561
00:37:20.698 --> 00:37:24.698
ไอ้ข้างหลังยาวกว่าเพื่อนเลย

562
00:37:24.698 --> 00:37:28.698
ค่ะ กด Enter

563
00:37:28.699 --> 00:37:32.699

564
00:37:32.700 --> 00:37:36.700
โอ.เค. นะ

565
00:37:36.702 --> 00:37:40.702
ก็คือตอนนี้บอก ถ้า

566
00:37:40.703 --> 00:37:44.703
ถ้าปล่อย เมาส์อะไรจะเกิดขึ้น

567
00:37:44.704 --> 00:37:48.704
หลังจากตรง Statement นี้

568
00:37:48.705 --> 00:37:52.705
ไปมันจะไปบอกว่าถ้าปล่อยเมาส์

569
00:37:52.706 --> 00:37:56.706
ก็คือคลิก

570
00:37:56.706 --> 00:38:00.706
คลิก = tool

571
00:38:00.707 --> 00:38:04.707
ก็คือ

572
00:38:04.709 --> 00:38:08.709
การตรวจสอบ ก็คือเมื่อมีการคลิกปุ๊บนี่นะคะ

573
00:38:08.710 --> 00:38:12.710
ตรงตำแหน่ง Pass นี่

574
00:38:12.711 --> 00:38:16.711
เด็ก ๆ มาที่ตำแหน่ง pas

575
00:38:16.713 --> 00:38:20.713
แล้วว่าถ้า

576
00:38:20.715 --> 00:38:24.715
ถ้าเลือกใช้ไอ้ BUTTONDOWN นี่

577
00:38:24.716 --> 00:38:28.716
เพราะฉะนั้นเมื่อตรง Pass นี่

578
00:38:28.717 --> 00:38:32.717
ถ้าแล้วหรือนี่ ตรง pas

579
00:38:32.718 --> 00:38:36.718
เราทำแถบที่ past เหมือนเดิม

580
00:38:36.719 --> 00:38:40.719
แล้วพิมพ์คลิกลงไปเลย C

581
00:38:40.720 --> 00:38:44.720
พิมพ์นะคะ LI

582
00:38:44.721 --> 00:38:48.721
อันนี้ต้องพิมพ์ก่อน เราจะไม่...

583
00:38:48.722 --> 00:38:52.722
มันเป็นตัวแรปนี่ะมันยังไม่ได้ประกาศมัน

584
00:38:52.723 --> 00:38:56.723
นะคะ คลิก clicked ด้วย

585
00:38:56.724 --> 00:39:00.724

586
00:39:00.725 --> 00:39:04.725
อันนี้ต้องพิมพ์เอานะคะ c-l-i-c-k

587
00:39:04.727 --> 00:39:08.727
cked clicked

588
00:39:08.728 --> 00:39:12.728
ก็คือถ้าคลิก...

589
00:39:12.729 --> 00:39:16.729
ถ้าเลือก ถ้าเมาส์ ปล่อยเมาส์ปุ๊บนี่

590
00:39:16.730 --> 00:39:20.730
มันจะเช็กที่เมื่อมีการคลิกเกิดขึ้น

591
00:39:20.731 --> 00:39:24.731
นะคะ กำหนดค่า

592
00:39:24.732 --> 00:39:28.732
ให้คลิกเท่ากับ

593
00:39:28.732 --> 00:39:32.732
True True ใช่ไหม

594
00:39:32.734 --> 00:39:36.734
= tool เป็นจริง ก็คือมีการ

595
00:39:36.736 --> 00:39:40.736
คลิกนี่นะคะ

596
00:39:40.737 --> 00:39:44.737

597
00:39:44.738 --> 00:39:48.738
เลือก

598
00:39:48.738 --> 00:39:52.738
เลือก true ที่เป็

599
00:39:52.740 --> 00:39:56.740
ตัวใหญ่ตัวนี้นะคะ true นี่

600
00:39:56.741 --> 00:40:00.741
เท่ากับ True ตัวนี้

601
00:40:00.742 --> 00:40:04.742
กด Enter

602
00:40:04.743 --> 00:40:08.743
มันจะเปลี่ยนให้เองเลยเห็นไหม

603
00:40:08.744 --> 00:40:12.744

604
00:40:12.745 --> 00:40:16.745
อันนี้ปล่อยเมาส์ มีปล่อยก็ต้องมีกดใช่ไหมคะ

605
00:40:16.747 --> 00:40:20.747
เพราะฉะนั้น

606
00:40:20.749 --> 00:40:24.749
ไม่อยากให้พิมพ์

607
00:40:24.750 --> 00:40:28.750
ไม่อยากให้ copy

608
00:40:28.751 --> 00:40:32.751
เราก็จะเพิ่มเหตุการณ์อีก 1 ครั้งนะคะ

609
00:40:32.753 --> 00:40:36.753
ตำแหน่งของ if จะอยู่

610
00:40:36.755 --> 00:40:40.755
ตรงกับตำแหน่งนี้เห็นไหม

611
00:40:40.756 --> 00:40:44.756
ตรงกันนะคะ เหมือนเดิม

612
00:40:44.757 --> 00:40:48.757
เพิ่ม if condition กด i แล้วเลือก condition

613
00:40:48.758 --> 00:40:52.758
Enter ได้เลย

614
00:40:52.759 --> 00:40:56.759
เลือก if condition ได้เลย

615
00:40:56.760 --> 00:41:00.760
เหมือเดิม event type

616
00:41:00.761 --> 00:41:04.761
ไปเรื่อย ๆ นี่ จนถึง MOUSE นี่ เปลี่ยนจาก

617
00:41:04.762 --> 00:41:08.762
MOUSEBUTTONDOWN เป็น MOUSEBUTTONE

618
00:41:08.763 --> 00:41:12.763
พิมพ์ Event Event ที่ Stage

619
00:41:12.764 --> 00:41:16.764
กด Enter เลือก event statement

620
00:41:16.765 --> 00:41:20.765

621
00:41:20.765 --> 00:41:24.765
.type

622
00:41:24.766 --> 00:41:28.766
กด Enter แล้วก็ == 2 ครั้ง

623
00:41:28.767 --> 00:41:32.767
กดผิด ๆ  ขอโทษ กดเครื่องหมาย

624
00:41:32.767 --> 00:41:36.767
เครื่องหมายเท่ากับ (=) 2 ครั้ง แล้วก็ตามด้วย

625
00:41:36.768 --> 00:41:40.768
pygame module เหมือนเดิม

626
00:41:40.769 --> 00:41:44.769
ก็คือ Mouse เหมือนเดิม M

627
00:41:44.770 --> 00:41:48.770
เห็นไหม ถ้า Mouse ตัวเล็กมันจะไม่ค่อยขึ้น

628
00:41:48.771 --> 00:41:52.771
คำสั่ง MOUSE จะเป็นตัวใหญ่ M

629
00:41:52.773 --> 00:41:56.773
แต่เลือกเป็นอะไรคะ BUTTONUP

630
00:41:56.773 --> 00:42:00.773
ตัวที่ 2 แทนเห็นไหม Down ตัว

631
00:42:00.774 --> 00:42:04.774
กดปล่อยกดปล่อยนั่นเอง

632
00:42:04.775 --> 00:42:08.775
ปล่อยเลือกปล่อยแล้วมาเลือกกด เหตุการณ์

633
00:42:08.776 --> 00:42:12.776
ในการใช้เมาส์ จะมี 2 เหตุการณ์

634
00:42:12.777 --> 00:42:16.777
กดแล้วก็ปล่อยใช่ไหม กดเพื่อวางแล้วก็ปล่อย

635
00:42:16.778 --> 00:42:20.778

636
00:42:20.779 --> 00:42:24.779
เพราะฉะนั้น ในส่วนของ

637
00:42:24.781 --> 00:42:28.781
ตรงนี้นะคะ ถ้าแล้ว

638
00:42:28.782 --> 00:42:32.782
แล้วถ้าแล้วก็คลิกเหมือนเดิม พิมพ์คลิก

639
00:42:32.784 --> 00:42:36.784

640
00:42:36.785 --> 00:42:40.785
clicked

641
00:42:40.786 --> 00:42:44.786
เราพิมพ์ครั้งแรกไม่ขึ้น

642
00:42:44.787 --> 00:42:48.787
เราประกาศมันไปแล้ว ประกาศใช้ไปแล้วครั้งหนึ่ง

643
00:42:48.788 --> 00:42:52.788
clicked statement ได้เลย กด Enter ไปได้เลย

644
00:42:52.789 --> 00:42:56.789
แล้วก็กด =

645
00:42:56.790 --> 00:43:00.790
กำหนดค่าให้ Clicked

646
00:43:00.791 --> 00:43:04.791
ตัวนี้ต้องเป็นอะไรคะ ตรงข้ามกับตัวแรก

647
00:43:04.792 --> 00:43:08.792
มี true แล้วก็ต้องมี false

648
00:43:08.793 --> 00:43:12.793
ตัวแรกเป็นจริง

649
00:43:12.795 --> 00:43:16.795
ตัวนี้ก็ต้องเป็น False

650
00:43:16.796 --> 00:43:20.796
พิมพ์ F ตัวใหญ่เลย เพราะเรารู้ว่าคีย์เว

651
00:43:20.797 --> 00:43:24.797
ต้องพิมพ์ด้วยตัวใหญ่

652
00:43:24.798 --> 00:43:28.798
โอ.เค. ไหม

653
00:43:28.799 --> 00:43:32.799
เราจะยังไม่ Run ตอนนี้

654
00:43:32.800 --> 00:43:36.800
มันแค่เช็กเฉย ๆ ว่าเรากด Mouse ห

655
00:43:36.800 --> 00:43:40.800
หรือปล่อย Mouse แค่นั้นเองนะคะ

656
00:43:40.801 --> 00:43:44.801

657
00:43:44.802 --> 00:43:48.802

658
00:43:48.803 --> 00:43:52.803
ตอนนี้เราได้ 2 บรรทัดนี้แล้ว

659
00:43:52.805 --> 00:43:56.805
เห็นไหมนี่ Mouse จะมี

660
00:43:56.805 --> 00:44:00.805
2 ตัวนี้ BUTTONUP กับ BUTTONDOWN 2 ตัวบน

661
00:44:00.806 --> 00:44:04.806
อันนี้อธิบายไปแล้ว

662
00:44:04.807 --> 00:44:08.807

663
00:44:08.809 --> 00:44:12.809
สิ่งที่จะทำต่อมา กค็คือ

664
00:44:12.810 --> 00:44:16.810

665
00:44:16.811 --> 00:44:20.811

666
00:44:20.811 --> 00:44:24.811
ข้ามอะไรไป

667
00:44:24.814 --> 00:44:28.814
อ๋อ

668
00:44:28.815 --> 00:44:32.815
ความจริงแล้วเราต้องไปประกาศตัวแปร clicked ก่อนนะคะ

669
00:44:32.816 --> 00:44:36.816
ให้ค่าเริ่มต้นมันเป็น False สิ่งที่เราจะทำต่อไป

670
00:44:36.817 --> 00:44:40.817
ก็คือไปที่ตำแหน่งที่เรา

671
00:44:40.818 --> 00:44:44.818
ประกาศตัวแปรทั้งหลายทั้งแหล่ไว้ไห็นไหม

672
00:44:44.819 --> 00:44:48.819
ไม่แน่ใจเด็ก ๆ

673
00:44:48.820 --> 00:44:52.820
ทำ Remark คอมเมนต์ไว้ด้วยหรือเปล่า

674
00:44:52.821 --> 00:44:56.821
ที่ไปตำแหน่งที่เราประกาศตัวแปรไว้นะคะ

675
00:44:56.822 --> 00:45:00.822
ไปหามันเลยแล้วตัว

676
00:45:00.823 --> 00:45:04.823
ใช้ ก็คืออะไรคะ

677
00:45:04.824 --> 00:45:08.824
Clicked คลิก

678
00:45:08.824 --> 00:45:12.824
ลงไป กำหนดค่า ก็คือ =

679
00:45:12.824 --> 00:45:16.824
ค่าเริ่มต้น เริ่มที่ false นะคะ

680
00:45:16.827 --> 00:45:20.827
เป็นเท็จก่อน เป็นเท็จเสมอ

681
00:45:20.828 --> 00:45:24.828
จะทำงานเมื่อ

682
00:45:24.829 --> 00:45:28.829
เป็นจริง พอเข้ามาในนี้เห็นไหมคะ ทำงานเมื่อ

683
00:45:28.830 --> 00:45:32.830
เป็นจริง เมื่อประกาศตัวแปรไปแล้วสิ่งที่เรา

684
00:45:32.832 --> 00:45:36.832
สิ่งที่เราจะต้องมาเช็กต่อ ก็คือถ้า

685
00:45:36.834 --> 00:45:40.834
ปล่อยเมาส์นะคะ มันก็จะเป็น

686
00:45:40.835 --> 00:45:44.835
ประโยคต่อมาตรงนี้

687
00:45:44.836 --> 00:45:48.836
เห็นไหมคะ ปล่อย Mouse แล้ว

688
00:45:48.837 --> 00:45:52.837
ค่า clicked เมื่อปล่อยเมาส์

689
00:45:52.838 --> 00:45:56.838
และค่าในการคลิกนี่ เป็น False

690
00:45:56.839 --> 00:46:00.839
ตรง Button Up

691
00:46:00.840 --> 00:46:04.840
MOUSEBUTTONUP นี่ ค่า

692
00:46:04.841 --> 00:46:08.841
ในการคลิกจะเป็น True เห็นไหมคะ สลับกัน

693
00:46:08.841 --> 00:46:12.841
ก็คือมีเงื่อนไข

694
00:46:12.842 --> 00:46:16.842
ที่ผูกผันต่อกันมาให้มันเช็กด้วย

695
00:46:16.843 --> 00:46:20.843
ตรงนี้เราเพิ่มประโยคตต่อไป ใช้ an

696
00:46:20.844 --> 00:46:24.844
and คือคีย์เวิลด์ กด Enter ได้เลย

697
00:46:24.845 --> 00:46:28.845
and

698
00:46:28.846 --> 00:46:32.846
clicket แล้วเลือก

699
00:46:32.847 --> 00:46:36.847
พิมพ์แล้วเลือก

700
00:46:36.848 --> 00:46:40.848

701
00:46:40.850 --> 00:46:44.850
เท่ากับให้ค่ามัน เป็นอะไร False

702
00:46:44.851 --> 00:46:48.851
เห็นไหมคะ

703
00:46:48.852 --> 00:46:52.852
ตรงตำแหน่ง MOUSEBUTTONUP

704
00:46:52.853 --> 00:46:56.853
ก็ and and keyword Enter

705
00:46:56.854 --> 00:47:00.854
Space bar ตามด้วย Clicked

706
00:47:00.855 --> 00:47:04.855
Clicked stagement ค่าจะตรงกันข้าม

707
00:47:04.856 --> 00:47:08.856
เท่ากับ

708
00:47:08.857 --> 00:47:12.857
เห็นไหม

709
00:47:12.859 --> 00:47:16.859
จะตรงข้ามกัน True

710
00:47:16.860 --> 00:47:20.860
true เลือก true คีย์เวิลด์

711
00:47:20.861 --> 00:47:24.861
โอ.เค. แล้วเช็กค่า มันจะ

712
00:47:24.862 --> 00:47:28.862
ทำการเช็กแล้ว เช็กเมื่อมีการคลิกนี่

713
00:47:28.863 --> 00:47:32.863
ถ้าไม่ได้ Click ไม่ได้

714
00:47:32.864 --> 00:47:36.864
ก็คือเห็นไหมคะ ก็คือเป็นการปล่อยเมาส์

715
00:47:36.865 --> 00:47:40.865
แต่ถ้าคลิกนี่เป็นการกด Mouse เ

716
00:47:40.866 --> 00:47:44.866
เห็นไหมคะ

717
00:47:44.867 --> 00:47:48.867
โอ.เค. ไหม

718
00:47:48.868 --> 00:47:52.868
ดูตำแหน่ง

719
00:47:52.869 --> 00:47:56.869
ค่าดี ๆ นะคะ ครั้งแรกนี่ เพราะค่าแรก

720
00:47:56.870 --> 00:48:00.870
ของคลิกนี่ คือ เป็น False

721
00:48:00.871 --> 00:48:04.871
ก็คือหมายความว่า ก็คือถ้าปล่อยปุ่มกด

722
00:48:04.872 --> 00:48:08.872
ก็คือไม่ได้คลิกใช่ไหม ก็คือไม่ได้คลิก

723
00:48:08.873 --> 00:48:12.873
เป็นเท็จ ถ้ากด

724
00:48:12.874 --> 00:48:16.874
นะคะ ถ้าตัวนี้เห็นไหมคะ

725
00:48:16.875 --> 00:48:20.875
ถ้า BUTTONUP ก็คือ เป็นจริง มีการกด

726
00:48:20.876 --> 00:48:24.876
เห็นไหม

727
00:48:24.876 --> 00:48:28.876
ถ้า แล้ว หรือ นั่นล่ะ

728
00:48:28.877 --> 00:48:32.877
แล้ว ถ้าปล่อยเมาส์

729
00:48:32.878 --> 00:48:36.878
และไม่ได้คลิกอะไรนี่

730
00:48:36.880 --> 00:48:40.880
ถ้าคลิกก็จะเป็นจริง ถ้าคลิก Mouse

731
00:48:40.881 --> 00:48:44.881
ด้วยนี่ ก็จะเป็น

732
00:48:44.882 --> 00:48:48.882
จะไม่ทำงานเมื่อเป็น False

733
00:48:48.883 --> 00:48:52.883
ก็คือการใช้ IF เงื่อนไขการทำงานก็ต่อ

734
00:48:52.884 --> 00:48:56.884
เมื่อ

735
00:48:56.885 --> 00:49:00.885
ไอ้คำสั่ง

736
00:49:00.886 --> 00:49:04.886
คำสั่งหรืออะไรที่อยู่ในนั้นก่อน มันจะไปทำในนั้นก่อน

737
00:49:04.887 --> 00:49:08.887

738
00:49:08.889 --> 00:49:12.889
ตอนนี้เรากำหนด Mouse ไปแล้วสิ่งที่เราจะทำต่อไป

739
00:49:12.889 --> 00:49:16.889
นะคะ

740
00:49:16.889 --> 00:49:20.889
คือ แค่คลิกปล่อยเมาส์นี่

741
00:49:20.891 --> 00:49:24.891
ไปแล้ว มันก็ต้องไปรู้ตำแหน่ง

742
00:49:24.892 --> 00:49:28.892
Mouse ที่จะคลิกลงไปนะคะ เราจะใช้

743
00:49:28.893 --> 00:49:32.893
การสร้างตัวแปรที่ชื่อว่า

744
00:49:32.894 --> 00:49:36.894
pos หรือ position ให้มันรับค่า

745
00:49:36.895 --> 00:49:40.895
เห็นไหมคะ Get Post

746
00:49:40.896 --> 00:49:44.896
รับตำแหน่ง ค่าตำแหน่งที่เราคลิก Mouse ลงไป

747
00:49:44.896 --> 00:49:48.896
นั่นเอง คลิก Mouse หรือปล่อย

748
00:49:48.896 --> 00:49:52.896
เพราะฉะนั้น

749
00:49:52.898 --> 00:49:56.898
มันจะต่อจากบรรทัดคลิกนี้

750
00:49:56.898 --> 00:50:00.898
พิมพ์ Pos

751
00:50:00.899 --> 00:50:04.899
p อันนี้ต้องพิมพ์เอานะคะ

752
00:50:04.900 --> 00:50:08.900
p-o-s นี่ พิมพ์ เพราะเป็นตัวแปรที่เรายังไม่ได้ประกาศ

753
00:50:08.901 --> 00:50:12.901
ตามด้วยเท่ากับ

754
00:50:12.903 --> 00:50:16.903
เครื่องหมายเท่ากับเห็นไหมคะ

755
00:50:16.904 --> 00:50:20.904
pygame.mouse

756
00:50:20.905 --> 00:50:24.905
จะเรียกใช้ MOUSE แล้ว จะเรียกใช้ MOUSE

757
00:50:24.906 --> 00:50:28.906

758
00:50:28.908 --> 00:50:32.908
Modune

759
00:50:32.910 --> 00:50:36.910
.mouse mouse เล็กนะคะ m

760
00:50:36.913 --> 00:50:40.913
Modul mouse มาใช้งาน เห็นไหมคะ

761
00:50:40.914 --> 00:50:44.914
เลือก Module Mouse mo

762
00:50:44.916 --> 00:50:48.904
แล้วกด Enter

763
00:50:48.916 --> 00:50:52.916

764
00:50:52.918 --> 00:50:56.918
ตามด้วยฟังก์ชัน get_pos()

765
00:50:56.919 --> 00:51:00.919
นะคะ dot

766
00:51:00.921 --> 00:51:04.921
get เลือก getpos

767
00:51:04.922 --> 00:51:08.922
เห็นไหมคะ

768
00:51:08.923 --> 00:51:12.923
เลือกฟังก์ชัน get_pos()

769
00:51:12.924 --> 00:51:16.924
หมายถึง ฟังก์ชันนี้หมายถึง รับค่า

770
00:51:16.925 --> 00:51:20.925
ของตำแหน่งมันสร้างไว้แล้ว เห็นไหม

771
00:51:20.925 --> 00:51:24.925
มันจะสร้างไว้ให้ แต่บางฟังก์ชัน

772
00:51:24.927 --> 00:51:28.927
นะคะ ใน pygame เขาจะมีที่บอกเป็น Library

773
00:51:28.928 --> 00:51:32.928
สร้างไว้แล้ว กับยังไม่สร้าง ถ้าเมื่อใด

774
00:51:32.929 --> 00:51:36.929
ถ้าเมื่อใดที่สร้างเองเราก็จะรู้สิธีสร้างไปแล้วเห็นไหม

775
00:51:36.930 --> 00:51:40.930
เลือก get pos กด Enter

776
00:51:40.931 --> 00:51:44.931
กด Enter อย่าลืมบอกว่าเป็นฟังก์ชัน เด็ก ๆ ต้องใส่

777
00:51:44.932 --> 00:51:48.932
อะไรคะ เครื่องหมายวงเล็บ

778
00:51:48.933 --> 00:51:52.933
เสมอเห็นไหมนะคะ ต้องใส่เครื่องหมาย

779
00:51:52.933 --> 00:51:56.933
วงเล็บเสมอ แค่คลิกที่วงเล็บ

780
00:51:56.934 --> 00:52:00.934
วงเล็บน่ะ แค่คลิกที่วงเล็บเปิดวงเล็บปิดจะตามมา

781
00:52:00.935 --> 00:52:04.935
เพื่อระบุว่า Get Pos เป็นฟังก์ชัน

782
00:52:04.936 --> 00:52:08.936
ที่เราจะใช้งานนะคะ

783
00:52:08.937 --> 00:52:12.937
เห็นไหมคะ จบประโยคที่ get pos

784
00:52:12.938 --> 00:52:16.938
แล้วเราก็ไปประกาศตัวแปร

785
00:52:16.939 --> 00:52:20.939
Pos โดยกำหนดค่าให้เป็น

786
00:52:20.940 --> 00:52:24.940
วงเล็บใหญ่นี้ ก็คือเป็นค่าว่าง

787
00:52:24.941 --> 00:52:28.941
หมายถึงค่าในวงเล็บใหญ่นี่

788
00:52:28.942 --> 00:52:32.942
นะคะ เพราะฉะนั้น เราก็จะไปที่ตำแหน่ง

789
00:52:32.942 --> 00:52:36.942
ไหนคะ ประกาศตัวแปรที่ต่อจาก Click

790
00:52:36.943 --> 00:52:40.943
มี Click แล้วก็มี pos

791
00:52:40.944 --> 00:52:44.944
เลือก pos น่ะ

792
00:52:44.946 --> 00:52:48.946
เลือกที่ตำแหน่ง pos เห็นไหมคะ แล้วกด Enter

793
00:52:48.946 --> 00:52:52.946
แล้วใส่เท่ากับ

794
00:52:52.948 --> 00:52:56.948
สี่เหลี่ยมใหญ่ เห็นไหม ถ้าใส่สี่เหลี่ยมใหญ่

795
00:52:56.949 --> 00:53:00.949
นั่น ก็คือค่าในช่อง

796
00:53:00.952 --> 00:53:04.952
ค่าของตัวนี่เป็น None หรือค่าว่างนั่นเอง

797
00:53:04.953 --> 00:53:08.953

798
00:53:08.953 --> 00:53:12.953

799
00:53:12.954 --> 00:53:16.954

800
00:53:16.955 --> 00:53:20.955
ได้ค่าว่างของตำแหน่งแล้ว ค่าของ position แล้ว

801
00:53:20.957 --> 00:53:24.957
แล้วนะคะ สิ่งต่อไปที่เราจะทำ

802
00:53:24.958 --> 00:53:28.958
มันก็จะเช็กสิ เช็กตำแหน่ง

803
00:53:28.959 --> 00:53:32.959
ตามแกน X แกน Y น่ะ

804
00:53:32.960 --> 00:53:36.960
ของแกน X หรือ cell_x

805
00:53:36.961 --> 00:53:40.961
แกนวายหรือ หรือ Self Y

806
00:53:40.962 --> 00:53:44.962
ชื่อว่า Cellx pos

807
00:53:44.963 --> 00:53:48.963
ตำแหน่ง pos น่ะค่ะ มีค่าเป็น 0

808
00:53:48.964 --> 00:53:52.964
จากค่าว่างให้ค่าตำแหน่ง X กับ Y

809
00:53:52.965 --> 00:53:56.965
ด้วยทีนี้นะคะ

810
00:53:56.966 --> 00:54:00.966
ก็จะอยู่บรรทัดที่ต่อจาก pos

811
00:54:00.966 --> 00:54:04.966
อยู่บรรทัดอยู่จาก post

812
00:54:04.968 --> 00:54:08.968
อันนี้พิมพ์เอา cell เพราะมันเป็นตัวแปรที่สร้างขึ้นมาเอง

813
00:54:08.969 --> 00:54:12.969
เพื่อใช้ระบุตำแหน่ง

814
00:54:12.970 --> 00:54:16.970
ของแกน X แกน Y ก็คือพิมพ์

815
00:54:16.970 --> 00:54:20.970
คำว่า Cell_x

816
00:54:20.972 --> 00:54:24.972
แล้วก็ _ แล้วก็ตามด้วยตัว x

817
00:54:24.974 --> 00:54:28.974
อย่างนี้นะคะ แล้วก็กำหนดค่า

818
00:54:28.975 --> 00:54:32.975
Cell นี้เท่ากับ เท่ากับอะไรลืม

819
00:54:32.976 --> 00:54:36.976
= pos ที่มีค่าเท่ากับ 1

820
00:54:36.977 --> 00:54:40.977
นะคะ pos ที่มีค่าเท่ากับ 1 ในส่วนของ cell_x นี่

821
00:54:40.977 --> 00:54:44.977
ถ้าเราพิมพ์ Pos แล้วกด

822
00:54:44.979 --> 00:54:48.979
Enter แล้วก็ตามด้วยวงเล็ดใหญ่ ใส่

823
00:54:48.981 --> 00:54:52.981
0 เข้าไป ใส่ค่าให้ว

824
00:54:52.982 --> 00:54:56.982
ที่ว่างเปล่า กลายเป็น... ถ้าอยู่ในตำแหน่ง x นี่

825
00:54:56.983 --> 00:55:00.983
Pos จะเริ่มที่ 0

826
00:55:00.984 --> 00:55:04.984
มี X แล้วก็มีอะไรคะ Y

827
00:55:04.985 --> 00:55:08.985
การพิมพ์เหมือนกัน c-e-l-l ce

828
00:55:08.987 --> 00:55:12.987
cell_y นะคะ

829
00:55:12.988 --> 00:55:16.988
แล้วก็ตามด้วยเครื่องหมายเท่ากับ

830
00:55:16.989 --> 00:55:20.989
แล้วก็เหมือนเดิม พิมพ์ pos เข้าไป pos s

831
00:55:20.991 --> 00:55:24.991
แล้วก็ใส่วงเล็บใหญ่

832
00:55:24.991 --> 00:55:28.991
ค่าที่... ไม่ใช่ปีกกา ขอโทษ ๆ เผลอกด Shift

833
00:55:28.992 --> 00:55:32.992
วงเล็บใหญ่ แล้วก็ตามด้วย

834
00:55:32.993 --> 00:55:36.993
ค่าในนั้น ก็คือ 1 เห็นไหมคะ

835
00:55:36.993 --> 00:55:40.993

836
00:55:40.995 --> 00:55:44.995

837
00:55:44.996 --> 00:55:48.996
บอกตำแหน่งของ XY แล้ว

838
00:55:48.998 --> 00:55:52.998
โอ.เค. ไหมทันไหม

839
00:55:52.999 --> 00:55:56.999

840
00:55:56.999 --> 00:56:00.999

841
00:56:01.001 --> 00:56:05.001

842
00:56:05.004 --> 00:56:09.004

843
00:56:09.006 --> 00:56:13.006

844
00:56:13.007 --> 00:56:17.007

845
00:56:17.008 --> 00:56:21.008

846
00:56:21.009 --> 00:56:25.009

847
00:56:25.011 --> 00:56:29.011
แสดงว่า

848
00:56:29.013 --> 00:56:33.013
เด็กไม่ได้เปิด ไม่เป็นไร

849
00:56:33.017 --> 00:56:37.017
ทันนะคะ ทันอยู่นะ โอ.เค.

850
00:56:37.018 --> 00:56:41.018
เราต้องไปต่อนะคะ ไปยังไม่ถึง

851
00:56:41.019 --> 00:56:45.019
ครึ่งทางเลย

852
00:56:45.020 --> 00:56:49.020
สิ่งต่อมา กำหนดตำแหน่งให้ cell_x cell_y แล้ว

853
00:56:49.021 --> 00:56:53.021
เราก็มันจะมาเช็กเงื่อนไข

854
00:56:53.021 --> 00:56:57.021
เมื่อ Mouse คลิกไปตามตำแหน่ง cell x

855
00:56:57.022 --> 00:57:01.022
เมื่อกี้นะคะ โดยใช้

856
00:57:01.023 --> 00:57:05.023
ฟังก์ชัน... ใช้ if เหมือนเดิม ใช้ if

857
00:57:05.024 --> 00:57:09.024
เพื่อกำหนดเงื่อนไขนะคะ เงื่อนไขอะไร

858
00:57:09.024 --> 00:57:13.024
ของตัว marker ของเรา เมื่อ maker

859
00:57:13.024 --> 00:57:17.024
อยู่ตำแหน่ง cell_x ตำแหน่งนี้ หรือ

860
00:57:17.025 --> 00:57:21.025
cell_x ตำแหน่งนี้จะเท่ากับ

861
00:57:21.026 --> 00:57:25.026

862
00:57:25.027 --> 00:57:29.027

863
00:57:29.028 --> 00:57:33.028

864
00:57:33.030 --> 00:57:37.030
ก่อนอื่น ๆ ๆ นะคะ

865
00:57:37.033 --> 00:57:41.033
กด Tab ไป

866
00:57:41.034 --> 00:57:45.034
ให้ตรงกับ cell_x

867
00:57:45.035 --> 00:57:49.035
เลือก if

868
00:57:49.048 --> 00:57:53.048
ทำไมเป็นตัวใหญ่

869
00:57:53.049 --> 00:57:57.049
if condition เหมือนเดิมนะคะ

870
00:57:57.050 --> 00:58:01.050
ทีนี้สิ่งที่เราจะเช็ก ก็คือ

871
00:58:01.052 --> 00:58:05.052
เช็กอะไร เช็ก markers พิมพ์ N

872
00:58:05.052 --> 00:58:09.052
แล้วเลือก Markers statement เห็นไหมคะ

873
00:58:09.054 --> 00:58:13.054
markers

874
00:58:13.055 --> 00:58:17.055
ครั้งก่อน markers

875
00:58:17.057 --> 00:58:21.057
นะคะ ถ้า markers กำหนดค่าให้นะคะ

876
00:58:21.059 --> 00:58:25.059
เช็กค่าแล้ว สังเกตค่าของ position

877
00:58:25.062 --> 00:58:29.062
มันจะเป็นนี่

878
00:58:29.063 --> 00:58:33.063
วงเล็บใหญ่นี่มันจะเป็น

879
00:58:33.064 --> 00:58:37.064
Array นั่นเอง ค่าแบบ Array

880
00:58:37.065 --> 00:58:41.065
ค่าแบบอาร์เรย์นะคะ ค่าแบบ 3 มิติ

881
00:58:41.065 --> 00:58:45.065
นะคะ ก็จะมี

882
00:58:45.065 --> 00:58:49.065
แต่ของเราจะมี cell_x cell_y ที่เรากำหนดไว้

883
00:58:49.066 --> 00:58:53.066
นะคะ หารด้วย 100 หารด้วย 100 จาก

884
00:58:53.067 --> 00:58:57.067
จาก 0 นี่ หารด้วย 100 ค่าที่มีนี่

885
00:58:57.068 --> 00:59:01.068
หารไปนะคะ

886
00:59:01.069 --> 00:59:05.069

887
00:59:05.070 --> 00:59:09.070
พิมพ์ cell_X ขึ้น

888
00:59:09.071 --> 00:59:13.071
Cell_x เลือกค่ะ cell_x เห็นไหมคะ

889
00:59:13.072 --> 00:59:17.072
ขอโทษ ๆ

890
00:59:17.072 --> 00:59:21.072
ตอน markers เสร็จแล้ว

891
00:59:21.074 --> 00:59:25.074
ลืม ๆ ลืมไปว่า

892
00:59:25.075 --> 00:59:29.075
Marker แล้วพิมพ์วงเล็บใหญ่ก่อน

893
00:59:29.075 --> 00:59:33.075
ถูกไหมคะ

894
00:59:33.077 --> 00:59:37.077

895
00:59:37.078 --> 00:59:41.078
พิมพ์วงเล็บใหญ่แล้วก็

896
00:59:41.079 --> 00:59:45.079
ตามด้วย cell_x ของเรา เห็นไหมคะ เลือก cell_x statement

897
00:59:45.081 --> 00:59:49.081
เลือกเห็นไหม cell_x

898
00:59:49.082 --> 00:59:53.082
เป็นลักษณะที่เรากำหนดค่าให้เป็น

899
00:59:53.083 --> 00:59:57.083
cell_x

900
00:59:57.085 --> 01:00:01.085
// 100

901
01:00:01.086 --> 01:00:05.086
แล้วก็ cell_x แล้วก็มี cell_y

902
01:00:05.087 --> 01:00:09.087
มี cell_y ใช่ไหมคะ

903
01:00:09.088 --> 01:00:13.088

904
01:00:13.090 --> 01:00:17.090
นะคะ วงเล็บใหญ่ แล้วก็ cell_y // 100

905
01:00:17.091 --> 01:00:21.091

906
01:00:21.092 --> 01:00:25.092

907
01:00:25.093 --> 01:00:29.093

908
01:00:29.094 --> 01:00:33.094

909
01:00:33.096 --> 01:00:37.096
เลือก cell_y statement

910
01:00:37.097 --> 01:00:41.097
cell_y stagement แล้วก็

911
01:00:41.098 --> 01:00:45.098
100

912
01:00:45.099 --> 01:00:49.099
หลัง Markers นี้

913
01:00:49.100 --> 01:00:53.100
กำหนดค่าให้ เพื่อเช็กว่าเมื่อ

914
01:00:53.102 --> 01:00:57.102
เป็นจริงนี่ มันต้องมีค่า = 0

915
01:00:57.102 --> 01:01:01.102
นะคะ

916
01:01:01.104 --> 01:01:05.104
ส่วนต่อมา

917
01:01:05.106 --> 01:01:09.106
mark ครั้งที่ 1 แล้ว

918
01:01:09.107 --> 01:01:13.107
ว่าตอนเช็กนี่มันมีทั้ง

919
01:01:13.108 --> 01:01:17.108
คนเล่น

920
01:01:17.110 --> 01:01:21.110
มีกี่คน มี 2 คนใช่ไหมคะ เพราะฉะนั้น Mark แรก

921
01:01:21.111 --> 01:01:25.111
มาดู Mark ที่ 2 เช็ก Mark ที่ 2

922
01:01:25.112 --> 01:01:29.112
ตรง pas ทำเหมือนเดิม

923
01:01:29.113 --> 01:01:33.113
ครอบคำว่า past แล้วก็

924
01:01:33.114 --> 01:01:37.114
makers แล้วก็เหมือนเดิม

925
01:01:37.115 --> 01:01:41.115

926
01:01:41.115 --> 01:01:45.115
เอาให้มันเร็วขึ้น เหมือนกันเลย

927
01:01:45.117 --> 01:01:49.117
ใช้วิธี copy markers มาเลยนะ

928
01:01:49.118 --> 01:01:53.118
ถึง... ก๊อบฯ มาทั้ง...

929
01:01:53.119 --> 01:01:57.119
copy เลยนะ

930
01:01:57.119 --> 01:02:01.119
เพราะค่าเดียวกันแต่เปลี่ยนตรงค่าตรงนี้

931
01:02:01.121 --> 01:02:05.121
เท่านั้นนะคะ

932
01:02:05.122 --> 01:02:09.122
ตำแหน่ง markers จะเคลื่อนมาหน่อยหนึ่ง

933
01:02:09.123 --> 01:02:13.123
นะคะ จะอยู่ไม่เท่ากัน วิธีการก็คือ

934
01:02:13.124 --> 01:02:17.124
ปุ๊บอยู่ตรง cas ที่เราว่า

935
01:02:17.126 --> 01:02:21.126
ที่เราว่าแล้วก็กดวางได้เลยไหมตคะ

936
01:02:21.127 --> 01:02:25.127
ทีนี้ค่าตรงนี้ เอา 0 ออก เอาค่า 0 ออก

937
01:02:25.128 --> 01:02:29.128
ค่ามันต้องเป็นคนละค่า ค่าตรงนี้จะเป็นอะไร

938
01:02:29.129 --> 01:02:33.129
บอกแล้วว่าการ Mark คนเล่นมี

939
01:02:33.130 --> 01:02:37.130
2 คนใช่ไหมคะ เคนแ่คนที่ 1

940
01:02:37.131 --> 01:02:41.131
mark ไปแล้ว เพราะฉะนั้น ก็ต้องเช็กว่าผู้เล่นคนที่ 2 เล่นหรือยัง

941
01:02:41.133 --> 01:02:45.133
เพราะฉะนั้นสิ่งที่เราจะทำก็คือ

942
01:02:45.134 --> 01:02:49.134
เป็นการไปประกาศัวแปร Player

943
01:02:49.135 --> 01:02:53.135
ของผู้เล

944
01:02:53.136 --> 01:02:57.136
กำหนดค่าให้ผู้เล่นเริ่มที่ 1 ก็คือ

945
01:02:57.137 --> 01:03:01.137
ผู้เล่นคนแรกก็คือ Player 1

946
01:03:01.138 --> 01:03:05.138
ตัวแปรก่อนนะคะ เพื่อจะรู้ว่า player เรา

947
01:03:05.139 --> 01:03:09.139
เป็น player แบบไหน

948
01:03:09.140 --> 01:03:13.140
เราก็จะไปที่ตำแหน่งการประกาศตัวแปร ก็คือ

949
01:03:13.141 --> 01:03:17.141
ที่อยู่ต่อจากตรงนี้ Pos

950
01:03:17.142 --> 01:03:21.142
จะประกาศตัวแปร player สร้าง

951
01:03:21.143 --> 01:03:25.143
ตัวแปรขึ้นมาเอง

952
01:03:25.144 --> 01:03:29.144
p-l-a-y-e-r player

953
01:03:29.146 --> 01:03:33.146
แล้วก็ตามด้วยเครื่องหมายเท่ากับ

954
01:03:33.147 --> 01:03:37.147
ที่เราให้ ก็คือคนที่ 1 ก่อน เริ่มที่คนที่ 1

955
01:03:37.148 --> 01:03:41.148

956
01:03:41.149 --> 01:03:45.149
เมื่อประกาศตัวแปรเสร็จ

957
01:03:45.151 --> 01:03:49.151
ทีนี้ตรงตำแหน่งนี้เราก็มาเรียกใช้

958
01:03:49.152 --> 01:03:53.152
ตัวแปรนั้นได้เลย เพราะสิ่งที่เราต้องใช้เราจะต้องเ

959
01:03:53.152 --> 01:03:57.152
เราจะเลือก player ที่ mark นี่

960
01:03:57.153 --> 01:04:01.153
เพื่อเช็กว่าไอ้ที่ mark นี่

961
01:04:01.154 --> 01:04:05.154
เป็น Player คนที่ 1 หรือคนที่ 2

962
01:04:05.155 --> 01:04:09.155
= ที่เราใส่ไว้เป็น 0 น่ะ

963
01:04:09.156 --> 01:04:13.156
แก้เป็น แล้วพิมพ์ p เลือก

964
01:04:13.157 --> 01:04:17.157
player statement ของเราลงไป

965
01:04:17.158 --> 01:04:21.158
อย่าลืมเอา Colon

966
01:04:21.159 --> 01:04:25.159
จะไม่เว้นวรรคอย่างนี้นะคะ

967
01:04:25.162 --> 01:04:29.162
เราจะได้

968
01:04:29.163 --> 01:04:33.163
ตัว mark สำหรับเช็กผู้เล่นคนที่ 1 คนที่ 2 แล้ว

969
01:04:33.164 --> 01:04:37.164
ถ้าผู้เล่น Mark นี่อะไรจะเกิด

970
01:04:37.165 --> 01:04:41.165
ขึ้นนะคะ เดี๋ยวจะลอง Run ดูแล้ว

971
01:04:41.167 --> 01:04:45.167
ใกล้แล้ว

972
01:04:45.167 --> 01:04:49.167
เนื่องจาก

973
01:04:49.168 --> 01:04:53.168
ตรงนี้มีต่อ เมื่อมันเช็ก Player นี่

974
01:04:53.169 --> 01:04:57.169
เห็นไหมคะ player

975
01:04:57.170 --> 01:05:01.170
*=-1

976
01:05:01.172 --> 01:05:05.172
มันจะต้องไปเช็กก่อนว่า player ที่เข้ามาเป็น player ที่เท่าไร

977
01:05:05.173 --> 01:05:09.173
เพราะฉะนั้น พอมี Statement นี้

978
01:05:09.174 --> 01:05:13.174
statement นี้มีเงื่อนไข

979
01:05:13.175 --> 01:05:17.175
เราจะ

980
01:05:17.176 --> 01:05:21.176
ลบ : ออก แล้วก็พิมพ์

981
01:05:21.177 --> 01:05:25.177
การเช็กค่าครั้งต่อไปเข้ามา

982
01:05:25.178 --> 01:05:29.178
player พิมพ์ P ปุ๊บ เลือก Player

983
01:05:29.179 --> 01:05:33.179
ใส่เครื่องหมาย

984
01:05:33.180 --> 01:05:37.180
* หรือคูณ = 1

985
01:05:37.181 --> 01:05:41.181
เห็นไหมคะ

986
01:05:41.182 --> 01:05:45.182
ก็คือมันจะทำการคำนวณว่า

987
01:05:45.183 --> 01:05:49.183
player คนที่เท่าไร

988
01:05:49.185 --> 01:05:53.185

989
01:05:53.186 --> 01:05:57.186
1-1 ก็คือ 0

990
01:05:57.189 --> 01:06:01.189
ค่าเริ่มต้น คือ 1 อย่าไปสนใจ

991
01:06:01.190 --> 01:06:05.190
ให้เครื่องมันคำนวณไป เ

992
01:06:05.192 --> 01:06:09.192
เราไม่ต้องไปสนใจมัน โอ.เค. ไหมคะ อธิบายแล้วจะงงเข้าไปใหญ่

993
01:06:09.193 --> 01:06:13.193
เพราะฉะนั้นตรงนี้คือ

994
01:06:13.194 --> 01:06:17.194
การคำนวณของมันน่ะ

995
01:06:17.195 --> 01:06:21.195

996
01:06:21.196 --> 01:06:25.196
เสร็จแล้ว

997
01:06:25.198 --> 01:06:29.198
เราจะไปลบคำสั่ง print marker ที่เรา

998
01:06:29.199 --> 01:06:33.199
Printmarkers ของเรา

999
01:06:33.200 --> 01:06:37.200
ออก เพราะว่าเราจะไม่ใช้ตัวนี้แล้ว

1000
01:06:37.201 --> 01:06:41.201
เพราะเดี๋ยวเราจะสร้าง markers ที่เป็น... เพราะคราวที่แล้ว

1001
01:06:41.202 --> 01:06:45.202
เมาส์มันเลื่อนไปแล้วมีตำแหน่ง marker

1002
01:06:45.211 --> 01:06:49.211
เพราะขั้นต่อไปเราจะสร้าง markers ที่เป็นตัว X กับ

1003
01:06:49.212 --> 01:06:53.212
ตัว O ขึ้นมาเพราะฉะนั้น เราจะลบตัวนี้ออก

1004
01:06:53.214 --> 01:06:57.214
เราก็จะไปที่คำสั่ง print_markers แล้วลบคำสั่งมันออกนะคะ

1005
01:06:57.216 --> 01:07:01.216
มันก็อยู่นี่

1006
01:07:01.217 --> 01:07:05.217
อยู่ตรงเงื่อนไขนี้

1007
01:07:05.218 --> 01:07:09.218
ให้เด็ก ๆ ไปที่ตำแหน่ง print_markers แล้ว

1008
01:07:09.221 --> 01:07:13.221
ลบเลย กดทำแถบ

1009
01:07:13.222 --> 01:07:17.222
ครอบทั้งหมด แล้วก็

1010
01:07:17.224 --> 01:07:21.224
Delete ได้เลย ลบออกได้เลย เราไม่ใช้แล้วก็จะลบ

1011
01:07:21.225 --> 01:07:25.225
ออก

1012
01:07:25.227 --> 01:07:29.227
โอ.เค. ไหม ลบหรือยัง หาเจอหรือเปล่า

1013
01:07:29.228 --> 01:07:33.228
ถ้าหาไม่เจอ มันจะมีวิธี

1014
01:07:33.229 --> 01:07:37.229
ให้ค้นหาอยู่ที่แถบเมนูที่ว่า File

1015
01:07:37.230 --> 01:07:41.230
เห็นหรือเปล่าคะ แล้วกดคำว่า "Find"

1016
01:07:41.231 --> 01:07:45.231
มันจะมีให้เราหาคำว่า "mark" เดี๋ยว...

1017
01:07:45.232 --> 01:07:49.232

1018
01:07:49.233 --> 01:07:53.233

1019
01:07:53.234 --> 01:07:57.234
ดูนะคะ เราจะหาคำว่า "print"

1020
01:07:57.235 --> 01:08:01.235

1021
01:08:01.236 --> 01:08:05.236

1022
01:08:05.238 --> 01:08:09.238
เห็นไหมคะ Print_markers นี่

1023
01:08:09.239 --> 01:08:13.239
ถ้าใช้ Find นี่มันจะไปตำแหน่งนั้นให้

1024
01:08:13.241 --> 01:08:17.241
พอเราเจอแล้วเราก็ลบออกได้เลย ใช้วิธีค้นหาได้

1025
01:08:17.242 --> 01:08:21.242
ใน Coding บางทีให้นึกถึง

1026
01:08:21.244 --> 01:08:25.244
เวลา Code จริง ๆ นี่ยังเยอะกว่านี้นะ อันนี้

1027
01:08:25.245 --> 01:08:29.245
ยังถือว่าแค่ 100 กว่าบรรทัด ถือว่าน้อย

1028
01:08:29.246 --> 01:08:33.246
เพราะฉะนั้น ก็ใช้ Menu file ให้เป็นประโยชน์

1029
01:08:33.246 --> 01:08:37.246
นะคะ ช่วยค้นหาคำ

1030
01:08:37.247 --> 01:08:41.247
ในเครื่องนี้ได้นะคะ เพราะฉะนั้น

1031
01:08:41.248 --> 01:08:45.248
ถ้าจะไปตำแหน่งไหนใช้ตัวนี้ช่วยก็ได้

1032
01:08:45.249 --> 01:08:49.249
ถ้าไม่ใช้ก็ปิด เราลบ

1033
01:08:49.250 --> 01:08:53.250
print marker ไปแล้ว สิ่งที่เราจะทำต่อไป

1034
01:08:53.252 --> 01:08:57.252
ก็คือเราจะมาสร้าง ขอโทษ

1035
01:08:57.253 --> 01:09:01.253
สร้างฟังก์ชัน draw_markers

1036
01:09:01.255 --> 01:09:05.255
จะวาดตัว markers เรานั่นเองนะคะ

1037
01:09:05.256 --> 01:09:09.256
มาดูกัน ฟังก์ชันนี้ มันก็อยู่

1038
01:09:09.257 --> 01:09:13.257
ตำแหน่งที่เรา ตำแหน่งที่เราลบ print_markers

1039
01:09:13.258 --> 01:09:17.258
นะคะ อยู่ตำแหน่งนี้เลย Enter ไป 2 ที

1040
01:09:17.259 --> 01:09:21.259
แล้วก็ใส่ Hashtag (#) เข้าไป แล้วก็บอกว่าเราจะสร้างอะไรคะ

1041
01:09:21.260 --> 01:09:25.260

1042
01:09:25.261 --> 01:09:29.261
แล้วก็บอกว่าเราจะสร้างอะไรคะ

1043
01:09:29.262 --> 01:09:33.262

1044
01:09:33.263 --> 01:09:37.263

1045
01:09:37.265 --> 01:09:41.265

1046
01:09:41.266 --> 01:09:45.266

1047
01:09:45.269 --> 01:09:49.269
บอกไปเลยว่าเราจะ

1048
01:09:49.271 --> 01:09:53.271
สร้างฟังก์ชันที่วาดตัว X หรือตัว O ของเราเองนะคะ

1049
01:09:53.272 --> 01:09:57.272
คำสั่ง

1050
01:09:57.274 --> 01:10:01.274
ในการ สร้าง function ก็คือ De

1051
01:10:01.275 --> 01:10:05.275
ใช่ไหม เลือก def

1052
01:10:05.276 --> 01:10:09.276
แล้วก็ตามด้วยชื่อฟังก์ชันที่เราจะสร้าง ก็คือ d-r-a-w

1053
01:10:09.277 --> 01:10:13.277
Draw ตามด้วย Underscoll

1054
01:10:13.279 --> 01:10:17.279
_m-

1055
01:10:17.280 --> 01:10:21.280
a-r-

1056
01:10:21.281 --> 01:10:25.281
k-e-r-s draw_markers

1057
01:10:25.282 --> 01:10:29.282
เพราะมีตัว X กับตัว O ก็เลยใส่ S เข้าไป

1058
01:10:29.284 --> 01:10:33.241
เข้าไปนะคะ

1059
01:10:33.286 --> 01:10:37.286

1060
01:10:37.287 --> 01:10:41.287
ตามด้วยการระบุตำแหน่งของ markers ของเราเอง

1061
01:10:41.289 --> 01:10:45.289
นะคะ เพราะเมื่อจะสร้าง

1062
01:10:45.289 --> 01:10:49.289
มันก็ต้องอบกตำแหน่งที่มันจะสร้างใช่ไหม pas

1063
01:10:49.290 --> 01:10:53.290
ลบออกแล้วก็ใส่ x นะคะ

1064
01:10:53.291 --> 01:10:57.291
ตำแหน่งแรก คือ x x statement มันหามาให้แล้ว

1065
01:10:57.293 --> 01:11:01.293
เท่ากับ

1066
01:11:01.293 --> 01:11:05.293
= x หรือ y นะงง

1067
01:11:05.294 --> 01:11:09.294
x pos เรา

1068
01:11:09.295 --> 01:11:13.295
ใส่ไป x pos นี่ เอาใหม่ ๆ

1069
01:11:13.296 --> 01:11:17.296
ตำแหน่งที่เราประกาศ x_pos

1070
01:11:17.298 --> 01:11:21.298
pos หายไปไหน

1071
01:11:21.299 --> 01:11:25.299

1072
01:11:25.299 --> 01:11:29.299
อ๋อ x_pos เรายังไม่ได้ใส่ใช่ไหม

1073
01:11:29.300 --> 01:11:33.300
x_pos=

1074
01:11:33.302 --> 01:11:37.302
ค่าเริ่มต้น คือ

1075
01:11:37.303 --> 01:11:41.303
0 เสมอ เห็นไหมคะ ตำแหน่ง

1076
01:11:41.304 --> 01:11:45.304
ของแกน x เริ่มที่ 0 เสมอ

1077
01:11:45.305 --> 01:11:49.305

1078
01:11:49.306 --> 01:11:53.306
เสร็จแล้สก็ทำ loop

1079
01:11:53.307 --> 01:11:57.307
for x in markers

1080
01:11:57.308 --> 01:12:01.308
สำหรับ x ใน markers นี่นะคะ

1081
01:12:01.310 --> 01:12:05.310
นะคะ

1082
01:12:05.311 --> 01:12:09.311

1083
01:12:09.312 --> 01:12:13.312
พิมพ์ for

1084
01:12:13.313 --> 01:12:17.313
เลือก For Loop กด Enter

1085
01:12:17.314 --> 01:12:21.314
เลือก X ตามเขาเลย แต่

1086
01:12:21.315 --> 01:12:25.315
in เปลี่ยนเป็น...

1087
01:12:25.315 --> 01:12:29.315
อันนี้เปลี่ยนจาก x range

1088
01:12:29.317 --> 01:12:33.317
เป็น markers ของเรานะคะ เลือก markers statement ของเรา

1089
01:12:33.318 --> 01:12:37.318
แล้วก็ตามด้วยอไร

1090
01:12:37.319 --> 01:12:41.319
เครื่องหมาย colon

1091
01:12:41.320 --> 01:12:45.320
นะคะ เพราะอะไร เพราะ markers

1092
01:12:45.321 --> 01:12:49.321
ที่เราทำไว้ มันเป็นการระบุตำแหน่ง

1093
01:12:49.322 --> 01:12:53.322
หรือค่าไว้แล้ว ก็คือเป็นค่าว่าง

1094
01:12:53.323 --> 01:12:57.323
เราเรียกใช้มันมา

1095
01:12:57.324 --> 01:13:01.324
ก็คือเมื่อ

1096
01:13:01.324 --> 01:13:05.324
สำหรับแกน x นี่ ใน markers นี่นะคะ

1097
01:13:05.325 --> 01:13:09.325
สิ่งที่เราจะกำหนดต่อไปเงื่อนไข

1098
01:13:09.326 --> 01:13:13.326
นี่ใน loop นี่ มันต้อง

1099
01:13:13.327 --> 01:13:17.327
ตาม loop เมื่อเช็กแกน x แล้วก็ต้อง

1100
01:13:17.328 --> 01:13:21.328
เช็กแกน y เห็นไหมคะ

1101
01:13:21.329 --> 01:13:25.329
Y pos

1102
01:13:25.331 --> 01:13:29.331
ช่องตารางที่เคยบอกน่ะ มันต้องเริ่มจาก

1103
01:13:29.332 --> 01:13:33.332
00 x0 y0 เสมอนะคะ

1104
01:13:33.333 --> 01:13:37.333
เพราะฉะนั้น y_pos ของเราก็ = 0 เหมือนกัน

1105
01:13:37.334 --> 01:13:41.334

1106
01:13:41.334 --> 01:13:45.334
Y_pos ตัวแปรนี้

1107
01:13:45.335 --> 01:13:49.335
ตัวแปร

1108
01:13:49.336 --> 01:13:53.336
มีค่าเท่ากับ 0

1109
01:13:53.338 --> 01:13:57.338
นะคะ

1110
01:13:57.338 --> 01:14:01.338
เด็ก ๆ

1111
01:14:01.339 --> 01:14:05.339
ดูตำแหน่ง tab ดี ๆ ด้วยนะ

1112
01:14:05.341 --> 01:14:09.341
นี่เห็นไหม แถบมันจะเยี้องไป

1113
01:14:09.342 --> 01:14:13.342
ไปนะคะ มันจะไม่อยู่ตรงกันนะ

1114
01:14:13.344 --> 01:14:17.344
เพราะมันเป็น loop ในแถว

1115
01:14:17.345 --> 01:14:21.345
x คือแถวใช่ไหม ต่อไปเราจะทำ loop ใน y

1116
01:14:21.347 --> 01:14:25.347
for y in x:

1117
01:14:25.347 --> 01:14:29.347
ก็คือคอลัมน์ตามแถวไปที่

1118
01:14:29.348 --> 01:14:33.348
ไปตามนี่นึกออกนะ นี่คือแถว

1119
01:14:33.349 --> 01:14:37.349
มันจะเช็กไปตามแถวก่อน แล้วค่อย

1120
01:14:37.350 --> 01:14:41.350
คอลัมน์ในแถวที่ 1 แถวที่ 2 อย่างนี้ไล่ไป

1121
01:14:41.351 --> 01:14:45.351
คอลัมน์นี้แถวนี้ ๆ

1122
01:14:45.352 --> 01:14:49.352
ไปตามคอลัมภ์แถว

1123
01:14:49.353 --> 01:14:53.353

1124
01:14:53.354 --> 01:14:57.354
ก็ใช้ for loop เหมือนเดิม

1125
01:14:57.355 --> 01:15:01.355
for loop เปลี่ยนจาก x เป็น

1126
01:15:01.356 --> 01:15:05.356
y in อะไรคะ

1127
01:15:05.358 --> 01:15:09.358
in x

1128
01:15:09.359 --> 01:15:13.359
เอาค่าออก เขากำหนดค่า x แล้ว

1129
01:15:13.361 --> 01:15:17.361
นะ ว่าเป็นเท่าไร

1130
01:15:17.362 --> 01:15:21.362
เห็นไหมคะ พอ y in x

1131
01:15:21.363 --> 01:15:25.363
ทีนี้มาเช็ก มาเช็ก loop แล้ว

1132
01:15:25.364 --> 01:15:29.364
เริ่มจะเช็ก loop แล้วว่าค่า y = 1

1133
01:15:29.366 --> 01:15:33.366
เกิดมาร์กลงไปในตำแหน่งนี้ปุ๊บ

1134
01:15:33.367 --> 01:15:37.367
นะคะ สมมต ๆ

1135
01:15:37.368 --> 01:15:41.368
ก็คือให้เงื่อนไข

1136
01:15:41.370 --> 01:15:45.370
if สร้าง if condition

1137
01:15:45.371 --> 01:15:49.371
ขึ้นมา if y เท่ากับ

1138
01:15:49.372 --> 01:15:53.372
=1

1139
01:15:53.373 --> 01:15:57.373
เราจะมีเงื่อนไขเพื่อตรวจสอบแล้ว

1140
01:15:57.375 --> 01:16:01.375
เมื่อ y = 1 อะไรจะเกิดขึ้น สิ่งที่จะ

1141
01:16:01.376 --> 01:16:05.376
ทำต่อมา เราจะไปกำหนดค่าสี

1142
01:16:05.377 --> 01:16:09.377
สีที่เราจะใช้ ก็คือสีเขียวกับสีแดง

1143
01:16:09.378 --> 01:16:13.378
โดยที่สีเขียวจะไว้สร้าง

1144
01:16:13.379 --> 01:16:17.379
ตัว X นะคะ

1145
01:16:17.380 --> 01:16:21.380
สีแดงจะไว้สร้างตัว O green จะสร้าง x

1146
01:16:21.381 --> 01:16:25.381
Red จะสร้าง O ขึ้นมา ทีนี้ไปตำแหน่งที่

1147
01:16:25.382 --> 01:16:29.382
ประกาศตัวแปร เพื่อประกาศตัวแปร

1148
01:16:29.383 --> 01:16:33.383
ให้กับสี เห็นไหมคะ สีเขียว สีแดงของเรานั่นเอง

1149
01:16:33.384 --> 01:16:37.384

1150
01:16:37.384 --> 01:16:41.384

1151
01:16:41.385 --> 01:16:45.385

1152
01:16:45.387 --> 01:16:49.387

1153
01:16:49.388 --> 01:16:53.388
มันเป็นตัวแปรนะคะ พิมพ์เอาเอง

1154
01:16:53.389 --> 01:16:57.389
ใส่เครื่องหมาย = ใส่ค่า

1155
01:16:57.391 --> 01:17:01.391
ค่าสีนี้มันจะใส่ตาม

1156
01:17:01.392 --> 01:17:05.392
แนวไอ้นี่ ตอนที่ Run อยู่ไหนนะ

1157
01:17:05.392 --> 01:17:09.392

1158
01:17:09.393 --> 01:17:13.393
แนว

1159
01:17:13.394 --> 01:17:17.394
ไปตามแนวน่ะ แนว

1160
01:17:17.395 --> 01:17:21.395
เส้นที่เราสร้างนี่ล่ะ แนวตารางที่เราสร้างนี่ล่ะนะคะ

1161
01:17:21.397 --> 01:17:25.397
ก็คือเริ่มที่ 0

1162
01:17:25.399 --> 01:17:29.399
0 แล้วก็

1163
01:17:29.400 --> 01:17:33.400
เต็ม... ไม่เต็มพื้นที่มาก 255

1164
01:17:33.401 --> 01:17:37.401
ให้มันใส่ค่าอยู่ เพราะพื้นที่ของ

1165
01:17:37.402 --> 01:17:41.402
Screen เราคือ 300

1166
01:17:41.403 --> 01:17:45.403
เต็ม 300 อยู่แล้วนะคะ แล้วก็ 0

1167
01:17:45.404 --> 01:17:49.404
จะมี 2 ค่า

1168
01:17:49.405 --> 01:17:53.405
ต่อไป สีแดง red

1169
01:17:53.406 --> 01:17:57.406
Red= ประกาศตัวแปร Red

1170
01:17:57.407 --> 01:18:01.407
red = ค่าสีจำสลับนะ

1171
01:18:01.408 --> 01:18:05.408
เห็นไหม สีเขียว 0/550

1172
01:18:05.409 --> 01:18:09.409
สีแดง 255, 0, 0

1173
01:18:09.410 --> 01:18:13.410

1174
01:18:13.411 --> 01:18:17.411
วงเล็บนะคะ (

1175
01:18:17.412 --> 01:18:21.412

1176
01:18:21.415 --> 01:18:25.415
255

1177
01:18:25.416 --> 01:18:29.416
แล้วก็ 2550

1178
01:18:29.417 --> 01:18:33.417
เพราะอะไร เพราะมันมี 3 คอลัมภ์

1179
01:18:33.418 --> 01:18:37.418
3 แถว ค่ามันก็เลยไปตามคอลัมน์ 3 แถวนั่นล่ะ

1180
01:18:37.419 --> 01:18:41.419
ที่ขึ้นนั่นล่ะ

1181
01:18:41.419 --> 01:18:45.419

1182
01:18:45.421 --> 01:18:49.421

1183
01:18:49.423 --> 01:18:53.423
เห็นไหมคะ ได้ตัวแปรสำหรับ

1184
01:18:53.424 --> 01:18:57.424
สีเขียวสีแดงแล้ว สิ่งต่อไปที่เราจะทำ

1185
01:18:57.424 --> 01:19:01.424
การวาดตัว X

1186
01:19:01.425 --> 01:19:05.425
นะคะ

1187
01:19:05.426 --> 01:19:09.426
คำสั่งที่ใช้วาด ก็คือ pygamne

1188
01:19:09.427 --> 01:19:13.427
.draw.line ก็คือคำสั่งวาดเส้น

1189
01:19:13.429 --> 01:19:17.429
มาดูรูปแบบ

1190
01:19:17.430 --> 01:19:21.430
รูปแบบ

1191
01:19:21.431 --> 01:19:25.431

1192
01:19:25.432 --> 01:19:29.432
ประกาศสีก็ใช้แล้ว

1193
01:19:29.433 --> 01:19:33.433
ตรงนี้นะคะ

1194
01:19:33.436 --> 01:19:37.436
ตรง pos เรา

1195
01:19:37.437 --> 01:19:41.437
ลบ

1196
01:19:41.438 --> 01:19:45.438
ว่า py... Mod

1197
01:19:45.441 --> 01:19:49.441
.draw module

1198
01:19:49.443 --> 01:19:53.443
d ปุ๊บ เลือก modune

1199
01:19:53.444 --> 01:19:57.444
. ฟังก์ชันที่ชื่อว่า

1200
01:19:57.445 --> 01:20:01.445
line แบบไม่มี S นะ

1201
01:20:01.446 --> 01:20:05.446
นี่ มันมี 2 ลาย

1202
01:20:05.447 --> 01:20:09.447
line ที่เราใช้ line ตัวแรก

1203
01:20:09.448 --> 01:20:13.448

1204
01:20:13.449 --> 01:20:17.449
เราจะระบุค่าใน line ระบุค่าเส้น

1205
01:20:17.451 --> 01:20:21.451
นั่นเองนะคะ ดูนะคะ ค่าเส้นที่จะระบุ

1206
01:20:21.452 --> 01:20:25.452
เราต้องบอกตำแหน่งก่อนว่าในหน้าจอ

1207
01:20:25.453 --> 01:20:29.453
นี้ ในหน้าจอนี้เห็นไหม

1208
01:20:29.454 --> 01:20:33.454
เราต้องเรียกหน้าจอนี้ขึ้นมาด้วยนะคะ เพราะมันจะได้วาดลงไปถูกว่า

1209
01:20:33.454 --> 01:20:37.454
มันจะวาดลงตรงไหน ก็เลยเรียก Screen

1210
01:20:37.455 --> 01:20:41.455
line นะคะ

1211
01:20:41.457 --> 01:20:45.457
ตามด้วย screen ก่อน

1212
01:20:45.459 --> 01:20:49.459

1213
01:20:49.461 --> 01:20:53.461
เห็นไหมคะ เลือก Screen Statement

1214
01:20:53.462 --> 01:20:57.462
แล้วก็ตามด้วย

1215
01:20:57.463 --> 01:21:01.463
Comma (,๗

1216
01:21:01.464 --> 01:21:05.464
วรรค แล้วก็ตามด้วยสีที่เราใช้วาด ก็คือ

1217
01:21:05.466 --> 01:21:09.466
Green Green ของเราก็คือ Green Statement

1218
01:21:09.467 --> 01:21:13.467
นั่นเอง ก็คือ

1219
01:21:13.468 --> 01:21:17.468
วาดตรงไหน ระบุพื้นที่เห็นไหมคะ

1220
01:21:17.469 --> 01:21:21.469
ที่เราทำไว้ นี่ ๆ ๆ นี่

1221
01:21:21.471 --> 01:21:25.471
นี่ Screen=

1222
01:21:25.472 --> 01:21:29.472
ก็คือตัวนี้ที่กำหนดจากตัวนี้ขึ้นมา

1223
01:21:29.473 --> 01:21:33.473
นะคะ ก็ไปเรียกใช้มันนะคะ

1224
01:21:33.474 --> 01:21:37.474
แล้วก็ตามด้วยสี ตัวแปรสี

1225
01:21:37.475 --> 01:21:41.475
เสร็จแล้วตามด้วยอะไร ตามด้วยตำแหน่ง

1226
01:21:41.476 --> 01:21:45.476
เห็นไหมคะ ตำแหน่งเกน x แกน y เห็นไหมคะ

1227
01:21:45.477 --> 01:21:49.477
ตำแหน่งแรก

1228
01:21:49.478 --> 01:21:53.478
ดู เพราะเวลาตัวนี้มันไล่มัน

1229
01:21:53.481 --> 01:21:57.481
ไล่จาก

1230
01:21:57.482 --> 01:22:01.482
ใส่ colon

1231
01:22:01.483 --> 01:22:05.483
ใส่ Comma (,) แล้วก็ตามด้วยเครื่องหมายวงเล็บ ZX

1232
01:22:05.484 --> 01:22:09.484
ใส่วงเล็บก่อนนะคะ

1233
01:22:09.485 --> 01:22:13.485
เห็นไหมคะ เพราะในนี้ตำแหน่ง

1234
01:22:13.485 --> 01:22:17.485
x_pos เลือกตำแหน่ง x_pos นะคะ

1235
01:22:17.486 --> 01:22:21.486
ตำแหน่งของแกน X

1236
01:22:21.488 --> 01:22:25.488
ตำแหน่งของแกน x ของเราจะเริ่มที่...

1237
01:22:25.488 --> 01:22:29.488

1238
01:22:29.490 --> 01:22:33.490
คูณ 100 + 15

1239
01:22:33.491 --> 01:22:37.491
เลยก็ไม่ได้ มันต้องไปทำการคำนวณก่อน

1240
01:22:37.492 --> 01:22:41.492
เพื่อลดค่าความคลาดเคลื่อนต่าง ๆ ของมันนะคะ

1241
01:22:41.493 --> 01:22:45.493
ตำแหน่งนี้ก็คือ ตำแหน่งของ X pos

1242
01:22:45.494 --> 01:22:49.494
เราเริ่มที่ 0 ให้ X_pos ไป *

1243
01:22:49.495 --> 01:22:53.495
100

1244
01:22:53.496 --> 01:22:57.496
วรรคนะคะ กด spacebar

1245
01:22:57.497 --> 01:23:01.497
แล้วก็กด 100 แล้วก็กด Space Bar

1246
01:23:01.499 --> 01:23:05.499
อีกหนึ่งครั้ง วรรคแล้วก็กด +

1247
01:23:05.500 --> 01:23:09.500
แล้วก็วรรคตามด้วย 15

1248
01:23:09.501 --> 01:23:13.501

1249
01:23:13.502 --> 01:23:17.502
เดี๋ยวให้ดูตำแหน่ง

1250
01:23:17.503 --> 01:23:21.503
ให้ดูตำแหน่งอีกทีหนึ่ง

1251
01:23:21.505 --> 01:23:25.505

1252
01:23:25.506 --> 01:23:29.506
ให้นึกถึง เห็นไหม ตำแหน่ง

1253
01:23:29.508 --> 01:23:33.508
Y 0 X เริ่มจาก

1254
01:23:33.510 --> 01:23:37.510
คือ แกนนี้ คือ แกนนอน x0 y0

1255
01:23:37.511 --> 01:23:41.511
เพราะฉะนั้น x เริ่มที่นี่

1256
01:23:41.511 --> 01:23:45.511
x_pos =

1257
01:23:45.512 --> 01:23:49.512
X pos=

1258
01:23:49.513 --> 01:23:53.513
x_pos คือ x_pos * 100

1259
01:23:53.527 --> 01:23:57.527
/15 ก็คือมันจะได้ 115 นั่นเอง

1260
01:23:57.528 --> 01:24:01.528
จะเริ่มจากจุดนี้ 115 ใช่ไหมคะ x_pos

1261
01:24:01.529 --> 01:24:05.529
ทีนี้มันจะได้แค่จุด แต่ถ้าลากเส้นมันต้อง

1262
01:24:05.530 --> 01:24:09.530
ต้องเพิ่มตำแหน่งของแกน y

1263
01:24:09.531 --> 01:24:13.531
ด้วย เมื่อบอก x ไปแล้วมันก็ต้องมาบ

1264
01:24:13.532 --> 01:24:17.532
บอก y_pos ถูกไหมคะ

1265
01:24:17.533 --> 01:24:21.533
ก็พิมพ์ Y แล้วเลือก

1266
01:24:21.534 --> 01:24:25.534
y_pos ก็เป็น

1267
01:24:25.536 --> 01:24:29.536
คุณเหมือนกัน คูณ ใส่ *

1268
01:24:29.537 --> 01:24:33.537
spacebar แล้วก็ 100

1269
01:24:33.538 --> 01:24:37.538
แล้วก็ + Space Bar

1270
01:24:37.538 --> 01:24:41.538
+ 15 ตำแหน่งเดียวกัน

1271
01:24:41.539 --> 01:24:45.539
ก็คือเริ่มบรรทัดที่

1272
01:24:45.540 --> 01:24:49.540
115 คอลัมน์ที่ 115

1273
01:24:49.542 --> 01:24:53.542

1274
01:24:53.543 --> 01:24:57.543
นี่ดูตำแหน่งนะคะ เริ่ม

1275
01:24:57.544 --> 01:25:01.544
จากจุดนี้ เสร็จแล้ว

1276
01:25:01.546 --> 01:25:05.546
ให้มันลากมาจากนี้ เพราะฉะนั้น มันก็ต้องเพิ่ม...

1277
01:25:05.547 --> 01:25:09.547
ก็คือ

1278
01:25:09.547 --> 01:25:13.547

1279
01:25:13.549 --> 01:25:17.549
วงเล็บแรกของเส้น

1280
01:25:17.550 --> 01:25:21.550
ของเส้นใช่ไหมคะ เพราะฉะนั้น เราจะเพิ่มอีก

1281
01:25:21.553 --> 01:25:25.553
วงเล็บที่ 2 เห็ฯไหมคะ

1282
01:25:25.555 --> 01:25:29.555
ก็คือจุดสิ้นสุดของเส้น

1283
01:25:29.557 --> 01:25:33.557
รูปแบบคำสั่ง line

1284
01:25:33.557 --> 01:25:37.557
จะบอก... อันนี้วงเล็บแรกนี่คือจุดเริ่ม

1285
01:25:37.559 --> 01:25:41.559
เพราะฉะนั้นใส่

1286
01:25:41.560 --> 01:25:45.560
colon แล้วก็ตามด้วย

1287
01:25:45.561 --> 01:25:49.561
วงเล็บที่ 2 ก็คือจะบอก

1288
01:25:49.562 --> 01:25:53.562
ตำแหน่งของจุดสิ้นสุดของเส้น ก็เหมือนกัน

1289
01:25:53.563 --> 01:25:57.563
ก็ต้องเริ่มที่ X pos

1290
01:25:57.563 --> 01:26:01.563
นะคะ สังเกตที่

1291
01:26:01.566 --> 01:26:05.566
ตำแหน่งที่ 2 ดี ๆ เห็นไหม

1292
01:26:05.567 --> 01:26:09.567
อยู่ที่ 100 เท่าไร ไม่ถึง 200

1293
01:26:09.567 --> 01:26:13.567
ก็เลยบอกว่า อยู่ที่ 185

1294
01:26:13.568 --> 01:26:17.568
เพราะไม่ให้ขีดเต็มจอ ถ้าขีดเต็มจอ

1295
01:26:17.569 --> 01:26:21.569
ก็คือ 100-200

1296
01:26:21.570 --> 01:26:25.570
ใช่ไหมคะ นึกออกนะ

1297
01:26:25.571 --> 01:26:29.571
ถ้าขีดเต็ม ถ้าไอ้นี่เลื่อนไปเต็ม

1298
01:26:29.572 --> 01:26:33.572
ชิดช่องเลย แต่เราไม่เอาเต็มช่อง

1299
01:26:33.573 --> 01:26:37.573
เว้นพื้นที่ไว้ให้มัน 15 ช่องไฟ

1300
01:26:37.574 --> 01:26:41.574
ก็คือ 85 นั่นเองนะคะ

1301
01:26:41.575 --> 01:26:45.575
เพราะฉะนั้นตรงตำแหน่ง

1302
01:26:45.576 --> 01:26:49.576
สิ้นสุดจะเป็น x_pos=

1303
01:26:49.578 --> 01:26:53.578
* * sp

1304
01:26:53.580 --> 01:26:57.580
spacebar 100 spacebar

1305
01:26:57.583 --> 01:27:01.583
+85

1306
01:27:01.585 --> 01:27:05.585

1307
01:27:05.587 --> 01:27:09.587
เพราะฉะนั้น

1308
01:27:09.588 --> 01:27:13.588
y ตำแหน่ง y_pos ก็ต้องเป็น

1309
01:27:13.588 --> 01:27:17.588
Star 100+85 เหมือนกัน

1310
01:27:17.590 --> 01:27:21.590
นะคะ

1311
01:27:21.595 --> 01:27:25.595

1312
01:27:25.597 --> 01:27:29.597

1313
01:27:29.599 --> 01:27:33.599

1314
01:27:33.601 --> 01:27:37.601
ทีนี้

1315
01:27:37.603 --> 01:27:41.603
ที่ใส่ต่อจากตัวนี้

1316
01:27:41.605 --> 01:27:45.605
line y line width

1317
01:27:45.606 --> 01:27:49.606
เราเคยประกาศความกว้างของเส้นไปแล้ว

1318
01:27:49.607 --> 01:27:53.607
ไว้ไปแล้วตอนต้นเห็นไหมคะ ให้มันกว้าง

1319
01:27:53.608 --> 01:27:57.608
5 นะคะ

1320
01:27:57.609 --> 01:28:01.609
เพราะฉะนั้น คือ เรากลัวเส้นที่วาดออกมา

1321
01:28:01.612 --> 01:28:05.612
เล็กไง เพราะเราก็เรียกใช้มันได้เลย เพราะ

1322
01:28:05.613 --> 01:28:09.613
เรามีแล้ว เราก็ตามด้วยความกว้างของเส้น

1323
01:28:09.614 --> 01:28:13.614
สร้างของเส้น ก็คือพิมพ์

1324
01:28:13.614 --> 01:28:17.614
line_width stetment เห็นไหม

1325
01:28:17.615 --> 01:28:21.615
ตัวแปรที่เราประกาศใช้ไปแล้ว เลือกมา

1326
01:28:21.617 --> 01:28:25.617
ได้เลย นั่นคือ เส้นที่ 1

1327
01:28:25.619 --> 01:28:29.619
ใช่ไหมคะ เส้นที่ 1 เพิ่งได้เส้นเดียว

1328
01:28:29.620 --> 01:28:33.620
เพราะฉะนั้น เส้นที่ 2 Copy เลย

1329
01:28:33.621 --> 01:28:37.621
แล้วค่อยมาเปลี่ยนค่าเอา

1330
01:28:37.621 --> 01:28:41.621
ไปให้สุดนะไปจนถึง line y เลยนะคะ

1331
01:28:41.623 --> 01:28:45.623
copy เลยนะคะ copy

1332
01:28:45.624 --> 01:28:49.624
ตั้งแต่ pygame ไป Copy ได้เลย แล้วก็กดวาง

1333
01:28:49.625 --> 01:28:53.625

1334
01:28:53.626 --> 01:28:57.626
แล้วก็กดวางได้เลย สิ่งที่เราจะมาเปลี่ยน

1335
01:28:57.627 --> 01:29:01.627
ก็คือค่าในตำแหน่งแกนอะไรคะ ปรับให้มันจร

1336
01:29:01.628 --> 01:29:05.628
Tab ให้มันตรงนะคะ

1337
01:29:05.629 --> 01:29:09.629
เปลี่ยนค่าในแกนอะไรมาดูกัน

1338
01:29:09.630 --> 01:29:13.630

1339
01:29:13.632 --> 01:29:17.632

1340
01:29:17.633 --> 01:29:21.633

1341
01:29:21.635 --> 01:29:25.635

1342
01:29:25.637 --> 01:29:29.637

1343
01:29:29.639 --> 01:29:33.639
นี่ x

1344
01:29:33.641 --> 01:29:37.641
ใช่ไหม นี่คือเส้นที่ 1 ดูเส้นที่ 2

1345
01:29:37.643 --> 01:29:41.643
เส้นที่ 2 ค่าเริ่มต้น มันเริ่มจากมุมนี้

1346
01:29:41.643 --> 01:29:45.643
มานี่เห็นไหมคะ เพราะฉะนั้น แกน x เท่าไร

1347
01:29:45.644 --> 01:29:49.644
เท่าเดิม แต่แกน x

1348
01:29:49.646 --> 01:29:53.646
แกน y เปลี่ยนใช่ไหมคะ เพราะฉะนั้น

1349
01:29:53.647 --> 01:29:57.647
เราไปดูตำแหน่ง

1350
01:29:57.649 --> 01:30:01.649
y_pos 15 ไม่ได้ แต่ y_pos

1351
01:30:01.650 --> 01:30:05.650
ตรงกับตำแหน่งของตัวนี้

1352
01:30:05.651 --> 01:30:09.651
เห็นไหมคะ ก็คืออะไรคะ ตำแหน่งนี้ คือ

1353
01:30:09.652 --> 01:30:13.652
80 เท่าไร 85 นั่นเอง

1354
01:30:13.654 --> 01:30:17.654
นี่เห็นไหมตำแหน่งมันตรงกัน

1355
01:30:17.655 --> 01:30:21.655
เพราะฉะนั้น เปลี่ยนตรงนี้เป็น

1356
01:30:21.656 --> 01:30:25.656
85 เราเปลี่ยนที่ y_pos นะคะ

1357
01:30:25.658 --> 01:30:29.658
แล้วตรงนี้

1358
01:30:29.659 --> 01:30:33.659
85 เปลี่ยนเป็น 15

1359
01:30:33.660 --> 01:30:37.660
ถูกต้องไหม เพราะนี่คือตำแหน่งที่

1360
01:30:37.661 --> 01:30:41.661
ลงมานี่ เห็นไหมคะ ตำแหน่งที่ลงมานี่

1361
01:30:41.662 --> 01:30:45.662
ลงมานี่

1362
01:30:45.663 --> 01:30:49.663
y เราอยู่ที่ 15 เห็นไหมคะ

1363
01:30:49.664 --> 01:30:53.664
ดูแกนนะคะ แกน y คือ

1364
01:30:53.665 --> 01:30:57.665
แนวนี้ แนวตั้งนี่

1365
01:30:57.666 --> 01:31:01.666

1366
01:31:01.667 --> 01:31:05.667
เพราะฉะนั้นจะ 18

1367
01:31:05.668 --> 01:31:09.668
โอ.เค. ไหม เช็ก เช็กอย่างไร ดู

1368
01:31:09.671 --> 01:31:13.671
ตัวบนกับตัวล่าง เห็นไหมคะ ตำแหน่ง y

1369
01:31:13.672 --> 01:31:17.672
ดูที่ตำแหน่ง y เท่านั้น y pos ตำแหน่ง

1370
01:31:17.674 --> 01:31:21.674
15 แต่อันล่างต้องเป็น 85

1371
01:31:21.675 --> 01:31:25.675
อันนี้ก็เหมือนกัน สลับนะคะ

1372
01:31:25.676 --> 01:31:29.676
สลับนะคะ โอ.เค. ไหม

1373
01:31:29.676 --> 01:31:33.676
เปลี่ยน 2 ตำแหน่งนี้เท่านั้นหรอก

1374
01:31:33.677 --> 01:31:37.677

1375
01:31:37.678 --> 01:31:41.678

1376
01:31:41.679 --> 01:31:45.679

1377
01:31:45.683 --> 01:31:49.683
ได้ตัวแกน X แล้ว

1378
01:31:49.684 --> 01:31:53.684
แก้แล้วนะ ไม่เป็นไรถ้าใครไม่แก้

1379
01:31:53.685 --> 01:31:57.685
เดี๋ยวตอน Run ก็รู้

1380
01:31:57.686 --> 01:32:01.686
วาดออกมาเป็นอะไร เดี๋ยวก็เห็นเอง เดี๋ยวก็เห็นผลเอง

1381
01:32:01.686 --> 01:32:05.686
ไปต่อ ได้แกน X แล้ว ต่อไป

1382
01:32:05.687 --> 01:32:09.687
ได้ตัว x แล้วต่อไปเราจะสร้า

1383
01:32:09.688 --> 01:32:13.688
คำสั่งในการวาดตัว O

1384
01:32:13.689 --> 01:32:17.689
ก็คือ circle เห็นไหมคะ

1385
01:32:17.691 --> 01:32:21.691
pygame.draw

1386
01:32:21.692 --> 01:32:25.692
แต่ค่าในตัว o จะมีแค่ ให้นึกถึง

1387
01:32:25.694 --> 01:32:29.694
การวาดวงกลม วงกลมา ก็คือ

1388
01:32:29.695 --> 01:32:33.695
ตำแหน่งจุดศูนย์กลางใช่ไหมคะ

1389
01:32:33.697 --> 01:32:37.697
แล้วก็ตำแหน่ง แล้วก็ค่าของศูนย์กลาง

1390
01:32:37.697 --> 01:32:41.697
นะคะ อันนี้ คือ ค่าของจุด

1391
01:32:41.699 --> 01:32:45.699
ศูนย์กลางใช่ไหม เวลาวาดวงกลมจะวาดจากจุดศูนย์กลาง

1392
01:32:45.700 --> 01:32:49.700
ให้นึกถึงวงเวียน ถูกไหมคะ วงเวียนแล้วก็

1393
01:32:49.701 --> 01:32:53.701
ไอ้ตัว รัศมีวงเวียน

1394
01:32:53.701 --> 01:32:57.701
จุดกึ่งกลางแล้วมาวนรัศมีกว้าง

1395
01:32:57.702 --> 01:33:01.702
เท่าไหน วงกลมมันก็จะมีขนาดกว้าง

1396
01:33:01.703 --> 01:33:05.703
ตามรัศมีนะ โอ.เค. นะคะ

1397
01:33:05.705 --> 01:33:09.705
มาดูกัน

1398
01:33:09.706 --> 01:33:13.706
เมื่อกี้เราได้อะไรแล้วนะ ก็จะเป็นเงื่อนไข

1399
01:33:13.707 --> 01:33:17.707
ที่ 2 นะคะ เงื่อนไข

1400
01:33:17.708 --> 01:33:21.708
ที่ถ้าไม่ใช่ผู้เล่นคนที่ 1

1401
01:33:21.709 --> 01:33:25.709
ผู้เล่นคนที่ 1 วาด X ผู้เล่นคนที่ 2 วาด

1402
01:33:25.710 --> 01:33:29.710
o เพราะฉะนั้นเห็นไหมคะ กำหนดเงื่อไขตรง

1403
01:33:29.711 --> 01:33:33.711
ตรง ตรงกันเลย

1404
01:33:33.712 --> 01:33:37.712
statement if while อันแรก

1405
01:33:37.713 --> 01:33:41.713
Tab ไปให้มันถึง if

1406
01:33:41.714 --> 01:33:45.714
เห็นไหมคะ ให้ตรงกัน สังเกต tab ด้วย

1407
01:33:45.715 --> 01:33:49.715
ต้องตรงนะคะ แล้วก็เปิด

1408
01:33:49.717 --> 01:33:53.717
if condition Enter

1409
01:33:53.718 --> 01:33:57.718
เหมือนเดิม พิมพ์ py

1410
01:33:57.719 --> 01:34:01.719
เลือก pygame นะคะ เลือก module

1411
01:34:01.719 --> 01:34:05.719
ตามด้วย .doll

1412
01:34:05.720 --> 01:34:09.720
draw module

1413
01:34:09.721 --> 01:34:13.721
circle ฟังก์ชัน circle

1414
01:34:13.722 --> 01:34:17.722
เห็นไหมคะ cercle

1415
01:34:17.723 --> 01:34:21.723
บอกแล้วเมื่อเป็นฟังก์ชันให้

1416
01:34:21.724 --> 01:34:25.724
ใส่วงเล็บเสมอ

1417
01:34:25.725 --> 01:34:29.725
ทีนี้เหมือนเดิม

1418
01:34:29.726 --> 01:34:33.726
เหมือน line น่ะเห็นไหม

1419
01:34:33.727 --> 01:34:37.727
ผิด ๆ ยังไม่เริ่ม อันนี้ต้องเช็กก่อน

1420
01:34:37.728 --> 01:34:41.728
ไอ้นี่เอาไว้ข้างล่าง if ตามด้วย

1421
01:34:41.728 --> 01:34:45.728
while while

1422
01:34:45.729 --> 01:34:49.729
statement ทำไมได้โดน y_pos นะ

1423
01:34:49.729 --> 01:34:53.729
เราเลือก width statment นะ

1424
01:34:53.730 --> 01:34:57.730
=

1425
01:34:57.731 --> 01:35:01.731
อันแรกเป็นที่ 1

1426
01:35:01.732 --> 01:35:05.732
ก็คือไม่ใช่คนที่ 1 น่ะ

1427
01:35:05.732 --> 01:35:09.732
ไม่ใช่ตำแหน่งที่ 1 เขาเป็นตำแหน่งที่ 2

1428
01:35:09.732 --> 01:35:13.732
นะคะ เหมือนเดิม : ตกลงไปแล้ว

1429
01:35:13.733 --> 01:35:17.733
ดึงขึ้นมาก่อน

1430
01:35:17.734 --> 01:35:21.734

1431
01:35:21.735 --> 01:35:25.735
เราเอา past ออกนะคะ เราเอา past ออก

1432
01:35:25.736 --> 01:35:29.736
ตำแหน่งก็จะคล้าย ๆ กัน เห็นไหม

1433
01:35:29.736 --> 01:35:33.736
pygame.draw.circle

1434
01:35:33.740 --> 01:35:37.740
เหมือนกัน screen

1435
01:35:37.740 --> 01:35:41.740
นะคะ

1436
01:35:41.741 --> 01:35:45.741
screen statement เหมือนกัน

1437
01:35:45.741 --> 01:35:49.741
แต่สีของเราเป็นอะไร บอกแล้วว่า

1438
01:35:49.742 --> 01:35:53.742
ตัว o เป็นสีอะไรคะ สีแดงใช่ไหมคะ

1439
01:35:53.743 --> 01:35:57.743
เพราะฉะนั้น ตัว O ก็ต้องเป็น Red นะคะ

1440
01:35:57.744 --> 01:36:01.744
กำหนดสีให้เป็น red r-e-d

1441
01:36:01.745 --> 01:36:05.745
เลือก

1442
01:36:05.746 --> 01:36:09.746
นะคะ ตามด้วยค่า ก็คือ

1443
01:36:09.747 --> 01:36:13.747
เปิดวงเล็บ () วงเล็บเปิดปิด

1444
01:36:13.748 --> 01:36:17.748
ค่าในตัว O ก็คือแกน x ก่อน

1445
01:36:17.749 --> 01:36:21.749
เสมอ เลือก X pos

1446
01:36:21.750 --> 01:36:25.750
x_pos กำหนดค่าจุดศูนย์กลาง

1447
01:36:25.751 --> 01:36:29.751
ให้เริ่มที่ในรูป เริ่มที่เท่าไร

1448
01:36:29.751 --> 01:36:33.751
ประมาณ 100 เห็นไหมคะ * 100 + 50

1449
01:36:33.752 --> 01:36:37.752
ครึ่งหนึ่งของ ตรงกลางของ

1450
01:36:37.753 --> 01:36:41.753
เห็นไหมให้มันอยู่ตรงกลาง

1451
01:36:41.753 --> 01:36:45.753
ก็คือ 150 นั่นเองนะคะ ให้อยู่กึ่งกลางมันก็อยู่ที่ 150

1452
01:36:45.753 --> 01:36:49.753
ให้อยู่กึ่งกลางมันก็อยู่ 50 นั่นล่ะ 150

1453
01:36:49.755 --> 01:36:53.755

1454
01:36:53.756 --> 01:36:57.756
x_pos ก็ใช้เหมือนเดิม

1455
01:36:57.757 --> 01:37:01.757
เอ้ย * 100

1456
01:37:01.758 --> 01:37:05.758
+

1457
01:37:05.759 --> 01:37:09.759
50 ตำแหน่ง y_pos

1458
01:37:09.760 --> 01:37:13.760
ก็เหมือนกัน ก็จุดศูนย์กลาง เริ่มที่จุดศูนย์กลาง

1459
01:37:13.761 --> 01:37:17.761
นะคะ เริ่มที่จุดศูนย์กลางเหมือนกัน ก็เริม

1460
01:37:17.762 --> 01:37:21.762
ก็เลือก y_pos

1461
01:37:21.763 --> 01:37:25.763
*100

1462
01:37:25.764 --> 01:37:29.764
+

1463
01:37:29.765 --> 01:37:33.765
50 เหมือนกัน มันถึงจะเป็นตำแหน่ง

1464
01:37:33.766 --> 01:37:37.766
มันถึงจะเป็นตำแหน่งตรงนี้ จุดศูนย์กลางตรงนี้

1465
01:37:37.767 --> 01:37:41.767
เห็นไหม เพราะหลักการวาด วงกลม

1466
01:37:41.769 --> 01:37:45.769
ให้นึกถึงตอนเราใช้วงเวียนวาด

1467
01:37:45.770 --> 01:37:49.770
เอาขาวงเวียนเป็นจุดศูนย์กลางนะคะ

1468
01:37:49.771 --> 01:37:53.771
ไอ้ตรงเหล็กน่ะมันจะเป็นจุดศูนย์กลางที่

1469
01:37:53.772 --> 01:37:57.772
วางไว้ แล้วไอ้ตรงขามันที่เรากาง

1470
01:37:57.773 --> 01:38:01.773
ออกไปน่ะ คือ รัศมีวงกลมน่ะ

1471
01:38:01.774 --> 01:38:05.774
ก็จะทำให้วงกลมพอหมดรอบ วงกลมมันก็

1472
01:38:05.774 --> 01:38:09.774
มันก็จะมีรัศมีตามที่กำหนดนะคะ

1473
01:38:09.775 --> 01:38:13.775
เมื่อกี้ได้ตำแหน่งจุดศูนย์กลางแล้ว

1474
01:38:13.777 --> 01:38:17.777
ก็คือ คือ ลองแล้ว 38 นี่

1475
01:38:17.778 --> 01:38:21.778
นี่วงกำลังสวย คือเยอะกว่านี้มันจะคับ

1476
01:38:21.780 --> 01:38:25.780
นึกออกนะ ก็เลยได้ค่ามาที่ 38 นะคะ

1477
01:38:25.782 --> 01:38:29.782
คือ ลองมาให้แล้ว

1478
01:38:29.783 --> 01:38:33.783
เพราะฉะนั้นเวลาเราไปทำเราไปวาดเอง ก็ให้ดู

1479
01:38:33.786 --> 01:38:37.786
รัศมีเท่านี้พอดีไหม ถ้าไม่พอดีเราก็ขยายเพิ่มได้นะคะ

1480
01:38:37.787 --> 01:38:41.787
ขยายเพิ่มได้อะไรอย่างนี้ นึกออกนะคะ

1481
01:38:41.788 --> 01:38:45.788
ตามด้วย ให้ไปหลังวงเล็บ

1482
01:38:45.788 --> 01:38:49.788
แล้วบอกค่ารัศมีใส่ colon

1483
01:38:49.789 --> 01:38:53.789
ซึ่งที่กำหนดของ

1484
01:38:53.790 --> 01:38:57.790
ช่องตารางนี้ ก็คือให้ที่ 38 นะคะ

1485
01:38:57.791 --> 01:39:01.791
แล้วก็บอกอะไรอีก บอกความหนาของเส้น

1486
01:39:01.792 --> 01:39:05.792
ก็เลือกใช้ line_width

1487
01:39:05.793 --> 01:39:09.793
นะคะ อันนี้คือบอกค่ารัศมี 38 นี่

1488
01:39:09.795 --> 01:39:13.795
บอกค่ารัศมี 38 นี่ ก็คือ รัศมีของวงกลม

1489
01:39:13.796 --> 01:39:17.796
นะคะ แล้วก็ line while

1490
01:39:17.797 --> 01:39:21.797
ก็คือบอกความหนาของเส้นที่บอกไว้

1491
01:39:21.798 --> 01:39:25.798
เห็นหรือเปล่า

1492
01:39:25.799 --> 01:39:29.799
ได้ตัว O จะบอกว่าวงกลม

1493
01:39:29.800 --> 01:39:33.800
ก็คือตัว X

1494
01:39:33.801 --> 01:39:37.801
วงกลมวาดนั่นเองนะคะ

1495
01:39:37.802 --> 01:39:41.802

1496
01:39:41.803 --> 01:39:45.803
ทีนี้ก่อนมันจะทำ

1497
01:39:45.805 --> 01:39:49.805
เราจะต้องปิด loop เสียก่อน เราเปิด for ไปกี่อัน

1498
01:39:49.805 --> 01:39:53.805
เปิด for ไป 2 อันใช่ไหม เปิด for x

1499
01:39:53.806 --> 01:39:57.806
เพราะฉะนั้น ปิดมันด้วยครับ ปิดมันด้วย

1500
01:39:57.807 --> 01:40:01.807
เห็นไหมคะ พอเปิดไปแล้วนี่ Loop เราน่ะ

1501
01:40:01.808 --> 01:40:05.808
เราก็ต้องปิด ปิดด้วยตำแหน่ง

1502
01:40:05.808 --> 01:40:09.808
ปิดด้วยค่า ก็คือทำให้ loop

1503
01:40:09.810 --> 01:40:13.810
มันวนรอบเพิ่มขึ้นไป เพิ่มทีละ 1

1504
01:40:13.811 --> 01:40:17.811
นะคะ เพิ่มทีละ 1 เพราะฉะนั้น

1505
01:40:17.812 --> 01:40:21.812
บรรทัดใหม่

1506
01:40:21.813 --> 01:40:25.813
ตำแหน่งดูตำแหน่งนะ

1507
01:40:25.814 --> 01:40:29.814
loop แรก อยู่ตรงกับ flour แรกนะคะ

1508
01:40:29.816 --> 01:40:33.816
for แรกก็คือตัวนี้เห็นไหม นี่ ๆ ๆ

1509
01:40:33.817 --> 01:40:37.817
นี่ ๆ for ตัวนี้เลย

1510
01:40:37.818 --> 01:40:41.818

1511
01:40:41.819 --> 01:40:45.819
นี่อยู่ตำแหน่งของ y

1512
01:40:45.820 --> 01:40:49.820
ของ for y นี่นะคะ

1513
01:40:49.820 --> 01:40:53.820
X ตัวนี้ ดูนะคะ ดูตำแหน่งดี ๆ

1514
01:40:53.821 --> 01:40:57.821

1515
01:40:57.822 --> 01:41:01.822
tab ไปหน่อยเกิน

1516
01:41:01.823 --> 01:41:05.823
เพราะฉะนั้น y_pos ตัวนี้ก็คือ y_pos

1517
01:41:05.825 --> 01:41:09.825
ไม่ใช่เท่ากับ + เท่ากับ

1518
01:41:09.826 --> 01:41:13.826
เครื่องหมาย + ใส่เครื่องหมาย =

1519
01:41:13.827 --> 01:41:17.827
ครั้งละ 1 ก็เลยใช้ +=

1520
01:41:17.828 --> 01:41:21.828
ใน python

1521
01:41:21.828 --> 01:41:25.828
นะ เพิ่มขึ้นครั้งละ 1 แต่อันนี้จะเป็น +

1522
01:41:25.832 --> 01:41:29.832
เท่ากับ 1 ทีนี้ loop ที่ 2

1523
01:41:29.833 --> 01:41:33.833
มันจะตรงกับ x นี้ เห็นไหมคะ

1524
01:41:33.836 --> 01:41:37.836
x ตัวนี้ for x ตัวนี้เห็นไหม

1525
01:41:37.836 --> 01:41:41.836
ตรงนี้ก็จะเป็น x_pos

1526
01:41:41.837 --> 01:41:45.837
เหมือนกันเท่ากับ +=

1527
01:41:45.838 --> 01:41:49.838
1 เหมือนกัน ก็เพิ่มทีละ 1

1528
01:41:49.838 --> 01:41:53.838
เพิ่มทีละ 1 วนไปรอบที่ 1

1529
01:41:53.840 --> 01:41:57.840
โอ.เค. นะ

1530
01:41:57.840 --> 01:42:01.840
ดูตำแหน่ง บอกแล้วว่าเวลา

1531
01:42:01.842 --> 01:42:05.842
ทำ loop ดูตำแหน่ง loop พอจะปิดตำแหน่ง loop

1532
01:42:05.843 --> 01:42:09.843
นะคะ มันจะตรงกับตัวแปรที่ตั้ง เพราะไม่อย่างนั้น

1533
01:42:09.844 --> 01:42:13.844
เดี๋ยวพอเรากด Ctrl+B

1534
01:42:13.844 --> 01:42:17.844
แล้ว tab erro

1535
01:42:17.845 --> 01:42:21.845
ไม่ถูก เพราะมันไล่ไม่ถูกว่าไปปิดตรงไหน

1536
01:42:21.846 --> 01:42:25.846
มันไปปิดตรงไหนนะคะ

1537
01:42:25.846 --> 01:42:29.846
จากนั้น

1538
01:42:29.847 --> 01:42:33.847
เราเสร็จแล้วเราทำ function draw_mar

1539
01:42:33.849 --> 01:42:37.849
เพราะฉะนั้น เราจะต้องมาเรียกใช้มัน

1540
01:42:37.851 --> 01:42:41.851
เรียกใช้ตรงไหน ตรงตำแหน่ง

1541
01:42:41.852 --> 01:42:45.852
ที่เรา Run เห็นไหมคะ เพราะฉะนั้นก็มาเรียกใช้งาน

1542
01:42:45.853 --> 01:42:49.853
มันก็จะเรียกใช้งาน

1543
01:42:49.854 --> 01:42:53.854
เรียกใช้ draw_markers ว

1544
01:42:53.855 --> 01:42:57.855
d-r แล้วก็

1545
01:42:57.856 --> 01:43:01.856
เลือก Draw marker ฟังก์ชันของเราเลย

1546
01:43:01.858 --> 01:43:05.858
อย่างลืมใส่วงเล็บไม่อย่างนั้น

1547
01:43:05.860 --> 01:43:09.860
มันจะไม่รู้ว่าเป็นฟังก์ชันไง จะต้องใส่

1548
01:43:09.861 --> 01:43:13.861
ต้องใส่วงเล็บให้มันทีหลังนะคะ เสร็จแล้ว

1549
01:43:13.862 --> 01:43:17.862
ลองกด Ctrl+B

1550
01:43:17.863 --> 01:43:21.863
เพื่อทดสอบเดี๋ยวขอปิดตัวที่ทดสอบไว้ตอนแรก

1551
01:43:21.864 --> 01:43:25.864
เสร็จแล้วนะคะ สำหรับการสร้าง

1552
01:43:25.866 --> 01:43:29.866
แล้วลอง Run ดู โดยกด Ctrl กับ B

1553
01:43:29.866 --> 01:43:33.866
คลิกสิ X ขึ้นไหม

1554
01:43:33.867 --> 01:43:37.867
ไม่ขึ้น อะไรหายไป

1555
01:43:37.868 --> 01:43:41.868
mark ยังไม่ขึ้น ขาดไปตำแหน่งไหนล่ะนี่

1556
01:43:41.869 --> 01:43:45.869
ขาดไปตำแหน่งไหนล่ะนี่ Error ยังไม่ขึ้น

1557
01:43:45.870 --> 01:43:49.870
ยัง Run ไม่เสร็จ เดี๋ยวไปต่อได้

1558
01:43:49.871 --> 01:43:53.871
แต่ดูว่าที่เราเช็ก

1559
01:43:53.872 --> 01:43:57.872
มันยังไม่วาด

1560
01:43:57.873 --> 01:44:01.873
เลือกใช้แล้ว draw_markers

1561
01:44:01.874 --> 01:44:05.874

1562
01:44:05.875 --> 01:44:09.875

1563
01:44:09.876 --> 01:44:13.876
ของใครขึ้น Attribute

1564
01:44:13.877 --> 01:44:17.877
เช็กบรรทัดครับ บรรทัดที่...

1565
01:44:17.878 --> 01:44:21.878

1566
01:44:21.879 --> 01:44:25.879

1567
01:44:25.880 --> 01:44:29.880
ค่าอันนี้หรือเปล่า

1568
01:44:29.882 --> 01:44:33.882
ค่าคลิกนี่หรือเปล่า

1569
01:44:33.883 --> 01:44:37.883
ค่าคลิกถูกต้องไหม

1570
01:44:37.884 --> 01:44:41.884
เห็นหรือเปล่า

1571
01:44:41.885 --> 01:44:45.885
เช็กค่าด้วย

1572
01:44:45.886 --> 01:44:49.886
ค่ามันจะส่งสลับกันไปสลับกันมาน่ะ เช็กดี ๆ ด้วย

1573
01:44:49.887 --> 01:44:53.887
อือ

1574
01:44:53.888 --> 01:44:57.888
สลับค่าด้วย

1575
01:44:57.889 --> 01:45:01.889
เดี๋ยวไปต่อ เดี๋ยวไปต่อ

1576
01:45:01.891 --> 01:45:05.891
ต้องต่อไม่อย่างนั้นมันไม่ขึ้นไง มันไม่ขึ้น

1577
01:45:05.893 --> 01:45:09.893
มันจะแค่มาร์กไว้ใช่ไหม มันยังไม่โชว์

1578
01:45:09.894 --> 01:45:13.894
อะไรหายไป

1579
01:45:13.895 --> 01:45:17.895

1580
01:45:17.896 --> 01:45:21.896

1581
01:45:21.898 --> 01:45:25.898
เอา ๆ อะไรกัน

1582
01:45:25.899 --> 01:45:29.899
เมื่อให้มัน mark แล้ว

1583
01:45:29.900 --> 01:45:33.900
ทีนี้จะมาสร้างฟังก์ชัน

1584
01:45:33.900 --> 01:45:37.900
เพื่อจะเช็ก

1585
01:45:37.901 --> 01:45:41.901
เช็กว่าใครเป็นคนชนะ

1586
01:45:41.902 --> 01:45:45.902
นี่นะคะ XO ลงไปแล้ว เมื่อมันครบ

1587
01:45:45.903 --> 01:45:49.903
3 น่ะ ถ้ามันเรียงครบนี่

1588
01:45:49.904 --> 01:45:53.904
มันก็ต้องมีคนชนะล่ะ เราก็จะมาหาคนชนะกัน

1589
01:45:53.905 --> 01:45:57.905
เราก็เลยจะมาสร้างฟังก์ชันที่ชื่อ check winner

1590
01:45:57.906 --> 01:46:01.906

1591
01:46:01.907 --> 01:46:05.907

1592
01:46:05.908 --> 01:46:09.908

1593
01:46:09.909 --> 01:46:13.909
เราต้อง code ให้เสร็จก่อน แล้วค่อย

1594
01:46:13.910 --> 01:46:17.910
นั้นมา Coding ก่อน

1595
01:46:17.910 --> 01:46:21.910
Error อยู่ตรงตำแหน่งไหน

1596
01:46:21.911 --> 01:46:25.911
ที่เราสร้าง draw_markers() แล้ว

1597
01:46:25.913 --> 01:46:29.913
เห็นไหมคะ เราก็ไปต่อเลยนะคะ

1598
01:46:29.913 --> 01:46:33.913
นะคะ ตรง draw_markers ตรง 2

1599
01:46:33.915 --> 01:46:37.915
พิมพ์ Comment

1600
01:46:37.917 --> 01:46:41.917
ว่า

1601
01:46:41.917 --> 01:46:45.917

1602
01:46:45.919 --> 01:46:49.919

1603
01:46:49.922 --> 01:46:53.922

1604
01:46:53.924 --> 01:46:57.924

1605
01:46:57.926 --> 01:47:01.926

1606
01:47:01.927 --> 01:47:05.927

1607
01:47:05.928 --> 01:47:09.928
สร้างฟังก์ชัน check_winner

1608
01:47:09.931 --> 01:47:13.931
หาคนชนะ ใช้ Check

1609
01:47:13.932 --> 01:47:17.932
ใช้ check เล็กนะคะ

1610
01:47:17.933 --> 01:47:21.933
เริ่มที่ตัวแรกเลย

1611
01:47:21.934 --> 01:47:25.934
de-e

1612
01:47:25.935 --> 01:47:29.935
d-e เลือก...

1613
01:47:29.937 --> 01:47:33.937
ทำไมไม่ขึ้น

1614
01:47:33.939 --> 01:47:37.611

1615
01:47:37.940 --> 01:47:41.940
def ไม่ขึ้น

1616
01:47:41.942 --> 01:47:45.942
Enter

1617
01:47:45.943 --> 01:47:49.943
แล้วก็ใส่ชื่อฟังก์ชัน

1618
01:47:49.944 --> 01:47:53.944

1619
01:47:53.945 --> 01:47:57.945
ใส่ฟังก์ชัน check_winner ลงไป

1620
01:47:57.946 --> 01:48:01.946
เสร็จแล้วทำ Loop ว่า

1621
01:48:01.947 --> 01:48:05.947
ถ้า X นี่ใน มาร์ก มีค่าเท่านี้

1622
01:48:05.948 --> 01:48:09.948
เห็นไหมคะ 3 ครั้งนี่ ผลรวมของ X

1623
01:48:09.949 --> 01:48:13.949
เท่ากับ 3 ก็คือ

1624
01:48:13.950 --> 01:48:17.950
mark ลงไป 3 ครั้ง ว่าอย่างนั้นเถอะ

1625
01:48:17.951 --> 01:48:21.951
winner จะเท่ากับ 1 คือคนที่ 1

1626
01:48:21.952 --> 01:48:25.952
แล้วเมื่อจบเกมนี่ค่าจะเป็นจริง

1627
01:48:25.954 --> 01:48:29.954
ค่ามันก็จะเป็นจริง ก็คือ Game over

1628
01:48:29.955 --> 01:48:33.955

1629
01:48:33.956 --> 01:48:37.956
ตรง pos นะคะ ใส่ for loop

1630
01:48:37.957 --> 01:48:41.957
นะคะ ใส่ for loop ค่ะ

1631
01:48:41.958 --> 01:48:45.958
x เห็นไหมคะ โดยค่า x ของเราใน markers

1632
01:48:45.959 --> 01:48:49.959
ใน markers x in ตรงนี้เปลี่ยนเป็น markers

1633
01:48:49.960 --> 01:48:53.960
แทน เลือก marker statement

1634
01:48:54.009 --> 01:48:58.009
markers มีค่าเท่ากับ

1635
01:48:58.009 --> 01:49:02.009
ส้า xx ใน

1636
01:49:02.010 --> 01:49:06.010
ใน markers มีการ

1637
01:49:06.011 --> 01:49:10.011
x ลงไปนี่ นี่ X ใน marker นี่

1638
01:49:10.012 --> 01:49:14.012
ตรงนี้เงื่อนไขก็จะมาตรวจสอบว่า

1639
01:49:14.013 --> 01:49:18.013
เลือก

1640
01:49:18.014 --> 01:49:22.014
ผลรวม sum ก็คือมาจากคำว่า "ผลรวม"

1641
01:49:22.015 --> 01:49:26.015
นะคะ เลือกใช้ ฟังก์ชัน sum

1642
01:49:26.017 --> 01:49:30.017
เลือก sum ฟังก์ชั่น

1643
01:49:30.018 --> 01:49:34.018
ใส่วงเล็บเปิดปิดเหมือนเดิม ()

1644
01:49:34.019 --> 01:49:38.019
sum sum อะไร

1645
01:49:38.020 --> 01:49:42.020
เรานั่นเองนะคะ Sum ของ X

1646
01:49:42.021 --> 01:49:46.021
เท่ากับอะไรคะ 3

1647
01:49:46.022 --> 01:49:50.022
ก็คือผลรวมของ x นี่ได้รับ

1648
01:49:50.023 --> 01:49:54.023
ได้ 3 ปุ๊บ

1649
01:49:54.024 --> 01:49:58.024
นะคะ เราก็บอกเลยว่า

1650
01:49:58.025 --> 01:50:02.025
เราก็บอกเลย winner ประกาศตัวแปร winner เลย

1651
01:50:02.026 --> 01:50:06.026
winner อันนี้ต้องพิมพ์เองนะ

1652
01:50:06.028 --> 01:50:10.028
winner แล้วก็ตามด้วยเครื่องหมายเท่ากับ

1653
01:50:10.029 --> 01:50:14.029
นะคะ ตัวแปร Winner

1654
01:50:14.030 --> 01:50:18.030
มีค่า = 1 เห็นไหมคะ

1655
01:50:18.031 --> 01:50:22.031
แล้วก็เมื่อครบ 3 นี่

1656
01:50:22.032 --> 01:50:26.032
เมื่อครบ 3 นี่ ถ้า x มันครบ 3

1657
01:50:26.033 --> 01:50:30.033
เพราะฉะนั้นคนนี้คือชนะ

1658
01:50:30.034 --> 01:50:34.034
ถึงว่าจบเกม เพราะว่ากา x เรียง

1659
01:50:34.035 --> 01:50:38.035
มันครบ เรียงกันครบ

1660
01:50:38.036 --> 01:50:42.036
X หรือ O เรียกกันครบนี่ ก็คือมีคนชนะแล้ว

1661
01:50:42.037 --> 01:50:46.037
เรียงครบ 3 อัน คนใดคนหนึ่ง

1662
01:50:46.038 --> 01:50:50.038
คนใดคนหนึ่งนี่ คนที่กาด้วย x หรือ กาด้วย o น่ะ

1663
01:50:50.039 --> 01:50:54.039
mark ด้วย x หรือ mark ด้วย 0 นี่

1664
01:50:54.040 --> 01:50:58.040
จบเกม เพราะฉะนั้น เลยสร้างตัวแปรชื่อว่า game_over

1665
01:50:58.041 --> 01:51:02.041
อันนี้พิมพ์เอานะคะ

1666
01:51:02.042 --> 01:51:06.042
_ พิมพ์ Game

1667
01:51:06.043 --> 01:51:10.043
ตามด้วย _

1668
01:51:10.044 --> 01:51:14.044
o-v-e-r game_over ก็คือจบเกม

1669
01:51:14.044 --> 01:51:18.044
เท่ากับ

1670
01:51:18.046 --> 01:51:22.046
True เช็กด้วยว่าเป็นจริงหรือเท็จ

1671
01:51:22.046 --> 01:51:26.046
ใช้ true กับ false

1672
01:51:26.047 --> 01:51:30.047
ก็คือถ้าอย่างนี้แสดงว่าจบเกม ก็คือเป็นจริง

1673
01:51:30.048 --> 01:51:34.048
ก็คือหมายถึงจบเกม

1674
01:51:34.049 --> 01:51:38.049

1675
01:51:38.050 --> 01:51:42.050
ทีนี้

1676
01:51:42.051 --> 01:51:46.051
Loop แรกนี่เช็กจาก

1677
01:51:46.052 --> 01:51:50.052
แถว เช็กจากแถวแล้วนะคะ

1678
01:51:50.053 --> 01:51:54.053

1679
01:51:54.053 --> 01:51:58.053
เราต้องมาประกาศตัวแปรให้ winner

1680
01:51:58.054 --> 01:52:02.054
กับ game_over เห็นไหมคะ ก็คือ winner

1681
01:52:02.055 --> 01:52:06.055
โดยมีค่าเริ่มต้นที่ 0

1682
01:52:06.056 --> 01:52:10.056
นะคะ ไปประกาศตัวแปรให้

1683
01:52:10.057 --> 01:52:14.057
2 ตัวนี้ ตรงนี้

1684
01:52:14.058 --> 01:52:18.058
นะคะ ประกาศตัวแปรชื่อว่า "winner" มีแล้ว คลิกได้เลย

1685
01:52:18.058 --> 01:52:22.058
เท่ากับ

1686
01:52:22.059 --> 01:52:26.059
ค่าเริ่มต้นของ winner คือ 0 เริ่มที่ 0

1687
01:52:26.059 --> 01:52:30.059
Game Over แล้ว

1688
01:52:30.060 --> 01:52:34.060
เลือกได้เลย เลือก game_over มาได้เลย แล้วก็

1689
01:52:34.060 --> 01:52:38.060
ให้ค่าเริ่มต้นเป็น False

1690
01:52:38.061 --> 01:52:42.061
ที่เช็กเป็น true เพราะฉะนั้น

1691
01:52:42.062 --> 01:52:46.062
ค่าเริ่มต้นของ game_over

1692
01:52:46.063 --> 01:52:50.063
จะเริ่มที่ False เสมอ

1693
01:52:50.064 --> 01:52:54.064
เพราะมันยังเล่นอยู่เสมอนะคะ

1694
01:52:54.066 --> 01:52:58.066
นะคะ เมื่อประกาศตัวแปรเสร็จ

1695
01:52:58.067 --> 01:53:02.067
มาทำเงื่อนไขต่อ loop ที่ 1 แล้ว

1696
01:53:02.068 --> 01:53:06.068
ก็จะเป็น Loop ที่ 2 เห็นไหมคะ

1697
01:53:06.069 --> 01:53:10.069
เงื่อนไขนี้ ถ้าไม่ใช่คนที่ 1

1698
01:53:10.069 --> 01:53:14.069
ถ้าไม่ใช่คนที่ 1 winner คนที่ 2

1699
01:53:14.070 --> 01:53:18.070
winner 2 ก็เหมือนกัน Copy

1700
01:53:18.074 --> 01:53:22.074
ก๊อบฯ มาได้เลย ก๊อบฯ จากข้างบน

1701
01:53:22.078 --> 01:53:26.078
มาได้เลยนะคะ แล้วเปลี่ยน

1702
01:53:26.079 --> 01:53:30.079
เปลี่ยนค่าตรง 3 นี่เท่านั้นเอง

1703
01:53:30.080 --> 01:53:34.080
วิธีการไม่ต้องคีย์

1704
01:53:34.081 --> 01:53:38.081
เลือกตรง if ถึง sum True

1705
01:53:38.082 --> 01:53:42.082
แล้วเราก็ copy ได้เลย

1706
01:53:42.083 --> 01:53:46.083
แล้วก็วางมันเสีย

1707
01:53:46.084 --> 01:53:50.084

1708
01:53:50.086 --> 01:53:54.086
ไม่ต้องพิมพ์ใหม่ เพราะเรามาเปลี่ยนค่าไง

1709
01:53:54.087 --> 01:53:58.087
เปลี่ยนแค่ค่า ค่านี้จาก

1710
01:53:58.088 --> 01:54:02.088
3 ก็เป็น -3 ค่านี้จาก 2 ก

1711
01:54:02.089 --> 01:54:06.089
2 คนที่ 2 winner คนที่ 2 ถึงจ

1712
01:54:06.090 --> 01:54:10.090
ถึงจะเป็นผู้ชนะ game_over จาก true ก็เป็น...

1713
01:54:10.091 --> 01:54:14.091
เป็นเห็นไหมคะ Game Over เป็นทรู

1714
01:54:14.093 --> 01:54:18.093
true เหมือนเดิมนะคะ Game_over ยังไม่เปลี่ยน เปลี่ยนตรง

1715
01:54:18.094 --> 01:54:22.094
ตรง sum กับตรง winner แค่จาก 3 กํบ

1716
01:54:22.095 --> 01:54:26.095
จาก 3 เป็น -3 1 เป็น 2 แค่นั้นเอง

1717
01:54:26.096 --> 01:54:30.096
โอ.เค. ไหมเปลี่ยน 2 ที่

1718
01:54:30.098 --> 01:54:34.098
ตรงนี้กับตรงนี้เปลี่ยน 2 ตำแหน่งพอ

1719
01:54:34.099 --> 01:54:38.099
จาก 1 เป็น 2 จาก 2 เป็น 3

1720
01:54:38.100 --> 01:54:42.100
อันนี้ไม่ต้องพิมพ์ใหม่นะคะ ก๊อบฯ มาได้เลย

1721
01:54:42.101 --> 01:54:46.101
เพราะคำสั่งเดียวกันเลย

1722
01:54:46.102 --> 01:54:50.102
เปลี่ยนแค่ค่าของการคำนวนของมัน

1723
01:54:50.103 --> 01:54:54.103

1724
01:54:54.104 --> 01:54:58.104
ต่อไป ก็คือเมื่อเช็กไปตามแถวแล้ว ต่อไป

1725
01:54:58.105 --> 01:55:02.105
เห็นไหมคะ ตามคอลัมน์

1726
01:55:02.106 --> 01:55:06.106
ก็คือตำแหน่งที่เป็นแนวนี้

1727
01:55:06.107 --> 01:55:10.107
แนวนี้มันจะเช็กไปตามแนวนี้บ้าง

1728
01:55:10.108 --> 01:55:14.108
ก็คือเมื่อกี้เรียงตามแนวนอนใช่ไหม

1729
01:55:14.109 --> 01:55:18.109
ก็คือถ้า X เรียงไป 3 แถว

1730
01:55:18.110 --> 01:55:22.110
นี่คือแนวนอน ถ้าเรียงตามแนวคอลัมภ์

1731
01:55:22.111 --> 01:55:26.111
x หรือ o ครบ

1732
01:55:26.112 --> 01:55:30.112
ครบทั้ง 3 คอลัมน์นี่  ก็จะใช้เงื่อนไขว่า

1733
01:55:30.113 --> 01:55:34.113
if marke

1734
01:55:34.114 --> 01:55:38.114
นะคะ if mark 0

1735
01:55:38.115 --> 01:55:42.115

1736
01:55:42.116 --> 01:55:46.116
เพิ่ม...

1737
01:55:46.118 --> 01:55:50.118
เพิ่ม If condition เข้าไป

1738
01:55:50.119 --> 01:55:54.119
เลือก statement mark

1739
01:55:54.120 --> 01:55:58.120
เลือก Array ค่า

1740
01:55:58.120 --> 01:56:02.120
array ค่า array เท่ากับ

1741
01:56:02.121 --> 01:56:06.121
ค่า

1742
01:56:06.122 --> 01:56:10.122
กดผิดอีกแล้ว ค่าใน mark เริ่มที่ 0 นะ

1743
01:56:10.123 --> 01:56:14.123
แล้วก็ตามด้วย y pos แล้ว

1744
01:56:14.124 --> 01:56:18.124
y_pos

1745
01:56:18.125 --> 01:56:22.125
ตำแหน่งของ Y alay Y

1746
01:56:22.126 --> 01:56:26.126
นะคะ ในนี้พิมพ์

1747
01:56:26.127 --> 01:56:30.127
y pos เลือก y pos

1748
01:56:30.129 --> 01:56:34.129
ตอนนี้เราจะเช็กไปตามแนวแถวแล้วนะ

1749
01:56:34.130 --> 01:56:38.130
ตามแนวคอลัมน์แล้วนะ

1750
01:56:38.131 --> 01:56:42.131
แถวเสร็จแล้ว เช็กคอลัมภ์ในนี้

1751
01:56:42.132 --> 01:56:46.132
นะคะ แล้วก้

1752
01:56:46.132 --> 01:56:50.132
ไประบุ

1753
01:56:50.133 --> 01:56:54.133
ค่า Y pos ที่ 0

1754
01:56:54.134 --> 01:56:58.134
ตำแหน่งเหนือ for x นี่

1755
01:56:58.135 --> 01:57:02.135

1756
01:57:02.136 --> 01:57:06.136
for เห็นไหม

1757
01:57:06.137 --> 01:57:10.137
แต่ตำแหน่งตรงกับ fales เลยนะคะ

1758
01:57:10.139 --> 01:57:14.139
pos enter มีค่าเท่ากับ

1759
01:57:14.140 --> 01:57:18.140
0 ค่าเริ่มต้น กำหนดค่าเริ่มต้น

1760
01:57:18.140 --> 01:57:22.140
ให้ y_pos = 0 อย่างนี้นะคะ

1761
01:57:22.141 --> 01:57:26.141
เพราะไม่งั้นมันจะเช็ก

1762
01:57:26.141 --> 01:57:30.141
เห็นไหม หา y_pos ไม่เจอ

1763
01:57:30.143 --> 01:57:34.143

1764
01:57:34.144 --> 01:57:38.144

1765
01:57:38.145 --> 01:57:42.145
เพราะฉะนั้นตรงตำแหน่งมันไม่ได้มี คอลัมน์เดียว

1766
01:57:42.147 --> 01:57:46.147
เห็นไหมคะ มันก็จะมีคอลัมภ์ที่ 1 กับ 2

1767
01:57:46.147 --> 01:57:50.147
ใน Array มันจะนับคอลัมน์แรกเป็น 0

1768
01:57:50.148 --> 01:57:54.148
1 2 เพราะฉะนั้น เราก็เพิ่มค่าคอลัมน์เข้าไป

1769
01:57:54.149 --> 01:57:58.149
วิธีการไม่ต้องพิมพ์

1770
01:57:58.151 --> 01:58:02.151
นึกออกนะ Coppy ได้

1771
01:58:02.151 --> 01:58:06.151
ก๊อบไป

1772
01:58:06.152 --> 01:58:10.152
คำว่า "markers[0]

1773
01:58:10.153 --> 01:58:14.153
แล้วใส่ Comma

1774
01:58:14.154 --> 01:58:18.154
comma แล้วก็กดวางครั้งที่ 1

1775
01:58:18.155 --> 01:58:22.155
กดวางครั้งที่ 2

1776
01:58:22.156 --> 01:58:26.156
เป็น 1

1777
01:58:26.157 --> 01:58:30.157
แล้วก็ช่องที่ 2 ก็เป็น 2 เท่านั้นเอง

1778
01:58:30.159 --> 01:58:34.159
0 เห็นไหมคะ เริ่มจาก 1 เริ่มจาก 2

1779
01:58:34.160 --> 01:58:38.160

1780
01:58:38.161 --> 01:58:42.161
ไม่ได้ใส่ , ขอโทษ ๆ

1781
01:58:42.162 --> 01:58:46.162
มันต้องเป็นบวก บวกเพิ่มขึ้น

1782
01:58:46.163 --> 01:58:50.163
เข้าไป 1 ช่อง + นะคะ ใส่ +

1783
01:58:50.164 --> 01:58:54.164
แทนตรง comma (,) ใส่เครื่องหมาย

1784
01:58:54.165 --> 01:58:58.165
ตรง : ใส่เครื่องหมายบวกแทน

1785
01:58:58.166 --> 01:59:02.166
ฉันเบลอละ

1786
01:59:02.166 --> 01:59:06.166
เปลี่ยนเป็นเครื่องหมายบวกนะ

1787
01:59:06.167 --> 01:59:10.167
ถ้ามี mark ที่ 1 mark ที่

1788
01:59:10.169 --> 01:59:14.169
คือ มันครบ 3 อันตามแถว ตามคอลัมน์

1789
01:59:14.170 --> 01:59:18.170
นี่ 1, 2, 3 ปุ๊บ

1790
01:59:18.171 --> 01:59:22.171
นะคะ ตำแหน่งนี้สิ่งที่จำทำต่อ ก็คือ

1791
01:59:22.171 --> 01:59:26.171
ก็จะมาบอกว่า

1792
01:59:26.174 --> 01:59:30.174
นี่นะคะ

1793
01:59:30.175 --> 01:59:34.175
เห็นไหมคะ ค่าของตำแหน่งนี้

1794
01:59:34.176 --> 01:59:38.176
เท่ากับ 3 แล้วค่อนมาเพิ่มบรรทัดนี้เพ

1795
01:59:38.177 --> 01:59:42.177
อย่างไรมาดู ตรง

1796
01:59:42.178 --> 01:59:46.178
y_pos นี้ ใส่ = 3 เข้าไป

1797
01:59:46.179 --> 01:59:50.179
ใส่ค่า เท่ากับนะคะ แล้วก็

1798
01:59:50.180 --> 01:59:54.180
ตามด้วย 3 ลงไป ในบรรทัดนี้ copy ตรง

1799
01:59:54.181 --> 01:59:58.181
ก๊อบปี้นี่มาครับ winner กับ

1800
01:59:58.182 --> 02:00:02.182
เพราะ winner ที่เราใช้ ก็คือ

1801
02:00:02.183 --> 02:00:06.183
winner ที่ 1 กดไวไปหน่อย

1802
02:00:06.184 --> 02:00:10.184
winner ที่ 1 เห็นไหม

1803
02:00:10.184 --> 02:00:14.184
นี่ game_over กับ

1804
02:00:14.185 --> 02:00:18.185
winner ที่ 1 กับ game_over = True นี่

1805
02:00:18.186 --> 02:00:22.186
ก็อบมาได้เลย ตัวเดียวกัน จะบอกว่า

1806
02:00:22.187 --> 02:00:26.187
เมื่อครบอันนี้ ก็คือผู้ชนะ คือ

1807
02:00:26.189 --> 02:00:30.189
คนนี้นะคะ ถ้าครบคอลัมน์ตามแนวนี้นะคะ

1808
02:00:30.190 --> 02:00:34.190

1809
02:00:34.191 --> 02:00:38.191
ก็ไม่ต้องแก้เห็นไหม

1810
02:00:38.192 --> 02:00:42.192
เห็นไหมคะ

1811
02:00:42.194 --> 02:00:46.194
แล้วอะไรต่อ

1812
02:00:46.196 --> 02:00:50.196
เห็นไหมคะ เช็กกับ ถ้าไม่ใช่คนที่ 1 mark นี่

1813
02:00:50.198 --> 02:00:54.198
มันก็ต้องมีของคนที่ 2 mark

1814
02:00:54.199 --> 02:00:58.199
แก้แค่ Copy

1815
02:00:58.200 --> 02:01:02.200
นี่เลย จาก if marks อันนี้

1816
02:01:02.201 --> 02:01:06.201
จนถึง game_over น่ะ

1817
02:01:06.203 --> 02:01:10.203

1818
02:01:10.204 --> 02:01:14.204

1819
02:01:14.205 --> 02:01:18.205
แล้วมาเปลี่ยนค่าตรงไหนคะ จากค่าสุดท้าย

1820
02:01:18.206 --> 02:01:22.206
ค่าสุดท้าย จาก 3 เป็น -3 แล้วก็

1821
02:01:22.207 --> 02:01:26.207
เปลี่ยนค่าตรงคนที่ 1 เป็นคนที่ 2

1822
02:01:26.208 --> 02:01:30.059

1823
02:01:30.209 --> 02:01:34.209
เพราะมันเช็กตามคอลัมน์ไง

1824
02:01:34.211 --> 02:01:38.211
ตอนนี้มันเช็กตามคอลัมน์ ก็เหมือนอันนี้ที่มันเช็ก

1825
02:01:38.213 --> 02:01:42.213
ตามแถวเห็นไหมคะ เพราะฉะนั้นก็สไตล์

1826
02:01:42.214 --> 02:01:46.214
เดียวกันก็ copy มาได้เลย

1827
02:01:46.214 --> 02:01:50.214
แต่สิ่งที่มีมาเพิ่ม ก็คือ

1828
02:01:50.216 --> 02:01:54.216
Loop ของการเช็ก y_pos นี่

1829
02:01:54.217 --> 02:01:58.217
เพิ่มขึ้นมาอีก 1 ตรงบรรทัด

1830
02:01:58.218 --> 02:02:02.218
สุดท้าย ก็คือเพิ่มคำว่า

1831
02:02:02.219 --> 02:02:06.219

1832
02:02:06.220 --> 02:02:10.220

1833
02:02:10.221 --> 02:02:14.221

1834
02:02:14.223 --> 02:02:18.223
w

1835
02:02:18.225 --> 02:02:22.225
มีค่าเท่ากับ

1836
02:02:22.225 --> 02:02:26.225
+= 1 ให้มันเพิ่มรอบ

1837
02:02:26.226 --> 02:02:30.226
รอบในการทำงาน เพิ่ม loop เข้าไป

1838
02:02:30.227 --> 02:02:34.227
ทำไมเป็น ++

1839
02:02:34.228 --> 02:02:38.228
เข้าไป 1 รอบ เพิ่มข้าไป 1 รอบ

1840
02:02:38.229 --> 02:02:42.229
วนรอบ x_pos อยู่ตอนนี้

1841
02:02:42.235 --> 02:02:46.235
โอ.เค. ไหม ทันนะคะ

1842
02:02:46.238 --> 02:02:50.238
ทันไหม ทันไหม โอ.เค.

1843
02:02:50.239 --> 02:02:54.239

1844
02:02:54.240 --> 02:02:58.240
เมื่อกี้เช็ก

1845
02:02:58.242 --> 02:03:02.242
แนวนี้ แนวแถว กับแนวคอลัมน์ไปแล้ว

1846
02:03:02.243 --> 02:03:06.243
กับแนวคอลัมภ์ ทีนี้เช็กทแยง

1847
02:03:06.244 --> 02:03:10.244
จากนี่นึกออกนะ ทะแยง

1848
02:03:10.245 --> 02:03:14.245
จากมุมบนลงมามุมล่างนี้ ทั้งด้านซ้ายด้านขวานี่

1849
02:03:14.247 --> 02:03:18.247
นะคะ เช็กมุมทะแยง

1850
02:03:18.248 --> 02:03:22.248
ก็ต่อจาก

1851
02:03:22.249 --> 02:03:26.249
เมื่อกี้นั่นล่ะ

1852
02:03:26.250 --> 02:03:30.250

1853
02:03:30.251 --> 02:03:34.251

1854
02:03:34.252 --> 02:03:38.252
ออกไหนมา

1855
02:03:38.254 --> 02:03:42.254
แทบจะไม่ต้องพิมพ์เลยนะ

1856
02:03:42.255 --> 02:03:46.255
เอาตัวแรกมา ก๊อบ if markers

1857
02:03:46.256 --> 02:03:50.256
ก็อบ if_mark ตัวที่ 1 มาเลยนะคะ

1858
02:03:50.257 --> 02:03:54.257
ดูดี ๆ นี่เห็นไหม

1859
02:03:54.259 --> 02:03:58.259
ตัวที่ 1 กับตัวที่ 2 นี่มาเลย

1860
02:03:58.260 --> 02:04:02.260
แล้วมาเปลี่ยนอะไร

1861
02:04:02.260 --> 02:04:06.260
ก็อบอันแรกก่อน แล้วค่อยไปเปลี่ยนอันที่ 2 ง่ายกว่า

1862
02:04:06.264 --> 02:04:10.264
แค่ if ไอ้นี่ ถึง Game_over

1863
02:04:10.265 --> 02:04:14.265
พอนะคะ

1864
02:04:14.266 --> 02:04:18.266
ตรงตำแหน่ง y_pos เห็นไหมคะ

1865
02:04:18.267 --> 02:04:22.267
ต่อจากตำแหน่ง y_pos

1866
02:04:22.268 --> 02:04:26.268
Crtl v if จะอยู่

1867
02:04:26.269 --> 02:04:30.269
ตำแหน่งที่ตรงกับ

1868
02:04:30.271 --> 02:04:34.271
เยื้อง y_pos ออกมา 1 นะคะ

1869
02:04:34.272 --> 02:04:38.272

1870
02:04:38.274 --> 02:04:42.274
นี่นะคะ ถ้าตรงให้

1871
02:04:42.275 --> 02:04:46.275
คลิกย้อน 1 ตำแหน่ง

1872
02:04:46.276 --> 02:04:50.276

1873
02:04:50.277 --> 02:04:54.277
เปลี่ยนค่าใน y_pos เป็น 1

1874
02:04:54.278 --> 02:04:58.278
ดูนะคะ ดูค่าที่เปลี่ยน

1875
02:04:58.279 --> 02:05:02.279
1, 2, 3 0 1 2

1876
02:05:02.280 --> 02:05:06.280
0, 1, 2

1877
02:05:06.281 --> 02:05:10.281
โอ.เค. รู้แล้ว

1878
02:05:10.282 --> 02:05:14.282
0

1879
02:05:14.283 --> 02:05:18.283
อันนี้ 0 ก่อน ช่องแรก 0 ใช่หรือเปล่า

1880
02:05:18.284 --> 02:05:22.284
ช่องนี้ y_pos เป็น 1

1881
02:05:22.285 --> 02:05:26.285
ช่องนี้ y_pos เป็น 2

1882
02:05:26.286 --> 02:05:30.286

1883
02:05:30.287 --> 02:05:34.287
เดี๋ยวนะ

1884
02:05:34.288 --> 02:05:38.288
0 0 1 0 2 2

1885
02:05:38.291 --> 02:05:42.291
เท่ากับ 3 อ๋อ marker

1886
02:05:42.293 --> 02:05:46.293
0, 0, 1, 0

1887
02:05:46.294 --> 02:05:50.294
เอาใหม่ ๆ

1888
02:05:50.297 --> 02:05:54.297
0, 0, 0

1889
02:05:54.298 --> 02:05:58.298
00 10

1890
02:05:58.299 --> 02:06:02.299
มันเช็ก

1891
02:06:02.300 --> 02:06:06.300
ใช่เพราะมันเช็กตามแนวนี้ไง

1892
02:06:06.301 --> 02:06:10.301
นี่ ๆ ๆ เห็นไหม อันแรกนี่ 0, 0 ถูกแล้ว

1893
02:06:10.301 --> 02:06:14.301
อันนี้ 2 มันจะเป็น

1894
02:06:14.302 --> 02:06:18.302
1 กับ 0 x เป็น 1

1895
02:06:18.303 --> 02:06:22.303
x เป็น 1 y เป็น 0

1896
02:06:22.304 --> 02:06:26.304
ตัว mark อยู่ที่

1897
02:06:26.305 --> 02:06:30.305
ช่องที่ คอลัมน์ ๆ

1898
02:06:30.307 --> 02:06:34.307
คอลัมภ์เริ่มอันนี้ตัวแปร

1899
02:06:34.308 --> 02:06:38.308
ที่ตัวแปรที่ 1 อันนี้ 0 ถูกแล้ว

1900
02:06:38.309 --> 02:06:42.309
อันนี้ 2 2 ค่าเท่ากับ 3 ถูกแล้ว ก๊อบอันนี้

1901
02:06:42.311 --> 02:06:46.311
ซ้ำอีก 1 ครั้ง ก็อบจาก Marker

1902
02:06:46.312 --> 02:06:50.312
นี่

1903
02:06:50.313 --> 02:06:54.313
นี่

1904
02:06:54.315 --> 02:06:58.315
ก๊อบปี้ แล้วก็...

1905
02:06:58.316 --> 02:07:02.316
ใส่อะไร เครื่องหมาย

1906
02:07:02.318 --> 02:07:06.318
+ ใช่ไหม ใส่ or ขั้นด้วย or

1907
02:07:06.319 --> 02:07:10.319
ถ้าหรือ ใส่ or เข้าไปนะคะ

1908
02:07:10.320 --> 02:07:14.320
พอตรง 3 พิมพ์ or ก่อน

1909
02:07:14.322 --> 02:07:18.322
1 ครั้ง all

1910
02:07:18.325 --> 02:07:22.325
แล้วก็กดวางค่าเมื่อกี้ แล้วก็มาเปลี่ยน

1911
02:07:22.327 --> 02:07:26.327
ค่าใน Array เรานี่

1912
02:07:26.328 --> 02:07:30.328
ในช่องตารางนี่นะคะ จะเริ่มที่ or

1913
02:07:30.330 --> 02:07:34.330
20 11 02

1914
02:07:34.331 --> 02:07:38.331
เปลี่ยนค่าในช่องนี้เป็น

1915
02:07:38.333 --> 02:07:42.333
2 กับ 0

1916
02:07:42.333 --> 02:07:46.333
1 กับ 1 แล้วก็อะไร

1917
02:07:46.335 --> 02:07:50.335
02 แล้วก็

1918
02:07:50.336 --> 02:07:54.336
0 กับ 2

1919
02:07:54.337 --> 02:07:58.337
ตำแหน่งที่เปลี่ยน โอ.เค. ไหม

1920
02:07:58.338 --> 02:08:02.338
แล้วก็

1921
02:08:02.339 --> 02:08:06.339
ค่า 3 จะเป็น

1922
02:08:06.340 --> 02:08:10.340
ค่าสุดท้ายจะเป็น ยังเท่ากับ 3 อยู่

1923
02:08:10.342 --> 02:08:14.342
winner เท่ากับอันนี้

1924
02:08:14.343 --> 02:08:18.343
ตั้งแต่ตรง if นี่ลงมา

1925
02:08:18.344 --> 02:08:22.344
เปลี่ยนค่าตรงกลาง แค่นั้น

1926
02:08:22.346 --> 02:08:26.346
เห็นไหม

1927
02:08:26.346 --> 02:08:30.346
ค่าตัวเลข เปลี่ยนแต่ค่าตัวเลข

1928
02:08:30.347 --> 02:08:34.347
จาก 3 เป็น -3 แล้วก็ค่า winner เป็น 2

1929
02:08:34.348 --> 02:08:38.348
ยาวไปล้น

1930
02:08:38.350 --> 02:08:42.350
เยอะเกิน

1931
02:08:42.351 --> 02:08:46.351
เดี๋ยวจะไม่เห็น ถ้าจะก๊อบ

1932
02:08:46.352 --> 02:08:50.352
ตั้งแต่ if mark

1933
02:08:50.353 --> 02:08:54.353
จะทำการ copy ตั้งแต่

1934
02:08:54.354 --> 02:08:58.354
แล้วก็วาง

1935
02:08:58.355 --> 02:09:02.355
เรามาเปลี่ยนค่าเฉพาะ ดัน tab ไปให้มันตรง

1936
02:09:02.358 --> 02:09:06.358
Tab ไปให้มันตรง เปลี่ยน

1937
02:09:06.363 --> 02:09:10.363
ค่าตรง 3 เห็นไหมคะ เป็น -3 ใส่เข้าไป

1938
02:09:10.365 --> 02:09:14.365
เห็นหรือเปล่า ค่าใน array

1939
02:09:14.366 --> 02:09:18.366
ตรงกันหมดเลย เท่าเดิมไม่ได้เปลี่ยนนะคะ

1940
02:09:18.367 --> 02:09:22.367
ค่าในนี้เหมือนเดิม แล้วก็มาเปลี่ยนค่าใน winner อีกที่หนึ่ง

1941
02:09:22.368 --> 02:09:26.368
จาก 1 เป็น 2 แค่นั้น เปลี่ยนอยู่

1942
02:09:26.369 --> 02:09:30.369
1. เห็นไหมคะ จาก 1. เป็น -3

1943
02:09:30.370 --> 02:09:34.370
winner เป็น 2 แค่นั้น

1944
02:09:34.372 --> 02:09:38.372
ทำให้เร็วขึ้น ก๊อบมา

1945
02:09:38.373 --> 02:09:42.373

1946
02:09:42.373 --> 02:09:46.373
ตัวนี้ คือ ตัวที่จะเช็กแถวที่

1947
02:09:46.374 --> 02:09:50.374
ทะแยงลงมานี่ เห็นไหมช่องที่ 1

1948
02:09:50.375 --> 02:09:54.375
ช่องที่ 2 ช่องที่ 3 นี่  ก็คือถ้าแถวนี้

1949
02:09:54.376 --> 02:09:58.376
มันได้ครบ 3 เมื่อไร คนที่

1950
02:09:58.377 --> 02:10:02.377
คลิป x คลิป ทะแยงลงมานี่

1951
02:10:02.378 --> 02:10:06.378
คนที่คลิก x ก็จะเป็นคนชนะ แต่ถ้า

1952
02:10:06.379 --> 02:10:10.379
O ครบ O ก็ชนะอย่างนี้นะคะ

1953
02:10:10.380 --> 02:10:14.380
อันนี้คือการเช็กตามแนวทะแยงของมันเอง

1954
02:10:14.381 --> 02:10:18.381
นะคะ

1955
02:10:18.382 --> 02:10:22.382
ส่งที่โผล่มาก็คือ

1956
02:10:22.384 --> 02:10:26.384
ก่อนจะปิด ก็คือใช้ Keyword ที่ชื่อว่า global

1957
02:10:26.385 --> 02:10:30.385
เพื่อเรียกใช้ตัวแปร winner กับ game over นั่นเอง

1958
02:10:30.386 --> 02:10:34.386
ที่เราประกาศไว้นะคะ

1959
02:10:34.388 --> 02:10:38.388
ก็คือมาเรียกใช้อยู่ตรงนี้

1960
02:10:38.390 --> 02:10:42.390
Keyword global นี่นะคะ

1961
02:10:42.390 --> 02:10:46.390
อยู่ตรงตำแหน่งกับ x_pos นั่นเอง

1962
02:10:46.391 --> 02:10:50.391
นะคะ วิธีการ

1963
02:10:50.392 --> 02:10:54.392
นะคะ พิมพ์ gl เดี๋ยว global มันจะขึ้นมา

1964
02:10:54.394 --> 02:10:58.394
ทีนี้มันมีเป็น 2 global blobal

1965
02:10:58.395 --> 02:11:02.395
กับ global ที่เป็น ฟังก์ชัน

1966
02:11:02.396 --> 02:11:06.396
เพราะฉะนั้นเราจะเรียกใช้

1967
02:11:06.397 --> 02:11:10.397
global คีย์เวิร์ดแล้วก็ตามด้วยตัวแปรนะคะ

1968
02:11:10.398 --> 02:11:14.398
winner นะคะ

1969
02:11:14.399 --> 02:11:18.399
แล้วก็

1970
02:11:18.400 --> 02:11:22.400
ตัวที่ 2 Global

1971
02:11:22.401 --> 02:11:26.401
เลือก global keyword แล้วก็ตามด้วย

1972
02:11:26.402 --> 02:11:30.402
game_over กดผิด

1973
02:11:30.403 --> 02:11:34.403
ga Game Over

1974
02:11:34.404 --> 02:11:38.404
ขึ้นมาแล้วกด Enter

1975
02:11:38.405 --> 02:11:42.405
คือ loop มันเยอะเห็นไหม

1976
02:11:42.406 --> 02:11:46.406
เพราะฉะนั้น มันเลยใช้วิธี Keyword มาช่วยเรียก

1977
02:11:46.407 --> 02:11:50.407
อยู่ตรงนี้นี่ ค่าเริ่มต้น คือ

1978
02:11:50.408 --> 02:11:54.408
มัน ค่ามันจะต้องกลับไปเช็กซ้ำ

1979
02:11:54.410 --> 02:11:58.410
เห็นไหมคะ เช็ก เพราะฉะนั้น มันจะ

1980
02:11:58.411 --> 02:12:02.411
เรียกมาใหม่ เรียกมาใช้ ก็คือให้มันเริ่ม

1981
02:12:02.412 --> 02:12:06.412
Winner เข้ามาครั้งแรก มันก็จะค่าเป็น 0

1982
02:12:06.413 --> 02:12:10.413
Game_over มีค้าเป็น เ

1983
02:12:10.414 --> 02:12:14.414
ค่าเป็น 1 winner ค่าเป็น true เห็นไหมคะ

1984
02:12:14.415 --> 02:12:18.415
ก็เลยต้องมาเรียกใช้ Keyword global

1985
02:12:18.416 --> 02:12:22.416
Global จะเป็นการเรียกตัวแปรที่อยู๋ข้างนอก

1986
02:12:22.417 --> 02:12:26.417
มาใช้งาน ก็คือเรียกตัวนี้มา

1987
02:12:26.418 --> 02:12:30.418
พอเรียก

1988
02:12:30.419 --> 02:12:34.419
เสร็จแล้วทำอะไรต่อ

1989
02:12:34.420 --> 02:12:38.420
เรียกใช้ฟังก์ชัน Winner

1990
02:12:38.421 --> 02:12:42.421
ตำแหน่ง ตำแหน่งที่เราเช็ก

1991
02:12:42.422 --> 02:12:46.422
markers ไง เห็นไหมคะ

1992
02:12:46.423 --> 02:12:50.423
อยู่ตรงนี้นะคะ

1993
02:12:50.424 --> 02:12:54.424
อยู่ตรงนี้ ตรงนี้ ๆ เห็นไหมคะ

1994
02:12:54.425 --> 02:12:58.425
เห็นไหมคะ ก่อนบรรทัด update

1995
02:12:58.427 --> 02:13:02.427
เห็นหรือเปล่า เรียกมาตรงนี้ เพราะตรงนี้

1996
02:13:02.429 --> 02:13:06.429
จะเป็นให้ check_markers

1997
02:13:06.430 --> 02:13:10.430
ก่อนจะอะไร เช็ก Cell mark Player 1

1998
02:13:10.432 --> 02:13:14.432
เช็กผู้เล่นเห็นไหมคะ เพราะฉะนั้นตำแ

1999
02:13:14.433 --> 02:13:18.433
อันนี้ ก็คือ

2000
02:13:18.434 --> 02:13:22.434
check_winner เลือกฟังก์ชัน check_winner

2001
02:13:22.435 --> 02:13:26.435
ขึ้นมาใช้งาน

2002
02:13:26.436 --> 02:13:30.436
โอ.เค. เสร็จหรือยัง

2003
02:13:30.437 --> 02:13:34.437

2004
02:13:34.438 --> 02:13:38.438

2005
02:13:38.440 --> 02:13:42.440
แล้วก็ไป

2006
02:13:42.444 --> 02:13:46.444
ไปให้มันเช็กว่าถ้า Game_over มีค่า

2007
02:13:46.445 --> 02:13:50.445
เป็น 0 นี่นะคะ

2008
02:13:50.446 --> 02:13:54.446
แล้วลองทดสอบโปรแกรม เพราะมันจะต้อง

2009
02:13:54.447 --> 02:13:58.447
เปิดเงื่อนไขเกม Over มาด้วย

2010
02:13:58.448 --> 02:14:02.448
มันถึงจะเช็กได้ ก็คือเมื่อเล่นเสร็จ

2011
02:14:02.448 --> 02:14:06.448

2012
02:14:06.450 --> 02:14:10.450
ตอนไหนนะ

2013
02:14:10.451 --> 02:14:14.451
เช็ก Winner หรอ ย้อนไปอีก

2014
02:14:14.452 --> 02:14:18.452
ย้อนไปอีก ไอ้นี่เหรอ

2015
02:14:18.453 --> 02:14:22.453
ยังไม่ใช่

2016
02:14:22.454 --> 02:14:26.454
global หรือ

2017
02:14:26.455 --> 02:14:30.455
อือ พอ ๆ

2018
02:14:30.456 --> 02:14:34.456
พอเรียกใช้คีย์เวิลด์

2019
02:14:34.456 --> 02:14:38.456
จะเรียก check_winner

2020
02:14:38.457 --> 02:14:42.457
เรียกใช้ check_winner() ต้องกำหนดเงื่อนไขก่อนว่า

2021
02:14:42.458 --> 02:14:46.458
ถ้าเกมมัน Over ให้ค่า

2022
02:14:46.459 --> 02:14:50.459
Game_over เท่ากับ 0 ก็คืออยู่ตรง

2023
02:14:50.460 --> 02:14:54.460
ตำแหน่ง

2024
02:14:54.461 --> 02:14:58.461
บนไหน event.type ก่อนที่จะคลิกเมาศ

2025
02:14:58.462 --> 02:15:02.462
ก็คืออยู่ตรงตำแหน่งนี้ ตำแหน่ง

2026
02:15:02.463 --> 02:15:06.463
ที่เหนือคลิก Mouse นี่

2027
02:15:06.464 --> 02:15:10.464

2028
02:15:10.465 --> 02:15:14.465

2029
02:15:14.468 --> 02:15:18.468

2030
02:15:18.471 --> 02:15:22.471
นะคะ

2031
02:15:22.473 --> 02:15:26.473
ฟังก์ชัน

2032
02:15:26.475 --> 02:15:30.475
condition if แล้วก็

2033
02:15:30.476 --> 02:15:34.476
เกม Over

2034
02:15:34.477 --> 02:15:38.477
กำหนดค่าให้ = 0

2035
02:15:38.478 --> 02:15:42.478

2036
02:15:42.479 --> 02:15:46.479
แล้ว

2037
02:15:46.481 --> 02:15:50.481
มันก็จะมาประโยคนี้ต่อ

2038
02:15:50.482 --> 02:15:54.482
เราจะลอง Run ดูในขั้นตอนนี้

2039
02:15:54.483 --> 02:15:58.483
mark แล้วอะไรแล้ว ใช้ได้ไหม

2040
02:15:58.484 --> 02:16:02.484
Ctrl + B ครับ กด Ctrl + B

2041
02:16:02.485 --> 02:16:06.485
เมื่อใส่เงื่อนไข

2042
02:16:06.486 --> 02:16:10.486
ลืมเรียกอะไรแน่ ๆ เลยทำไม Markers

2043
02:16:10.488 --> 02:16:14.488
ตัวนี้ไม่ขึ้น เดี๋ยวนะ

2044
02:16:14.489 --> 02:16:18.489
check_markers มีแล้ว

2045
02:16:18.489 --> 02:16:22.489
มาแล้ว

2046
02:16:22.490 --> 02:16:26.490
x_pos dorma

2047
02:16:26.491 --> 02:16:30.491
expos

2048
02:16:30.492 --> 02:16:34.492
Error ไม่ขึ้นเสียด้วย check_winner()

2049
02:16:34.494 --> 02:16:38.494

2050
02:16:38.495 --> 02:16:42.495
drownmarkers

2051
02:16:42.497 --> 02:16:46.497
ไปดูชื่อสิตั้งชื่อถูกไหมนี่

2052
02:16:46.498 --> 02:16:50.498
draw_markers()

2053
02:16:50.499 --> 02:16:54.499

2054
02:16:54.500 --> 02:16:58.500

2055
02:16:58.502 --> 02:17:02.502
ขึ้นหรือยัง

2056
02:17:02.506 --> 02:17:06.506
ขึ้นไหมเด็ก ๆ

2057
02:17:06.507 --> 02:17:10.507
ปรากฎของตัวเองไม่ขึ้นบัดนี้

2058
02:17:10.508 --> 02:17:14.508
งงเลย เดี๋ยวนะอะไรหายไป

2059
02:17:14.508 --> 02:17:18.508
Error ก็ไม่ขึ้นนี่สิปัญหา

2060
02:17:18.508 --> 02:17:22.508

2061
02:17:22.509 --> 02:17:26.509
เดี๋ยวขอ Save แล้วขอ

2062
02:17:26.511 --> 02:17:30.511
เซฟแล้วขอเคลียก่อนนะ

2063
02:17:30.512 --> 02:17:34.512
เผื่อมัน Error มันค้าง

2064
02:17:34.513 --> 02:17:38.513
มันเลยหาไม่เจอนี่ ไม่รู้อันไหนเป็นอันไหนนี่

2065
02:17:38.515 --> 02:17:42.515
ขอเคลียร์ แล้วขอ

2066
02:17:42.516 --> 02:17:46.516
ลองเปิดใหม่

2067
02:17:46.517 --> 02:17:50.517
Coding ไปเยอะ ๆ เครื่องก็ Error

2068
02:17:50.518 --> 02:17:54.518
ได้เหมือนกันนะครับ ไม่เฉพาะคน เดี๋ยวจะลง

2069
02:17:54.520 --> 02:17:58.520
Run ใหม่ Ctrl + B ใหม่

2070
02:17:58.522 --> 02:18:02.522
ขึ้นไหนรอบนี้ markers

2071
02:18:02.523 --> 02:18:06.523
เราไปผิดตรงไหนหว่า Error ก็ไม่ขึ้น

2072
02:18:06.524 --> 02:18:10.524
ลืมอะไรไป

2073
02:18:10.525 --> 02:18:14.525

2074
02:18:14.526 --> 02:18:18.526
บรรทัดที่ draw markers

2075
02:18:18.527 --> 02:18:22.527
ไม่ขึ้น ขอดูตำแหน่ง

2076
02:18:22.529 --> 02:18:26.529
เทียบกับค่าเดิม

2077
02:18:26.530 --> 02:18:30.530
ค่าผิดหรือเปล่าหว่า

2078
02:18:30.530 --> 02:18:34.530

2079
02:18:34.532 --> 02:18:38.532
ค่าอะไรผิดสักค่าหนึ่งกัน

2080
02:18:38.534 --> 02:18:42.534
แน่ ๆ เลย ขอดู draw_markers() ก่อนนะครับ

2081
02:18:42.536 --> 02:18:46.536

2082
02:18:46.539 --> 02:18:50.539

2083
02:18:50.540 --> 02:18:54.540
draw_markers มาแล้ว

2084
02:18:54.541 --> 02:18:58.541

2085
02:18:58.541 --> 02:19:02.541

2086
02:19:02.542 --> 02:19:06.542

2087
02:19:06.543 --> 02:19:10.543

2088
02:19:10.544 --> 02:19:14.544

2089
02:19:14.546 --> 02:19:18.546

2090
02:19:18.547 --> 02:19:22.547

2091
02:19:22.549 --> 02:19:26.549

2092
02:19:26.553 --> 02:19:30.553
x_pos = 0

2093
02:19:30.555 --> 02:19:34.555

2094
02:19:34.556 --> 02:19:38.556
for x in markers

2095
02:19:38.557 --> 02:19:42.557

2096
02:19:42.558 --> 02:19:46.558
ถูกต้อง

2097
02:19:46.559 --> 02:19:50.559
y_pos=0

2098
02:19:50.562 --> 02:19:54.562
ถูกต้อง ถ้า y

2099
02:19:54.563 --> 02:19:58.563
= 1 วาดเส้น

2100
02:19:58.564 --> 02:20:02.564
เส้นทำไมไม่วาดให้นะ ตัวแปรประกาศแล้ว

2101
02:20:02.564 --> 02:20:06.564
Green Red

2102
02:20:06.565 --> 02:20:10.565
มันประกาศแล้วนี่

2103
02:20:10.566 --> 02:20:14.566
ไม่ได้ลืมประกาศตัวแปร

2104
02:20:14.568 --> 02:20:18.568
ก็ประกาศแล้ว

2105
02:20:18.569 --> 02:20:22.569

2106
02:20:22.571 --> 02:20:26.571

2107
02:20:26.572 --> 02:20:30.572
draw_screen

2108
02:20:30.575 --> 02:20:34.575
line screen

2109
02:20:34.576 --> 02:20:38.576

2110
02:20:38.577 --> 02:20:42.577
85

2111
02:20:42.578 --> 02:20:46.578

2112
02:20:46.579 --> 02:20:50.579

2113
02:20:50.582 --> 02:20:54.582
marker ขึ้นไหม

2114
02:20:54.583 --> 02:20:58.320
ขึ้นไหม

2115
02:20:58.584 --> 02:21:02.584
Error ไม่ขึ้นอีกแล้วปัญหา

2116
02:21:02.585 --> 02:21:06.585

2117
02:21:06.586 --> 02:21:10.586

2118
02:21:10.587 --> 02:21:14.587

2119
02:21:14.588 --> 02:21:18.588

2120
02:21:18.589 --> 02:21:22.589

2121
02:21:22.591 --> 02:21:26.591

2122
02:21:26.592 --> 02:21:30.592

2123
02:21:30.595 --> 02:21:34.595

2124
02:21:34.596 --> 02:21:38.596

2125
02:21:38.597 --> 02:21:42.597

2126
02:21:42.600 --> 02:21:46.600

2127
02:21:46.602 --> 02:21:50.602

2128
02:21:50.603 --> 02:21:54.603

2129
02:21:54.605 --> 02:21:58.605

2130
02:21:58.607 --> 02:22:02.607

2131
02:22:02.609 --> 02:22:06.609

2132
02:22:06.610 --> 02:22:10.610

2133
02:22:10.611 --> 02:22:14.611
จะบอกว่า Error ก็ไม่ขึ้น

2134
02:22:14.612 --> 02:22:18.612
มาดู for x

2135
02:22:18.613 --> 02:22:22.613
บรรทัดนี้

2136
02:22:22.615 --> 02:22:26.615

2137
02:22:26.618 --> 02:22:30.618

2138
02:22:30.619 --> 02:22:34.619

2139
02:22:34.621 --> 02:22:38.621

2140
02:22:38.622 --> 02:22:42.622

2141
02:22:42.623 --> 02:22:46.623

2142
02:22:46.625 --> 02:22:50.625

2143
02:22:50.627 --> 02:22:54.627

2144
02:22:54.628 --> 02:22:58.628

2145
02:22:58.629 --> 02:23:02.629

2146
02:23:02.634 --> 02:23:06.634

2147
02:23:06.635 --> 02:23:10.635
นี่ไหม

2148
02:23:10.637 --> 02:23:14.637
ตำแหน่งตัวเลข

2149
02:23:14.639 --> 02:23:18.639

2150
02:23:18.639 --> 02:23:22.639
ไม่ screen fil

2151
02:23:22.641 --> 02:23:26.641
background_grid

2152
02:23:26.642 --> 02:23:30.642
อันนี้ draw_grid เรียกใช้ไปแล้ว

2153
02:23:30.643 --> 02:23:34.643

2154
02:23:34.646 --> 02:23:38.646
ทำไมตอน Run ไม่ขึ้น

2155
02:23:38.647 --> 02:23:42.647
นี่ดูยากมากเลย

2156
02:23:42.649 --> 02:23:46.649

2157
02:23:46.651 --> 02:23:50.651
ทำไมไม่ Mark ให้

2158
02:23:50.652 --> 02:23:54.652
markers ไม่ขึ้น

2159
02:23:54.654 --> 02:23:58.654

2160
02:23:58.655 --> 02:24:02.655

2161
02:24:02.657 --> 02:24:06.657

2162
02:24:06.661 --> 02:24:10.661

2163
02:24:10.663 --> 02:24:14.663

2164
02:24:14.666 --> 02:24:18.666

2165
02:24:18.667 --> 02:24:22.667

2166
02:24:22.669 --> 02:24:26.669
เดี๋ยวขอลบตรงนี้

2167
02:24:26.671 --> 02:24:30.671
เพราะเนื่องจากมันไม่ขึ้นมาจากตัวนี้

2168
02:24:30.672 --> 02:24:34.672
มันก็ต้องลบจากตรงนี้ทั้งหมดทั้งปวงเลย

2169
02:24:34.673 --> 02:24:38.673

2170
02:24:38.672 --> 02:24:42.672

2171
02:24:42.674 --> 02:24:46.674
draw_markers ก๊อบมาเลยทั้งยวง

2172
02:24:46.675 --> 02:24:50.675

2173
02:24:50.677 --> 02:24:54.677
ขอก็อบ

2174
02:24:54.678 --> 02:24:58.678

2175
02:24:58.679 --> 02:25:02.679
แล้วลอง Run ใหม่ นั่นไง

2176
02:25:02.680 --> 02:25:06.680
จัดไป

2177
02:25:06.680 --> 02:25:10.680
ตำแหน่ง

2178
02:25:10.681 --> 02:25:14.681
y_pos

2179
02:25:14.681 --> 02:25:18.681

2180
02:25:18.681 --> 02:25:22.681

2181
02:25:22.683 --> 02:25:26.683

2182
02:25:26.684 --> 02:25:30.684
for ...

2183
02:25:30.687 --> 02:25:34.687

2184
02:25:34.689 --> 02:25:38.689

2185
02:25:38.690 --> 02:25:42.690

2186
02:25:42.692 --> 02:25:46.692

2187
02:25:46.695 --> 02:25:50.695

2188
02:25:50.698 --> 02:25:54.698
45

2189
02:25:54.700 --> 02:25:58.700

2190
02:25:58.701 --> 02:26:02.701

2191
02:26:02.704 --> 02:26:06.704

2192
02:26:06.708 --> 02:26:10.708
ไล่ไปทีละจุด

2193
02:26:10.712 --> 02:26:14.712

2194
02:26:14.713 --> 02:26:18.713

2195
02:26:18.714 --> 02:26:22.714
47

2196
02:26:22.715 --> 02:26:26.715

2197
02:26:26.715 --> 02:26:30.715

2198
02:26:30.716 --> 02:26:34.716

2199
02:26:34.718 --> 02:26:38.718
นี่พอก๊อบแล้วจะเป็นแบบนี้ตลอด

2200
02:26:38.720 --> 02:26:42.720

2201
02:26:42.721 --> 02:26:46.721

2202
02:26:46.722 --> 02:26:50.722

2203
02:26:50.724 --> 02:26:54.724
48

2204
02:26:54.726 --> 02:26:58.726
c 18 ก๊อบแล้วจะเป็นอย่างนี้

2205
02:26:58.727 --> 02:27:02.727

2206
02:27:02.728 --> 02:27:06.728

2207
02:27:06.730 --> 02:27:10.730

2208
02:27:10.731 --> 02:27:14.731

2209
02:27:14.732 --> 02:27:18.732

2210
02:27:18.734 --> 02:27:22.734
51

2211
02:27:22.742 --> 02:27:26.742

2212
02:27:26.745 --> 02:27:30.745

2213
02:27:30.747 --> 02:27:34.747

2214
02:27:34.749 --> 02:27:38.749
50

2215
02:27:38.751 --> 02:27:42.751

2216
02:27:42.752 --> 02:27:46.752

2217
02:27:46.755 --> 02:27:50.755

2218
02:27:50.757 --> 02:27:54.757
51

2219
02:27:54.759 --> 02:27:58.759

2220
02:27:58.760 --> 02:28:02.760

2221
02:28:02.761 --> 02:28:06.761

2222
02:28:06.762 --> 02:28:10.762

2223
02:28:10.765 --> 02:28:14.765

2224
02:28:14.767 --> 02:28:18.767
52

2225
02:28:18.769 --> 02:28:22.769

2226
02:28:22.770 --> 02:28:26.770

2227
02:28:26.771 --> 02:28:30.771

2228
02:28:30.774 --> 02:28:34.774

2229
02:28:34.775 --> 02:28:38.775

2230
02:28:38.776 --> 02:28:42.776

2231
02:28:42.778 --> 02:28:46.778
53

2232
02:28:46.779 --> 02:28:50.779

2233
02:28:50.781 --> 02:28:54.781

2234
02:28:54.782 --> 02:28:58.782
ไม่ได้

2235
02:28:58.783 --> 02:29:02.783
ก๊อบมาแล้วไม่ได้ ผิดตรงไหนนะ

2236
02:29:02.788 --> 02:29:06.788

2237
02:29:06.789 --> 02:29:10.789

2238
02:29:10.790 --> 02:29:14.790
แล้ว

2239
02:29:14.791 --> 02:29:18.791
game_over

2240
02:29:18.792 --> 02:29:22.792
กำหนดอันนี้ ก็คือจะสร้างไอ้

2241
02:29:22.793 --> 02:29:26.793
ตัวกล่องข้อความนะคะ

2242
02:29:26.794 --> 02:29:30.794
กล่องข้อความเพื่อ...

2243
02:29:30.795 --> 02:29:34.795
เพื่อแสดงข้อความเมื่อเล่นจบ

2244
02:29:34.795 --> 02:29:38.795
เดี๋ยวจะลองใส่ให้มันจบ ก็คือ

2245
02:29:38.796 --> 02:29:42.796
จะสร้าง draw_winner ขึ้นมา

2246
02:29:42.797 --> 02:29:46.797

2247
02:29:46.798 --> 02:29:50.798
มันจะอยู่

2248
02:29:50.799 --> 02:29:54.799
ที่ตำแหน่งที่... เดี๋ยวจะลองไป

2249
02:29:54.800 --> 02:29:58.800
ให้มันสุด ให้มันเสร็จแล้วจะ Run ทีเดียว

2250
02:29:58.801 --> 02:30:02.801
ตัวนี้นะคะ มันจะ

2251
02:30:02.802 --> 02:30:06.802
เอาไว้ที่ตำแหน่งที่ต่อจาก

2252
02:30:06.803 --> 02:30:10.803
ที่ต่อจาก game_over เมื่อกี้นี้นะคะ

2253
02:30:10.804 --> 02:30:14.804
ก็คือตำแหน่งนี้

2254
02:30:14.805 --> 02:30:18.805
สร้างฟังกชั่นเอาไว้สำหรับ

2255
02:30:18.806 --> 02:30:22.806

2256
02:30:22.807 --> 02:30:26.807
เป็นเพราะเวอร์ชัน อยู่บ้าน...

2257
02:30:26.808 --> 02:30:30.808
เครื่องที่บ้านกับเครื่องที่นี่ไม่ Support กัน

2258
02:30:30.810 --> 02:30:34.810

2259
02:30:34.811 --> 02:30:38.811

2260
02:30:38.812 --> 02:30:42.812

2261
02:30:42.814 --> 02:30:46.814
สร้างฟังก์ชันเพื่อสร้างกล่องข้อความ

2262
02:30:46.819 --> 02:30:50.819
เพื่อเขียนกล่องข้อความนะคะ

2263
02:30:50.821 --> 02:30:54.821
แสดงว่าใครคือคนชนะ

2264
02:30:54.821 --> 02:30:58.821
แล้วก็จะเอาไว้ให้เล่นซ้ำอีกรอบหนึ่ง

2265
02:30:58.822 --> 02:31:02.822
สร้างให้เสร็จ เอาให้สุด

2266
02:31:02.823 --> 02:31:06.823
ทำไมไม่ขึ้นตัวเลข

2267
02:31:06.824 --> 02:31:10.824
d-e-f

2268
02:31:10.825 --> 02:31:14.825
เลือก def ฟังก์ชัน ฟังก์ชันนี้

2269
02:31:14.826 --> 02:31:18.826
ชื่อว่า draw_winner

2270
02:31:18.827 --> 02:31:22.827
draw_Winner draw_ตามด้วย W

2271
02:31:22.830 --> 02:31:26.830
นะคะ

2272
02:31:26.832 --> 02:31:30.832

2273
02:31:30.833 --> 02:31:34.833
โอ.เค.

2274
02:31:34.834 --> 02:31:38.834
ก็คือ

2275
02:31:38.835 --> 02:31:42.835
บอกว่ากำหนดตัวแปร

2276
02:31:42.836 --> 02:31:46.836
ชื่อ win_text = player

2277
02:31:46.837 --> 02:31:50.837
แล้วก็ตามด้วย String

2278
02:31:50.839 --> 02:31:54.839
winner นี่ เป็น winner 1 หรือ winner 2

2279
02:31:54.840 --> 02:31:58.840
แล้วก็ตามด้วย win แปลว่าชน

2280
02:31:58.841 --> 02:32:02.841
อันนี้สามารถเปลี่ยนเป็นภาษาไทยได้ ใน '

2281
02:32:02.842 --> 02:32:06.842
นะคะ ประกาศตัวแปร

2282
02:32:06.843 --> 02:32:10.843
ชื่อ Win_text

2283
02:32:10.846 --> 02:32:14.846
win_text พิมพ์มาก่อนนะคะ

2284
02:32:14.847 --> 02:32:18.847
เพราะเป็นตัวแปรของเราเองที่สร้างขึ้น

2285
02:32:18.848 --> 02:32:22.848
Win_text=

2286
02:32:22.851 --> 02:32:26.851

2287
02:32:26.852 --> 02:32:30.852
=

2288
02:32:30.855 --> 02:32:34.855
' ใส่ข้อความได้ ก็คือ...

2289
02:32:34.855 --> 02:32:38.855

2290
02:32:38.857 --> 02:32:42.857
ผู้เล่น player เมื่อแปลเป็นไทย

2291
02:32:42.858 --> 02:32:46.858
ก็คือผู้เล่น

2292
02:32:46.859 --> 02:32:50.859

2293
02:32:50.860 --> 02:32:54.860
ในภาษาไทยก็คือผู้เล่นนะคะ

2294
02:32:54.861 --> 02:32:58.861
แล้วก็ +

2295
02:32:58.862 --> 02:33:02.862
String s-t

2296
02:33:02.863 --> 02:33:06.863

2297
02:33:06.864 --> 02:33:10.864
เลือก Class_string

2298
02:33:10.865 --> 02:33:14.865
ที่ตามด้วย winner

2299
02:33:14.865 --> 02:33:18.865
วงเล็บค่ะ วงเล็บเปิดวงเล็บปิด

2300
02:33:18.867 --> 02:33:22.867
แล้วก็พิมพ์ winner ลงไป เห็นไหมคะ พิมพ์

2301
02:33:22.868 --> 02:33:26.868
Statement winner ลงไป

2302
02:33:26.869 --> 02:33:30.869
แล้วก็ + ด้วย ข้อความ

2303
02:33:30.869 --> 02:33:34.869
ปกตินะคะ ข้อความที่เราต้องการให้โชว์ แล้วก็เครื่องหมาย

2304
02:33:34.870 --> 02:33:38.870
+ เครื่องหมาย ' แล้วก็

2305
02:33:38.872 --> 02:33:42.872
ผู้เล่นคนที่

2306
02:33:42.873 --> 02:33:46.873
ผู้เล่นคนที่อันนี้ ใช่คำว่า

2307
02:33:46.873 --> 02:33:50.873
ผู้เล่น

2308
02:33:50.874 --> 02:33:54.874

2309
02:33:54.875 --> 02:33:58.875

2310
02:33:58.887 --> 02:34:02.887
ภาษาไทยแปลว่า ชนะ

2311
02:34:02.889 --> 02:34:06.889
นะคะ win แปลว่า ชนะแล้ว

2312
02:34:06.890 --> 02:34:10.890
ต้องการให้มีเว้นวรรคข้างหลัง ก็ใส่...

2313
02:34:10.891 --> 02:34:14.891
นะคะ

2314
02:34:14.892 --> 02:34:18.892
นะคะ

2315
02:34:18.893 --> 02:34:22.893
สิ่ง

2316
02:34:22.895 --> 02:34:26.895
ที่จะทำต่อมา ก็คือมาประกาศตัวแปร font

2317
02:34:26.896 --> 02:34:30.896
กำหนดรูปแบบ font ของเรา

2318
02:34:30.898 --> 02:34:34.898

2319
02:34:34.899 --> 02:34:38.899
ขาดอะไร อะไรหาย

2320
02:34:38.900 --> 02:34:42.900

2321
02:34:42.903 --> 02:34:46.903
พิมพ์ font f-o-n-t

2322
02:34:46.905 --> 02:34:50.905
มาที่ประกาศตัวแปรนะคะ พิมพ์

2323
02:34:50.906 --> 02:34:54.906
font =

2324
02:34:54.907 --> 02:34:58.907
pygame.font

2325
02:34:58.908 --> 02:35:02.908
เรียกใช้ฟังก์ชัน pygame.font

2326
02:35:02.909 --> 02:35:06.909
pygame

2327
02:35:06.910 --> 02:35:10.910
pygame_module

2328
02:35:10.911 --> 02:35:14.911
.font

2329
02:35:14.912 --> 02:35:18.912
f เลือก font module

2330
02:35:18.913 --> 02:35:22.913
เลือก .sys

2331
02:35:22.914 --> 02:35:26.914
sys

2332
02:35:26.915 --> 02:35:30.915
เลือก SysFont เห็นไหมคะ เลือกฟังก์ชัน SysFont

2333
02:35:30.916 --> 02:35:34.916
ใส่วงเล็บเข้าไป ค่าก็คือ

2334
02:35:34.916 --> 02:35:38.916
none

2335
02:35:38.917 --> 02:35:42.917
คีย์เวิร์ดคือ non กับ 40

2336
02:35:42.918 --> 02:35:46.918
40

2337
02:35:46.919 --> 02:35:50.919
นะคะ

2338
02:35:50.920 --> 02:35:54.920
กำหนดค่าให้ font ก็จะ

2339
02:35:54.921 --> 02:35:58.921
เล่นได้เลย non เป็น 40

2340
02:35:58.922 --> 02:36:02.922
มีค่าเป็น 40 นะคะ

2341
02:36:02.923 --> 02:36:06.923

2342
02:36:06.924 --> 02:36:10.924

2343
02:36:10.926 --> 02:36:14.926
เมื่อกี้

2344
02:36:14.926 --> 02:36:18.926
แสดงข้อความ

2345
02:36:18.927 --> 02:36:22.927
เมื่อกี้ ตอนนี้ เราประกาศตัวแปร แล้วให้แสดงข้อความบอก

2346
02:36:22.928 --> 02:36:26.928
แล้วเราให้มันประกาศตัวแปรว่าผู้เล่น

2347
02:36:26.930 --> 02:36:30.930
ชนะแล้วเราไปประกาศตัวแปร เสร็จแล้วขั้นต่อไป

2348
02:36:30.931 --> 02:36:34.931
ก็คือเราจะทำกรอบให้ข้อความของเรา ก็คือตัวที่ 2 นี่

2349
02:36:34.932 --> 02:36:38.932
เห็นไหม Win image

2350
02:36:38.933 --> 02:36:42.933
เรียกใช้ font ที่ประกา

2351
02:36:42.935 --> 02:36:46.935
เมื่อกี้ประกาศตัวแปรหรือยัง ใบเตยประกาศหรือยัง

2352
02:36:46.935 --> 02:36:50.935

2353
02:36:50.937 --> 02:36:54.937

2354
02:36:54.938 --> 02:36:58.938
พอประกาศตัวแปรตัวนี้เสร็จเราก็จะมาสร้าง

2355
02:36:58.938 --> 02:37:02.938
ตัวต่อไป ก็คือตัวกรอบ

2356
02:37:02.939 --> 02:37:06.939
บรรทัดที่ 2 win_img

2357
02:37:06.940 --> 02:37:10.940
ฟอนต์ที่เราสร้างไว้เมื่อกี้

2358
02:37:10.941 --> 02:37:14.941
.wintex

2359
02:37:14.943 --> 02:37:18.943

2360
02:37:18.945 --> 02:37:22.945
ก่อนอื่น...

2361
02:37:22.946 --> 02:37:26.946
โอ.เค. นะ ต้องเป็นอันนี้ก่อน

2362
02:37:26.948 --> 02:37:30.948
win img

2363
02:37:30.948 --> 02:37:34.948
เราก็จะกลับมาที่บรรทัด

2364
02:37:34.949 --> 02:37:38.949
มีของเรา

2365
02:37:38.950 --> 02:37:42.950
นี่ ๆ บรรทัดที่ win draw winner นี่

2366
02:37:42.951 --> 02:37:46.951
draw_winner เราก็จะเปลี่ยนเป็น W

2367
02:37:46.952 --> 02:37:50.952
image ทำไมเป็นตัวใหญ่

2368
02:37:50.953 --> 02:37:54.953
ปลด Caps Lock ก่อน พิมพ์ win

2369
02:37:54.956 --> 02:37:58.956

2370
02:37:58.957 --> 02:38:02.957
Win_img =

2371
02:38:02.957 --> 02:38:06.957

2372
02:38:06.958 --> 02:38:10.958
เท่ากับ

2373
02:38:10.959 --> 02:38:14.959
เรียกใช้ ฟอนต์ที่เราประกาศไป

2374
02:38:14.960 --> 02:38:18.960
o เรียก fontstatement ที่เรากำหนดไว้

2375
02:38:18.961 --> 02:38:22.961
.render

2376
02:38:22.962 --> 02:38:26.962
ฟังก์ชัน พอขึ้นฟังก์ชัน render

2377
02:38:26.963 --> 02:38:30.963
ในวงเล็บตามด้วย

2378
02:38:30.965 --> 02:38:34.965
wintext ตามด้วยค่า true

2379
02:38:34.966 --> 02:38:38.966
blue

2380
02:38:38.969 --> 02:38:42.969
เลือก win_text นะคะ แล้วก็

2381
02:38:42.971 --> 02:38:46.971
colon แล้วก็ค่า true

2382
02:38:46.973 --> 02:38:50.973
เลือก true คีย์เวิลด์ colon

2383
02:38:50.974 --> 02:38:54.974
แล้วก็ตามด้วย

2384
02:38:54.976 --> 02:38:58.976
ค่าสี b-l-u-e

2385
02:38:58.979 --> 02:39:02.979
พิมพ์เอา เพราะเรายังไม่ประกาศตัวแปรสีน้ำเงิน

2386
02:39:02.982 --> 02:39:06.982

2387
02:39:06.982 --> 02:39:10.982
พอ blue เสร็จแล้ว

2388
02:39:10.984 --> 02:39:14.984
สิ่งที่จะทำต่อไป ก็คือนี่

2389
02:39:14.985 --> 02:39:18.985
พอพิมพ์ถึง blue เสร็จ เราก็จะมา

2390
02:39:18.987 --> 02:39:22.987
ประกาศตัวแปรค่าสีน้ำเงินตรงสำแหน่งสี

2391
02:39:22.988 --> 02:39:26.988
เคยประกาศไปแล้ว

2392
02:39:26.988 --> 02:39:30.988
blue b-l

2393
02:39:30.989 --> 02:39:34.989
ขึ้นมาแล้วกด Enter

2394
02:39:34.990 --> 02:39:38.990
ค่าสี คือ อยู่ในวงเล็บ

2395
02:39:38.991 --> 02:39:42.991
ค่าของ blue

2396
02:39:42.996 --> 02:39:46.996
ให้เริ่มที่

2397
02:39:46.999 --> 02:39:50.999
00 กับ 255

2398
02:39:51.002 --> 02:39:55.002
ก็คือมี 0

2399
02:39:55.003 --> 02:39:59.003
0, แล้วก็ตามด้วย

2400
02:39:59.005 --> 02:40:03.005
255 255

2401
02:40:03.006 --> 02:40:07.006
เมื่อประกาศตัวแปรตรงนี้เสร็จ

2402
02:40:07.007 --> 02:40:11.007
ตรงนี้เสร็จ

2403
02:40:11.008 --> 02:40:15.008
เราก็จะเรียกใช้

2404
02:40:15.009 --> 02:40:19.009
ไอ้ตัว screen_build เห็นไหมคะ

2405
02:40:19.010 --> 02:40:23.010
นะคะ

2406
02:40:23.011 --> 02:40:27.011

2407
02:40:27.012 --> 02:40:31.012
พอกำหนด

2408
02:40:31.013 --> 02:40:35.013
ตัวแปรสีนี้แล้ว

2409
02:40:35.015 --> 02:40:39.015
มาที่ตำแหน่งเดิม draw_winner เราเหมือนเดิม

2410
02:40:39.017 --> 02:40:43.017
แล้วก็พิมพ์ screen

2411
02:40:43.018 --> 02:40:47.018
statement

2412
02:40:47.018 --> 02:40:51.018
build เห็นไหมคะ

2413
02:40:51.020 --> 02:40:55.020
build ฟังก์ชัน

2414
02:40:55.021 --> 02:40:58.776

2415
02:40:59.022 --> 02:41:03.022

2416
02:41:03.023 --> 02:41:07.023
ตามด้วย win_img นะคะ

2417
02:41:07.026 --> 02:41:11.026
เราลบ double cod ออก

2418
02:41:11.028 --> 02:41:15.028
ออกแล้วก็ตามด้วย win เราเลือก win_

2419
02:41:15.029 --> 02:41:19.029
image statement แล้วก็ใส่

2420
02:41:19.030 --> 02:41:23.030
:

2421
02:41:23.031 --> 02:41:27.031
แล้วก็วงเล็บเปิด วงเล็บปิดอีก 1 ครั้ง

2422
02:41:27.032 --> 02:41:31.032
อีกหนึ่งครั้ง วงเล็บเปิดวงเล็บปิด

2423
02:41:31.034 --> 02:41:35.034
ในวงเล็บนั้นเราจะใส่

2424
02:41:35.035 --> 02:41:39.035
บอกว่าความกว้าง screen // 2

2425
02:41:39.036 --> 02:41:43.036
ก็คือ มันจะคำนวณจาก Screen

2426
02:41:43.037 --> 02:41:47.037
เราสร้างไวมาหารด้วย 2 แล้ว - ด้วย 100

2427
02:41:47.038 --> 02:41:51.038
แล้วก็คำนวณจาก

2428
02:41:51.039 --> 02:41:55.039
ความสูงของ screen เรา หารด้วย 2 - 50

2429
02:41:55.040 --> 02:41:59.040
ก็จะได้กรอบข้อความคือ

2430
02:41:59.041 --> 02:42:03.041

2431
02:42:03.042 --> 02:42:07.042
screen_y ก่อนใช่ไหม

2432
02:42:07.043 --> 02:42:11.043
เลือกอะไรก่อน เลือก screen_width ก่อน

2433
02:42:11.046 --> 02:42:15.046

2434
02:42:15.047 --> 02:42:19.047
screen_width

2435
02:42:19.049 --> 02:42:23.049
หารใช่ไหมคะ

2436
02:42:23.050 --> 02:42:27.050
// 2

2437
02:42:27.051 --> 02:42:31.051
แล้วก็ลบออกเท่าไร -100

2438
02:42:31.052 --> 02:42:35.052
ส่วนอีกตัวหนึ่ง ก็คือ screen_heig

2439
02:42:35.053 --> 02:42:39.053
height screen height

2440
02:42:39.053 --> 02:42:43.053
// 2 เหมือนกัน

2441
02:42:43.054 --> 02:42:47.054
แล้วก็ลบ 50

2442
02:42:47.055 --> 02:42:51.055
ลบ 50 ความสูงลบออกแค่ 50

2443
02:42:51.056 --> 02:42:55.056

2444
02:42:55.057 --> 02:42:59.057

2445
02:42:59.058 --> 02:43:03.058

2446
02:43:03.061 --> 02:43:07.061
กรอบ

2447
02:43:07.062 --> 02:43:11.062
ข้อความน่ะค่ะ ตัวนี้มันจะวาดกรอบข้อความให้

2448
02:43:11.066 --> 02:43:15.066
สิ่งที่จะทำต่อมา ก็คือ

2449
02:43:15.066 --> 02:43:19.066
ไปเรียกใช้ วาด

2450
02:43:19.068 --> 02:43:23.068
ว่าพื้นที่นี้

2451
02:43:23.069 --> 02:43:27.069
สีน้ำเงินนี่ ขึ้นมา

2452
02:43:27.069 --> 02:43:31.069

2453
02:43:31.070 --> 02:43:35.070
ให้วาดสี่เหลี่ยมสีน้ำเงิน

2454
02:43:35.070 --> 02:43:39.070
สี่เหลี่ยมผืนผ้า

2455
02:43:39.071 --> 02:43:43.071
กรอบที่เป็นสีเขียวขึ้นมา

2456
02:43:43.072 --> 02:43:47.072
มันจะอยู่ก่อน screen_build

2457
02:43:47.073 --> 02:43:51.073
นะคะ พิมพ์ก่อน บรรทัดนี้

2458
02:43:51.074 --> 02:43:55.074
เลือก pygame module.

2459
02:43:55.075 --> 02:43:59.075
.draw

2460
02:43:59.076 --> 02:44:03.076
draw.rect

2461
02:44:03.077 --> 02:44:07.077
เห็นไหม มันจะมีฟังก์ชัน draw_line

2462
02:44:07.078 --> 02:44:11.078
draw line, draw

2463
02:44:11.079 --> 02:44:15.079
rangetangle

2464
02:44:15.081 --> 02:44:19.081
r-e-c-t นะคะ rectan

2465
02:44:19.082 --> 02:44:23.082
ก็คือ สี่เหลี่ยมผืนผ้า

2466
02:44:23.083 --> 02:44:27.083
ตามด้วยค่า

2467
02:44:27.083 --> 02:44:31.083
screen

2468
02:44:31.084 --> 02:44:35.084
screen_width

2469
02:44:35.085 --> 02:44:39.085
หาร 2 อันนี้ก็อบมาก็ได้นะ

2470
02:44:39.086 --> 02:44:43.086

2471
02:44:43.087 --> 02:44:47.087
ลืมระบุ

2472
02:44:47.088 --> 02:44:51.088
เขตพื้นที่ก่อน แล้วก็ใส่สีก่อน ขาดไปท่อนหนึ่ง

2473
02:44:51.089 --> 02:44:55.089
ใส่ Screen เฉย ๆ

2474
02:44:55.090 --> 02:44:59.090
เรียกใช้ลบ screen_width ออกก่อน

2475
02:44:59.092 --> 02:45:03.092

2476
02:45:03.093 --> 02:45:07.093
เลือก screen statement เฉย ๆ

2477
02:45:07.095 --> 02:45:11.095
ตามด้วย สี สีที่เราเรียกใช้ก็คือ

2478
02:45:11.097 --> 02:45:15.097
สีเขียว green statement

2479
02:45:15.098 --> 02:45:19.098
แล้วค่อยมาระบุตำแหน่ง

2480
02:45:19.099 --> 02:45:23.099
screen_width ก๊อบมาได้

2481
02:45:23.101 --> 02:45:27.101
ก็อบจากตัวนี้

2482
02:45:27.102 --> 02:45:31.102
ก๊อปเลย

2483
02:45:31.103 --> 02:45:35.103
ก๊อบปี้

2484
02:45:35.105 --> 02:45:39.105

2485
02:45:39.106 --> 02:45:43.106

2486
02:45:43.107 --> 02:45:47.107
ใส่ colon ก่อนแล้วค่อยวางนะคะ

2487
02:45:47.112 --> 02:45:51.112
วางที่ก๊อบมาเมื่อกี้

2488
02:45:51.113 --> 02:45:55.113
เปลี่ยนค่า

2489
02:45:55.119 --> 02:45:59.119
ข้างใน เปลี่ยนแค่

2490
02:45:59.120 --> 02:46:03.120
ตรงตัวหลัง

2491
02:46:03.121 --> 02:46:07.121
แล้วก็เพิ่มค่า 200 กับ 50 เข้าไป

2492
02:46:07.123 --> 02:46:11.123
เปลี่ยนเป็น 60

2493
02:46:11.124 --> 02:46:15.124

2494
02:46:15.125 --> 02:46:19.125
แล้วก็เพิ่มค่า 200 นั้น เพิ่มค่าจากความยาวน่ะ

2495
02:46:19.126 --> 02:46:23.126

2496
02:46:23.127 --> 02:46:27.127
แล้วก็ความสูงของไอ้ตัวกรอบ

2497
02:46:27.128 --> 02:46:31.128
200 กับ 50

2498
02:46:31.129 --> 02:46:35.129

2499
02:46:35.130 --> 02:46:39.130

2500
02:46:39.131 --> 02:46:43.131

2501
02:46:43.132 --> 02:46:47.132
ก็จะได้ตัวที่มันเป็น

2502
02:46:47.135 --> 02:46:51.135
เป็นตัวนี้นะคะ หลังจากตัวนี้ดู

2503
02:46:51.136 --> 02:46:55.136

2504
02:46:55.137 --> 02:46:59.137
นี่ เห็นไหม

2505
02:46:59.139 --> 02:47:03.139
ไอ้สีเขียว ๆ ข้างหลังนี้ ได้พื้นที่สีเขียว ๆ

2506
02:47:03.140 --> 02:47:07.140
ข้างหลังน่ะขึ้นมา

2507
02:47:07.141 --> 02:47:11.141
ไอ้นี่ Run ได้ ไอ้ตัวนั้น Run ไม่ได้เลย

2508
02:47:11.142 --> 02:47:15.142
คืออะไร

2509
02:47:15.142 --> 02:47:19.142
พอได้กรอบแล้วนะคะ

2510
02:47:19.143 --> 02:47:23.143
กรอบแล้วนะคะ ตรงนี้เรามา

2511
02:47:23.145 --> 02:47:27.145
พิมพ์ winner ใส่เข้าไป

2512
02:47:27.146 --> 02:47:31.146
ตรงฟังก์ชันที่เราสร้างไว้

2513
02:47:31.147 --> 02:47:35.147
เพราะตอนแรกมันไม่มี เราเรียกใช้มัน

2514
02:47:35.148 --> 02:47:39.148
มันไปกดโดนอะไรนี่

2515
02:47:39.150 --> 02:47:43.150
พิมพ์ w ขึ้นมา

2516
02:47:43.151 --> 02:47:47.151
แล้วก็เลือก winner เห็นไหม

2517
02:47:47.153 --> 02:47:51.153
ก็จะเรียก นี่ ๆ ไอ้อันนี้วินเนอร์นี่

2518
02:47:51.154 --> 02:47:55.154
ขึ้นมา เรียกตัวแปร

2519
02:47:55.154 --> 02:47:59.154
winner มานะคะ

2520
02:47:59.157 --> 02:48:03.157
เรียกตัวแปร winner มา

2521
02:48:03.158 --> 02:48:07.158

2522
02:48:07.158 --> 02:48:11.158
เสร็จแล้วให้มันเช็ก

2523
02:48:11.159 --> 02:48:15.159
เช็กว่าถ้า game_over นี่

2524
02:48:15.159 --> 02:48:19.159
จริง ก็คือเล่นจบเกมจริงนี่ draw_winner จะต้องขึ้น

2525
02:48:19.161 --> 02:48:23.161
เพื่อแสดงว่าใครคือผู้ชนะ

2526
02:48:23.161 --> 02:48:27.161
มันจะอยู่ต่อจากบรรทัดที่มี che

2527
02:48:27.163 --> 02:48:31.163

2528
02:48:31.164 --> 02:48:35.164
เราจะเอาไปไว้ตำแหน่งนี้นะคะ

2529
02:48:35.165 --> 02:48:39.165
มันจะอยู่ระยะเยื้อง มันจะอยู่

2530
02:48:39.166 --> 02:48:43.166
อยู่...

2531
02:48:43.167 --> 02:48:47.167
อยู่ก่อน

2532
02:48:47.169 --> 02:48:51.169
อยู่ตรงกับ display ระยะเยื้องอยู่ตรงกับ display

2533
02:48:51.169 --> 02:48:55.169
อยู่ตรงกับตัวนี้

2534
02:48:55.170 --> 02:48:59.170
เพราะฉะนั้น ใส่ if กำหนดเงื่อนไข

2535
02:48:59.171 --> 02:49:03.171
if condition

2536
02:49:03.172 --> 02:49:07.172
เช็กอะไร เช็ก game_over

2537
02:49:07.172 --> 02:49:11.172
ว่า

2538
02:49:11.173 --> 02:49:15.173
เป็นจริงหรือเปล่า จบเกม

2539
02:49:15.174 --> 02:49:19.174
จริงไหม ไหน

2540
02:49:19.175 --> 02:49:23.175
เห็นไหมคะ game_over = True ปุ๊บ

2541
02:49:23.176 --> 02:49:27.176
ก็จะไปเรียกใช้ draw winner

2542
02:49:27.177 --> 02:49:31.177
draw_winner

2543
02:49:31.178 --> 02:49:35.178
เรียกใช้ฟังก์ชันเลย

2544
02:49:35.179 --> 02:49:39.179
draw_winner

2545
02:49:39.181 --> 02:49:43.181
วงเล็บ winner ของเรานะคะ

2546
02:49:43.182 --> 02:49:47.182
winner ของเรา

2547
02:49:47.183 --> 02:49:51.183
ทำไมไม่เรียก ปกติเรียกแล้วขึ้นเลยนี่

2548
02:49:51.184 --> 02:49:55.184
เอาใหม่

2549
02:49:55.185 --> 02:49:59.185

2550
02:49:59.186 --> 02:50:03.186

2551
02:50:03.187 --> 02:50:07.187

2552
02:50:07.188 --> 02:50:11.188

2553
02:50:11.190 --> 02:50:15.190

2554
02:50:15.191 --> 02:50:19.191

2555
02:50:19.193 --> 02:50:23.193

2556
02:50:23.195 --> 02:50:27.195

2557
02:50:27.197 --> 02:50:31.197

2558
02:50:31.199 --> 02:50:35.199
จะเป็นอย่างนี้นะคะ

2559
02:50:35.200 --> 02:50:39.200

2560
02:50:39.201 --> 02:50:43.201
เช็กว่า game_over ใหม่ ถ้าใช่

2561
02:50:43.204 --> 02:50:47.204
เรียกใช้ ฟังก์ชันนี้ ลอง Run ดู

2562
02:50:47.205 --> 02:50:51.205
ขึ้นไหม

2563
02:50:51.206 --> 02:50:55.206

2564
02:50:55.209 --> 02:50:59.209
เดี๋ยวค่อย Run ทีเดียวเลย ไปต่อ ๆ

2565
02:50:59.210 --> 02:51:03.210
ทำกรอบให้สร้างข้อความ Play Again

2566
02:51:03.211 --> 02:51:07.211
เล่นอีกครั้งหนึ่ง เล่นซ้ำ เล่นใหม่

2567
02:51:07.212 --> 02:51:11.212
Again_text นะคะ ตัวนี้คือตัวนี้

2568
02:51:11.213 --> 02:51:15.213

2569
02:51:15.214 --> 02:51:19.214
จะมีตัวแปรชื่อ

2570
02:51:19.215 --> 02:51:23.215
ตัวแปรชื่อ again Text

2571
02:51:23.216 --> 02:51:27.216
ตัวแปรที่ชื่อ again_image

2572
02:51:27.218 --> 02:51:31.218
กรอบข้อความนั้นนะคะ แล้วก็

2573
02:51:31.219 --> 02:51:35.219
แล้วก็ตัวกรอบ

2574
02:51:35.219 --> 02:51:39.126
นะคะ

2575
02:51:39.220 --> 02:51:43.220
ทีเดียวเลย

2576
02:51:43.221 --> 02:51:47.221

2577
02:51:47.225 --> 02:51:51.225
ตัวนี้เป็นตัวแปร

2578
02:51:51.231 --> 02:51:55.231
เพราะฉะนั้นพิมพ์ใหม่

2579
02:51:55.232 --> 02:51:59.232

2580
02:51:59.233 --> 02:52:03.233

2581
02:52:03.236 --> 02:52:07.236

2582
02:52:07.238 --> 02:52:11.238
= นะคะ แล้วก็เครื่องหมาย

2583
02:52:11.240 --> 02:52:15.240
คำพูด หรือ '

2584
02:52:15.240 --> 02:52:19.240
=

2585
02:52:19.242 --> 02:52:23.242
เล่น

2586
02:52:23.243 --> 02:52:27.243

2587
02:52:27.244 --> 02:52:31.244

2588
02:52:31.245 --> 02:52:35.245

2589
02:52:35.246 --> 02:52:39.246

2590
02:52:39.247 --> 02:52:43.247

2591
02:52:43.249 --> 02:52:47.249
again

2592
02:52:47.251 --> 02:52:51.251
_img

2593
02:52:51.252 --> 02:52:55.252

2594
02:52:55.253 --> 02:52:59.253

2595
02:52:59.254 --> 02:53:03.254
ตัวนี้นะคะ ตัวนี้

2596
02:53:03.255 --> 02:53:07.255
ไปก๊อบจาก font นี่ font.render

2597
02:53:07.256 --> 02:53:11.256
เห็นไหมคะ ก็อบจากตัวนี้มาได้

2598
02:53:11.257 --> 02:53:15.257
ได้

2599
02:53:15.259 --> 02:53:19.259

2600
02:53:19.260 --> 02:53:23.260

2601
02:53:23.262 --> 02:53:27.262
แต่เปลี่ยนตรง Win_text เป็น

2602
02:53:27.266 --> 02:53:31.266
เปลี่ยนตรงนี้จาก win_text เป็น

2603
02:53:31.267 --> 02:53:35.267
again again_text

2604
02:53:35.268 --> 02:53:39.268
ของเราแทน

2605
02:53:39.270 --> 02:53:43.270
ก็อบจากตรงนี้ได้เลย ตัวเดียวกัน

2606
02:53:43.270 --> 02:53:47.270
กรอบเหมือนกันเช่นเดียวกันกับ

2607
02:53:47.270 --> 02:53:51.270
ก๊อบตรงนี้เหมือนกัน screen_build

2608
02:53:51.271 --> 02:53:55.271
ก๊อบมาเลย เพราะมันคือขนาดเดียวกันเลย เห็นไหม

2609
02:53:55.272 --> 02:53:59.272
เปลี่ยนค่า

2610
02:53:59.273 --> 02:54:03.273
นะคะ

2611
02:54:03.274 --> 02:54:07.274

2612
02:54:07.275 --> 02:54:11.275
นี่ ก๊อบ screen.blit มาเลย

2613
02:54:11.276 --> 02:54:15.276
ให้มันเร็วขึ้น

2614
02:54:15.277 --> 02:54:19.204

2615
02:54:19.278 --> 02:54:23.278
ค่าอะไรบ้าง

2616
02:54:23.279 --> 02:54:27.279

2617
02:54:27.281 --> 02:54:31.281
เปลี่ยนค่าตรง

2618
02:54:31.285 --> 02:54:35.285
ตรง Win_img เป็น

2619
02:54:35.286 --> 02:54:39.286
screen_width s

2620
02:54:39.286 --> 02:54:43.286
เป็นจาก -50 เป็น

2621
02:54:43.288 --> 02:54:47.288
+10 แค่นั้นเอง

2622
02:54:47.289 --> 02:54:51.289
เปลี่ยนตรงนี้

2623
02:54:51.290 --> 02:54:55.290
ลบออกแล้วก็พิมพ์ again

2624
02:54:55.292 --> 02:54:59.292
แล้วเลือก again_img นะคะ

2625
02:54:59.294 --> 02:55:03.294
ลบ 100 เปลี่ยนเป็น 80

2626
02:55:03.294 --> 02:55:07.294
-50 เป็น + อะไรนะ

2627
02:55:07.295 --> 02:55:11.295
+ 10

2628
02:55:11.296 --> 02:55:15.296
เปลี่ยนค่าแค่ตรงนี้นะคะ

2629
02:55:15.297 --> 02:55:19.297
เห็นไหมคะ จะไล่ให้สุด

2630
02:55:19.298 --> 02:55:23.298
ไปให้สุด สุดขอบกันไปเลย

2631
02:55:23.299 --> 02:55:27.299
ก็

2632
02:55:27.300 --> 02:55:31.300
ประกาศตัวแปรชื่อ

2633
02:55:31.302 --> 02:55:35.302
again

2634
02:55:35.302 --> 02:55:39.302
จะกำหนดค่าสี่เหลี่ยม

2635
02:55:39.304 --> 02:55:43.304

2636
02:55:43.305 --> 02:55:47.305
ไปไหนแล้ว ๆ

2637
02:55:47.305 --> 02:55:51.305
ต่อจากตรงฟอนต์

2638
02:55:51.306 --> 02:55:55.306
นี่นะคะ

2639
02:55:55.308 --> 02:55:59.308
พิมพ์ ใช้พิมพ์นะคะ

2640
02:55:59.309 --> 02:56:03.309
เพราะเป็นตัวแปร again

2641
02:56:03.310 --> 02:56:07.310
again_

2642
02:56:07.311 --> 02:56:11.311
recg

2643
02:56:11.313 --> 02:56:15.313
regetangle

2644
02:56:15.314 --> 02:56:19.314
จะกำหนดค่าให้

2645
02:56:19.315 --> 02:56:23.315
นะคะ screen y

2646
02:56:23.316 --> 02:56:27.316
อันนี้เราไปก็อบค่าจากตัวนี้ได้

2647
02:56:27.317 --> 02:56:31.317

2648
02:56:31.318 --> 02:56:35.318

2649
02:56:35.319 --> 02:56:39.319
ตัวนี้เห็นไหม ค่าเดียวกัน

2650
02:56:39.320 --> 02:56:43.320
ตัวนี้เห็นไหม เป็นตัวเดียวกันเลย

2651
02:56:43.321 --> 02:56:47.321

2652
02:56:47.323 --> 02:56:51.323
ก๊อบปี้เลยนะคะ

2653
02:56:51.325 --> 02:56:55.325
นี่

2654
02:56:55.327 --> 02:56:59.327
เอามา

2655
02:56:59.328 --> 02:57:03.328
ใส่ตรงนี้

2656
02:57:03.330 --> 02:57:07.330

2657
02:57:07.331 --> 02:57:11.331
ก่อนอื่นพิมพ์ arec ก่อน

2658
02:57:11.332 --> 02:57:15.001

2659
02:57:15.334 --> 02:57:19.334

2660
02:57:19.335 --> 02:57:23.335
มันเป็นคลาสนะคะ re

2661
02:57:23.337 --> 02:57:27.337
re เลือกคลาส

2662
02:57:27.338 --> 02:57:31.338
re ก็คือตัวนี้ ตัสมหญ่

2663
02:57:31.339 --> 02:57:35.339
นะคะ แล้วก็

2664
02:57:35.341 --> 02:57:39.341
วาง screen_width

2665
02:57:39.342 --> 02:57:43.342
screen y ค่า

2666
02:57:43.344 --> 02:57:47.344
80 แล้วก็ 160 50

2667
02:57:47.346 --> 02:57:51.346
เปลี่ยนค่าตรงนี้เป็น 80

2668
02:57:51.347 --> 02:57:55.347
ตัวนี้เป็น

2669
02:57:55.347 --> 02:57:59.347
ตัวนี้เป็นลบเท่าไรนิ

2670
02:57:59.347 --> 02:58:03.347
หาร 2 หาร 2

2671
02:58:03.348 --> 02:58:07.348
แล้วก็

2672
02:58:07.349 --> 02:58:11.349
ไม่มีลบนะคะ ตัวนี้ไม่ต้องลบ

2673
02:58:11.351 --> 02:58:15.351
ตามด้วย 160 กับ 50

2674
02:58:15.352 --> 02:58:19.352
-200 ออก เอา 50

2675
02:58:19.353 --> 02:58:23.353
โอ.เค.

2676
02:58:23.354 --> 02:58:27.354
ประกาศตัวแปรสำหรับ

2677
02:58:27.355 --> 02:58:31.355
สี่เหลี่ยมที่ 2

2678
02:58:31.356 --> 02:58:35.356
เมื่อ ประกาศแล้วเอามา

2679
02:58:35.356 --> 02:58:39.356
ใส่บรรทัดก่อนหน้า screen_build

2680
02:58:39.357 --> 02:58:43.357
นี่

2681
02:58:43.357 --> 02:58:47.357
ก็คือ เลือกใช้ pygame ต่อ แล้วก็เลือก

2682
02:58:47.358 --> 02:58:51.358
screen นะคะ

2683
02:58:51.359 --> 02:58:55.359
ตรงก่อน screen_build

2684
02:58:55.360 --> 02:58:59.360
เลือก pygame module

2685
02:58:59.361 --> 02:59:03.361
.draw

2686
02:59:03.362 --> 02:59:07.362
.recgtencle

2687
02:59:07.363 --> 02:59:11.363

2688
02:59:11.364 --> 02:59:15.364

2689
02:59:15.366 --> 02:59:19.366
แล้วก็กำหนด Screen

2690
02:59:19.368 --> 02:59:23.368
screen statement ตามด้วยสี

2691
02:59:23.369 --> 02:59:27.369
green_statement เหมือนเดิมนะคะ

2692
02:59:27.370 --> 02:59:31.370
แล้วก็ตามด้วย

2693
02:59:31.371 --> 02:59:35.371
อีกตัว ตัวสุดท้าย ตัวที่เราสร้าง

2694
02:59:35.371 --> 02:59:39.371
again

2695
02:59:39.373 --> 02:59:43.373
สี่เหลี่ยมผืนผ้าอีกตัวหนึ่ง

2696
02:59:43.374 --> 02:59:47.374
ก็คือตัวแปร again

2697
02:59:47.375 --> 02:59:51.375
again_img,

2698
02:59:51.376 --> 02:59:55.376
โอ.เค. เสร็จหรือยัง

2699
02:59:55.377 --> 02:59:59.377

2700
02:59:59.378 --> 03:00:03.378
แล้วลองเดี๋ยวไปทดสอบ

2701
03:00:03.379 --> 03:00:07.379

2702
03:00:07.381 --> 03:00:11.381
เพิ่ม เพิ่ม Even ตัวนี้

2703
03:00:11.381 --> 03:00:15.381
event ตรงนี้ เงื่อนไขเมื่อคลิกนี่

2704
03:00:15.382 --> 03:00:19.382
ไม่ได้ทำใหม่นะคะ เดี๋ยวเราจะไปก๊อบ มันอยู่ตรงไหน เดี๋ยวเราจะไปดู

2705
03:00:19.384 --> 03:00:23.384
ตัวนี้จะอยู่

2706
03:00:23.387 --> 03:00:27.387
ตรง เราจะเอา

2707
03:00:27.388 --> 03:00:31.388
ตัวเมื่อกี้มาใส่ตรงตำแหน่งนี้

2708
03:00:31.389 --> 03:00:35.389
จากตรงนี้นี่ไง เห็นไหม

2709
03:00:35.390 --> 03:00:39.390
เห็นเปล่า

2710
03:00:39.391 --> 03:00:43.391
ถึง pos game เห็นไหมคะ

2711
03:00:43.392 --> 03:00:47.392
เราจะไปก๊อบที่

2712
03:00:47.393 --> 03:00:51.393
if event เมาส์คลิกนี่เห็นไหม

2713
03:00:51.394 --> 03:00:55.394
ก็อบมาเลยไม่ต้องพิมพ์ใหม่

2714
03:00:55.395 --> 03:00:59.395
Copy แล้วก็เอามาวางตำแหน่งนี้ได้เลย

2715
03:00:59.395 --> 03:01:03.395
เห็นไหมคะ

2716
03:01:03.397 --> 03:01:07.397
แต่จัดให้ตำแหน่งของ if มันอยู่ตรง draw_winner

2717
03:01:07.399 --> 03:01:11.399
แค่นั้นเอง

2718
03:01:11.399 --> 03:01:15.399
statement ให้มันตรงกับ draw

2719
03:01:15.400 --> 03:01:19.400
winner เห็นไหม โอ.เค. นะคะ

2720
03:01:19.401 --> 03:01:23.401
ก็จะได้ตรง

2721
03:01:23.402 --> 03:01:27.402
คลิก เมื่อมันคลิกเมาส์ จะได้ค่าอะไร

2722
03:01:27.403 --> 03:01:31.403
จะได้ค่าอะไร สิ่งที่จะเพิ่ม

2723
03:01:31.404 --> 03:01:35.404
ก็คือให้ reset ตัวแปร ตัวนี้

2724
03:01:35.405 --> 03:01:39.405
ก็ไม่ต้องพิมพ์ เรา

2725
03:01:39.407 --> 03:01:43.407
ใช้วิธีไปก็อบตัวแปรของเรา

2726
03:01:43.408 --> 03:01:47.408
copy ตัวแปรนี่ไง

2727
03:01:47.408 --> 03:01:51.408
ประกาศตัวแปรไว้น่ะ เราจะคืนค่าให้มัน

2728
03:01:51.409 --> 03:01:55.409
เราก๊อบเลยค่ะ นี่

2729
03:01:55.411 --> 03:01:59.411
ก็อบปี้ตัวแปรตรงนี้เลย

2730
03:01:59.412 --> 03:02:03.412
ก็อบแล้วเอามาวางเพื่อ Reset ค่า

2731
03:02:03.414 --> 03:02:07.414
วางตำแหน่งให้มันตรงกับ

2732
03:02:07.415 --> 03:02:11.415

2733
03:02:11.416 --> 03:02:15.416
ตำแหน่งของ Pos oujot8t

2734
03:02:15.416 --> 03:02:19.416
นี่นะคะ ใส่เงื่อนไขว่า

2735
03:02:19.419 --> 03:02:23.419
if again_rectangle เข้าไปก่อน

2736
03:02:23.419 --> 03:02:27.419
ลงไปก่อน ตรงนี้นะคะ

2737
03:02:27.419 --> 03:02:31.419
ใส่ statement if

2738
03:02:31.420 --> 03:02:35.420

2739
03:02:35.421 --> 03:02:39.421
แล้วก็ตามด้วย

2740
03:02:39.422 --> 03:02:43.422
ค่า .collidepoint

2741
03:02:43.423 --> 03:02:47.423
นะคะ co

2742
03:02:47.425 --> 03:02:51.425
ตัวนี้มันจะขึ้นมาเอง พิมพ์เลย .c

2743
03:02:51.426 --> 03:02:55.426
o

2744
03:02:55.427 --> 03:02:59.427
แล้วก็เลือก collidepoint

2745
03:02:59.428 --> 03:03:03.428
ฟังก์ชันนี่ ใส่วงเล็บ

2746
03:03:03.429 --> 03:03:07.429
เข้าไปในวงเล็บใส่

2747
03:03:07.431 --> 03:03:11.431
pos ค่ะ ใส่ตัวแปร

2748
03:03:11.432 --> 03:03:15.432
pos stetement นี่

2749
03:03:15.433 --> 03:03:19.433
ส่วนตรงที่เราจะใส่ ที่เราจะไปก็อบ

2750
03:03:19.434 --> 03:03:23.434
เราจะไปก็อบตัวแปรทั้งหมด

2751
03:03:23.435 --> 03:03:27.435
เอามานี่ ก๊อบมานี่ จนถึง game_over

2752
03:03:27.436 --> 03:03:31.436
ก๊อบมาค่ะ ก๊อบปี้มา

2753
03:03:31.437 --> 03:03:35.437
แล้วก็เอามาวางตรงนี้เลย

2754
03:03:35.440 --> 03:03:39.440

2755
03:03:39.441 --> 03:03:43.441
ตัวที่เราจะใช้

2756
03:03:43.442 --> 03:03:47.442
มีแค่ markers pos winner

2757
03:03:47.442 --> 03:03:51.442
นะคะ marker click เราไม่ใช้

2758
03:03:51.444 --> 03:03:55.178
เราไม่ใช้ เราก็ลบออก

2759
03:03:55.445 --> 03:03:59.445
y เราไม่ใช้เราก็ลบออก

2760
03:03:59.446 --> 03:04:03.446
markers ใช้ pos ใช้นะคะ

2761
03:04:03.447 --> 03:04:07.447
player ใช้ winner ใช้

2762
03:04:07.448 --> 03:04:11.448
player ใช้

2763
03:04:11.449 --> 03:04:15.449
ใช้ คืนค่าแล้วจะ

2764
03:04:15.449 --> 03:04:19.449
Reset ค่าใหม่อีกครั้งหนึ่ง คือ ถ้ามีการ

2765
03:04:19.451 --> 03:04:23.451
คลิกเมาส์ตรงปุ่ม play again หรือ play

2766
03:04:23.452 --> 03:04:27.452
นี่นะคะ ไอ้ตัวนี้มันก็จะต้องมี Reset

2767
03:04:27.452 --> 03:04:31.452
ค่ากลับไปเริ่มต้นค่าเริ่มต้นเสมอ

2768
03:04:31.452 --> 03:04:35.452

2769
03:04:35.454 --> 03:04:39.454
แล้วมันก็จะเช็กตำแหน่ง

2770
03:04:39.455 --> 03:04:43.455
มันก็จะเช็กตำแหน่ง ตัวนี้ว่า

2771
03:04:43.457 --> 03:04:47.457
จากที่เราสร้างไว้ ก็คือตรงนี้

2772
03:04:47.457 --> 03:04:51.457

2773
03:04:51.458 --> 03:04:55.458

2774
03:04:55.459 --> 03:04:59.459
นี่เห็นไหมคะ ตรงตำแหน่ง

2775
03:04:59.460 --> 03:05:03.460
for x_inrange

2776
03:05:03.462 --> 03:05:07.462
append (row) นี่ ตำแหน่งนี้

2777
03:05:07.463 --> 03:05:11.463
เพื่อให้มัน reset ค่านี้ด้วย

2778
03:05:11.464 --> 03:05:15.464

2779
03:05:15.464 --> 03:05:19.464

2780
03:05:19.465 --> 03:05:23.465

2781
03:05:23.467 --> 03:05:27.467
เอาให้เสร็จ ๆ

2782
03:05:27.469 --> 03:05:31.469
เอาให้เสร็จไม่อย่างนั้นไปต่อไม่ได้คาใจ

2783
03:05:31.471 --> 03:05:35.471
โอ.เค. นะคะ น่าจะ

2784
03:05:35.472 --> 03:05:39.472
เสร็จแล้ว นี่จบแล้ว

2785
03:05:39.472 --> 03:05:43.472
พอดี อันสุดท้าย

2786
03:05:43.473 --> 03:05:47.473

2787
03:05:47.473 --> 03:05:51.473
มันจะจบที่

2788
03:05:51.474 --> 03:05:55.474
ไปก๊อบปี้ไอ้ตรงเช็ก mark น่ะ

2789
03:05:55.475 --> 03:05:59.475
เสร็จแล้วเราลอง Run ctrl+B

2790
03:05:59.475 --> 03:06:03.475
Ctrl B นะคะ

2791
03:06:03.476 --> 03:06:07.476
Error มาเลยเป็นแถวมาเลย

2792
03:06:07.477 --> 03:06:11.477
line 101

2793
03:06:11.477 --> 03:06:15.477

2794
03:06:15.477 --> 03:06:19.477
บรรทัดที่

2795
03:06:19.478 --> 03:06:23.478
101 บอก

2796
03:06:23.479 --> 03:06:27.479
ค่าไม่ถูก

2797
03:06:27.480 --> 03:06:31.480

2798
03:06:31.482 --> 03:06:35.482

2799
03:06:35.484 --> 03:06:39.484

2800
03:06:39.485 --> 03:06:43.485

2801
03:06:43.486 --> 03:06:47.486

2802
03:06:47.487 --> 03:06:51.487

2803
03:06:51.488 --> 03:06:55.488

2804
03:06:55.489 --> 03:06:59.489

2805
03:06:59.491 --> 03:07:03.491

2806
03:07:03.495 --> 03:07:07.495

2807
03:07:07.497 --> 03:07:11.497

2808
03:07:11.499 --> 03:07:15.499

2809
03:07:15.500 --> 03:07:19.500

2810
03:07:19.502 --> 03:07:23.502

2811
03:07:23.503 --> 03:07:27.503

2812
03:07:27.506 --> 03:07:31.506

2813
03:07:31.508 --> 03:07:35.508

2814
03:07:35.510 --> 03:07:39.510

2815
03:07:39.512 --> 03:07:43.512

2816
03:07:43.512 --> 03:07:47.512

2817
03:07:47.513 --> 03:07:51.513

2818
03:07:51.518 --> 03:07:55.518
ทำมเวอร์ชั่นนี้ขึ้นตลอดเลย

2819
03:07:55.520 --> 03:07:59.520

2820
03:07:59.521 --> 03:08:03.521

2821
03:08:03.522 --> 03:08:07.522

2822
03:08:07.523 --> 03:08:11.523

2823
03:08:11.525 --> 03:08:15.525
ได้ไหม เหมือนเดิม

2824
03:08:15.527 --> 03:08:19.527
โอ.เค. ค่ะ เดี๋ยวจะไปหาวิธีแก้

2825
03:08:19.528 --> 03:08:23.528
indentation error ก่อนน

2826
03:08:23.529 --> 03:08:27.529
Error ก่อนนะขึ้นอีกแล้ว

2827
03:08:27.530 --> 03:08:31.530
ถ้าสมมติเรา Run อันนี้

2828
03:08:31.530 --> 03:08:35.530
Run จากตัวเครื่องที่บ้านผ่าน ไม่เข้าใจเหมือนกัน

2829
03:08:35.531 --> 03:08:39.531
ก็คือผลก็คือ เมื่อคลิก

2830
03:08:39.533 --> 03:08:43.533
X ตำแหน่งนี้คนที่ 1 นะคะ

2831
03:08:43.533 --> 03:08:47.533
หรือคนที่ 2 คลิก o ตำแหน่งนี้

2832
03:08:47.534 --> 03:08:51.534
เมื่อเล่นไป ถ้าเกิดคนที่ 1 ชนะนี่เห็นไหม

2833
03:08:51.535 --> 03:08:55.535
เห็นไหม มันก็จะขึ้นข้อความแสดง

2834
03:08:55.536 --> 03:08:59.536
ว่าใครชนะขึ้นมา แล้วก็จะมีข้อความว่า

2835
03:08:59.537 --> 03:09:03.537
ให้เล่นอีกครั้ง เมื่อเรากดที่

2836
03:09:03.538 --> 03:09:07.538
เล่นอีกครั้งหนึ่งนี่ มันก็จะทำการ Reset ค่า

2837
03:09:07.539 --> 03:09:11.539
ที่เรา Post ขึ้นไป ก็คือเคลียร์ค่า

2838
03:09:11.540 --> 03:09:15.540

2839
03:09:15.541 --> 03:09:19.541

2840
03:09:19.542 --> 03:09:23.542
อย่างนี้นะคะ

2841
03:09:23.543 --> 03:09:27.543
คนที่ 1 ก็ชนะนี่ เพราะเช็กตามทะแยง

2842
03:09:27.544 --> 03:09:31.544
เพราะเช็กตามทะแยงได้ถูกต้อง

2843
03:09:31.545 --> 03:09:35.545
แต่ถ้าไม่เล่นก็กดปุ่มออก

2844
03:09:35.544 --> 03:09:39.544
จากเกม ไอ้นี่ Error ไม่ขึ้นเลย

2845
03:09:39.545 --> 03:09:43.545
มันไปจำค่าอะไร

2846
03:09:43.547 --> 03:09:47.547

2847
03:09:47.548 --> 03:09:51.548
build resoul

2848
03:09:51.550 --> 03:09:55.550
ขึ้นไหม

2849
03:09:55.551 --> 03:09:59.551
เดี๋ยวลอง

2850
03:09:59.552 --> 03:10:03.552
เคลียค่าไม่ได้เลย

2851
03:10:03.555 --> 03:10:07.555
control+B ใหม่

2852
03:10:07.555 --> 03:10:11.555
winner แล้วบอก

2853
03:10:11.556 --> 03:10:15.556
Tab ไม่ไปด้วย Tab ผิด

2854
03:10:15.557 --> 03:10:19.557
เคืองมาก

2855
03:10:19.558 --> 03:10:23.558

2856
03:10:23.558 --> 03:10:27.558

2857
03:10:27.559 --> 03:10:31.559

2858
03:10:31.561 --> 03:10:35.561

2859
03:10:35.562 --> 03:10:39.562

2860
03:10:39.563 --> 03:10:43.563

2861
03:10:43.565 --> 03:10:47.565

2862
03:10:47.567 --> 03:10:51.567
ไม่ขยับเคลื่อนไหวเลย

2863
03:10:51.568 --> 03:10:55.568

2864
03:10:55.569 --> 03:10:59.569
อะไรมันขึ้นมานี่

2865
03:10:59.570 --> 03:11:03.570
แ

2866
03:11:03.571 --> 03:11:07.571

2867
03:11:07.574 --> 03:11:11.574
นะคะ เดี๋ยว

2868
03:11:11.575 --> 03:11:15.575
จะขอเคลียร์ indent Error

2869
03:11:15.576 --> 03:11:19.576
ของเด็ก ๆ ออกไหม test ยัง

2870
03:11:19.577 --> 03:11:23.577
ออกหรือเปล่าคะ

2871
03:11:23.580 --> 03:11:27.580
ขึ้น Error อะไร

2872
03:11:27.584 --> 03:11:31.584
Tab Error อีกแล้ว

2873
03:11:31.585 --> 03:11:35.585
ไม่เป็นไร เราจะดูกันเองในภายหลัง

2874
03:11:35.586 --> 03:11:39.586
ถ้าอย่างนั้นเดี๋ยวเราจะพอแค่นี้

2875
03:11:39.588 --> 03:11:43.588
เช็กปัญหา...

2876
03:11:43.589 --> 03:11:47.589
ได้ มันก็อยู่ในเครื่องนี่

2877
03:11:47.590 --> 03:11:51.590
เออ

2878
03:11:51.591 --> 03:11:55.591
มันต้อง

2879
03:11:55.592 --> 03:11:59.592

2880
03:11:59.593 --> 03:12:03.593

2881
03:12:03.598 --> 03:12:07.598
มันต้องเช็กดี ๆ นี่ขนาด

2882
03:12:07.600 --> 03:12:11.600
นี่ขนาด เขา Run มา

2883
03:12:11.600 --> 03:12:15.600
ก็ได้ เดี๋ยวขอบคุณก่อน ขอบคุณล่ามก่อน

2884
03:12:15.601 --> 03:12:19.601
สำหรับวันนี้นะคะ

2885
03:12:19.602 --> 03:12:23.602
ขอบคุณพี่ล่ามที่อยู่ด้วยจนสุด ๆ เลย

2886
03:12:23.603 --> 03:12:27.603
ขอบคุณมากค่ะ

2887
03:12:27.604 --> 03:12:31.604
ค่ะ (นักศึกษา) ขอบคุณครับ (อาจารย์) Error เยอะมาก ก็ไม่เยอะ

2888
03:12:31.605 --> 03:12:35.605

2889
03:12:35.606 --> 03:12:39.606
[สิ้นสุดการถอดความ]

2890
03:12:39.607 --> 03:12:43.607
แ

2891
03:12:43.608 --> 03:12:47.608
[สิ้นสุดการถอดความ]

2892
03:12:47.610 --> 03:12:51.610

2893
03:12:51.611 --> 03:12:55.611

2894
03:12:55.613 --> 03:12:59.613

2895
03:12:59.613 --> 03:13:02.615

2896
03:13:03.615 --> 03:13:03.615


