2006年 12月 20日

SNES 用の cht ファイルつくる ruby script

def cht(data)
	ret = ""
	data.each do |a, v, c|
		ret << [0x08, v, a, 0, 0, c].pack("CCVCCZ20")
	end
	ret
end

data = []

base = [
	[0x7e2605, 0x03, "MHP"],
	[0x7e2606, 0xe3, "MHP"],
	[0x7e2609, 0x63, "MMP"],
	[0x7e260b, 0x63, "str"],
	[0x7e260c, 0x63, "vit"],
	[0x7e260d, 0x63, "agi"],
	[0x7e260e, 0x63, "int"],
	[0x7e260f, 0x63, "hit"],
	[0x7e2610, 0x63, "flee"],
	[0x7e2611, 0x63, "mdef"],
]
data << [0x7e240f, 0xc5, "last e"]
data << [0x7e250f, 0x63, "last e"]

(0..3).each do |i|
	base.each do |a, v, c|
		a = a + i * 0x50
		data << [a, v, c]
	end
end
code = cht(data)
File.open('t.cht', 'wb') {|f| f.print code }

~/tmp あさってたら出てきた。