วันเสาร์ที่ 21 พฤศจิกายน พ.ศ. 2558

Construct 2 : Bullet ยิงกระสุน ตอนที่ 1

Bullet หรือกระสุนที่จะกล่าวถึงนี้ ไม่ได้หมายถึงการสร้างกระสุนให้ยิงจากปื่นอย่างเดียว Bullet ที่กล่าวถึงนี้คือพฤติกรรม หรือ  Behavior ของวัตถุในเกม พฤติกรรมแบบ Bullet นี้จะเป็นการกำหนดให้วัตถุเคลื่อนที่ไปในทิศทางที่เป็นเส้นตรงตามมุมที่กำหนด ส่วนมากจะใช้ในการยิงกระสุนปืนหรือยังก้อนพลัง แต่ก็มีการประยุกต์มาใช้ในการเคลื่อนที่อัตโนมัติของตัวละครในเกมที่ให้เคลื่อนที่ไปข้างหน้าเสมอ



คุณสมบัติของ Bullet
Speed คือ ความเร็วเริ่มต้นของกระสุน หลายเป็น พิกเซลต่อวินาที
Acceleration คือ อัตราเร่งของกระสุน ถ้ากำหนดเป็น 0 ความเร็วจะคงที่ ถ้ากำหนดเป็นบวกจะเคลื่อนที่ด้วยอัตราเร่งเพิ่มขึ้น  ถ้ากำหนดเป็นลบ จะมีอัตราเร่งลดลง จนความเร็วเป็น 0 และหยุดนิ่ง
Gravity คือ ค่าแรงโน้มถ่วงของโลก ที่จะกระทำกับกระสุนที่เคลื่อนที่ทำให้ความเร่งลดลงและเคลื่อนที่เป็นเส้นโค้งลงพื้นด้านล่าง แต่ถ้ากำหนดเป็น 0 จะไม่มีแรงโน้มถ่วงมากระทำ ทำให้กระสุนเคลื่อนที่ในแนวที่กำหนด
Bounce off solids คือ การกำหนดให้วัตถุแบบ Solid กระเด็นเมื่อโดนกระสุนพุ่งชน
Set angle คือ การกำหนดค่าว่าจะให้ใช้มุมในการเคลื่อนที่ของกระสุนหรือไม่
Initial state คือ การกำหนดว่าจะให้วัตถุทำงานหรือไม่ทำงาน

ทีนี้มาลองสร้างเกมที่ใช้พฤติกรรมแบบ Bullet กันลองดูครับ
สร้างโปรเจคใหม่ขึ้นมา และแทรกพื้นหลังให้เป็นฉากท้องฟ้าครับ โดยการ Insert New Object เลือก Sprite ตั้งชื่อว่า background แล้วคลิก Insert


ผมขอวาดง่าย ๆเลยนะครับ เต็มสีฟ้าลงไปเต็มช่องก็พอ


ปรับขนาดของวัตถุให้เต็มพื้นที่ของเกม แล้วไปที่แทบ layer แล้ว lock ไว้ และเพิ่ม layer ใหม่ขึ้นมา



ต่อไปสร้างจรวดขึ้นมา 1 ลำ ด้วยการ Insert new Object ออกแบบได้ตามต้องการครับ


วางจรวดของเราไว้ตรงกลางของเกม


เพิ่มวัตถุ keyboard เข้ามาในเกม


กำหนดการกระทำที่ event sheet เพิ่ม event ให้ โดยเลือก keyboard


เลือกเหตุการณ์แบบ Key is down



กำหนดเหตุการณ์สำหรับการกดปุ่ม w


เพิ่มการกระทำด้วย add action แล้วเลือกจรวด


เลือกการกระทำเป็น  Move at angle


กำหนดค่ามุม Angle เป็น 270 คือ ให้เคลื่อนที่ขึ้นด้านบน กำหนด Distance ระยะในการเคลื่อนที่ เท่ากับ 5


เพิ่มเหตุการณ์ลักษณะเดียวกัน แต่เป็นการกดปุ่ม s ให้เคลื่อนที่ลง กำหนดมุมเป็น 90


ทดสอบการทำงานของเกม จะพบว่าจรวดจะเคลื่อนที่ขึ้นเมื่อกดปุ่ม w และเคลื่อนที่ลงเมื่อกดปุ่ม s

ไม่มีความคิดเห็น:

แสดงความคิดเห็น