(อาจารย์สุธิรา) ต้องมารันอยู่นี่ก็เลยเสียเวลา สัปดาห์ก่อนเรามี Background แล้ว มี ฺBackground แล้ว มีตัวแล้วนะอันดับแรกเด็ก ๆ ต้องเช็กก่อน เช็กตำแหน่งแรกก่อนนะคะ ไปทีละบรรทัด เปิดไฟลนะ ที่เราทำสัปดาห์ที่แล้วหนก่อนน่ะขึ้นมาก่อนเราทำ class มี class แล้วก็ชื่อตัวเกมเราแล้วใช่ไหมคะ ตอนนี้ class เด็ก ๆ ถึงบรรทัดไหนแล้ว โหลดเข้ามาหรือยัง ดูนะคะ ว่าเราจะต้องมีส่วนของ class ที่เป็น sprites ก็คือเราจะนำภาพต่อเนื่องเข้ามาใช่ไหมคะ เด็ก ๆ โหลดภาพเข้ามาแล้ว เสร็จแล้วสร้างส่วนสร้างภาพเคลื่อนไหว ใครยังไม่มีส่วนนี้ มีหรือยังคะ ใครยังไม่มียกมือนะ ถ้ามีแล้ว ส่วนต่อมาที่เด็ก ๆ จะต้องมีนะคะ ก็คือส่วนของฟังก์ชัน Run กับฟังก์ชันอัปเดต มีหรือยังคะ เดี๋ยวขยายขนาดเพิ่ม ้ ใครยังไม่มี มีแล้วนะ เพราะหนก่อนเราน่าจะทำไปถึงประมาณนี้ โอเคไหม ถ้าเราได้ส่วนนี้แล้ว สิ่งที่ต้องมาทำนะคะ ส่วนของ sprite group การจัดกลุ่มให้มัน มีหรือยังคะ ตรงส่วนนี้เห็นไหมคะ Creat sprite and group น่ะ มีแล้วนะคะ โอเค ส่วนต่อมาที่จะเช็กนะคะ จะค่อย ๆ เช็กไป ก็็คือส่วนของการเรียกไอ้ตัว moving Sprite draw กับ moving sprite update มาใช้ โอเคไหม ใครยังไม่มีตรงนี้ น่าจะผิด โอเคหรือยัง ยังไม่มี บาสต้องคีย์เพิ่มนะคะ เพราะมันเป็นส่วนของการแสดงผล มันต้องเรียกมันมาใช้งาน ต้องคีย์ 2 บรรทัดนี้เพิ่ม สังเกตนะ มี เรามี # คำว่า "การแสดงผล" ไว้ เห็นไหมคะ ว่าเวลาเราจะบอกว่าไปแก้ไขแต่ละส่วน เราก็จะเห็นว่ามันอยู่ตรงในส่วนของอะไรในโปรแกรมเรา เหมือน moving sprite draw กับ moving sprites update จะอยู่ในส่วนของ # ที่ชื่อว่าการแสดงผล สังเกตว่าทุกครั้ง เวลาเขียนจะบอกว่าให้ใส่แฮชแท็กบอกตรงส่วนนี้ เราเอามันไว้ทำอะไรนะคะ เราจะได้รู้ตำแหน่งเวลาแก้ เราจะได้เช็กได้ว่ามันผิดตรงไหน ตำแหน่งไหน พอไล่แก้มันก็จะหาเจอ เมื่อคืน อาจจะเป็นเครื่องที่บ้าน เดี่ยวจะก๊อบฯ จะ Copy แล้วไปลองแก้ที่บ้านดู รูป Background มันไม่ขึ้น เครื่องที่บ้าน ใช้ไม่ได้เลย โอเคนะ ถ้าใครมีครบนะคะ ทุกส่วน เหมือนที่กล่าวมาแล้ว ลองกด Ctrl + B 1 ครั้งก่อน จะดูว่า Run แล้วเป็นอย่างไร แล้วมันไป Error ตรงไหน ให้เด็ก ๆ กด Ctrl + B นะ ถ้าใครที่ขึ้นนะ มันจะต้องขึ้นฉากที่เราทำใช่ไหมคะ แล้วก็ขึ้นตัวอันนี้ ไปทำสัดส่วนมันบิดเบี้ยวไปหน่อย เดี๋ยวขยายให้ใหม่ก็ได้ แมวเป็นแมวผอม ๆ ถ้าใครทำได้ เห็นไหม 1. คือ เราทำให้ฉากเลื่อนใช่ไหมคะ แล้วพอเรากดน้องแมว น้องแมวเรานะคะ น้องก็เดิน เห็นไหม เพราะเราเลือกภาพที่เป็น Sprite ก็คือมีภาพต่อเนื่องนั่นเองนะคะ น้องก็จะเดิน เห็นไหมคะ จะค่อย ๆ เดิน ความเร็วในการเดินก็ขึ้นอยู่กับการตั้งค่าเวลานะคะ เดี๋ยวให้บอกว่าตรงไหนที่เร็วมากเร็วน้อย ใครไม่เป็นอย่างนี้ ยกมือ ใครยังไม่มีฉากขึ้นมา ไม่มีตัวการ์ตูนขึ้นมาเลย มันน่าจะมี Error เตือนด้วย ถ้าใครไม่ผ่านน่ะ ของมิ่ง นี่ มิ่งต้องใส่ไอ้ตัว bgx บรรทัดที่ 75 เห็นไหม เข้าไปก่อน ก่อนหน้ามันนะ แล้วก็ใส่ น่าจะเพิ่มบรรทัดที่ 2 เพิ่มมา เห็นไหม มิ่งจะเห็นตรงส่วนที่เรา # ว่าเป็น Sprite Group น่ะ ต่อจากตัวนี้ นึกออกไหมลูก เห็นหรือเปล่า วางตำแหน่งผิด ทำแถบครอบตั้งนี่ จนถึงไอ้นี่เลยลูก ทำอย่างนี้ กด Ctrl + X เพื่อตัด Ctrl กดปุ่ม Ctrl แล้วก็ตัว X เห็นไหม แล้วก็เอามาไว้ต่อกับตรงนี้ Enter แล้วก็ Ctrl + V Ctrl + V ทุกครั้งที่พอแก้ปุ๊บน่ะ ให้เด็ก ๆ กด Ctrl + B ทุกครั้ง โอเคหรือยัง พอย้ายแล้วกด Ctrl + B ดู กด Ctrl + B ดู ทุกครั้งนะคะ พอแก้โค้ดน่ะเด็ก ๆ rt pygame system หรือที่ sys ลูก sys เห็นหรือเปล่า ดูดี ๆ นะ เห็นไหม import คำสั่งมี Import pygame import sys แล้วมัน มันไปอยู่ตรงตำแหน่ง system มันจะมีตัวช่วยขึ้นมานะ พอไปกดมันก็เลยขึ้น มันจะผิดนะคะ ต่อไป รรทัดต่อมา ตำแหน่งนี้ ตั้งค่าทั่วไป ทำเหมือนเดิม Ctrl + X กับ... Ctrl + B โอเค Enter ลงไป ctrl +B ใหม่ทุกครั้ง พอแก้โค้ด คำสั่งต้องผิดสัก 1 ตัว sys ทีนี้ดูนะมิ่งนะ pygame.init() ตัว Clock หรือเปล่าที่ผิด เห็นไหม C pygame.time.Clock Clock ตัวใหญ่นะลูก ตัว C Clock ตัวนี้ที่เป็นตัวใหญ่หมายถึงที่เป็น Library ที่เรียกใช้ มากี้ดูนะคะ เวลา Code มัน Error มันจะชี้ตำแหน่ง เห็นไหม เห็นไหม ไม่เหมือนตรงไหน ดูสิ sprite .Sprite อันแรก Sprite ตัวเล็กใช่ไหม คะ.sprite ตัวที่ 2 sprites ตัวแรกเป็นตัวใหญ่ เห็นไหม แก้แค่นั้นล่ะ ตัวที่ 2 s ตัวที่ 2 ต้องเป็น S ตัวใหญ่ลูก เห็นไหมต่างกันนะ มันเป็นคนละตัวนะคะ มันจะเป็นตัวแปรคนละตัวเลย เห็นไหมคะ Sprite ตัวแรก ใช้ s ตัวเล็กเห็นไหมคะ ตัวที่ 2 S ตัวใหญ่กว่าเห็นไหม นี่คือ... เสร็จแล้วกด Ctrl + B ทุกครั้งนะคะ ตรงไหนขึ้น Error จะได้ไปด ููเด็ก ๆ เวลา Error แล้ว มันขึ้นว่า use tag อะไรอย่างนี้นะคะ แสดงว่าตรงตำแหน่งนี้ เด็ก ๆ อาจจะใช้วิธีการกด Spacebar ไม่ได้กด Tab วิธีแก้ ดูนะคะ ก็คือ เด็ก ๆ ดูนะคะ ไปที่ท้ายบรรทัดก่อนหน้า line ที่ error สมมติมันขึ้น Error line 9 ให้เด็ก ๆ ไปที่ Line ที่ 8 ไปบรรทัดที่อยู่บนบรทัดที่ขึ้น Error แล้วกด Delete 1 ครั้ง เพื่อให้บรรทัดนั้นน่ะ เห็นไหม กดจนให้ตัวข้อความน่ะมันเข้ามาชิดตัวอักษรตัวสุดท้ายของบรรทัดนั้นเลย แล้วกด Enter ลงไป เห็นไหมมันจะจัด Tab อัตโนมัตินะคะ ถ้าใครขึ้นว่า... เดี๋ยว ๆ ทำให้ดู สมมติ ๆ ดูนะ ถ้าเด็ก ๆ เคาะ Spacebar มันจะเป็นอย่างนี้ พอกด Ctrl + B มันจะขึ้นคำว่า "Use of Tab and Space indentation" ปุ๊บนี่ นั่นหมายถึงว่าตรงบรทัดนี้ เด็ก ๆ ไปใช้กด Spacebar แทนการกดกด Tab นึกออกนะ วิธีแก้ก็เหมือนที่บอก ก็คือนี่สังเกตได้อย่างไร ดูที่ตัว ตัวนี้ เห็นไหมคะ พอทำ Tab แล้วมันจะเป็นจุด ๆ แต่ถ้าเป็น Tab บรรทัดข้างบนนะคะ ถ้าเป็น Tab มันจะเป็นขีด เห็นไหม มันจะเป็นขีด มันจะไม่เป็นจุดทีนี้บางคน บางคนดู ดูในหน้าจอเพราะว่าต้องดูพี่ล่ามด้วย แล้วตัวมันเล็ก ดูไม่ออก วิธีขยายขนาด ก็คือกด Ctrl กับเครื่องหมายบวก เห็นไหมตัว font มันก็จะใหญ่ขึ้นใช่ไหมคะ มันก็จะทำให้เห็นได้ชัด เพราะฉะนั้น ถ้าของใครที่พอขึ้น Error usr of tag เหมือนวิธีที่บอกไปเมื่อกี้นะคะ ลบแล้วกด Enter ลงมาเพราะฉะนั้น ตัวนี้น่าจะแก้เองได้แล้วนะคะ ถ้า Error แบบนี้นะคะ ทีละคน ใจเย็น ๆ นะ เวลาแก้โค้ดต้องใจเย็น ๆ เพราะมันหลายเครื่อง บางคนนี่ พอใช้คำสั่งนี้มิ่ง ดูนะคะ บางทีนี่ไฟล์รูปที่เราเอามานี่นะคะ เด็ก ๆ ลองเปิดด้วยโปรแกรมที่ชื่อว่า Paint open with paint ปุ๊บ นี่ ตัวมันใหญ่ใช่ไหม ตัวน้องใหญ่นี่นะคะ วิธีที่เราจะลดขนาดเพื่อให้มันเท่ากัน ดูวิธีนะเด็ก ก็ไปแก้ทุกตัวเลยนะคะ ก็จะได้ไม่ต้องไปแก้ตรงโค้ดนึกออกไหม ไปแก้ที่ขนาดรูปเราดีกว่านะคะ ของเด็ก ๆ เดี๋ยวจะงง ก็คือเลือก เห็นไหมคะ Resize เห็นไหม เปอร์เซ็นต์ น่ะค่ะ เราก็ลดลงทีละครึ่ง 50 เปอร์เซ็นต์พอไหม คลิก OK เห็นไหมคะ กออกนะ เพราะฉะนั้นเปิดไอ้ File ตัวไอ้นี่เราทุกอันแล้วก็ Re Size แต่อย่าลืม Save นะ พอ Resize เสร็จน่ะ นึกออกนะคะ มิ่งเข้าใจแล้วนะ ทีนี้ พอ save ไป บางคนมีพื้นหลังเลยนะเด็ก ๆ เอาพื้นหลังออกทำอย่างไรคะ จำได้ไหมใน Google นะคะ เอาพื้นหลังออก ชื่อนี้ เอาไว้สอนเดี๋ยวจะเสียเวลา มิ่งดูเวลาแก้ให้พิมพ์ตรงนี้เพิ่ม เห็นไหมคะ ตรง sprite append นี่ เพิ่มประโยคนี้ สเกลเข้าไปก่อน อันก่อนแล้วก็อบจะง่ายกว่าพิมพ์อันนี้ให้เสร็จก่อน แล้วจะบอกว่าแก้ตรงไหนอีก จุดหนึ่งนะคะ ที่เด็ก ๆ น่าจะผิดเหมือนกันหมดก็คือคำสั่งนี้ค่ะ อยู่ไหนน่ะ นี่ ๆ moving.sprtie ใช่ไหม ลบออก 1 ครั้ง เห็นไหมนี่ sprite มันมี 2 นี่ ลบออกอันหนึ่ง ลบ 1 อัน ลบ... ไม่ ๆ ๆ ลบตัวที่ 2 ออกนะคะ ตัวหน้าไม่ต้องลบนะ เพราะมันเป็นของตัวแรก ลบตัวที่ 2 ออก โอเค แล้วก็กด Ctrl + B แก้ด้วย แก้ตรงนี้ ใช่ไหม นี่ เปิด โอเค แล้วก็ดูตรงชื่อนะคะ ชื่อ cat นี่ มันเป็นตัวเกมแม่นะคะ ตัวเกมเด็ก ๆ ชื่ออะไรน่ะ ใส่ชื่อตัวเอง ไม่ใช่มาใส่ชื่อ Cat เหมือนของเรานะ โอเค ใครแก้แล้วลองกด Ctrl + B ใหม่ กด Ctrl + B บรรทัดไหนอีก ะ Line 77 sprite และอีกจุดหนึ่งที่เด็ก ๆ จะผิดกันบ่อยนะคะ อีกจุดหนึ่งจะอยู่ตรงบรรทัดที่ล่าง ๆ หน่อย ตรงที่บอกว่า คำสั่งที่บอกว่า moving.sprite.update ตัวเลขคือค่าที่เป็นทศนิยม 0. ไม่ใส่ 0. แล้วก็ , นึกออกไหม เป็นค่าตัวเลขนะคะ เป็น 0.30 ไม่ใช่ 0,30 นะคะ มันเป็น 0. นะคะ เป็นตัวเลขแก้ แก้ , เอา , ออก ใส่ 0.25 หรือ 30 ก็ได้ ก็คือค่านี้ ก็คือเป็นให้ไอ้ตัวเคลื่อนไหมมันอัปเดน่ะค่ะ ระยะเวลาที่เราตั้งไว้นั่นเองนะคะ ใครแก้แล้วกด Ctrl + B บอกแล้วใครแก้แล้วกด Ctrl + B เลยนะคะ ไล่แก้ไปทีละบรรทัด นิดเดียว เดี๋ยวทีนี้ เปิด อ๋อ ตัวนี้ ไม่ต้อง เราเรียกมาแล้ว ลบออกได้เลยบรรทัดนี้ ลบออกได้เลย บางคนจะมีบรรทัดหนึ่งจะมีไปเรียกตัวภาพมาใช้นะ แก้เสร็จกด Ctrl + B ใหม่ลูก ติดอยู่บรรทัดที่เท่าไร 79 clock.tick พิมพ์ผิดนี่ C เห็นไหมคะ C-l-o-c-k ลูก c-l-o-c-k กุ้ง เจ้าพิมพ์เป็น colck เช็กด้วย เช็กคำผิดด้วย เห็นไหมคะ สังเกตเวลา error มันก็จะบอกตำแหน่ง ให้ดูบรรทัดนั้นแล้วก็ดูที่ข้อความ c ก่อน นี่ไง กด spacebar อีกแล้ว เดี๋ยวก็ error อีก กด spacebar นะ ไปกด Tab ต้องกด Tab เห็นไหม Ctrl + B ใหม่ อีกบรทัดหนึ่งนี้ คำสั่งนี้ผิดแน่นอนไม่ต้องบอกก็รู้ มันคือ pygame ไม่ใช่ sprites game py p-y เอา s ออก มี s เห็นไหม ลบตัว s ลบออกลูก นี่ ๆ เห็นหรือเปล่าข้างหน้า ลบ s ออก ลบตัว s ออก ลบออกค่ะ โอเค Ctrl + B ใหม่ นั่นไง ลองกดแป้น ไม่เคลื่อน ไม่เคลื่อนเพราะอะไร นี่ pygame.update เรามีแล้ว อันนี้ซ้ำ เอาออก ลบออกได้ บรรทัดนี้ ลบออกเลยค่ะ โอเค pygame.click ไม่ move ตัวนี้ error บรรทัดไหน นี่ไหง Bee ไม่ใช่หรือ แก้ชื่อนะคะ คือในโค้ดตัวอย่าง cat ก็ cat ตามเลย ต้องจำด้วย ชื่อชื่อตัวการ์ตูนตัวเองชื่ออะไร ใช่ ๆ กด Ctrl + B ใหม่สิ แล้วกดปุ่มลูกศร นี่ไง ทีนี้รูปตัวเอง เอามากี่รูป เพราะมันไม่ขยับเลยใช่ไหม รูปมันไม่ขยับ เรามาดูที่ sprite นี่ นกตัวที่ 1 ตัวที่ 2 ตัวที่ 3 ตัวที่ 4 ตัวที่ 5 มีนก 5 ตัว เปิดไฟล์รูปให้ดู แล้วทำไม size ไม่เท่กันนะ นกตัวที่ 1 ตัวใหญ่ ตัวที่ 2 ทำไมตัวเล็ก ปรับไซซ์ไม่เท่าหรือ กุ้งลองเอาชื่อนี้ นี่ ๆ ชื่อที่เป็นภาษาอังกฤษ แก้จากนกเป็น bird ไหม bird แก้ชื่อตรงนี้ ชื่อภาษาไทย เป็นชื่อภาษาอังกฤษ เพราะเพราะเรามี 2 ไฟล์ใช่ไหม ลองเปลี่ยนเป็น B-i-r-d แก้ทุกอันเลยลูก แล้วลอง run ใหม่นะ ของใครยังไม่ขึ้น ยังไม่ขึ้น มิ่งได้หรือยัง ติดไหน ติดบรรทัดไหน อ๋อ มิ่งก๊อบฯ มาหมดแล้วใช่ไหม อีกบรรทัดข้างหลัง มิ่งดู เพิ่มขนาด ลองก่อนได้นะ นี่ก็คือขนาดรูปที่เราจะ เห็นไหม ตรงนี้ใส่เข้าข้างใน ใส่เข้าไปก่อน นะคะ แล้วก็วรรค แล้วก็ใส่ค่าตัวเลขตามนี้ จำนวนวงเล็บปิด ให้ใส่เท่าำนวนตัวหลังนะลูกนะ แล้วก็เหมือนเดิม ก๊อบฯ ให้ครบ โอเค กด Ctrl + B Run ดู ไปไสล่ะ error หรือ บรรทัดที่ line 53 ทำไมบรรทัดนี้ขึ้น Error self sprite append pygame.image.load เดี๋ยวนะ ขอดูนามสกุลก่อน Properties png ตัวนี้เป็น png แก้นามสกุล P ใช่ไหม ตัว P นามสกุล png เหมือนตัวอย่างน่ะลูก เห็นไหม .pn แล้วก็ g นี่ ๆ ๆ ทุกอันเลย แก้ทุกอันเลย โอเค line 33 บอกว่าอย่างไร update อ๋อ แสดงว่าบรรทัดนี้มิ่งโค้ดผิดใช่ไหม มันขึ้น... กด s ใหม่ลูก วรรค กด S เลือก Speed Speed Enter อ๋อ ตรงนี้ นี่ไง ชื่อฟังก์ชันอัปเดต เห็นไหม เดี๋ยวมิ่งเอาไอ้นี่ขึ้นไปเลย บรรทัดนี้ขึ้นไปเลย Delete เลยลูก กด Delete เลยค่ะ โอเค นั่นไง ได้แล้วเห็นไหม ังเกตโค้ดเรานะ ถ้าถูกสีมันก็จะตรง Ctrl + B ใหม่ error ด้วย ไอ้เจ้ามิ่ง ครบหรือยัง ครบแล้ว Run animate e sprite while to แก้ตรงนี้เด้อ ถ้ามิ่งผิด เห็นไหม แก้ตรง while to ไล่ไปทีละบรรทัด โอเค ใช่ไหม ทีนี้ ทำไมรูปมันเป็นดึ๊ก ๆ ใช่ไหม เรามาดูกันที่ตำแหน่งของภาพตัวที่ 1 เดี๋ยวนะ มันขึ้น Error หรือเปล่า Line 80 ยังใช้ไม่ได้ quit ตัวเล็ก เห็นไหม ใช้ไม่ถูก สังเกตด้วยนะคะ บางทีมันเป็นตัวใหญ่ บางทีมันเป็นตัวเล็ก แก้เลย โอเค ใช้ตัวเล็กลูก Ctrl + B ใหม่ ไม่ขึ้น ทำไมรูปไอ้นี่ไม่ขึ้นนะ าพชื่ออะไรนะ background 18253 มิ่งเปิดโฟลเดอร์ที่เก็บรูปให้ดูด้วย ไหนใครยังไม่ออกอีกเดี๋ยวนะคะ ทีละคนนะคะ รอ ๆ ทีละคน ใจเย็นนะคะ เมื่อกี้มีผิด แม็กกี้ดู ตรง = True Run Animate กดอันไหนนี่ ไปกดผิดอันหรือเปล่า นี่ ถูกแล้ว Run animate และอีกบรรทัดหนึ่งนะคะ ที่จะต้องเพิ่มเข้าไป นี่เห็นไหมคะ ต่อจาก super init () นะคะ เด็ก ๆ จะต้องใส่ self.run animate = false บรรทัดนี้นะคะ ใส่บรรทัดนี้เข้าไป บางคนนี่ ไม่มีบรรทัดนี้เด้อ เพราะว่าเราสร้างฟังก์ชัน run แล้ว แล้วตอนอัปเดต มันไม่ขึ้น ก็ไม่ได้เรียกมัน ใครที่แก้แล้วตัวรูปตัวเองใหญ่นะคะ บอกแล้วว่าให้ไปลดขนาดตัวนี้ ใน paint น่ะค่ะ โปรแกรม Paint นะ หรือ หรือพิมพ์ตัวนี้ py pygame spray เข้าไป พิมพ์ไอ้นี่เข้าไปตรงก่อนเอารูปเข้าน่ะ เห็นไหม นี่พิมพ์ พิมพ์ตรงนี้ จนถึงคำว่า Scale นะคะ แล้วก็ Copy ลงมาให้ครบ ตามจำนวนรูปของเรา ใส่ค่าตัวเลขนี่ ดูนะคะ ที่จะผิดอีกก็จะเป็นตัวนี้ นี่ เห็นไหมคะ clock ตัวแรกเป็นตัวเล็ก แต่ Clock ตัวหลังจะเป็นตัว C ใหญ่ เห็นไหม เช็กดี ๆ นะคะ บอกแล้ว จะชอบผิด ดูนะคะ เวลาตั้งค่า ตรงตอนให้เงื่อนไข bgx นี่ ให้เงื่อนไขเป็น -1550 นี่ ตรงนี้ตรงบวกแม่ก็บวกให้เท่ากัน เพราะฉะนั้น เด็ก ๆ ลบไปเท่าไร บวกเข้าก้ต้องบวกให้เท่า ๆ กันนะคะ แต่ขนาดอาจจะตัวเลขอาจจะไม่เหมือนกันกับของแม่ก็ได้ ลองใส่ แล้วถ้ามันเกินก็ปรับให้มันตรงกับของตัวเอง โอเคนะ คือ รูป... รูป เราใช้แค่รูปเดียวไง พอทีนี้เวลาไปตัดนะ สังเกตนะคะเพราะรูปพื้นหลังน่ะ เด็ก ๆ ใช้แค่รูปเดียว พอเวลาเริ่มใหม่นะ พอเริ่มใหม่ มันก็ไปเริ่มที่ตำแหน่งนึกออกไหมคะ แต่ถ้าเรามีรูปที่เหมือนมีต้นไม้ลักษณะซ้ำ ๆ กันน่ะ แล้วเริ่มวาดขนาดหรือมีช่องว่าง มันจะเห็นได้ชัดว่า ภาพมันต่อกัน แต่ทีนี้เอารูปเดิมแล้วเอาภาพข้างหน้า ต้องไปเลือกภาพที่มีลักษณะที่เห็นว่าภาพมันต่างกันน่ะ นึกออกไหม เข้าใจนะคะ คือ ตอนนี้ ภาพที่เราเอามาใช่น่ะ ตรงต้นภาพมันเป็นอย่างนี้ใช่ไหม แล้วตรงปลายน่ะภาพมันมืด พอหมดภาพ พอมันสิ้นสุดภาพสุดท้าย ภาพใหม่ที่มาต่อ มันก็เลยไม่เนียนนึกออกนะ แค่นั้นเอง วิธีการ ก็คือถ้าเราวาดพื้นหลังเองนึกออกนะ ก็คือวางต้นไม้ให้มันมีที่เว้นระยะห่างระหว่างรอยต่อ ตอนนี้ คือ รอยต่อของต้นไม้มันไม่เนียน เห็นเปล่า มันเป็นต้นเดียวกันน่ะ นึกออกปะ ยกเว้นว่าจะ flip ไป flip มาก็จะงง อันนี้ทำเป็นตัวอย่างเฉย ๆ คือ ในตัวต้นฉบับน่ะ เขาใช้รูป 2-3 ตัวมาต่อกันลูกนะคะ เพราะฉะนั้น ขึ้นอยู่กับภาพพื้นหลังที่เราเอามาใช้นะคะ สมมติว่าถ้าเลือกนะ ถ้าเลือกภาพที่เป็นลักษณะ สี ไม่เปิดให้อีก Open หายไปแล้วหรือ สมมติให้นึกถึงนะ นึกถึงว่าภาพ ฺBackground ที่เราจะเอามาใช้ นี่ ถ้าเด็ก ๆ เลือกภาพที่มันมีลักษณะที่เหมือนตำแหน่งของภาพน่ะ เริ่มต้นนี่เห็นไหมคะ ภาพนี้เริ่มต้นมันสว่าง ตรงสิ้นสุดมันคือ พอเราให้ภาพมันเลื่อนนี่ภาพสว่างมันก็จะมาเริ่มต่อจากตรงนี้เสมอ มันก็เลยจะเห็นว่าภาพมันไม่เนียน แต่ถ้าเมื่อใดที่เราเลือกภาพที่มีลักษณะ... เดี๋ยวนะ เหมือนอย่างนี้ สี สีต้นไม้กับสีไอ้นี่ต่อกันน่ะ อาจจะได้นะคะ ลองหาภาพที่มีลักษณะสีโดยรวมน่ะ เพราะถ้าเอาต้นไม้สีนี้มาต่อกับสีนี้ มันก็เนียนอยู่ว่าภาพมันต่อ เข้าใจนะ เพราะฉะนั้น ขึ้นอยู่กับภาพที่เราเอามาใช้ด้วยว่า แต่โดยปกติเวลาเข้าทำเกม เขาจะวาดพื้นหลังเอง เพราะว่าให้ภาพมันเคลื่อนไหวน่ะ มันต้องเป็นภาพที่เป็นลักษณะภาพต่อเนื่อง เหมือนวาดตัว Sprite sheet นั่นล่ะ นะคะ ของใครยังไม่ออกนี่ นี่ เหมือนถ้าเลือกภาพนี้เห็นไหม ลักษณะต้นไม้ ต้นภาพกับท้ายภาพมันสีคนละสีนี่ พอเอามาต่อมันก็จะไม่เนียนนะคะ เราต้องเลือกลักษณะของภาพที่จะเอามาใช้ด้วยนะคะ เหลือใครยังไม่ออก มีมิ่งน่ะออกไปแล้ว ปรากฏพอไปแก้แล้วรูปหาย ติดตรงไหน ไม่ขึ้นอะไรเลย เป็นเหมือนมิ่งเลย เดี๋ยวรอแก้เคสมิ่งก่อนนะ 2 0 3 0 6 2 ปี 1 พูดผิด ุญแจอยู่กับไอ้เก๋ อ๋อ เพราะว่าเขามาต่อไฟ กุญแจห้องแม่อยู่กับพี่เก๋ เขาไปอยู่ข้างล่างกันแล้ว กุญแจอยู่กับไอ้เก๋ ดูนะคะ ให้แก้ตรงนี้อีกนิดหนึ่งนะคะ เพราะว่า ไม่อย่างนั้น Run ไปแล้ว มัน Error ก็คือมันไม่มีที่สิ้นสุดนี่ แก้ตรง loop พิมพ์ run ขอโทษที พิมพ์ run = True อะไรนี่ พิมพ์ผิดได้อย่างไรนี่ แล้วก็ While run ปุ๊บ แล้วก็ตรงนี้ run = บรรทัดสุดท้าย เป็น Run = False นี่ แล้วก็กด Save ทีนี้บางคน บางคนที่ยังไม่ออก เพราะอะไร เช่น ๆ ๆ รูป รูปตัวเองไม่เคลื่อนไหว ก็มีนะคะ เหมือนของบาสน่ะ ชื่อรูปมาหมดเลยแต่ภาพมันไม่เคลื่อนไหว ยังไม่ได้เปิดเข้าไปดู Detail นะคะ มีของบาสมีบรรทัดหนึ่งที่เกินมานะ ให้ลบออก ที่ต่อจาก bg pic น่ะ มี bg Transfrom อะไรนั่น ให้ลบออกนะคะ แล้วลอง Run ดู ไม่แน่ใจ บางคนอาจจะไม่มีอัปเดตกับ flip นี่นะคะ เช็กด้วย ตัวโค้ดเราจริง ๆ จะมีประมาณเท่าไหร่เอง 82 บรรทัดเท่านั้นเองนะ 80 กว่าบรรทัดเองนะเด็ก ๆ นะคะ เดี๋ยวสัปดาห์นี้นะคะ เราก็จะพอแค่นี้นะคะ เพราะส่วนใหญ่ เหลืออุบลใช่ไหมยังไม่ออก เดี๋ยไปดูให้ ส่วนใหญ่ออกกันหมดแล้วนะคะ โอเค ที่ออกแล้วแต่ตัว Animate ไม่วิ่งก็มีนะคะ ก็มีจุดตำแหน่งผิดเล็ก ๆ น้อย ๆ นั่นล่ะ ต้องค่อยเช็กไป โอเคค่ะ ขอบคุณพี่ล่ามค่ะ [สิ้นสุดการถอดความ]