พื้นฐานสำคัญ! เซ็ตอัปเวทีให้พร้อมก่อนเริ่มเล่านิทาน
ก่อนที่นิทานจะเริ่มเล่า เราต้องจัดเวทีให้พร้อมก่อน! การกำหนด "ค่าเริ่มต้น" (Initialization) เป็นสิ่งสำคัญมาก เพื่อให้นิทานของเราเริ่มต้นที่ฉากแรกและตัวละครยืนถูกที่เสมอ ทุกครั้งที่มีคนกดปุ่มธงเขียวครับ
ถ้าตอนจบนิทานของเราอยู่ที่ "ภูเขาไฟ" เมื่อมีคนกดเล่นใหม่ ฉากอาจจะค้างอยู่ที่ภูเขาไฟตั้งแต่เริ่มเรื่อง! ดังนั้นเราต้องใช้บล็อก switch backdrop to เพื่อบังคับให้เวทีกลับมาเริ่มต้นที่ฉากแรก (เช่น ทะเลทราย) เสมอครับ
ถ้านิทานของเรามีการเดินไปมา เมื่อกดเล่นใหม่ ตัวละครจะยืนค้างอยู่จุดสุดท้ายที่เดินไปถึง! เราจึงต้องใช้บล็อกสีฟ้า go to x: y: เพื่อจับตัวละครมาวางตรงจุดเริ่มต้นทุกครั้งก่อนเริ่มแสดง
นักแสดงบางคนยังไม่ถึงคิวออกโรงในฉากแรก เราต้องสั่งให้เขาซ่อนตัวด้วยบล็อก hide ไว้ก่อน และตัวละครที่เป็นตัวเอกของฉากแรก ต้องใส่บล็อก show ไว้เสมอ ป้องกันการล่องหนหายไปจากเวทีครับ
เพื่อป้องกันบั๊กหรือข้อผิดพลาดเวลาคนดูกดเล่นนิทานซ้ำ ให้นำบล็อก switch backdrop, go to x:y:, และ show/hide ไปต่อเรียงกันไว้ใต้บล็อก when [Flag] clicked เสมอ เพื่อสร้าง "สคริปต์ตั้งต้น" ครับ!
when [Flag] clicked
อ่านเนื้อหาจบแล้ว มาลองเปิดโปรแกรม Scratch แล้วทำตาม 4 ขั้นตอนเวทมนตร์นี้กันเลย!
คลิกที่ตัวละครที่น้องๆ เลือกไว้ แล้วลากบล็อกคำสั่งมาต่อกันตามลำดับนี้เลย:
when ⛳ (ธงเขียว) clicked
switch backdrop to [ชื่อฉากแรก]
go to x: ( ) y: ( )
show
เมื่อต่อบล็อกทั้ง 4 เสร็จแล้ว ลองใช้เมาส์ลากตัวละครไปทิ้งไว้มุมอื่นของจอ แล้วกดเปลี่ยนฉากหลังเล่นๆ ดู จากนั้น กดปุ่มธงเขียว! ถ้าตัวละครวาร์ปกลับมายืนที่เดิม และฉากหลังเปลี่ยนกลับมาเป็นฉากแรกได้เป๊ะ... แปลว่าภารกิจผู้กำกับสำเร็จแล้ว!
มาทดสอบความเป็นผู้กำกับในตัวน้องๆ กันเถอะ!
ข้อที่ 1: หากนักเรียน "ไม่ใส่" บล็อก switch backdrop ไว้ตอนเริ่มต้นโปรแกรม จะเกิดผลเสียอย่างไรเมื่อกดธงเขียวเล่นนิทานรอบที่ 2?
ข้อที่ 2: บล็อกใดต่อไปนี้ ทำหน้าที่ "มาร์คจุดยืน" เพื่อบังคับให้ตัวละครกลับมายืนที่จุดเริ่มต้นเสมอ?