CREDIT : วอราม่อน~^ ^
========================
วิธีตกแต่งเมนูแสนง่าย + งามตามสไตล์คุณ
P.s. เหมาะสำหรับคนที่อ่านไหว + ชอบทำอะไรด้วยตัวเอง (เพราะงั้นไม่มี Demo สคริปที่เสร็จแล้วน้อ = =~ ทำตามขั้นตอนกันเอางิ)
Requirement สิ่งที่ต้องการ
- RPG Maker XP (คงมีกันอยู่แล้ว = =")
- โปรแกรมตกแต่งภาพ + ฝีมือการแต่งภาพนิดหน่อย
- ความคิดสร้างสรรค์ *O* ไม่มีก็หา ๆ เอา = =~
Result ผลงานที่จะทำได้หลังอ่านจบ
บทที่ 1
บทที่ 1: พื้นฐานการทำ Step by Step
1. หา/ทำรูปแบ็คกราวด์ขนาด 640*480 pixel มา 1 รูป~ ผมทำใน Photoshop ได้ออกมาเป็นรูปนี้~^^
2. Import เข้าไปในโฟลเดอร์ Picture ของเกม
จริง ๆ Import เข้าไปในโฟลเดอร์ไหนใน Graphic ก็ได้ แต่เพื่อความสะดวกของผม (เหว = =") + จัดรูปตรงตามหมวดหมู่ ก็ใส่ไปใน Picture ดีกว่านะครับ
3. กด F11 ในโปรแกรมเพื่อเรียก Script Editor ขึ้นมา (ที่ ๆ คุณเอาสคริปไปแปะกันนั่นแล~) มองทางลิสต์สคริปด้านซ้าย เลื่อนลงมาเรื่อย ๆ จนเจอส่วนที่ชื่อสคริปต์นำหน้าด้วย Scene_บลาๆ เยอะๆ
เลือกหน้าจอที่คุณต้องการใส่แบ็คกราวด์เข้าไป โดยผมจะอธิบาย Scene_... เฉพาะบางอันที่น่าใส่นะครับ~^^ (อันที่ไม่อธิบายไม่ได้หมายถึงไม่น่าใส่ แต่อาจใส่ไม่ได้/ไม่ควรใส่ อะไรประมาณนั้น)
4. ไปที่สคริป Scene_ ที่คุณเลือก เช่น ผมจะใส่แบ็คกราวด์ในหน้าเมนูหลัก ผมก็ไปที่ Scene_Menu
จากนั้นหาบรรทัดที่เขียนว่า def main ปกติจะอยู่บน ๆ เลย
สำหรับกรณีที่จะใส่ในเมนูหลักเหมือนของผม ใน Scene_Menu (ใน RGSS ที่ไม่ได้แก้อะไรเลยนะ) อยู่บรรทัดที่ 18
ใส่สคริปด้านล่างนี้ลงไปใต้บรรทัด def main เลยครับผม~^^
ส่วนบรรทัดที่ 2 ตรง (0,0,640,480) คือ (พิกัด x, พิกัด y, ความกว้างรูป, ความยาวรูป) ครับ ในที่นี้ผมใช้รูปขนาด 640*480 และต้องการให้มุมซ้ายบนของรูปอยู่ที่ตำแหน่งซ้ายบนสุด
(พิกัด x,y นี่เค้านับ 0,0 ที่มุมซ้ายบนสุดครับ และเวลาวางภาพ มันจะวางจากมุมซ้ายบนสุดของภาพในพิกัดที่เรากำหนด <= อาจงงนิด เอาเป็นว่าลองทดสอบเปลี่ยนเลขพิกัด x,y ด้วยตัวเองอาจจะเข้าใจง่ายกว่าครับ)
สำหรับบรรทัดสุดท้าย ตรงชื่อ "ไฟล์รูป" ให้ใส่ชื่อรูปโดยไม่ต้องมีนามสกุลไฟล์ เข้าไปครับ รูปต้องเก็บไว้ในโฟลเดอร์ Picture ของเกมด้วยน้อ เช่น รูปที่ผมใช้ชื่อ bj1.png ก็ใส่ไปแบบนี้:
ให้ไปหาบรรทัดที่เขียนว่า
ตัวอย่างเช่นใน Scene_Menu ที่ผมใส่สคริปประกาศแบ็คกราวด์ในข้อ 4 ไปแล้ว Graphics.freeze จะอยู่ในบรรทัดที่ 83 ครับ
ใส่บรรทัดนี้เข้าไปใต้ Graphics.freeze เลยครับ
6. ถ้าเทสเกมตอนนี้เราจะยังไม่เห็นรูปแบ็คกราวด์ครับ เพราะหน้าต่างบังไว้หมด = =" เพราะงั้นขั้นตอนนี้เราจะไปปรับให้หน้าต่างโปร่งใสครับ~ จะได้มองเห็นแบ็คกราวด์ด้านหลัง^^
========================
วิธีตกแต่งเมนูแสนง่าย + งามตามสไตล์คุณ
P.s. เหมาะสำหรับคนที่อ่านไหว + ชอบทำอะไรด้วยตัวเอง (เพราะงั้นไม่มี Demo สคริปที่เสร็จแล้วน้อ = =~ ทำตามขั้นตอนกันเอางิ)
Requirement สิ่งที่ต้องการ
- RPG Maker XP (คงมีกันอยู่แล้ว = =")
- โปรแกรมตกแต่งภาพ + ฝีมือการแต่งภาพนิดหน่อย
- ความคิดสร้างสรรค์ *O* ไม่มีก็หา ๆ เอา = =~
Result ผลงานที่จะทำได้หลังอ่านจบ
บทที่ 1
บทที่ 1: พื้นฐานการทำ Step by Step
1. หา/ทำรูปแบ็คกราวด์ขนาด 640*480 pixel มา 1 รูป~ ผมทำใน Photoshop ได้ออกมาเป็นรูปนี้~^^
2. Import เข้าไปในโฟลเดอร์ Picture ของเกม
จริง ๆ Import เข้าไปในโฟลเดอร์ไหนใน Graphic ก็ได้ แต่เพื่อความสะดวกของผม (เหว = =") + จัดรูปตรงตามหมวดหมู่ ก็ใส่ไปใน Picture ดีกว่านะครับ
3. กด F11 ในโปรแกรมเพื่อเรียก Script Editor ขึ้นมา (ที่ ๆ คุณเอาสคริปไปแปะกันนั่นแล~) มองทางลิสต์สคริปด้านซ้าย เลื่อนลงมาเรื่อย ๆ จนเจอส่วนที่ชื่อสคริปต์นำหน้าด้วย Scene_บลาๆ เยอะๆ
เลือกหน้าจอที่คุณต้องการใส่แบ็คกราวด์เข้าไป โดยผมจะอธิบาย Scene_... เฉพาะบางอันที่น่าใส่นะครับ~^^ (อันที่ไม่อธิบายไม่ได้หมายถึงไม่น่าใส่ แต่อาจใส่ไม่ได้/ไม่ควรใส่ อะไรประมาณนั้น)
Scene_Menu - หน้าเมนูหลัก (เหมือนในรูปตัวอย่างผลงานที่เสร็จแล้วด้านบน)
Scene_Item - หน้าจอเลือกดู/ใช้ไอเทม
Scene_Skill - หน้าจอเลือกดู/ใช้สกิล
Scene_Equip - หน้าจอเลือกสวมใส่ชุด
Scene_Status - หน้าจอบอกค่าสเตตัสของตัวละคร
Scene_File - หน้าจอเซฟ/โหลดเกม
Scene_End - หน้าจอตอนเลือก End Game (คำสั่งสุดท้ายในเมนูหลัก)
Scene_Shop - หน้าจอตอนเลือกซื้อของ/ขายของ
Scene_Name - หน้าจอตั้งชื่อตัวละคร
4. ไปที่สคริป Scene_ ที่คุณเลือก เช่น ผมจะใส่แบ็คกราวด์ในหน้าเมนูหลัก ผมก็ไปที่ Scene_Menu
จากนั้นหาบรรทัดที่เขียนว่า def main ปกติจะอยู่บน ๆ เลย
สำหรับกรณีที่จะใส่ในเมนูหลักเหมือนของผม ใน Scene_Menu (ใน RGSS ที่ไม่ได้แก้อะไรเลยนะ) อยู่บรรทัดที่ 18
Tip!: คุณสามารถกด Ctrl+F เพื่อค้นหาคำที่ต้องการในสคริปต์อันที่เลือกอยู่ได้ (Ctrl + Shift + F เพื่อค้นหาในสคริปต์ทั้งเกม) และสามารถกด Ctrl+G เพื่อโดดข้ามไปยังเลขบรรทัดในสคริปที่ต้องการได้
ใส่สคริปด้านล่างนี้ลงไปใต้บรรทัด def main เลยครับผม~^^
# **Add Background
viewport = Viewport.new(0,0,640,480)
@bg = Sprite.new(viewport)
@bg.bitmap = RPG::Cache.picture("ชื่อไฟล์รูป")
บรรทัดแรกเป็นคอมเม้นท์ (มี # นำหน้า ถ้าใส่ไว้ตรงไหน ทุกอย่างในบรรทัดนั้นที่อยู่ด้านหลัง # จะถือเป็นคอมเม้นท์หมด) ไม่ต้องใส่ก็ได้ แต่ผมใส่ไว้เพื่อจะได้รู้น่ะครับส่วนบรรทัดที่ 2 ตรง (0,0,640,480) คือ (พิกัด x, พิกัด y, ความกว้างรูป, ความยาวรูป) ครับ ในที่นี้ผมใช้รูปขนาด 640*480 และต้องการให้มุมซ้ายบนของรูปอยู่ที่ตำแหน่งซ้ายบนสุด
(พิกัด x,y นี่เค้านับ 0,0 ที่มุมซ้ายบนสุดครับ และเวลาวางภาพ มันจะวางจากมุมซ้ายบนสุดของภาพในพิกัดที่เรากำหนด <= อาจงงนิด เอาเป็นว่าลองทดสอบเปลี่ยนเลขพิกัด x,y ด้วยตัวเองอาจจะเข้าใจง่ายกว่าครับ)
สำหรับบรรทัดสุดท้าย ตรงชื่อ "ไฟล์รูป" ให้ใส่ชื่อรูปโดยไม่ต้องมีนามสกุลไฟล์ เข้าไปครับ รูปต้องเก็บไว้ในโฟลเดอร์ Picture ของเกมด้วยน้อ เช่น รูปที่ผมใช้ชื่อ bj1.png ก็ใส่ไปแบบนี้:
@bg.bitmap = RPG::Cache.picture("bj1")
5. ด้านบนเราได้ประกาศเรียกแบ็คกราวด์มาแล้ว ทีนี้เราต้องไปทำให้มันปรากฏขึ้นก่อนครับ~^^ให้ไปหาบรรทัดที่เขียนว่า
Graphics.freeze
บรรทัดนี้ ตามปกติจะอยู่ก่อนถึงบรรทัด def update นิดหน่อยครับตัวอย่างเช่นใน Scene_Menu ที่ผมใส่สคริปประกาศแบ็คกราวด์ในข้อ 4 ไปแล้ว Graphics.freeze จะอยู่ในบรรทัดที่ 83 ครับ
ใส่บรรทัดนี้เข้าไปใต้ Graphics.freeze เลยครับ
@bg.dispose
@บลา ๆ.dispose เป็นคำสั่งสำหรับ แสดง/ซ่อน วินโดว์นั้น ๆ ครับ^^ ตอนเราประกาศมันจะยังไม่แสดง เพราะงั้นต้องทำให้แสดงก่อน~6. ถ้าเทสเกมตอนนี้เราจะยังไม่เห็นรูปแบ็คกราวด์ครับ เพราะหน้าต่างบังไว้หมด = =" เพราะงั้นขั้นตอนนี้เราจะไปปรับให้หน้าต่างโปร่งใสครับ~ จะได้มองเห็นแบ็คกราวด์ด้านหลัง^^
[เทคนิค] วิธีตกแต่งเมนูแสนง่าย + งามตามสไตล์คุณ