[問題] 關於雜湊的寫法
看板RPGMaker (RPG製作大師 - RPG Maker)作者mistwvearn (Denyrmo)時間14年前 (2010/04/23 22:23)推噓0(0推 0噓 0→)留言0則, 0人參與討論串1/1
嗯...又來發問了
這次是想寫裝備的屬性附加系統(就diablo的字首系統)
例如「風之力 的 九頭蛇弓」:
$Item3是用來儲存最終整把裝備的總屬性值
ItemType[1]是裝備本身的資料,即「九頭蛇弓」的能力值,暫定基礎攻擊力15
ItemMagic[1]是裝備字首屬性的資料,即「風之力」,暫定攻擊力+20
那麼這把武器的攻擊力將會是15+20=35,大概這個概念
我的寫法是這樣:
$Item3 = ItemType[1].clone
$Item3["能力"] = {} if ItemType[1]["能力"] == nil
if $Item3["能力"]["攻擊"] == nil
$Item3["能力"]["攻擊"] = ItemMagic[1]["能力"]["攻擊"].clone
else
p ItemType[1] #=15
$Item3["能力"]["攻擊"] += ItemMagic[1]["能力"]["攻擊"]
p ItemType[1] #=35
end
(建議可以貼到RGSS編輯器上看..不會換色@@)
問題出在倒數2和4行,明明只有計算Item3的值作加減,
結果卻會連帶影響到ItemType[1]這個裝備本身的資料值
導致「九頭蛇弓」這個基礎的裝備能力值越來越大...
想請問一下,問題到底是出在哪裡?
感激不盡!
(嘗試過移除.clone,不過結果完全相同)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.114.54
RPGMaker 近期熱門文章
PTT遊戲區 即時熱門文章