Construct 2 : บันทึกข้อมูลจาก C2 ลง Excel ด้วย XML Spreadsheet

มีเพื่อนสมาชิกท่านหนึ่งต้องการบันทึกข้อมูลจากเกมไปไว้ใน Excel เพื่อนำข้อมูลไปใช้เขียนกราฟหาความสัมพันธ์ ก็เลยไปลองค้นๆ ดู ก็พบว่า เราสามารถทำได้ โดยใช้ XML Spreadsheet โดยในส่วนที่เป็นเซลสำหรับเก็บข้อมูลจาก Construct 2 จะใช้รูปแบบ %ชื่อ% ที่ไม่ซ้ำกันในแต่ละเซล เช่น %var1% %var2% %var3% เป็นต้น ซึ่งวิธีการในการสร้างก็ไม่ยุ่งยากอะไรมาก ลองทำตามดูนะครับ

1. เปิดโปรแกรม Excel แล้วสร้างตารางดังนี้

2. บันทึกไฟล์เป็น XML Spreadsheet ตั้งชื่อว่า content_file.xml

3. เปิดโปรแกรม Construct 2 สร้างโปรเจ็คใหม่ขึ้นมา จากนั้นเพิ่ม Object ลงบน Layout ดังนี้

  • Text box ชื่อ Name
  • Text box ชื่อ score1
  • Text box ชื่อ score2
  • Button ชื่อ sendData
  • Text
  • Browser
  • AJAX

4. จัดวาง object ต่างๆ ดังนี้

5. นำเข้าไฟล์ xml เข้าไปไว้ในโฟลเดอร์ File ใน Construct 2

6. เปิด Event Sheet ขึ้นมา เพิ่ม Global Variable ดังนี้

7. Event 1 AJAX จะทำการติดต่อกับไฟล์ xml (content_file.xml)

  • Add Event > System > On start of layout
    • Add Action >  AJAX > Request project file

8. Event 2 นำข้อมูลจากไฟล์ xml ไปเก็บไว้ใน ตัวแปร contents

  • Add Event > AJAX > On completed

  • Add Action > System > Setvalue

9. Event 3 เปลี่ยนค่าตัวแปรต่างๆ และดาวน์โหลดไฟล์ Excel

  • Add Event > Button sendData > On clicked
    • Add Action > System > Set value

  • Add Action > System > Set value

  • Add Action > System > Set value

  • Add Action > System > Set value

  • Add Action > System > Set value

  • Add Action > System > Set value

# คำสั่งด้านล่างนี้เป็นคำสั่งสำหรับดาวน์โหลดไฟล์ Excel ลงมาเก็บไว้ในเครื่อง

  • Add Action > Browser > Invoke download of string

เพียงเท่านี้ก็เป็นอันเสร็จเรียบร้อย

ทำการทดสอบโปรแกรม เมื่อคลิกปุ่ม Send Data จะทำการดาวน์โหลดไฟล์ Excel ชื่อ excelfile.xls มาเก็บไว้ที่เครื่องคอมพิวเตอร์ของคุณ โดยปกติถ้าไม่มีการเปลี่ยนแปลงเส้นทางของไฟล์ดาวน์โหลด ไฟล์จะถูกเก็บไว้ที่โฟล์เดอร์ Downloads

ดาวน์โหลดไฟล์ตัวอย่าง capx

ขอให้สนุกกับการประยุกต์ใช้นะครับ แล้วพบกันใหม่ในบทความหน้านะครับ

สวัสดีครับ !