Changes to special weapon modes:

- allow killing red baris with fire rod/bombos
- allow medallions to kill bunny beams
This commit is contained in:
2023-09-03 17:10:16 -05:00
parent 5a3277dbaf
commit 754928b231
5 changed files with 21 additions and 21 deletions

View File

@@ -247,12 +247,12 @@ warnpc $B1E501
org $B1E800 org $B1E800
Damage_Table_Bombs: Damage_Table_Bombs:
incbin damage_table_sword_bombs.bin incbin "data/damage_table_sword_bombs.bin"
warnpc $B1F000 warnpc $B1F000
org $B1F000 org $B1F000
Damage_Table_Pseudo: Damage_Table_Pseudo:
incbin damage_table_pseudo_sword.bin incbin "data/damage_table_pseudo_sword.bin"
warnpc $B1F800 warnpc $B1F800
org $B38000 org $B38000

View File

@@ -22,19 +22,19 @@ def process_values(sprite, values)
if ret[10] == 4 # powder if ret[10] == 4 # powder
ret[10] = 0 ret[10] = 0
end end
if ret[11] > 0 && ![0xA1, 0xA3, 0xCD].include?(sprite) # fire rod if ret[11] > 0 && ![0x23, 0xA1, 0xA3, 0xCD].include?(sprite) # fire rod
ret[11] = 0 ret[11] = 0
end end
if ret[12] != 3 && sprite != 0xCC # ice rod if ret[12] != 3 && sprite != 0xCC # ice rod
ret[12] = 0 ret[12] = 0
end end
if ret[13] > 0 && ![0xA3, 0xA1].include?(sprite) # bombos if ret[13] > 0 && ![0x23, 0xA1, 0xA3, 0xD1].include?(sprite) # bombos
ret[13] = 0 ret[13] = 0
end end
if ret[14] != 1 # ether if ret[14] != 1 && ![0xD1].include?(sprite) # ether
ret[14] = 0 ret[14] = 0
end end
if [1, 2].include?(ret[15]) # quake if [1, 2].include?(ret[15]) && ![0xD1].include?(sprite) # quake
ret[15] = 0 ret[15] = 0
end end
if sprite == 0x53 and ret[2] == 3 if sprite == 0x53 and ret[2] == 3
@@ -51,8 +51,8 @@ def join_values(value1, value2)
return (value1 & 0x0F) << 4 | (value2 & 0x0F) return (value1 & 0x0F) << 4 | (value2 & 0x0F)
end end
File.open("damage_table.bin") do |input| File.open("data/damage_table.bin") do |input|
File.open("damage_table_sword_bombs.bin", "w") do |output| File.open("data/damage_table_sword_bombs.bin", "w") do |output|
i_enum = input.each_byte i_enum = input.each_byte
(0...0xD7).each do |sprite| (0...0xD7).each do |sprite|
values = [] values = []

View File

@@ -15,8 +15,8 @@ def join_values(value1, value2)
return (value1 & 0x0F) << 4 | (value2 & 0x0F) return (value1 & 0x0F) << 4 | (value2 & 0x0F)
end end
File.open("damage_table.bin") do |input| File.open("data/damage_table.bin") do |input|
File.open("damage_table_pseudo_sword.bin", "w") do |output| File.open("data/damage_table_pseudo_sword.bin", "w") do |output|
i_enum = input.each_byte i_enum = input.each_byte
(0...0xD7).each do |sprite| (0...0xD7).each do |sprite|
values = [] values = []