irpg Community
[XP/VX/VXA] พื้นฐานการใช้คำสั่ง "สวิตช์" (Switches) - Printable Version

+- irpg Community (https://irpg.in.th)
+-- Forum: irpg Fabella RPG Maker Academia (https://irpg.in.th/forum-4.html)
+--- Forum: The Great RPG Maker Library (https://irpg.in.th/forum-5.html)
+--- Thread: [XP/VX/VXA] พื้นฐานการใช้คำสั่ง "สวิตช์" (Switches) (/thread-314.html)



[XP/VX/VXA] พื้นฐานการใช้คำสั่ง "สวิตช์" (Switches) - sharifyasan - 07-13-2012

สวัสดีครับ วันนี้ผมชารีฟอย่าสั้น, หญ้าสานบลาๆแล้วแต่จะเรียกนั้นจะมาสอนพื้นฐานของ "สวิตช์" (Switch) กันน่ะครับ...เพื่อเป็นแนวทางในการเริ่มเขียนเกมด้วย Rpg Maker ของสมาชิกหรือหลายๆคนที่เพิ่งเริ่มจับโปรแกรมกันน่ะครับ
*อนึ่งคือบทความนี้เป็นการสอนแบบ "พื้นฐาน" ย้ำน่ะครับว่า "พื้นฐาน" หรือ "ขั้นเบื้องต้น" และสามารถนำไปประยุกต์ใช้ต่อได้อีกหลายรูปแบบครับ

อันดับแรกเรามาเข้าใจกันก่อนครับว่า "สวิตช์" คืออะไร?...พูดคำนี้แล้วหลายๆคนอาจจะนึกถึง สวิตช์เปิด-ปิดไฟ, สวิตช์เปิด-ปิดเครื่องใช้ไฟฟ้าต่างๆ ซึ่งก็ไม่ผิดครับผม. ในโปรแกรม Rpg Maker นั้นเจ้าสวิตช์นี้ยังทำหน้าที่เป็นคำสั่งที่คล้ายๆกับการเปิด-ปิดไฟอีกเช่นกันครับ โดยสวิตช์นี้จะทำงานเป็นการเปิดคำสั่งหน้าอีเว้น (Event) หน้าอื่นๆ, หรือเปิดการใช้งานคำสั่งอื่นๆ เอาเป็นว่าผมขอยกตัวอย่างเกมสักเกมหนึ่งให้ดูละกันครับ

ขอยกตัวอย่างเกมอมตะชื่อก้องโลกและเกมในตำนานอย่างเกม "คอนทร้า" (Contra) ละกันครับ...ยกตัวอย่างเวลาเราเก็บไอเทมปืนต่างๆได้ เช่น ปืน S, ปืน F ที่จะมีรูปแบบการโจมตีแตกต่างกันไปนั้นแหละครับ สวิตช์ก็จะทำงานในส่วนนี้เหมือนกัน เช่น เมื่อเริ่มเกมมาเราจะใช้ปืนธรรมดาอยู่หรือปืนดั่งเดิม แต่เมื่อเราเดินๆอยู่แล้วเก็บปืน S ได้นั้น...เราจะเปลี่ยนไปใช้ ปืน S ทันที! ซึ่งหลักการง่ายๆก็คือเมื่อเก็บปืน S ได้นั้น ก็จะเป็นการเปิดสวิตช์ "ปืน S" ให้คำสั่งประมวลผลว่า "ผู้เล่นเปลี่ยนไปใช้ปืน S" หรือเมื่อเราเดินๆอยู่แล้วไปเจอปืน F ต่อแล้วเมื่อเก็บก็จะ "เปิดสวิตช์ปืน F" นั้นเองครับ
[Image: ContraSpreadGun.jpg]

ทีนี้เรามาดูการใช้สวิตช์ในรูปแบบของ Rpg Maker กันบ้างดีกว่าครับ...อนึ่งคือบทความนี้ไม่จำกัดว่าเราจะใช้ Rpg Maker เวอร์ชั่นอะไรน่ะครับ เพราะสามารถใช้ได้ทุกเวอร์ชั่น
เริ่มแรกครับเราดับเบิ้ลคลิกที่ Map Editor ก่อนเพื่อสร้างอีเว้นหรือเหตุการณ์ว่างเปล่าขึ้นมาก่อนครับ
[Image: 141023.c7596bb9.o.png]

จากนั้นดับเบิ้ลคลิกที่หน้าอีเว้นเปล่าๆต่อ
[Image: 141024.2106640e.o.png]

ก็จะขึ้นโชว์คำสั่งต่างๆมากมายมาให้เราใช้ครับโดยคำสั่ง "ควบคุมสวิตช์" (Control Switches) นั้นใน Rpg Maker หลายๆเวอร์ชั่นนั้นจะอยู่ในหน้าที่ 1 ครับ เมื่อคลิกแล้วก็จะขึ้นหน้าต่างการใช้งานคำสั่งสวิตช์นี้ขึ้นมาให้เรา
[Image: 141025.28a77d53.o.png]

เมื่อเลือกคำสั่งควบคุมสวิตช์แล้วก็จะได้หน้าต่างดังนี้ครับ
[Image: 141026.d0a8e7a4.o.png]
อธิบายทีละบรรทัดน่ะครับ
1. Single เป็นการใช้งานสวิตช์ตัวเดียวเท่านั้น
2. Batch เป็นการใช้งานสวิตช์หลายตัว
3. Operation เป็นคำสั่งให้เราเลือกว่าจะ "เปิด" หรือ "ปิด" สวิตช์ที่เราต้องการ

ในส่วนของ Single นั้นเมื่อเราคลิกเข้าไปแล้วจะสามารถกำหนดชื่อสวิตช์ได้ตามต้องการครับ หรือจะเพิ่ม Max Limit ก็ได้เช่นกันครับ...โอเคเรามาลองทำการใช้งานสวิตช์กันสักหน่อยดีกว่าครับ. อันดับแรกเราตั้งชื่อสวิตช์ ID หมายเลข 1 กันก่อน...ผมจะขอตั้งเป็นชื่อว่า "irpg_test" ละกันน่ะครับ จากนั้นกด Apply แล้วก็กด Cancel ไปก่อนน่ะครับเพราะว่าเรายังไม่ได้ใช้งานตอนนี้.
[Image: 141027.b3fff48d.o.png]

จากนั้นเราก็มาเซตหน้าอีเว้นกันก่อน โดยเราจะเลือกตัวละครเป็นตัวอะไรก็ได้น่ะครับ. จากนั้นก็เลือกคำสั่ง "แสดงข้อความ" (Show Text) แล้วก็ใส่ประโยคอะไรก็ได้ไปก่อนครับ เช่น "Good Day irpg!"
[Image: 141028.2f227509.o.png]

[Image: 141029.1067972f.o.png]

โอเคครับเมื่อเราใส่ข้อความไปแล้วจากนั้นก็เปิดคำสั่ง "ควบคุมสวิตช์" แล้วเลือกใช้สวิตช์ตัวที่เราตั้งชื่อไว้ก็คือ irpg_test กันเลยครับ
[Image: 141030.41891c8e.o.png]

จากนั้นเราก็กด Copy Event Page และจากนั้นก็กด Patse Event Page เลยครับ...โดยที่เราต้องเซตให้อีเว้นหน้านี้ทำงานก็ต่อเมื่อ "สวิตช์ irpg_test ทำงานก่อน" นั้นเองครับ
[Image: 141031.460fab01.o.png]

[Image: 141032.57013ebd.o.png]


เมื่อเซตเรียบร้อยแล้วเราก็มาแก้ไขข้อความกันให้เป็นข้อความอื่น ในที่นี้เราจะแก้เป็นข้อความ "swtich on" ละกันครับ
[Image: 141033.5130de80.o.png]

จากนั้นก็ทำการรันทดสอบเกมได้เลยครับ...จะสังเกตุได้ว่าเมื่อเรากดปุ่ม c พูดคุยกับตัวละครนั้น เมื่อคุยครั้งแรกตัวละครจะคุยกับเราว่า "Good Day irpg!" แต่หลังจากกดคุยอีกครั้งตัวละครจะคุยกับเราว่า "swtich on" ซึ่งจะอธิบายให้เข้าใจง่ายๆน่ะครับ.
ดูจากคำสั่งที่เราได้เขียนลงไปแล้ว 2 คำสั่งก็คือ "แสดงข้อความ" กับ "ควบคุมสวิตช์" ซึ่งลำดับขั้นตอนจะเป็นดังนี้ครับ
1. แสดงข้อความ "Good Day irpg!"
2. เปิดสวิตช์ ID หมายเลข 1

เมื่อคุยกับอีเว้นครั้งที่ 1
[Image: 141034.6d367cb2.o.png]

เมื่อคุยกับอีเว้นครั้งที่ 2
[Image: 141035.a0914026.o.png]

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

นี้แหละครับการทำงานของสวิตช์แบบง่ายๆอย่างหนึ่ง...คิดว่าคงไม่หน้ายากเกินไปสำหรับสมาชิกใหม่ที่เพิ่งจับโปรแกรม Rpg Maker น่ะครับ สำหรับใครที่มีคำถามสงสัยอะไรก็แล้วแต่สามารถถามกันได้น่ะครับ ถ้าผมตอบได้ยินดีจะตอบให้ :"D


***ห้ามคัดลอกหรือนำไปเผยแพร่ที่อื่นก่อนได้รับอนุญาตจาก sharifyasan หรือ Jacobo ก่อนเป็นอันขาด***

Last Update : 13/07/2012


RE: [XP/VX/VXA] พื้นฐานการใช้คำสั่ง "สวิตช์" (Switches) - LuZi - 07-13-2012

อู้ว ในที่สุดบทความสอนพื้นฐานสวิตซ์ก็มาแล้ว;w;b

แจ่มหลายๆเด้อ


RE: [XP/VX/VXA] พื้นฐานการใช้คำสั่ง "สวิตช์" (Switches) - TheMoo2000 - 07-13-2012

ครั้งหน้าจงสอนตัวแปรซะ Win*