Construct 2 : การสร้างเกม Color Spin

สวัสดีครับในบทความนี้เราจะมาเรียนรู้การประยุกต์ใช้ Behaviors Platform ในการสร้างเกม Color Spin กันนะครับ วิธีการเล่นก็ไม่มีอะไรซับซ้อนมากมาย กติกา คือ ผู้เล่นจะต้องเลือกสีของวงล้อให้ตรงกับวัตถุที่มาชน (ball) จึงจะได้แต้ม ถ้าเลือกผิดก็จะสิ้นสุดการเล่น

1. ก่อนอื่นต้องจัดเตรียมทรัพยากรสำหรับสร้างเกม ท่านสามารถดาวน์โหลดทรัพยากรในการสร้างเกมที่นี่

2. เปิดโปรแกรม Construct 2 ขึ้นมา

3. สร้างโปรเจ็คใหม่ ตั้งค่าขนาดของวินโดวน์และเลย์เอาต์ กว้าง 480 พิกเซล สูง 854 พิกเซล

4. เพิ่ม Tiled background สำหรับทำพื้นหลัง และปรับขนาดให้พอดีกับเลย์เอาต์

5. เพิ่ม Sprite ชื่อ circle

  • ตั้งจุด Origin ไว้กึ่งกลางภาพ (middle)

  • ตั้งขอบเขตการชน (collision polygon) ดังรูป

  • เพิ่ม Behaviors Solid ให้กับวัตถุ

6. เพิ่ม Sprite ชื่อ checkPoint ลงบนเลย์เอาต์

  • ตั้งจุด Origin ไว้กึ่งกลางภาพ (middle)

  • ตั้งขอบเขตการชน (collision polygon) ดังรูป

  • เพิ่ม Instance variable ประเภท Number ชื่อ index ตั้งค่าเริ่มต้นเป็น 0

  • คัดลอก Sprite checkPoint จำนวน 6 ชิ้น จัดวางในตำแหน่งดังรูป
  • ตั้งค่าตัวแปร index ของวัตถุ checkPoint แต่ละชิ้นดังรูป  (สีม่วง = 0, เขียว = 1, เหลือง = 2, แดง = 3, น้ำเงิน 4, ส้ม = 5)

7. เพิ่ม Sprite ชื่อ ball ลงบนเลย์เอาต์

  • นำเข้ารูปภาพในแต่ละเฟรม โดยเรียงลำดับภาพของแต่ละเฟรมให้มีสีตังรูป
  • ตั้งค่า Animation Speed เป็น 0

  • ในแต่ละเฟรมให้ตั้งจุด Origin ไว้กึ่งกลางภาพ (middle)

  • ในแต่ละเฟรมให้ตั้งขอบเขตการชน (collision polygon) ดังรูป

  • เพิ่ม Behaviors Platform ให้กับวัตถุ
  • ตั้งค่าคุณสมบัติของ Platform ดังรูป

8. เพิ่มวัตถุ Particles ชื่อ Star ลงบนเลย์เอาต์

  • ตั้งค่าคุณสมบัติต่างๆ ของวัตถุดังรูป

9. เพิ่ม Sprite ชื่อ turnLeft และตั้งค่าขอบเขตการชนดังรูป

10. เพิ่ม Sprite ชื่อ turnRight และตั้งค่าขอบเขตการชนดังรูป

11. เพิ่ม Text ชื่อ txtScore ลงบนเลย์เอาต์

12. เพิ่ม Touch ลงบนเลย์เอาต์

13. แนวการจัดวางวัตถุบนเลย์เอาต์

14. เปิดแถบ Event Sheet ขึ้นมา เพิ่ม Event และ Action ต่างๆ ดังนี้

  • เพิ่ม Global variable ประเภท Number ชื่อ score ตั้งค่าเริ่มต้นเป็น 0
  • Event 1 เมื่อเริ่มต้นเลย์เอาต์ จะปักหมุดยึดติด checkPoint ไว้กับวงล้อ circle และ txtScore จะแสดงค่าจากตัวแปร score

  • Event 2 เมื่อ ball ชนกับวงล้อ circle
  • Event 3 ถ้า checkPoint อยู่ใกล้กับ ball และ index ของ checkPoint เท่ากับหมายเลข Animation frame ของ ball จะเพิ่มแต้มให้ score ครั้งละ 1 คะแนน
  • Event 4 ถ้า checkPoint อยู่ใกล้กับ ball และ index ของ checkPoint ไม่เท่ากับหมายเลข Animation frame ของ ball จะสิ้นสุดการเล่น ไปยังหน้า Game Over
  • Event 5 เมื่อ ball ชนกับวงล้อ circle จะ simulate control เป็น jump และ ทำการสุ่มหมายเลขเฟรมของ ball ใหม่

  • Event 6 เมื่อแตะปุ่ม turnRight วงล้อจะหมุนตามเข็มนาฬิกา 60 องศา ทุกครั้งที่แตะ
  • Event 7 เมื่อแตะปุ่ม turnRight วงล้อจะหมุนทวนเข็มนาฬิกา 60 องศา ทุกครั้งที่แตะ

ขอให้สนุกกับการสร้างงานนะครับ

แล้วพบกันใหม่ในบทความหน้า

สวัสดีครับ