irpg Community

Full Version: บัค หลังจากพยายามปรับแต่งเมนู
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
คือลองทดสอบใส่คำสั่งในเมนูลงไปเพิ่ม 1 คำสั่ง ทำตามกระทู้อันนี้สอนค่ะ >> การเพิ่มคำสั่งใหม่ในเมนู
พอลองทดสอบเกมปรากฏว่าเกิดบัค
1) คำสั่ง Status กดเข้าไม่ได้

2) คำสั่ง Save กับ End พอกดเข้าไปแล้วกดยกเลิกย้อนกลับมา ตัวเคอเซอร์มันจะอยู่ผิดตำแหน่ง


ควรจะแก้ยังไงดีคะ

โปรเจคที่ลองทดสอบแล้วพบปัญหา

---------------------------------

[Image: 9WMjcJUzLU_N7699IfdjuiufObo7mo1OsIawxJCf...WDcw==.png]

ขอถามเรื่องเมนูเพิ่มอีก 2 อย่างนะคะ
1) ตามรูปภาพเฉพาะในกรอบสีแดง สามารถขยับปรับตำแหน่ง X,Y ของแต่ละคำสั่งได้มั้ยคะ เพราะเท่าที่ลองผิดลองถูกเองเจอแต่ที่ปรับของ Steps, Play Time, Gold, Status Window แต่ในส่วนที่ตีกรอบสีแดงไว้หาไม่เจอ อยากจะปรับให้แต่ละคำสั่งมันวางอยู่ตกหนักงกันมากกว่านี้

2) ปรับแต่งฟอร์นและวินโดว์สกินเฉพาะในกรอบสีแดงได้รึเปล่าคะ
ข้อ1 ข้างบน
ไปช่อง Scene_Menu บรรทัดที่ 123 ลงไป ตรง when ว่าใส่ผิดตำแหน่งรึเปล่า
Quote: when 0 # Item
when 1 # Skill
when 2 # Equipment
when 3 # Test01
when 4 # Status
when 5 # Saving
when 6 # Game end

ข้อ2 ข้างบน
ให้แก้ช่อง Scene_Save ตรง
Quote: $scene = Scene_Menu.new(4)
มีแบบนี้อยู่ 2 อัน
ให้เปลี่ยน 4 เป็น 5

และช่อง Scene_End ตรง
Quote: $scene = Scene_Menu.new(5)
ให้เปลี่ยน 5 เป็น 6


ข้อ1 ข้างล่าง มันมีให้ปรับอยู่ตรงช่อง Window_Command แต่ต้องสร้างอันใหม่นะ
ไม่งั้นอันที่เกี่ยวข้องกับมันจะเปลี่ยนไปด้วยนะ เช่น Scene_Title, Scene_End, Scene_Battle

ให้ก็อปช่อง Window_Command แล้ววางไว้ข้างล่างสร้างใหม่แก้ชื่อเป็น Window_CommandNew แล้วไปปรับ
Quote:class Window_Command < Window_Selectable
แก้เป็น
class Window_CommandNew < Window_Selectable
แล้วไปปรับแก้ข้างในตามใจชอบ

และเปลี่ยนเวลาเรียกใช้อันใหม่ ไปช่อง Scene_Menu
Quote:@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7])
แก้เป็น
@command_window = Window_CommandNew.new(160, [s1, s2, s3, s4, s5, s6, s7])

ข้อ2 ข้างล่าง ตรงช่อง Window_CommandNew ที่สร้างอันใหม่
Code:
def initialize(width, commands)
    # Calculating the height of the window from the quantity of command
    super(0, 0, width, commands.size * 32 + 32)
    @item_max = commands.size
    @commands = commands
    self.contents = Bitmap.new(width - 32, @item_max * 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    refresh
    self.index = 0
  end
ปรับแต่งฟอร์นตรง
self.contents.font.name = "ชื่อฟอร์น"
self.contents.font.size = ใส่เลขขนาดลงไป
และวินโดว์สกิน เพิ่มคำสั่งนี้ลงไป
self.windowskin = RPG::Cache.windowskin("ชื่อไฟล์รูป")

ถ้าอยากปรับอะไรเพิ่มเติมอื้นๆ ให้ลองศึกษาอันนี้ดู RGSS1 การเขียน Script อย่างง่ายๆ บทที่ 1 การเขียน Window
@hengmana ขอบคุณมากเลยค่ะ ลองทำตามที่บอกมาทุกข้อแล้ว ได้ผลเกือบทุกข้อ
.... เกือบเพราะ... ยังติดบัคที่กดเข้า Status ไม่ได้ แม้ว่าจะปรับตามที่บอกแล้วก็ยังเข้าไม่ได้อยู่ดี T_T
แต่ไม่เป็นไรค่ะ มาช่วยตอบคำถาม แก้ปัญหาให้ก็ดีใจมากแล้ว >_< (ลบคำสั่งที่เพิ่มเข้ามาใหม่ก็ใช้ได้เหมือนเดิมแล้ว)
// โค้งขอบคุณงามๆ 1 ที
ลองปรับ Scene_Menu บรรทัดที่ 200 กว่า ล่างสุด ตรง
when 3 # Status
แก้เป็น
when 4 # Status
หรือยังครับ
(05-30-2015, 01:16 AM)hengmana Wrote: [ -> ]ลองปรับ Scene_Menu บรรทัดที่ 200 กว่า ล่างสุด ตรง
when 3 # Status
แก้เป็น
when 4 # Status
หรือยังครับ

----- Edit -----
ลืมปรับตรงแถวๆ บรรทัด 200 กว่าจริงๆ ด้วย (ก่อนหน้านี้มองแต่ when ที่อยู่ด้านบน)
แหะๆ =///=
ขอบคุณงามๆ อีกรอบค่ะ