(อาจารย์สุธิรา) สวัสดีค่ะ สัปดาห์ที่แล้ว สัปดาห์ที่แล้วเราลงตัวเกมเราไปแค่ 1 ตัว แต่ความจริงโดนเกมเราที่จะใช้นี่ ก็คือถ้าสมมุติน้องเดินนะคะ มันก็จะมีหลายทางรูปเล็ก ๆ อย่างนี้ เขาก็จะเปลี่ยน ก็เลยให้ไปค้น Sprite Sheet ทุกคนน่าจะมีแล้วใครยังไม่มีภาพแบบนี้ยกมือหาที่นี้ก่อนโฟลเดอร์ อย่าลืมอย่าลืม มันจะต้องอยู่ในโฟลเดอร์ที่ไหนฟรีของเรานะแล้วก็โฟลเดอร์ชื่อ drive ที่เป็นชื่อของเด็ก ๆ นะคะ นี่ เพราะว่าไฟล์ ไฟล์ pygame ที่เราโค้ดดิงจะอยู่ในนี้ด้วยเหมือนกัน ก็คือตำแหน่งของไฟล์ที่เราจะใช้โค้ดกับรูปภาพมันจะต้องอยู่ในที่เก็บเดียวกัน โฟลเดอร์เดียวกันนะคะ พร้อมหรือยัง ถ้าพร้อมแล้ว สิ่งแรกที่เราจะทำนะคะ ให้เปิด Sublime เหมือนเดิม เปิดไฟล์Sublime Textเก่าเราขึ้นมาเลย ใครอยู่ไหนนะคะ เปิด Sublime แล้วนะคะ แล้ว ทีนี้ เด็ก ๆ ดูนะคะ ข้อแรก สิ่งที่เราจะทำก็คือเราจะไป Import module ขึ้นมาอีก 1 ตัว คือ ตอนตอนเดิมนี่ ที่เรา Import ก็คือโมดูลภแต่ทีนี้มีเพิ่มมาอีก 1 ตัวนะคะ แล้วลำดับที่ 2 เราก็จะมาตั้งค่า พอเราไป Import module ใหม่มา เราก็ต้องมาตั้งค่า เพื่อจะเรียกใช้ไอ้โมดูลตัวใหม่เรานี่นะคะ จากนั้นเราก็ไปกำหนดการแสดงผล ให้โมดูลตัวใหม่เนี่ย ว่ามันจะแสดงผลในลักษณะนะคะ มาดูโค้ดกัน คำสั่งแรก Import pygame ใช่ไหมเรา Import ไpygame แล้วเราค่ำแล้วคือเราไม่ต้องไปพิมพ์คำว่า Import ใหม่คั่นด้วยเครื่องหมายโคลอนแล้วก็ตามด้วย syssys มาจาก System ตอนนี้ก็คือเราจะ Import module ที่ชื่อว่า System นะคะ ตัวนี้นะคะ แหม สีไม่ได้ ไฟไม่กระพริบ เอาใหม่ ตัวเลือก ตัวชี้ สี คืออะไร เราจะ Import module ที่ชื่อว่า sys หรือ System ทีนี้ พอ import module นะคะ วันนี้จะไว้เมื่อไหร่มันจะช่วยในเรื่องของเวลาAssistant ก็คือตัวระบบแล้วนี่เห็นไหม ค่าทั่ไปที่จะตั้ง clock.pygame.clock จะกำหนดระยะเวลาแล้วพอในส่วนของการแสดงผลเรียกใช้ตัวแปรที่ชื่อเพราะเราสร้างตัวแปร ชื่อ clock เพื่อเก็บเวลานี่ clock.tivk คือ ให้ระยะเวลาในการทำงานมันอยู่ที่ประมาณ 60นะคะ ในคอมพิวเตอร์ไม่ใช่ 60 นาทีนะ 60 วินาทีเด็ก ๆ เพราะฉะนั้นเปิด Sublime เราขึ้นมานะคะ แล้วไปที่ตำแหน่ง import ก็คือตำแหน่งแรกใช่ไหม บรรทัดนี้นะ ใส่อะไรคะ โคลอนใช่ไหมคะ แล้วตามด้วยโมดูลที่ชื่อว่า system หรือ sys หรอคะ เพราะคำสั่ง Import นะคะ Import module นี่ จะอยู่ที่บรรทัดแรกเสมอเลยเพราะการทำงานของโปรแกรมนี่ คือมันจะอ่านจากบนลงหน้า เพราะฉะนั้น เราอยากให้มันไปทำอะไรก่อน เราต้องเอามันไว้ข้างบนว่างั้นเถอะ เมื่อได้โมดูลนี้แล้ว ส่วนต่อมาจะอยู่ที่สวนนี้นะคะ กำหนดค่าทั่วไปตัวที่ ในหมายเลข 2 เด็กเห็นนะ นี่ ก็คือเพิ่ม Clock... clock = นะคะ = นะคะ ตรงนี้ เpygame.clock ราจะเรียกใช้ไลบรารีพามนั่นเองนะคะ ฉะนั้น เราก็เลยต้องเปิดmodule System ขึ้นมานะคะ clock = พายเกมดอทคอมดอทคอมในวงเล็บปั๊มนะคะ ในซับลามจะอยู่บรรทัดที่ต่อจากอะไรดูดี ๆ คลาย game.netตำแหน่งของการตั้งค่าทั่วไปนะคะ ทำไมมันล่ะ ตรงส่วนนี้นะคะ จะเตือนเด็ก ๆ เสมอว่า ให้เราใส่แฮชแท็กเพื่ออธิบายว่า ตรงโค้ดดิงนี้นะคะ เราใช้ทำอะไร เราจะได้รู้ ว่าอ๋อคำสั่งนี้ มันเป็นการสั่งให้นำเข้าโมดูล sys ที่เรานำเข้าก็คือ แล้วก็ฟิน2 ตัวนี้นั่นเองเสร็จแล้วในส่วนของการตั้งค่าทั่วไปคือพาย game.net นี่ ก็คือเรียกใช้ตัวนี้ภายเกมโมเดิร์นภายเกม และตัวหนึ่งนะคะ อันดับแรกประกาศตัวแปรชื่อว่า clock ขอโทษ C นะคะ พิมพ์ด้วย c l o c k clock clock ที่แปลว่านาฬิกา วิธีการประกาศตัวแปรคือชื่อตัวแปรตามด้วยเครื่องหมายเท่ากับ วรรค เครื่องหมายเท่ากับวรรคนะคะ กด Space Bar ใส่เครื่องหมายเท่ากับ แล้วก็กด Space Bar อีก 1 ครั้ง แล้วก็พิมพ์ library pygame ปุ๊บ คลิดเลือกภบอกแล้วว่าเราจะไม่พิมพ์ยาวเพราะปลามันจะขึ้นโค้ดที่เราเขียนไปแล้วหรือตัวอะไรก็แล้วแต่เราก็มาเลือกเอานะคะ . นะคะ . t i m e .Time แล้วก็ .clock เพราะอีกทีหนึ่งเลือก Clock นะคะ มันจะช่วยให้เราไม่ไปพิมพ์ผิดบอกให้รู้ว่าออเราจะใช้ตัวแปรที่ว่าคอมตัวนี้ แล้วก็ใส่วงเล็บนะคะ นี่ มันจะไม่มีปัญหาว่าพิมพ์ตัว o เป็นตัว a อะไรเนี่ยเพราะบางทีเด็ก ๆ มองแล้วดันเห็นไม่ชัดไม่ขยายนะคะ ตรงนี้คือส่วนของการตั้งค่าทั่วไป ใครยังไม่เสร็จบรรทัดนี้ พิมพ์ให้เสร็จนะคะ ไม่อย่างนั้นไปขั้นตอนต่อไปไม่ได้นะ ตอนนี้เราเองถอดแล้วแล้วเรามาตั้งค่ากำหนดค่าให้มันก็คือให้เป็นตัวแปรที่ชื่อว่า clock ทีนี้เราจะไปเรียกใช้งาน เราจะไปที่ตำแหน่งท้าย ๆ แสดงผลจะอยู่ประมาณตรง เอาไปไว้ท้าย ๆ ก่อน นี่ ๆ ๆ แถว ๆ พวกนี้นี่ แถว screen.blit อะไรพวกน่ีนะเด็ก ๆ หน้าใสไอ้นี่ให้ก่อนนะคะ สาย ๆ ก่อน ส่วนของการแสดงผลนะ คั่นส่วนไว้ จะได้รู้ สังเกตตรงการแสดงผลเรา เพราะ screen.blit ก็คือให้มันแสดงพื้นหลังเราน่ะนะคะ เอาจริง ตัวเดียวก็ได้นี่ ปล่อยไว้ก่อน ลบตัวนี้ได้เลยนะนี่ เดี๋ยวค่อยมาลบนะคะ ไล่ลบ เพราะฉะนั้น คำสั่งที่ 3 ก็คือให้ เดี๋ยวนะ เราจะ นี่นะคะ ตรงส่วนของการแสดงผลที่บอก ก็คือเราจะเรียกตัวแปร clock นะคะ clock.tick นแล้วระบุระบุว่าเวลาเวลาที่ให้มันทำงานอยู่ที่ประมาณวินาที เพราะฉะนั้นตำแหน่งก็จะอยู่ตรงเมื่อกี้ที่มาร์กไว้นะ การแสดงผลอยู่ตรงนี้นะคะ อย่ากด Space Bar กดอะไรคะ กด Tab ให้ไปตรงกับตำแหน่ง screen บอกแล้วนะคะ เพราะบางคนจะติดก็ เห็นย่อหน้าที่ 2 มันวะนี่ ไปซะปลามันจะไม่ค่อยใช้วรรค ใช่ว่าจะใช้เฉพาะวรรคระหว่างคำ แต่ถ้าคำย่อหน้านี่ เราจะใช้แผ่นเราก็เรียกใช้ clock พิมพ์ C ปุ๊บ ของเรานะคะ แล้วก็ตามด้วย memory ไม่ดีนะคะ จำไม่ได้ค่ะ ขอบอก สมงสมองไปหมด อากาศเย็น สกลนครหนาวนะคะ บอกเลยว่าหนาว เด็ก ๆ พากันไม่มานี่ t i tick นี่ เป็นคำสั่งในไรซ์เบอรี่นั่นเองนะคะ แล้วก็ตามด้วยวงเล็บใส่ 60ตัวเดิมนะ 60เดี๋ยวตัวเลขเราก็ได้ให้นึกถึงนะ ถ้าเราลองรันโปรแกรมแล้ว ตัวเกมเรามันวิ่งไวเกินไป เราก็เพิ่มเวลาให้มันแต่ ถ้ามันวิ่งช้า 60 แล้วมันช้า เราก็ลดเวลาลงนะคะ ก็คือให้นึกถึงน่ะ เวลา 1 วิ 2-3 วิ 1 คือเพิ่มใช่ไหมวันหนึ่งมันเร็วไปเราก็ต้องเพิ่มให้มันช้าก็ต้องเพิ่มแต่ถ้ามันช้าเราต้องลดตัวเลขลงนะคะ หลักการ นี่คือเราจะได้ ยังไม่รันนะคะ เพราะตัวที่เราจะรัน ถ้าเรากดมันก็จะไม่แสดงผลอะไรใด ๆ ทั้งสิ้นนะคะ ยังไม่กดดันนะคะ ไปทำต่อ เรายังเขียนโค้ดไม่เสร็จ อย่าลืมว่าโค้ดมันไม่ได้มีแค่ 3 บรรทัดแน่นอนนะคะ กดผิดอันอีก ไปไสล่ะ เอาตัวขี้ออก ไปที่ถัดไปนะคะ ลำดับต่อมานะคะ เรากำหนดไอ้นี่ไปเรียบร้อยแล้วนะ ข้ามนะคะ เราตั้งค่าหน้าจอเกมแล้วตั้งไปแล้ว set.mode หรือ เราจะมาทำ loop นะคะ ทำ loop ให้เขา เราทำไปแล้ว เดี๋ยวจะข้ามส่วนนี้ เรามาทำต่อจากอันเดิมนะ นี่ ๆ ๆ เราจะใส่ Moving Sprite เข้าไปได้น่ี่นะคะ เราต้องไปตรงนี้ก่อน ราจะมาสร้าง Class ให้ก่อนนะคะ สร้าง class เพื่อ เพื่อที่จะทำอะไร จำได้นะ ตัวเกมบอกแล้ว ในผลต่อเราใส่เข้าไปแค่ตัวเดียวแต่ทีนี้เราจะเอาน้องมาทั้งเซตเลย น้องการ์ตูนเรามาทั้งเซตเลยนะคะ เพราะฉะนั้น เราจะต้องสร้าง Class ให้น้อง เพื่อจะเรียกใช้ เวลาเรียกใช้ เราจะได้เรียกตามชื่อ class ครั้งเดียวพอ จบ ทีนี้ ตอนนี้ช่างคะนี่นะคะ รูปแบบ ก็คือเราจะต้องพิมพ์คำว่า Class แล้วก็ตามด้วยชื่อของคลาส คือ ในการเขียนโปรแกรมนี่ การสร้าง class จะช่วยให้เราไม่ต้องเขียนโปรแกรมใหญ่มาก ๆ หลาย ๆ ครั้ง หรือเขียนเรียกใช้ตัวอะไรก็แล้วแต่นะคะ ตัวรูปภาพนี่ หลาย ๆ ครั้ง เหมือนใน class นีรูปมันมีหลายรูปอ่ะไม่งั้นเราจะต้องไปเรียกรูปหลายครั้งเลยว่างั้นเถอะนะคะ เราจะเรียกแคบMinecraft ครั้งเดียวแล้วก็ใส่โคลอนเพราะเสร็จสินค้าปลุกเน็ตจะต้องระบุโคลอนเข้าไปนะคะ แล้วก็ใส่ statement ก็คือเงื่อนไขอะไรต่าง ๆ ตามหลังมา พร้อมนะคะ เราจะไปต่อนะคะ ดูดี ๆ นะคะ ชื่อคลาส จำไว้เลยนะคะ เมื่อไหร่ที่ให้สร้าง Class เวลาตั้งชื่อ class เด็ก ๆ จะต้องพิมพ์ชื่อ class ตัวแรกด้วยตัวพิมพ์ใหญ่ เพราะฉะนั้นเตรียมกด caps lock ได้เลยนะคะ เมื่อเราสร้างคัดเสร็จ ลำดับต่อมาเราจะมาสร้าง method ราคาให้ให้ขาดของเรานั่นเองนะคะ 1 ตัวเอาไปตัดที่นี่นะคะ เราจะเปิดหน้านี้ไว้นะคะ เริ่มค่ะ ไปที่ Sublime เราเหมือนเดิมทีนี้เขาบอกว่าอยากให้มันรู้อะไรมันต้องอยู่ข้างบนเสมอเลย อาจจะอยู่ตรงส่วนที่ เมื่อกี้นะ ในที่โค้ด class จะเห็นว่าจะอยู่ต่อจากส่วนของ Importนะคะ แฮชแท็กค่ะ เพื่อจะได้รู้ว่าตรงนี้เป็น เราจะทำอะไร เราจะสร้าง class อยู่ต่อจาก เมื่อกี้มันต้องอยู่ อยู่ต่อจากการตั้งค่าทั่วไปนะคะ เราจะ อยู่ตำแหน่งนี้ ถัดมา เพราะตรงนี้จะต้องโดนเรียกใช้ก่อน แล้วก็ค่อยมาตรงนี้ได้ ไม่เป็นไร กิดผิดนะคะ ตอนนี้ใส่แฮชแท็กเพื่ออธิบายว่า เราจะสร้าง Class สำหรับนำเข้าภาพต่อเนื่อง หรืิแ Sprite Sheet เรานั่นเองนะคะ อธิบายไว้ เผื่อเด็ก ๆจะได้รู้ ถ้าใครพิมพ์แฮชแท็กหรือ comment เสร็จแล้วนะคะ ก็จะสร้าง class ได้เลยนะคะ พิมพ์นะคะ พิมพ์ c บางคนพิมพ์ C แล้วไม่ขึ้น พิมพ์ c l ก็ได้นะคะ แล้วเลือกตัวแรก Class New Class นะคะ คลิดเข้าไป หรือกด enter ไหมคะ มันจะสร้างโครงสร้างของ class ขึ้นมาเลย มีclass name แล้วก็มี definition อยากฟังค่ะ เห็นไหมคะ รูปแบบเหมือนไหมเหมือนเหมือนในในสไลด์เราไหมสร้้าง class แล้วก็มีตัวนี้ส่วนของค่าต่าง ๆ นี่นะคะ ขึ้นมา ทีนี้มาดูตรงนี้ Class name เขียว เขียว ๆ และมีไฟกระพริบ ทำแบบคอบต้องพาร์ทเม้นท์เนี่ยที่มันขึ้นสีเขียว ๆ เนี่ย ขึ้นเราจะต้องเป็นคนตั้งชื่อให้คลาสของเรานะคะ เพราะฉะนั้น class นี้ ที่เราจะนำมาใช้หรือตัวเกมที่เราจะนำมาใช้มันคือตัวอะไรคะ เด็ก ๆ ทำได้เนาะของใครไปดูที่ตัวนี้เกมที่เราเอามาใช้ครั้งก่อนเนี่ยเราใช้คำว่า cat ใช่ไหม ของเด็ก ๆ ชื่ออะไรคะ เพราะฉะนั้นเ อาชื่อ class เป็นตัวนี้แต่อย่าลืมว่ากลัวต้นของมันตัวใหญ่ เราค่อยไปลบบรรทัดนั้น เรายังไมรัน ไม่มีปัญหา classกับ cat คนละตัวใช่ไหมพิมพ์ด้วยตัวเลขจะต้องเป็นตัวพิมพ์ใหญ่เสมอนะคะ ชื่อค้าจะต้องขึ้นต้นด้วยตัวใหญ่เสมอหน้าที่นี้มาดูในส่วนไอ้เขียว ๆ อีกทีเราจะต้องobject มันนะคะ วัตถุที่เราจะเอามาวางแล้วจะระบุอะไรไปobject นี่ ของ ของอุบลตัวอะไรนะลูก ก็บอยแต่เดิมบอยเล็กก็เป็นบอยใหญ่นะคะ อย่าลืมนะคะ ตัวอักษรตัวแรกต้องเป็นตัวใหญ่นะลูก ถ้าเป็นชื่อ class เวลาเราตั้งชื่อตัวแปรตัวเล็กตัวใหญ่ก็ได้แต่เมื่อตั้งไปแล้วต้องเช็ก นึกออก เวลาเราตั้งชื่อคลาสขึ้นต้นด้วยตัวใหญ่เสมอนะคะ ต่อมา object นี้เราจะใส่อะไรเข้าไปในคลาสของเรานะคะ มาดูกันที่เราจะใส่ก็คือเรียกใช้ Sprite คือ pygame เนี่ยมันจะมีไรซ์เบอรี่บอกแล้วร้านไลบรารี่ที่จะใช้ก็คือดูนะคะ เด็ก ๆ ดูดี ๆ ก็ไป 2 ครั้งเนี่ยSpice ตัวแรกตัวพิมพ์เล็กมันจะเป็นคนละตัวนะไม่ออกเนาะเพราะอะไรเพราะเห็นไหม Spice ตัวที่ 2ขึ้นต้นตัว f มันจะเป็นตัวใหญ่ สังเกต แล้วถ้าเวลาแม่บอกว่าเรียกใช้ Sprite ตัวใหญ่เราต้องพิมพ์ตัวใหญ่ก่อน นึกออกนะ แต่ถ้าเรียกสบยเล็กก็คือพิมพ์ตัวพิมพ์เล็กทั้งหมดมันจะมี 2 ตัวนะคะ เพราะฉะนั้นใน object เราจะเรียกใช้ไลบรารี่พายเกมที่ชื่อสไปรทSprite.Spriteว่างั้นเถอะ โอเคไหมนะคะ วันนั้นกลับมาที่ตัวนี่เราใส่ object ใช่ไหมคะ เราพิมพ์พี่กลัวพี่แล้วอดขายเกมส์กด Enter ได้เลย ขึ้น pygame เลือกไฟล์เกมแล้วกด enterไป . นะคะ Sprite ขึ้น Sprite ใหญ่ยังไม่ยังไม่กดนะเด็ก ๆ เพราะจะไปแลกไปตัวเล็กนะคะ SpriteSprite ที่ 2 นี่ ตัวใหญ่ลองเลือก Sprite Sh ตัวใหญ่อยู่ข้างล่างเกือบล่างสุดเลยคือจะไปที่ 2 มันมันสร้างไว้ Library มันมีอยู่แล้วในออกเนาะโอเคนะคะ เพราะตัวโคลงโคลอนไม่ต้องใส่เลย สังเกตถ้าเราอย่างเงี้ยไอ้พวกเรื่องไหนมันจะไม่หาย ดูใหม่นะไอ้ Sprite ที่ 2 เดี๋ยวดูใหม่นะ กด s ปุ๊บ ให้เลื่อนไปหาสไปรท์ใหญ่ไหมคะ แล้วกด Enter เพราะมันเป็นตัวที่เป็นอยู่ใน Library แล้วว่างั้นเถอะแต่จะไปเล็กเนี่ยมันบอกให้รู้ว่าฉันสร้างตัวนี้ขึ้นมาเพื่อจะเรียกใช้ เขาบอก ตรงนี้เราจะลบออกนะคะ เป็นแค่อธิบาย ซึ่งเราอธิบายไว้ข้างบนแล้ว เรากด delete ได้เลย เราต้องพยายามลดบรรทัดในการเขียนโค้ด นึกออกนะ คือ 1 บรรทัด จะใช้พื้นที่ในการเก็บ เมื่อกี้เราสร้าง Class ไปแล้ว ทีนี้เราจะมาสร้างส่วนของ statement นี่นะคะ นะคะ ต่อ ก็คือส่วนนี้เห็นไหม def def นี่ ย่อมาจาก definition init นะคะ มันจะพิมพ์ของมันมาแล้ว เพราะฉะนั้น ถ้าเด็กเด็กพิมพ์ไม่ถูก มันพิมพ์มาแล้ว เราจะมาแก้เฉพาะในวงเล็บ เอาตัวนั้นออก มันบัง มันบังโค้ดเรานะ เราจะพิมพ์จนถึงตัวนี้ก่อน Superinit นี่ น่าจะพิมพ์มาแล้วนะคะ แล้วต่อจาก self เห็นไหมคะ แล้วตามด้วยอะไรคะ นะคะ ดูนะคะ pos x pos y นะคะ ตัวแปร pos x posy ย้ายตำแหน่งแน่นอน pos ใส่ _xตัวเดีย คั่น วกัน แล้วแต่จะตั้ง คือแยกนี่ มันจะได้เห็นว่า pos มาจาก Position นั่นเองนะคะ pos pos มาจาก Position แล้วก็ตามด้วย underscore คือ ตำแหน่งแกน x ตำแหน่งของแกน x แกน Y นั่นเอง ก็คือเราจะเอาไอ้รูปนี้ไปวางในตำแหน่งนี้แกน x แกน Y ที่ระบุ นะคะ บรรทัดนี้นะคะ ก็คือจะเริ่มกำหนดว่าตำแหน่งของสิ่งที่เราจะเรียกมานี่ จะอยู่ตรงไหนอะไรอย่างไน บอกตำแหน่ง ระบุตำแหน่ง บรรทัดต่อมา มันจะเริ่มยาวขึ้นแล้วนะเด็ก ๆ ดูดี ๆ นะคะ ช่องนี้เห็นไหมคะ Class name เราไม่ต้องระบุลงไป ลบออล ให้มันเป็นเปล่า ๆ ให้มันเหลือแค่นี้ บรรทัดวิธีต่อจากdefinition นะคะ บรรทัด super นี่ ตรงที่อยู่ในวงเล็บในลบออกนะคะ อันนี้เราจะเหลือแค่นี้นะคะ บรรทัดถัดจากนี้ ตั้งแต่พอเริ่ม เรียก self นี่ มันจะยาวขึ้นนะคะ เราจะพิมพ์แค่ 1 ครั้ง เราใช้วิธีคัดลอกแล้วก็ไปแก้ แก้เฉพาะตัวนะคะ ดูนะคะ ดูSprite She self ตัวแรกตัวแรกเนี่ย Sprite แล้วไปเล็กแล้วเติม ed ให้เขาด้วยมันจะเป็นคนละตัวกับตัวบนนะคะ เด็ก ๆเติม s เข้าไป ค่าที่ใส่ก็คือสี่เหลี่ยมวงเล็บแบบสี่เหลี่ยม โอเคไหม ดูดี ๆ นะคะ สไปรท์ในเซลล์เนี่ยเป็น Sprite ที่เติม ed เข้าไปด้วยเราเรียกไปปุ๊บใช่ไหมกดมีสไปรท์ขึ้นมานี่นะคะ แล้วเติม s เพิ่มเข้าไป โอเคนะ มันจะเป็นคนละตัวนะมันมีหลายตัวดูดี ๆ Sprite S พอเขาเรียกไปแล้วนี่ ตัวนี้ 1 ใช่ไหมจะไปใหญ่ 3 Spice SS ตอนนี้เรามี 33 spice โอเคนะคะ บรรทัดที่เหลือ จะเริ่มจะเริ่มไปเรียกใช้คำสั่งที่มันให้โหลดรูปที่เราเก็บไว้น่ะ มานะคะ เราต้องวางเรียงจนครบทั้งหมดเรามีกี่รูป เราก็ใส่เข้าไปทั้งหมดจำนวนรูปนั้นนะคะ เดี๋ยวเขียนให้ดูก่อน ตอนนนี้ เราระบุ Sprite Sprite S ไปแล้วจะไปเอส ไปแล้วสิ่งที่เราจะทำต่อมาบรรทัดต่อไปเราก็พิมพ์เซลล์เหมือนเดิมเลือกนะคะ เลือก self เหมือนเดิมนะคะ จะไปเหมือนกันแต่เลือกสไปรท์จะไปที่มีตัว S ไหมคะ เลือกให้ถูกตามด้วย . self Spritเพราะตัวแรกจะไปเอสแรกเราป่ะโปรแกรมไปแล้ว 5 เราสร้างสไปซ์มานะวันนั้นครั้งที่ 2 เราเรียกใช้มาได้เลยนะคะ .แล้วก็ตามด้วยหัวจะยาวรอบหนึ่ง App Play แล้วก็โหลด OKdepression a W เป็นดีนะคะ เลือกใช้คำLibrary append. พิมพ์ผิดบ้างอะไรบ้าง ในวงเล็บใส่วงเล็บนะคะ แล้วกด Enter ให้มันเรียกใช้ไฟล์เกมเมดเหมือนเดิม im เรื่องเอ็มเมดนะคะ โหลดเลือกโหลด ถ้าใครไม่ขึ้น แสดงว่าบางทีพิมพ์ผิด ลองลบออกก่อนเดี๋ยวลองย่อลงก่อนนะคะ มันไม่เห็น ที่ต้องย่อเพราะว่ามันยังมีต่ออีก เดี๋ยวเด็ก ๆ จะไม่เห็นว่าในบรรทัดนี้มันมีอะไรต่อนะคะ ก็คือตอนนี้เราจะมาเรียก self Sprite.append แล้วก็ให้สั่งให้ใครเกมมันไปโหลดภาพแล้วมาดูภาพที่เราจะโหลดว งเล็บที่หลังวงเล็บหลังโหลดนพ append pygame image.load ชื่อลูกรูปตัวไหนชื่อรูปเด็ก ๆ ดูนะคะ บอกแล้วบอกวิธีไปแล้วเนาะถ้าไม่อยากพิมพ์ผิดเหมือนอย่างนี้ เราไปที่ไฟล์ภาพเรา แล้วเราคลิกขวาใช่ไหมคะ ที่ตำแหน่ง Properties แล้วเราก็ก๊อบชื่อไฟล์มันมาเลย มันจะทำให้เราไม่พิมพ์ชื่อไฟล์ผิด แล้วก็เช็กด้วยว่านามสกุลมันเป็นนามสกุลอะไร PNG โอเค .png แบบนี้นะคะ มันจะไม่เกิดปัญหาในการพิมพ์ชื่อไฟล์ผิด เพราะฉะนั้น ภาพที่เป็นสไปรท์เรามีกี่รูป บรรทัดต่อไปไม่ต้องพิมพ์ใหม่ ได้ ดูนะคะ ใช้วิธี Copy บรรทัดที่เราสั่งมันโหลดภาพ กด Ctrl C แล้วก็กด Ctrl V ลงไป เราก็เปลี่ยนแค่อะไรคะ หมายเลข ใช่ไหม 2 ถูกไหมคะ ตรงนี้นะคะ Sprite เด็ก ๆ จะต้องไปสั่งให้มันโหลดรูปที่เราจะเอามาใช้น่ะ ให้ครบตามจำนวนเพราะนั้นเพิ่มเพิ่มบรรทัดเองนะของใครมีกี่ลูก จำนวนบรรทัดของรูปที่โหลดมันก็จะเท่ากับค่าของตัวเองไม่ออกนะ Copy อันที่ 1 แล้วก็ไปเปลี่ยนหมายเลขถูกไหมถ้าของใครมีหมายเลขแต่ถ้าของใครไม่มีหรอกนะคะ แล้วก็วางจนกว่ามันจะครบจำนวนไอ้ตัวนั้นของเรานะคะ เดี๋ยว ตรงนี้นะคะ ชื่อไฟล์ภาพนี่ ให้ดูในเครื่องตัวเองอ่ะลูก ไม่ใช่มันพิมพ์ตาม ก็คือชื่อภาพใครภาพมัน ภาพของใครของมันอันนี้เป็นชื่อไฟล์ภาพที่อยู่ในเครื่อง ของแม่ ของเด็กชื่ออะไร เด็ก ๆ ก็ดูเอา ในโฟลเดอร์ตัวเองนะคะ มีกี่รูป เดี๋ยวขอไปดูก่อนนะ ว่าของเรามีทั้งหมดกี่รูป ของเครื่องแม่มีถึง walk 10 นะคะ เดี๋ยวจะใส่เพิ่มอีก 5 ตัว มีเยอะมันจะก๊อบแผงใหญ่ ๆ เลย5 แล้วก็นัดต่อ 6 7 8 9 10 เพราะฉะนั้น ให้เด็ก ๆ ดูในโฟลเดอร์ตัวเองนะ ภาพใครชื่ออะไรก็ครับ ว่างแล้วค่อยมาแก้อย่างนี้นะคะ อันนี้ของแม่มี 10 ภาพแม่ก็ใส่จนครบแล้ว 10 ลูกนะคะ ของเด็ก ๆ มีรูปเดี๋ยวไปช่วยดูให้ จะตรวจให้นะคต ะ ของใครมีกี่รูป นี่ ใส่วงเล็บมาถูกแล้ว เราว่าเราไม่ใส่นะ ไม่ขึ้น ตรง pygame ใส่วงเล็บไปด้วยนะ นั่นล่ะ เพราะว่าใส่แล้วไม่ได้ ตอนแรกใส่แล้ว มันไม่ขึ้น ก็เลยเข้าใจว่าเจ้าของใส่ผิด เดี๋ยวไปเดินดูนะคะ มันจะต้องขึ้นอย่างนี้ เป็น ๆ เป็นเซ็ต ๆ เลย สีส้มเป็นสีฟ้าแล้วก็ไปปิดด้วยโหลด ดูนะคะ ชื่อไฟล์เราลืมแน่ ๆ เลยเมื่อกี้เดินไปผิดแน่ต้องใส่อะไรเครื่องหมายอะไรไม่ออกนะใส่เครื่องหมายคำพูดจะเอา Single คอร์ดSingle Double โหดก็ได้ไข่ใส่ลงไปลืมเด็ก ๆ ใส่เครื่องหมายคำพูดลงชื่อไฟล์ที่เราจะเรียกใช้ด้วยลืมเยอะหลายอย่าลืมเนี่ยนะเมื่อกี้ลืมใส่นะคะ ใส่เครื่องหมายคำพูดเข้าไปให้น้องด้วยขออภัยจากหลักสไลด์เนี่ยตรงชื่อไฟล์มันจะเป็นสีเหลืองใช่ไหมคะ มันถึงจะถูกต้องนะคะ อันนั้นแก้ไก่ Single หรือ Double Code ก็ได้ไปตอนไหนก็ได้นะคะ ตัวใดตัวนึงเลือกเอาใครถนัดใส่ Single ก็ใส่ดับเบิ้ลก็ใส่ Doubleนาทีนี้บางรูปของบางคนเนี่ยรูปมันไม่ต่อเนี่ยมันเป็นอาหารวันนั้นเรียกลูกมาไทยก็มีส่วนนะคะ เช็คราคาเช็คอันดับแรกเช็คที่ชื่อไฟล์ภาพที่เราจะนำมาใช้ชื่อถูกต้องโอเคไหมแล้วก็จำนวนลูกที่เอามาใช้ทั้งหมดกี่ลูกณเดชนะคะ ถ้าใครแจ้งครบแล้วไอ้ตัวชื่อไฟล์ภาพจะเป็นสีเหลืองทั้งหมดนั่นแสดงว่าถูกต้องแล้วนะเด็ก ๆ ต้องเป็นอย่างนี้นะคะ ในโค้ดเราต้องเป็นอย่างนี้ถึงจะถูก ทั้งแผง ทั้งแผง นี่เห็นไหม ตัวเล็ก ตัวเล็ก คือ คำสั่งมันเยอะ พอมัน เป็นคลาส มันจะมันจะลำบากตอนแรกเท่านั้นนะคะ ไหนลองสิ ไม่มีส่วนนะ ตัวเล็กตัวใหญ่ ไม่เกี่ยว เพราะอันนี้มันเป็นเออมันได้อยู่ มันเป็นนามสกุล ชื่ออ่ะชื่อห้ามผิด นามสกุลน่ะมันรู้อยู่ โปรแกรมมันจะรู้อยู่ มันน่าจะเว้นวรรค ผิดเดี๋ยวตอน Error ก็จะรู้กัน สร้าง method แล้ว ทำอload Sprite Sheetะไรต่อ แล้ว มีบรรทัดต่อนะคะ เด็ก ๆ เราจะระบุตำแหน่งว่าตำแหน่งปัจจุบันของตัว Sprite เราจะเริ่มที่ 0 แล้วก็จะมาเรียกใช้ จะสร้าง จะทำ Animation เห็นไหม create Animation แล้ว ขั้นต่อไป นะคะ เรา load ตอนนี้เราสั่งให้มันไปโหลดภาพ ต่อมาเราจะสร้างส่วนของ Animation นะะค ใส่ # ค่ะ ใส่แฮชแท็ก เราจะเข้าสู่การสร้างแอนิเมชันแล้ว สร้างภาพเคลื่อนไหวก็ได้ เดี๋ยวจะงง เอาเป็นภาษาไทย สร้างการเคลื่อนไหว นะคะ แฮชแท็กไว้ จะได้รู้ส่วน ตำแหน่งอยู่ตรง self นะคะ กด Tab นะคะ เด็ก ๆ ใช้วิธีกดแคปหน้ากด space bar เข้าไปให้ตรงกับตำแหน่งเซลล์เดิมเราพิมพ์ self จะไม่เปลี่ยนพิมพ์เซลล์เม็ดเลือดเซลล์น็อตดูนะคะ คำสั่งนี้ยาวหน่อย self.current_Spriteสไปรธรรมดานะคะ อันนี้อันนี้จะเป็นตัวแปรนะ current underscores เพราะฉะนั้นเราจะต้องพิมพ์เองนะคะ see youApple r e n t underscore p r i t e อันนี้เป็น ตัวแปรที่เราจะสร้าง ก็ระบุว่าตำแหน่งเริ่มต้นหรือตำแหน่งปัจจุบันนี่ ก็คือให้มันเริ่มที่ 0 self current_= 0 นะคะ คำสั่งแรก ก็คือกำหนดให้ตัวแปรที่ชื่อ current sprite มีค่าเริ่มต้นที่ 0 ไอ้ตัวนี้ก็คือเป็นคำสั่งที่บอกว่าเนี่ยค่าเริ่มต้นของภาพนะคะ ต้องเริ่มที่ 0 เสมอ Self carrent _Sprite = 0 current ใส่ underscore ด้วยจะแยก 2 คำบางทีสาเหตุที่มีอันเดอร์สกอร์มีอะไรเงี้ยคือบางทีประโยคมันยาวเนี่ยถ้าเราไปพิมพ์ติดกันเวลาเราเช็คโค้ดมันจะไลน์ไปบอกเนาะเพราะนั้นเราใช้ตัวอันเดอร์สกอร์มาเพื่อในการแยกคำค่ะ ไปบรรทัดต่อไปนะคะ เราจะกำหนดให้เรียกใช้ เรียกรูปนั่นเองนะคะ พิมพ์ s แล้วเลือก self เดิม ตามด้วยเครื่อง . . อะไร dot Imageนะคะ คิด IMF ไหมคะ เท่ากับใช้เครื่องหมายเท่ากับเท่ากับแล้วอีกครั้งนึงค่ะ เฮียใช้เซลล์อีกครั้งนึงกด s แล้วเลือก self .Sprite Sprite Sheet ที่เราจะใช้ตัวนี้คือ Sprite S เด็ก ๆ ไปหาสไปรท์ S นะคะ จะไปที่มี s ข้างหลังอ่ะค่ะ เล่าเรื่องพวกนี้แล้วก็ใส่วงเล็บสี่เหลี่ยมใหญ่เข้าไป แล้วพิมพ์ เรียกใช้ self current Sprite Shละ 5 รอบในวงเล็สี่เหลี่ยมใหญ่เนี่ยเราจะเรียกใช้จอร์จกิน C แล้วเลือก current see you อยู่ไหนคะเลือกเคยเรียนสบายที่มันขึ้นมานี่เลย ที่เราสร้างไว้นั่นเองนะคะ บรรทัดต่อมานะคะ พิมพ์ self เหมือนเดิมนะคะ เลือก phelps Dodgeอันนี้พิมพ์เองนะคะ เล็กicct เล็ก self เล็ก = self ระวังฟันเซลล์นะคะ Dropเลือกเซลล์ดอท image ค่ะ I เลือก Image แล้วก็ .get G เห็นไหมคะ .get _rect rect แล้วก็วงเล็บ แล้วก็กำหนดอีกตัวหนึ่งนะคะ self เลือก self เหมือนเดิมอยากเจอเหมือนเดิมจอดเหมือนเดิมค่ะ กำหนดตำแหน่ง rect Top นะคะ rect เลือกเล็กนะคะ top top บนซ้าย Top l e f ttop left นะคะ เท่ากับวงเล็บใหญ่ วงเล็บสี่เหลี่ยมใหญ่ เลือก pos pos_recy โพสต์เรื่องแล้วก็ใส่โคลอนแล้วก็เลือกโพสต์ underscoresระบุตำแหน่งและอยู่ที่โพสต์โพสต์วายของเรานะครับ ให้ค่าเริ่มต้นในการทำงานเริ่มที่นี่ เช็กดี ๆ นะคะ ถ้าพิมพ์ถูกแล้ว สีจะขึ้นแบบนี้เลย สี self สีตัวเลข สีเท่ากับ จะขึ้นอย่างนี้เลย ถ้าใครไม่ขคมีแสดงว่าพิมพ์ตรงไหนตรงหนึ่งผิดแน่นอนโครงสร้างผิดแน่นอนนะคะ กับรามจะช่วยในการเช็คโค้ดดิ้งไม่ดีเลย ใครยังพิมพ์ 1234 4 บรรทัดนี้ไม่เสร็จ พิมพ์เสร็จยังคะ ดูดี ๆ นะคะ Sprite ที่ใช้ที่เรียกใช้คือไซส์ S นะคะ ตอนนี้ ตรงตำแหน่งนี้ เรียกผิดชีวิตเปลี่ยนนะ มันจะไม่ขึ้น ไม่อย่างนั้น ก็จะ Error ไปเลยนะคะ โอเคนะคะ ยังไม่จบ ๆ โค้ดเยอะหน่อยหนึ่ง พอทำ class ก็คือ class จะใหญ่ เรา create อนิเมชันแล้วสิ่งที่เราจะทำต่อไปเนี่ยนะคะ เราจะมาเรียกใช้มันแล้วเนี่ย ไม่ใช่เรียกใช้เราจะทำสไปรท์น่ะจัดจับมัน กรุ๊ปรูปมันน่ะค่ะ กรุ๊ปมันรูปมันน่ะสักภาพใหญ่ ๆ ให้มันเป็นภาพเดียว นี่นะคะ สร้าง Sprite แล้วก็กรุ๊ปน้องด้วยนะคะ พิมพ์คำสั่งนี้เลย อ๋อ มันเรียนรวม สอบแล้วหรอ สอบแต่หัวปี ดูส่วนต่อมา เมื่อกี้เรา เราจะเรียกใช้มัน เราจะสร้างมันแล้วก็ตำแหน่งจะอยู่ที่ หลังเงื่อนไขนะ ตำแหน่งโค้ดเสร็จหมดแล้วนะคะ ตรง 4 บรรทัดนี้ใครยังไม่เสร็จ โอเคนะคะ เสร็จหมดแล้ว เรามาที่ตำแหน่งนี้ เห็นไหมคะ ตำแหน่งของการแสดงผลนี่ ก่อนตำแหน่งนี้นิดนึง แฮชแท็กเข้าไป เพื่อจะอธิบายว่าตรงส่วนนี้เราจะสร้าง สร้างภาพต่อเนื่อง แล้วก็ มันไม่สร้างนี่ เราสร้างไว้แล้ว เราจะทำภาพต่อเนื่อง ให้มันเป็นกรุป มันเข้าไปเป็นให้มันเหมือนมันเป็นรูปเดียวนะ พอแปลเป็นไทยนี่ แปลลำบากมากเลย ขอเป็นอังกฤษแล้วกัน อธิบายยาก คำไทยคำเยอะ อธิบายยาก เรานะคอมพิวเตอร์เราแปลด้วยภาษาอังกฤษ createcreate Sprite ไand group คือ รูป Sprite ที่เขาทำเสร็จแล้วเนี่ยเราจะนำมันมารวมให้มันเป็นเหลือรูปเดียวจากหลาย ๆ รูปนะคะ เรียน ๆ ๆ กำหนดตัวแปร Moving เคลื่อนไหวนะคะ เคลื่อนไหว moving_การเคลื่อนไหวของภาพเรา Moving Sprite = pygame เลือก Pygame น๊อตLike พิมพ์ไปเลือกไซส์เล็กนะคะ สไปรท์ตัวเล็กที่ไม่มีอีก s ดูดี ๆ นะคะ เด็ก ๆ จะไปตัวที่เลือกในภายเกมต่อไปนี้เป็น Sprite ที่ไม่มี s นะคะ กรุ๊ปใช้ตัวใหญ่ เพราะตัวนี้มันเป็นเป็นฟังก์ชันที่เขาสร้างไว้แล้วนะคะ ชื่อว่า group ไม่ใช่ฟังก์ชันหลถ้าตัวใหญ่เนี่ยมันคือฟ้าฟ้าที่ชื่อว่ากุ๊กที่อยู่ใน Library อ่ะค่ะ เราจะไปเรียกใช้ Class กรุ๊ปนะคะ ตอนนั้นเลยใช้ตัวใหญ่สังเกต group ใหญ่นะคะ เอาไปวัน ๆ ต่อไปนะคะ สิ่งที่เราจะทำต่อมา ก็คือประกาศตัวแปรเพื่อเรียกใช้ ไอ้ตัว class ของเรานะคะ class เรา ชื่อ class ตัวใหญ่มันใช้ว่าแคทใช่ไหมนั้นตัวแปรเราก็จะใช้ชื่อมันเป็นตัวเล็กนะคะ แล้วจะเป็นแคทเล็กเท่ากับ cat ใหญ่เพราะเราจะเรียกใช้ขาเราต้องเรียกแชทใหญ่นะคะ วงเล็บด้วย ในวงเล็บใส่อะไร ตำแหน่งค่ะ ตำแหน่งของไอ้ตัวนี้ ลองใส่ก่อนนะ ขอลองที่ 1010 อยากรู้เหมือนกันมันจะไปโผล่ตรงไหน แล้วก็กำหนดให้ตัวแปร Moving Sprite นี่นะคะ นำเข้าถ่ายรูปนั้นน่ะให้มันกรุ๊ปอ่ะพิมพ์เอ็มแล้วเลือก moving ไปนะคะ จะไปนี้ใช้สไปรท์ที่มี SMS จะไปที่เต็มเม็ดนะคะ ดูดี ๆ เรียกใช้ไม่เหมือนกันนะลูก .as as ก็คือเพื่อจะให้มัน App อะไรเข้าไปให้มัน As ตัวแปร cat ของเราเข้าไป csc เล็ก OKมันเอาไปไว้ที่ cat ตอนนี้คือเป็นเอาภาพที่มันต่อกันหลาย ๆ ภาพนี่ มาให้มันทำให้มันเป็นภาพเดียวค่ะ รวมกันเป็นภาพ 1 ภาพ ให้มันดูเหมือนเป็นรูปเดียวนะคะ 3 บรรทัดนี้เสร็จยังคะ ใครยังไม่เสร็จ ยังนะคะ ถ้าอย่างนั้นเดี๋ยวไปต่อไม่ได้ มันจะขาดตอนเช็คนะคะ เช็กตรง ไปรท์แรกไม่มีเอสนะคะ ไปที่ 2เรียกฉายหลังดอกเนี่ย vs นะคะ ต่างกันตรงนี้เพราะมันจะไม่ขึ้น Error นะเพราะมันสร้างแล้วมันโดนสร้างแล้วแต่ดูดี ๆ แค่นั้นเอง เช็คตรงนี้ 2 จุดนี้นะคะ พอ Sprite ที่กำหนดใน Moving Sprite เนี่ยไม่มี Hเวลาเรียกอ่ะต้องมี SMS นะคะ ต้นอ่ะJR Pass น่าจะเสร็จกันหมดแล้วทุกคนดูที่เราจะต้องทำต่อ เราจะสร้างฟังก์ชั่นให้มันวิ่งอยู่นี่ กำหนดฟังก์ชัน run ไปหาอัพเดท เมื่อมันวิ่งไปแล้ว เด็ก ๆ บอกว่าทำไมวันนี้โค้ดเยอะจังเลย คือมันยาวน่ะ แต่พอสร้างแล้วมันจะใช้ไปได้นะคะ เพราะฉะนั้น ตัวนี้นะคะ เราจะไปที่บรรทัดที่ต่อจากฟ้าใสไหมคะ บรรทัดสุดท้ายของ class enter ลงไปใส # หน่อยเ ราจะบอกเขาว่าโปรแกรมบอกตัวเองออกตัวเองนี่ถ้าใส่แฮชแท็กในบอกตัวเองนะคะ ว่าตรงส่วนนี้เราทำอะไร สร้างฟังก์ชันค่ะ สร้างฟังก์ชัน ตรงส่วนนี้เราจะสร้างฟังก์ชัน run นะคะ ที่ชื่อว่า run กับ Update run กับ update 2 ตัว รูปแบบของการสร้างฟังก์ชัน ก็คือ definition นะคะ คำว่า def นั่นเองนะคะ tab tab เข้าไปแค่ 1 ครั้งนะคะ มันจะไม่อยู่ตรงกับ self นะมันจะอยู่ก่อนเซลลดีเลือกแบบฟังก์ชันนะคะ แต่เด็กแล้วก็เลือกฟังก์ชันdefinition ที่ฟังก์ชันก็คือลั่นตัวแรกตัวแรก เขียว ๆ เนี่ย ในวงเล็บเนี่ยไม่ใช่ในวงเล็บขึ้นคำว่าฟังก์ชันเนี่ยเราแก้เป็น run นะคะ เพราะฟังก์ชันที่เราใช้มันชื่อว่าร้านเราจะใช้มัน ชื่อว่า run นะคะ แล้วก็เรียก self มา และเลือกเซลล์ ในส่วนของบรรทัดที่ 2 พิมพ์ เซลล์ค่ะ autos vehiclesนันunderscore aniamate animate มาจาก Animation แหละ จะยาวไปอนิเมทน่ะ run aniamte RAnime Anime Anime Anime สั้นไป อนิเมะงงไหมเนี่ย เอาแอนนิเมทละกัน run = true ทำงานเมื่อเป็นจริงจะใส่เงื่อนไขแล้วนะคะ เท่ากับทรูใช้ทรูใหญ่นะที่เลือกครูผู้ใหญ่ไหมคะ เรามีฟังก์ชันแล้วสร้างอีก 1 ฟังก์ชันนะคะ dep มันเดิมเลือกแบบฟังก์ชันเหมือนเดิม ตำแหน่งชื่อฟังก์ชันเปลี่ยนเป็นเราสร้าง 2 ตัวนะเราบอกเราจะสร้าง 2 ตัวก็คือรันกับ Update นะคะ ชื่อฟังก์ชันไม่จำเป็นต้องใช้ตัวใหญ่ เรียกใช้ self ค่ะ self แล้วก็ใส่โคลอน แล้วก็เรียกใช้Speed ในส่วนของ statement หรือ pass นี่นะคะ เราจะมากำหนดเงื่อนไขให้มันมันทำงานนั่นเองนะคะ ก็คือใช้คำสั่ง If ค่ะ เลือก if statement If Condition ตัวแรก ไม่พิมพ์เองนะเด็ก ๆ ไม่อย่างนั้นเดี๋ยวรูปแบบมันจะผิด ให้เลือก i If condition นะคะ ไม่พิมพ์นะคะ เลือกใช้ เรียก self มาแล้ว . เลือก Run Anime เราที่สร้างไว้มาใช้งาน ถ้ามี if คำสั่งเท่ากับของ if เราต้องกด 2 ตัวนะคะ = = true true พิมพ์ T แล้วเลือก ใหญ่นะคะ ตรงส่วน statement pass เราจะเรียกสไปรท์น้านะคะ พิมพ์ self เดิม แซวแซวCU เลือก karolinska Center เราจะเพิ่ม นึกออกนะ พอพอเวลาเวลาที่มันเคลื่อนนะคะ ตำแหน่งปัจจุบันมันเริ่มที่ศูนย์มันจะนั่นเราจะต้องเพิ่มค่าให้มันบวก นะคะ บวกใส่เครื่องหมายบวกแล้วก็เท่ากับ ก็คือเพิ่มความหมายก็คือค่าไฟบวกแล้วเท่ากับ แสดงว่าเพิ่มนะคะ บวกก็บวก บวกอะไรเข้าไป ให้บวกเข้าไปใน Speed sp ที่เราสร้างไว้ กด SP แล้วเลือกสปีด กด enter นะคะ เราจะเพิ่มเงื่อนไขซ้อนเงื่อนไข อันนี้เพิ่มแค่ speed นพ เพิ่มความเร็วเข้าบ่าย กด like แล้วเลือก condition เหมือนเดิมนะคะ if i n t แปลนี้นะคะ ไม่ใช่ตัวแปรหลัก มันเป็นวงเล็บค่ะ ใส่เปิดแล้วปิดใส่เข้ามาทีเดียวเลยนะ วงเล็บจะได้ไม่หายว่าอย่างนั้นเถอะ พิมพ์ self และเลือกself นะคะ น็อตcurrent Spice หาพิมพ์และเลือก current Sprite เงื่อนไขก็คือให้มันเช็คว่ามันยังน้อยกว่าหรือเท่ากับ เล้งเล้งนะคะ lEn len ใส่วงเล็บค่ะ เราจะเลือกเซลล์ estimates Feltdot size Size S นะคะ รอบนี้จะเลือก Sprite S นะ Sprite Sheet S นะคะ ใน len เลือก Sprite S นะคะ ตรง statement pass นะคะ พิมพ์ self เหมือนเดิมเลือกเซลล์พิมพ์ซีลและเลือก Sprite เท่ากับ 0 นะคะ ค่าเริ่มต้นของ พาเลสเท่ากับศูนย์ตอนนี้มันกำลังเช็คให้มันเช็คค่ามันจะวนมันหมดลูกอ่ะแล้วก็เป็นเหมือนเดิม รันอนิเมะนะคะ เลือกรันอนิเมะ เอากับเค้ามีธุระแล้วก็ต้องมี 2 โอเค ถ้าไม่เป็นจริงกระจกกันทำงานแล้วทำเมื่อจริงมันจะเข้ามาเช็กค่าก่อน เปิดแอปใหญ่และเลือก false บรรทัดนี้เสร็จแล้ว ย้อนหลังกลับไปที่ตำแหน่งแรกนะคะ if ที่ 1 พิมพ์ self ค่ะ .i เลือก Image = แล้วเหมือนเดิมเรียก self แล้ว Sprite ที่เติม S สี่เหลี่ยมใหญ่วงเล็บสี่เหลี่ยมใหญ่เรียก intint int int in เลือก int ในวงเล็บเข้าไป ในวงเล็บเลือก Self current Sprite นะคะ มือไวตริง ๆ เลย เร็จไปอันนี้เราทำส่วนของฟังก์ชันรันกับ Update เสร็จแล้วนะคะ มี 2 4 6 8 10 นี่นะคะ ตั้งแต่บรรทัดนี้เลย อยากจะไปเช็คตำแหน่งนะคะ เด็ก ๆ ตำแหน่งของฟังก์ชัน ก่อนนะคะ วันนี้อาจจะยาวหน่อย แต่ผลน่าจะคุ้มค่าพอใจน่าจะเป็นที่พอใจของเด็ก ๆ อยู่ เราจะมาเรียกใช้ตัวนี้ คีย์เรากำหนดแล้ว แต่เราต้องเรียกใช้มันนะคะ ตรง เดี๋ยวนะ if moเงื่อนไข key velo ving cat cat ca t จะต้องเป็น pygame.quit She is SheMK Livelikeดีครับ ดูนะคะ เด็ก ๆ จะเรียกใช้ตัวแปร cat ที่เรียกฟังก์ชัน run มาทำงานนะคะ ปีนี้ที่เราจะไปลบพอจะมีตรงไหนบ้าง เราจะเริ่มลบแล้วนะ ลบตรงนี้นะคะ นำเข้าภาพนี่ ลบออกเลยเพราะเราเอาไปไว้ที่ calss แล้ว เด็กไปหาตัวเดิม pos เดิมเก่าลบออกนะคะ เดี๋ยวมันยังลงดีที่เรานำรูปเข้าในสัปดาห์ก่อนนะเนาะเราเขียนแฮชแท็กไว้อยู่ลบออกนะคะ ไปไหนอีก Continuous เดี๋ยวก่อน โอเค กด B ดู test ค่ะ Control B error ก็เลิกเลยเลิกก็มาหาบรรทัดที่อะไรเนี่ยLINE 75LINE 75ว่าไงวะ ดูดูบรรทัดนะคะ ของใครของมัน มันบอกว่ายังไง Identity assistance indent 75 clock มันบอกว่า indentation error unexpectedI didn'tfinishShell Command pythonBig Brother ขอดูก่อน ขอดูโค้ด ประโยชน์ของขวดนะคะ การตั้งค่าทั่วไป แบ่งเอาสกรีนไปใส่ข้างล่างไปใส่ clock tick ไปใส่ล่าง หsไปต่อ ไปต่อ เราน่creen bilt าจะต้องสร้างตัวหนึ่ง รู้แล้วเราลืมตรงนี้ไปด้วย โอเคนะคะ เพิ่มเพิ่มโค้ดอีก 3 บรรทัด นี่ เห็นมะ Moving Sprite ที่เราสร้างเสร็จแล้วอ่ะต้องมาอยู่ตรงนี้ เยอะจนเบลอเหมือนกัน เราจะไปเราจะไปที่ตำแหน่งการแสดงผลของเรานะคะ เพิ่มโค้ดอีก แล้วก็ให้เด็ก ๆ ก่อนอื่นเลือกการตั้งค่าทั่วไป 3 บรรทัดเนี้ยนะแล้วก็บอกกด Ctrl xเ อาไปไว้ข้างล่างค่ะ นะคะ เด็ก ๆ เอามาไว้นี่ เอาวางไว้ก่อนหน้ากำหนดหน้าจอเกม ต้องขยับตำแหน่งอะไรสักอย่างหนึ่ง พิมพ์ Moving เห็นไหม เลือก moving Sprite นะ ให้มันว่านะคะ ให้มันd r a W draw อะไรให้มันวาด screen แล้วก็เลือกใช้คำสั่ง Update นะคะ Movie เต็มเรื่อง เลิือก function Update เรียก function Updateให้ค่าเริ่มต้นอยู่ที่ 0 ตำแหน่งนะคะ 25 แล้วก็เรียก pygame .disPlay มาใช้งาน. flip FLIP นะคะ ใส่วงเล็บ น่าจะ ลอง CTRL B ดู มันบอกว่าอย่างไร 76 screen blit unexpected ไม่รู้จัก attribute nodule ผิดตรงไหน เรียกฟังก์ชันผิดนี่เอง ไม่เป็นไร catcat You Are Not function of the fastest ผิดอีกหรือ บอกว่าไม่รattribute เดี๋ยวนะ มีความ clock เล็ก clock เล็ก 74 7ู้จัก 4 ราย 74 inmodule CMoving B aspirin function of the fastest ไม่รู้จัก ad นจะเป็นไปได้ไงไม่รู้จัก App dino run ไม่รู้จัก add ใส่ dino เข้าไม่ได้ ข้ามตัวนี้ไป self Imagemoving Sprite.add to event ไม่เจอ อันนี้ติดไว้ก่อน errror อยู่ 1 บรรทัดนะครับ จะไปลองลำอยู่ในเครื่องตัวเอง เรื่องของเรื่องคือเรื่องตัวเองออกแล้วมันอยู่นี่ไม่ออกคือคืออะไรครับพี่น้อง save ไว้ก่อน เดี๋ยวเรามาต่อสัปดาห์หน้า มันยังไม่วิ่งให้เรา ขึ้น Error attribute add มันหายไปไหนท่อนหนึ่ง สำหรับวันนี้ก็พอแค่นี้ก่อนนะคะ ขอบคุณพี่หล้านะคะ เดี๋ยวเราจะมาต่อกันในสัปดาห์หน้าค่ะ ขอบคุณค่ะ วิธีอัพเดท