เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - Printable Version +- irpg Community (https://irpg.in.th) +-- Forum: irpg Fabella RPG Maker Academia (https://irpg.in.th/forum-4.html) +--- Forum: RPG Maker Engine School (https://irpg.in.th/forum-7.html) +--- Thread: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? (/thread-501.html) |
เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - beammagic - 08-20-2012 คือผมเขียน Code ขึ้นมาเอง (สร้างClass ใหม่) ซึ่งทำงานเกี่ยวกับ วันเวลา อะไรพวกนี้ แต่ทีนี้ตอน save เกมเหมือนมันจะไม่ได้เซฟในส่วนนี้ไปด้วย พอปิดเกมแล้วโหลดsave ขึ้นมา มันก็ฟ้อง error พอไปดูมันก็ฟ้องว่า error ที่ Class ของผมที่สร้างขึ้นมา เหมือนมันหาไม่เจอ อยากถามว่าจะทำยังไงให้เวลาเซฟเกมมันเซฟ ในส่วนที่ผมเขียน Code เพิ่มเข้าไปด้วย T[]T ป.ล. ภาพที่แนบมาคือมัน error หลังจากกดโหลดเซฟเกมครับ ผมใช้ RPG Maker XP ครับ RE: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - luvikung - 08-20-2012 สร้างหรือแก้ไขให้เป็น Global Variable ครับ ใส่ไว้ในส่วน $game_player เวลาเซฟ มันจะติดไปด้วยครับ ที่เห็นขึ้น error แบบนั้น ผมชัวร์ว่าไม่ได้ประกาศตัวแปร Global Variable แน่นอน RE: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - beammagic - 08-20-2012 ผมก็สร้างเป็น Global นะครับ แต่ไม่ค่อยเข้าใจที่บอกว่าให้วางไว้ใน $game_player คือตรงไหนอ่ะครับ ถ้าผมเข้าใจไม่ผิดคือในClass Game_Player รึเปล่า? ถ้าใช่มันต้องวางตรง def ไหนอ่า คือผมเรียก class ของผมด้วย event โดยใช้คำสั่ง $statusBar = Window_Date.new อ่อลืมบอกผมใช้ RMXP ครับ RE: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - Alphaforce - 08-20-2012 เพราะตอนเซฟ โปรแกรมไม่ได้เซฟครับ ลองเปิดสคริปต์หน้า Scene_Save ดูครับ # Write each type of game object Marshal.dump($game_system, file) Marshal.dump($game_switches, file) Marshal.dump($game_variables, file) Marshal.dump($game_self_switches, file) Marshal.dump($game_screen, file) Marshal.dump($game_actors, file) Marshal.dump($game_party, file) Marshal.dump($game_troop, file) Marshal.dump($game_map, file) Marshal.dump($game_player, file) นี่เป็นรายชื่อ Global variable ที่เกมจะเซฟให้ ถ้าจะให้เกมเซฟตัวแปรเพิ่ม ก็แค่พิมเพิ่มเข้าไปครับ แค่นั้นเอง แล้วอย่าลืม!! ตอน load เกมด้วย Scene_load เพิ่มต่อส่วนนี้ด้วย # Read each type of game object $game_system = Marshal.load(file) $game_switches = Marshal.load(file) $game_variables = Marshal.load(file) $game_self_switches = Marshal.load(file) $game_screen = Marshal.load(file) $game_actors = Marshal.load(file) $game_party = Marshal.load(file) $game_troop = Marshal.load(file) $game_map = Marshal.load(file) $game_player = Marshal.load(file) ประมาณนี้ครับ.... แต่ระวังนิดนึงว่า Global Var ที่จะเซฟต้องถูกสร้างขึ้นมาก่อนนะครับ (คิดว่าช่วงต้นๆเกมหล่ะ ไม่ก็ต้นเริ่มเกมสั่งให้มันสร้างตัวแปรเปล่าๆไว้ก่อนก็ได้) RE: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - beammagic - 08-20-2012 คราวนี้ พอกด save แล้วมัน error แบบนี้ครับ ใน Scene_Save ผมเพิ่ม Marshal.dump($statusBar, file) ส่วนใน Scene_Load ผมเพิ่ม $statusBar = Marshal.load(file) ก่อนจะเซฟเกมมันเข้าเกมได้ปกติแล้วก็ใช้ event สร้างเหตุการณ์เรียกใช้สคริป $statusBar=Window_Date.new ครับผม RE: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - luvikung - 08-22-2012 ประกาศตัวแปรยังครับ? อีกอย่างเขียน code เซฟแบบนั้นมันไม่น่าจะเข้าไปในไฟล์นะ = = RE: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - beammagic - 08-22-2012 ประกาศเป็น global แล้วครับ เศร้าใจ ทำไมกันหนอ ลองมันหมดทุกทางแล้ว ถ้าใครจะกรุณาเขียนโค๊ดยกตัวอย่างให้ดูเลย มันน่าจะเข้าใจกว่าอ่ะครับ #ซุยดุ่ยแล้วTT^TT RE: เขียนcode แต่ตอนsave มันไม่saveด้วย ทำไงดี?? - luvikung - 08-22-2012 สามารถแปะดาวโหลด code มาได้มั้ยครับ? เดี๋ยวให้ผู้เชี่ยวชาญดูให้ |