Construct 2 : การสร้างเกมเศรษฐีเงินล้าน(Millionaire Quiz) ตอนที่ 2

สวัสดีครับในบทความนี้ เราจะมาเรียนรู้การสร้างหน้าแสดงระดับเงินรางวัลของเกมกันครับ เมื่อผู้เล่นตอบคำถามถูก ระดับเงินรางวัลสะสมของผู้เล่นจะเพิ่มขึ้นตามจำนวนข้อที่ตอบถูก โดยใช้แถบสีแสดงตำแหน่งเงินรางวัลของผู้เล่น ณ ปัจจุบัน ในการสร้างเลย์เอาต์หน้านี้ มีขั้นตอนและวิธีทำดังนี้

1. เพิ่ม Layout ใหม่ขึ้นมาโดยไม่ต้องเพิ่ม Event Sheet เปลี่ยนชื่อเป็น  moneyList

  • ตั้งขนาดเลย์เอาต์ (Layout Size) เป็น 480 x 854 พิกเซล
  • ตั้งค่า Event Sheet ไปที่ EventMenu

2. เพิ่ม Sprite ตั้งชื่อ bgmoneylist นำเข้ารูปภาพดังรูป

3. เพิ่ม Sprite ตั้งชื่อ btnGotoQ นำเข้ารูปภาพ ปรับขอบเขตการชนดังรูป

  • นำ btnGotoQ วางในตำแหน่งดังรูป

4. เพิ่ม Sprite ตั้งชื่อ moneyBar นำเข้ารูปภาพ ปรับขอบเขตการชนดังรูป

  • Sprite moneyBar เพิ่ม Instance variable ประเภท Number ตั้งชื่อว่า id ค่าเริ่มต้น 0
  • Sprite moneyBar เพิ่ม Instance variable ประเภท Text ตั้งชื่อว่า money ค่าเริ่มต้น ว่าง

  • ตั้งค่า Initial visibility เป็น Invisible

  • คัดลอก Sprite moneyBar จำนวน 16 ชิ้นจัดวางดังรูป

  • ตั้งค่าตัวแปร id และ money ของ moneyBar แต่ละชิ้นเรียงจากบนลงล่างดังนี้

5. เพิ่ม Text object ตั้งชื่อ textMoney เข้ามาในเลย์เอาต์ และตั้งค่าดังนี้

6. คัดลอก textMoney วางทับ moneyBar ดังรูป

7. เพิ่ม Sprite ตั้งชื่อ twoTime นำเข้ารูปภาพ แต่ละเฟรม และ ปรับขอบเขตการชนดังรูป

  • ปรับ Speed animation เป็น 0

8. เพิ่ม Sprite ตั้งชื่อ cutChoice นำเข้ารูปภาพ แต่ละเฟรม และ ปรับขอบเขตการชนดังรูป

  • ปรับ Speed animation เป็น 0

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

  • ปรับ Speed animation เป็น 0

10. นำ Sprite ทั้งสามชิ้นจัดวางในตำแหน่งดังรูป

11. เพิ่ม Text object ตั้งชื่อ textQnumb เข้ามาในเลย์เอาต์ และตั้งค่าดังนี้

  • นำ textQnumb  จัดวางในตำแหน่งดังรูป

12. เพิ่ม Array object ตั้งชื่อ ArrayQ  และ เพิ่มTouch object  ลงบนเลย์เอาต์

13. เพิ่ม Layout ใหม่ขึ้นมา พร้อมกับเพิ่ม Event Sheet เปลี่ยนชื่อ Layout เป็น  question และ เปลี่ยนชื่อ Event Sheet เป็น  EventGame

  • ตั้งขนาดเลย์เอาต์ (Layout Size) เป็น 480 x 854 พิกเซล
  • ตั้งค่า Event Sheet ไปที่ EventGame

14.  เปิด Event Sheet ชื่อ EventMenu ขึ้นมา เพิ่ม Event และ Action ดังรูป

  • สร้าง Global variable

  • ตั้งค่าพื้นฐานเมื่อเริ่มต้นเลย์เอาต์

 

  • แสดงสถานะของปุ่มตัวช่วย และรายการจำนวนเงินรางวัลทั้งหมด

  • ควบคุมการเปลี่นหน้าเลย์เอาต์เมื่อแตะปุ่มต่างๆ

  • หมายเหตุ  คำสั่ง RegexReplace(String, Regex, Flags, Replace)
    • คำสั่งให้จำนวนเงินมีคอมม่าคั่น
 RegexReplace(ข้อความหรือชื่อตัวแปร, "\d(?=(\d{3})+$)", "g", "$&,")

ขอจบบทความในตอนนี้เพียงเท่านี้ก่อนนะครับ แล้วพบกับการสร้างหน้า หรือเลย์เอาต์ ข้อสอบ ชื่อเลย์เอาต์  question และการเขียนคำสั่งใน Event Sheet ชื่อ EventGame ในตอนหน้า

สวัสดีครับ