ก่อนอื่นขอออกตัวก่อนครับว่าผมไม่ได้เก่งการด้นอีเว้นสดอะไรมากเท่าไหร่...กระทู้สอนเทคนิคนี้ทำขึ้นมาจากความรู้เท่าที่ผมมีเท่านั้น สามารถนำไปใช้ประยุกต์ต่อได้อีกครับ
สำหรับ how to นี้สามารถใช้ได้กับ Rpg Maker แทบทุกเวอร์ชั่นน่ะครับ (xp, vx ,vxa บลาๆ) โดยมีหลักการการเขียนที่ค่อนข้างคล้ายกันครับ เอ้า! ไม่รอช้าไปดูกันเลยครับ!
สำหรับวันนี้ผมจะมาสอนการเขียนระบบ Action หรือที่เข้าใจกันสั้นๆว่า "ระบบเดินยิง" นั้นเองครับ...โดยวันนี้จะขอสอนการทำให้ยิงกระสุนเองให้ได้ก่อนครับ ผมขอใช้โปรแกรม Rpg Maker Vx Ace เป็นตัวอย่างในการเขียนละกันน่ะครับ.
*อนึ่งคือการเขียนระบบแบบนี้ต้องมีความรู้พื้นฐานโปรแกรม Rpg Maker ด้วยน่ะครับ เช่น พวกตัวแปร (Variables) สวิตช์ (Switches) และคำสั่งต่างๆอื่นๆอีกด้วยเป็นต้น
ขั้นแรกเราต้องเตรียม "ตัวแปร" และ "สวิตช์" ดังนี้ครับ...เดี๋ยวขออธิบายทีละบรรทัดก่อนเน้อ~
1. กำหนดตัวแปรตัวหนึ่งให้ค่อยเก็บค่าพิกัดแกรน x ของตัวละครฮีโร่ (ของผู้เล่น)
2. เหมือนกับข้อที่ 1 เพียงแต่เก็บค่าในแกรน y แทนครับ
3. กำหนดสวิตช์ใช้สำหรับ เปิด-ปิด การยิงของเราครับ
โดย 3 คำสั่งนี้ให้สร้างไว้ในส่วนของ
"เหตุการณ์ทั่วไป" แล้วเปิด
"เงื่อนไขการณ์เริ่มเหตุการณ์" ให้เป็น
"พร้อมเนื้อเรื่อง" น่ะครับ
*เมื่อเลือกพร้อมเนื้อเรื่องแล้วแนะนำให้ set switch ที่ใช้เริ่มเหตุการณ์เป็นไอดีแรกสุดครับเพื่อความสะดวกต่างๆ
ต่อมาเราไปสร้างอีเว้น (Event) กระสุนกันครับโดยภาพ Character ของอีเว้นเราจะให้เป็นคน, สัตว์, สิ่งของอะไรก็ได้ครับ แต่ส่วนใหญ่หลายๆคนมักใช้เป็น
"กระสุน" ไปเลยแต่สำหรับฮาวทูนี้ผมขอใช้เป็นก้อนหินละกันครับ ฮ่าๆ อธิบายทีละบรรทัดน่ะครับ
Option Event:
1. ย้ำเท้าตลอดเวลา อันนี้จริงๆไม่ต้องติ๊กก็ได้ครับ แต่บางคนใช้กระสุนแบบมีควันด้วย...ถ้าอยากให้รันอนิเมชั่นกระสุนติดควันตอนยิงด้วยก็สามารถติ๊กได้ครับ
2. เดินผ่านได้ ติ๊กอันนี้เพื่อให้สามารถยิงผ่านตัวละครศัตรูที่เรายิงใส่เพื่อเช็คหรือคำนวนการรันคำสั่งลดเลือดของศัตรูอีกทีครับ (บางทีสามารถยิงทะลุบ้านได้ด้วย ซึ่งวิธีแก้เดี๋ยวจะขอพูดในตอนหน้าครับ)
การเริ่มเหตุการณ์:
1. พร้อมเนื้อเรื่อง เพื่อสามารถรันคำรันต่างๆในหน้าของอีเว้นนั้นๆได้ทันที (กรณีที่มีคำสั่งให้รันน่ะครับ)
รูปแบบการเคลื่อนที่:
1. ความเร็ว ปรับให้เร็วที่สุดไปเลยครับ เพราะกระสุนเวลายิงปกติมันก็วิ่งเร็วอยู่แล้วถ้าไม่ใช่กระสุนฟองน้ำที่ยิงแล้ววิ่งช้าๆ
2. ความถี่ ปรับให้ถี่ที่สุดไปเลยเช่นกันครับ
3. รูปแบบ ให้เลือก
"กำหนดเอง" เพราะว่าเดี๋ยวเราจะต้องไปเซตระยะทางที่กระสุนจะวิ่งไปด้วยครับ ว่าจะให้กระสุนเรายิงไปไกลแค่ไหน
*ควรจะสร้างอีเว้นกระสุนเ็ป็นอีเว้นแรกหรือให้มีเลขไอดีเป็น 001 เสมอของทุกๆแมพที่สามารถยิงได้น่ะครับ
โอเคครับทีนี้เรามาเซตระยะทางที่กระสุนจะวิ่งไปกันดีกว่าครับ โดยให้คลิกคำสั่ง "เดินไปข้างหน้า" (ของ vx ace จะเป็นก้าวหน้าน่ะครับ) โดยเราจะคลิกกี่ครั้งครับได้ครับเพราะ
"คลิก 1 ครั้ง = กระสุนวิ่งไป 1 ช่องอีเว้น" ยกตัวอย่างในภาพนี้จะเซตไว้ให้กระสุนวิ่งไปได้ 10 ช่องครับ
และจากนั้นก็คลิกคำสั่ง
"ปิดสวิตช์" โดยให้ปิดสวิตช์ไอดีหมายเลขที่เราเซตไว้ตอนแรกน่ะครับ ในตัวอย่างนี้จะเป็นไอดีหมายเลข 5 นั้นเอง
1. วนคำสั่งนี้ไปเรื่อยๆ เพื่อที่จะได้รันให้มัน
"เดินไปข้างหน้า" ได้อย่างต่อเนื่องครับ
2. ข้ามจุดที่ไปไม่ได้ จริงๆอันนี้จะติ๊กหรือไม่ติ๊กไว้ก็ไม่ค่อยต่างกันครับ เพราะคำสั่งนี้มีไว้แค่ตรวจเช็คเมื่ออีเว้นนั้นๆเดินผ่าน tile ของ tileset ที่ไม่สามารถผ่านได้เท่านั้น...แต่กรณีนี้เราเซตให้อีเว้นกระสุนผ่านได้แต่แรกแล้ว
จากนั้นให้เราไปเปิดสวิตช์ดังกล่าวให้เปิดในส่วน
"เงื่อนไขการเริ่มเหตุการณ์" ด้วยน่ะครับ ทีนี้เราก็จะได้อีเว้นกระสุนก้อนหินยักษ์ของเราเสร็จแล้ว 1 อีเว้นครับผม !~
หลังจากนี้จะเข้าสู่การเขียนคำสั่ง
"การยิง" แ้ล้วน่ะครับ
โดยให้เราไปสร้างอีเว้นในส่วนของ
"เหตุการณ์ทั่วไป" แล้วตั้งชื่ออีเว้นเป็นอะไรก็ได้ เช่น ฮีโร่ทำการยิง, ฮีโรโจมตี บลาๆแต่ในฮาวทูนี้ผมขอตั้งเป็น hero.fire ละกันครับ
และเซตเงื่อนไขเหตุการณ์เป็น
"พร้อมเนื้อเรื่อง" และสวิตช์ที่ใช้เริ่มเหตุการณ์ด้วยครับ
อธิบายทีละบรรทัด
1. ตรวจเช็คเงื่อนไข ทำการเช็คเงื่อนไขเมื่อกดปุ่มยิงโดยเราสามารถเซตปุ่มอะไรก็ได้ครับที่จะยิง ในฮาวทูนี้ผมเซตไว้คือปุ่ม z หรือเมื่อเล่นจริงก็คือกดปุ่ม d นั้นเองครับ
2. เล่นเสียงเอฟเฟค สั่งรันคำสั่งเพื่อเล่นเสียงโจมตีต่างๆ เช่น เล่นเสียงยิงปืน บลาๆ
3. กำหนดตำแหน่งเหตุการณ์ คำสั่งนี้เราจะทำการย้ายอีเว้น
"กระสุน" โดยให้ย้ายมาหา
"ตัวแปร" ที่เราเซตค่าแกรน x และ y ไว้ในตอนแรกและเซต
"ทิศทางการหันหน้า" ให้เป็นทิศเดิมน่ะครับผม ดูภาพประกอบได้ด้านล่างครับ
จากนั้นเราก็มาเซตทิศทางที่กระสุนจะวิ่งไปกันดีกว่าครับ ในฮาวทูนี้ตัวละครจะหันหน้าได้ 4 ทิศก็คือ บน ล่าง ซ้าย ขวา นั้นเองครับ...อธิบายทีละบรรทัด
1. ตรวจเช็คเงื่อนไข เช็คเงื่อนไขการหันหน้าของตัวละครผู้เล่นครับว่าจะหันหน้า ลง ขึ้นหรือซ้าย ขวา ก่อนนั้นเอง
2. เคลื่อนย้ายเหตุการณ์ ให้เลือกอีเว้นที่ต้องการเคลื่อนย้ายเป็นอีเว้น
"กระสุน" แล้วคลิกให้เคลื่อนที่ 1 ช่องตามทิศทางที่ตัวละครเราหันหน้าน่ะครับ
3. ควบคุมสวิตช์ เปิดสวิตช์ที่เราใช้ในการยิงที่เคยเซตไว้ในหน้าของอีเว้นกระุสุนครับ
4. รอเวลา ตรงส่วนนี้เราจะรันคำสั่งรอเวลาเพื่อให้กระสุนมีระยะทางการวิ่งไปในระยะทางที่เรากำหนดไว้ครับ
5. ควบคุมสวิตช์ จากนั้นก็ปิดสวิตช์ที่เปิดไว้ในข้อที่ 3. ครับผม
จากนั้นก็ทำอย่างนี้ให้ครบทุกทิศทางทั้งหมด 4 ทิศน่ะครับ ดูภาพประกอบได้
เย้! ในที่สุดเราก็เขียนเสร็จเรียบร้อยหมดแล้วครับ...ทีนี้ก็สามารถกดรันเกมเพื่อทดสอบได้เลยครับ ;w;b สำหรับตอนหน้าจะมาสอนวิธีเขียนเมื่อเรายิงศัตรูแล้วเลือดลดกันน่ะครับ
ก็หวังว่าฮาวทูตอนที่ 1 นี้จะมีประโยชน์กับสมาชิกท่านใหม่และท่านเก่าเก๋าใกล้ดองกันทุกคนน่ะครับ...สำหรับใครมีคำถามอะไรสงสัยถามได้น่ะครับ :")
***ห้ามคัดลอกหรือนำไปเผยแพร่ที่อื่นก่อนได้รับอนุญาตจาก sharifyasan หรือ Jacobo ก่อนเป็นอันขาด***
Last Update : 3/07/2012