Re: [問題] RMXP 可以新增兩樣以上的裝飾品嗎?

看板RPGMaker作者 (太極狂龍)時間15年前 (2009/08/13 03:01), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串2/3 (看更多)
※ 引述《snake0214 (蛇)》之銘言: : xp内建只能裝備一種裝飾品 感覺自由度跟搭配度頗低 : 所以想要做出可裝備兩種到三種的組合可能 成果預覽 http://imgur.com/viU1V.jpg
http://imgur.com/BMr9f.jpg
Game_Actor類別,在attr_reader :armor4_id後加上 attr_reader :armor5_id Game_Actor >> setup方法,在@armor4_id = actor.armor4_id後加上 @armor5_id = 0 Game_Actor >> element_rate方法,把 for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id] 改成 for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id, @armor5_id] Game_Actor >> state_guard?方法,改法同上 Game_Actor >> base_str方法,在armor4 = $data_armors[@armor4_id]後加上 armor5 = $data_armors[@armor5_id] 在n += armor4 != nil ? armor4.str_plus : 0後加上 n += armor5 != nil ? armor5.str_plus : 0 Game_Actor >> base_dex方法,改法同上,但str_plus改成dex_plus Game_Actor >> base_agi和base_int方法,改法依此類推 Game_Actor >> base_pdef方法,在armor4 = $data_armors[@armor4_id]後加上 armor5 = $data_armors[@armor5_id] 在pdef5 = armor4 != nil ? armor4.pdef : 0後加上 pdef6 = armor5 != nil ? armor5.pdef : 0 將return pdef1 + pdef2 + pdef3 + pdef4 + pdef5改成 return pdef1 + pdef2 + pdef3 + pdef4 + pdef5 + pdef6 Game_Actor >> base_mdef方法,改法依此類推 Game_Actor >> base_eva方法,在armor4 = $data_armors[@armor4_id]後加上 armor5 = $data_armors[@armor5_id] 在eva4 = armor4 != nil ? armor4.eva : 0後加上 eva5 = armor5 != nil ? armor5.eva : 0 將return eva1 + eva2 + eva3 + eva4改成 return eva1 + eva2 + eva3 + eva4 + eva5 Game_Actor >> equip_fix?方法,在 return $data_actors[@actor_id].armor4_fix後加上 when 5 return $data_actors[@actor_id].armor4_fix Game_Actor >> equip方法,在 when 4 if id == 0 or $game_party.armor_number(id) > 0 ... ... end 後加上 when 5 if id == 0 or $game_party.armor_number(id) > 0 update_auto_state($data_armors[@armor5_id], $data_armors[id]) $game_party.gain_armor(@armor5_id, 1) @armor5_id = id $game_party.lose_armor(id, 1) end Game_Actor >> class_id=方法,在 unless equippable?($data_armors[@armor4_id]) equip(4, 0) end 後加上 unless equippable?($data_armors[@armor5_id]) equip(5, 0) end Window_EquipRight >> initialize方法,將 self.contents = Bitmap.new(width - 32, height - 32) 改成 self.contents = Bitmap.new(width - 32, height) Window_EquipRight >> refresh方法,在 @data.push($data_armors[@actor.armor4_id]) 後加上 @data.push($data_armors[@actor.armor5_id]) 在 self.contents.draw_text(5, 32 * 4, 92, 32, $data_system.words.armor4) 後加上 self.contents.draw_text(5, 32 * 5, 92, 32, $data_system.words.armor4) 在draw_item_name(@data[4], 92, 32 * 4)後加上 draw_item_name(@data[5], 92, 32 * 5) Window_Status >> refresh方法,在 draw_item_name($data_armors[@actor.armor4_id], 320 + 16, 400) 後加上 draw_item_name($data_armors[@actor.armor5_id], 320 + 16 + 144, 400) Scene_Equip >> refresh方法,將 @item_window5.visible = (@right_window.index == 4) 改成 @item_window5.visible = (@right_window.index == 4 or @right_window.index == 5) 在 when 4 @item_window = @item_window5 後加上 when 5 @item_window = @item_window5 到此大功告成! : 本人還初學,所以關於RGSS的部分多是使用他人所公開的程式碼 : 但這兩天的爬文結果下來,沒找到相關的RGSS寫法分享 : 所以來這邊不恥厚問 希望能有好心高手幫解答 : THX 嗯...好像沒有「不恥厚問」這句成語 如果你要說的是「不恥下問」的話 請參閱教育部重編國語辭典修訂本 http://dict.revised.moe.edu.tw/index.html 這句通常拿來恭維別人 很少用在自己身上 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.124.97.33

08/13 09:46, , 1F
囧 對不起我國文程度很差 不過還是很感謝解答
08/13 09:46, 1F

08/13 09:46, , 2F
順帶一提 網址好像失效了..
08/13 09:46, 2F
※ 編輯: bill 來自: 122.124.102.162 (08/13 18:47)

08/13 18:47, , 3F
已修正連結
08/13 18:47, 3F
文章代碼(AID): #1AWn5x2U (RPGMaker)
文章代碼(AID): #1AWn5x2U (RPGMaker)