lookchin   09-16-2013, 05:27 PM
#1
เป็นเทคนิคที่หลายๆคนอาจจะทำได้แล้ว แต่เอาวิธีที่ตนเองใช้มาแชร์ เผื่อมีใครสนใจครับ

สิ่งที่ต้องใช้
1.อีเว้นท์ 1 อัน (ถ้าในแมพมีหลายบันไดก็ใช้หลายอีเว้นท์)
2.ตัวแปร 2 ตัว (ไว้เก็บพิกัดค่าตำแหน่งแกนตั้งแกนนอนของฮีโร่ แม้ในแมพหนึ่งจะมีหลายบันไดก็ยังคงใช้ตัวแปรแค่ 2 ตัวนี้)

วิธีสร้าง
1.วาดแมพบันไดที่ต้องการก่อน อย่าลืมกำหนดส่วนที่ผ่านได้/ผ่านไม่ได้ ด้วยเน่อ
(โดยปกติบันไดมักจะต้องมีระเบียง แต่อันนี้ผมวาดไม่เป็นอ่ะ ฮ่าๆๆ)
[Image: G1MsCR.png]

2.ในตัวอย่างนี้ผมกำหนดให้พื้นที่สีเหลืองและฟ้าคือส่วนที่เกิดเหตุการณ์บันไดข้าง
(พื้นที่สีเหลือง เช่น (6,10) หมายความว่าเมื่อฮีโร่เดินมาถึงจุดนี้ ถ้าเรากดปุ่มขวา ฮีโร่จะต้องเดินเฉียงๆขึ้นบันได แต่ถ้ากดปุ่มอื่นๆ ฮีโร่ก็ยังคงเดินปกติ ในขณะที่พื้นที่สีฟ้าคือ เมื่อกดปุ่มซ้าย-ขวา ฮีโร่จะต้องเดินเฉียงๆขึ้นหรือลงบันได แต่ถ้ากดปุ่มขึ้น-ลงฮีโ่ร่ก็ยังคงเดินเหมือนปกติ งงมั้ยอ่ะ T.T)
[Image: zgKTVX.png]

3.สร้างอีเว้นท์มา 1 อีเว้นท์ หน้าแรกเซตเป็น"พร้อมเนื้อเรื่อง"แล้วเขียนอีเว้นท์โดยเริ่มจากเก็บพิกัดค่าแกน x ,แกน y ของฮีโร่ก่อน จากนั้นจึงตรวจเช็คเงื่อนไขว่าฮีโร่อยู่ในพื้นที่สีเหลืองหรือยัง ถ้าอยู่ก็จะเปิดสวิตช์เฉพาะเปลี่ยนเหตุการณ์ไปหน้า 2 เพื่อเตรียมตรวจเช็คปุ่มทิศทางที่เรากด
[Image: yE9kCb.png]

4.เขียนอีเว้นท์หน้า 2 โดยตั้งให้ทำงานเมื่อ "สวิตช์เฉพาะ A เปิด" และเซตเป็น "พร้อมเนื้อเรื่อง" และเขียนเหตุการณ์โดยเช็คปุ่มที่กดและพิกัดของฮีโร่ดังนี้
[Image: OXLkJg.png]
เหตุการณ์ในหน้า 2 นี้ เพื่อตรวจเช็คว่าพอเรากดปุ่มทิศทางแล้วฮีโร่เดินออกนอกพื้นที่สีเหลืองและฟ้าหรือยัง? ถ้าออกก็จะปิดสวิตช์เฉพาะเพื่อให้การเดินกลับมาเป็นปกติ)

จบจ๊ะ (ในกรณีที่บันไดกลับข้างกันก็ประยุกต์เอานะครับ)
  
Users browsing this thread: 1 Guest(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.