SMZ3: Use correct font tiles for cross-world items in SM (#3095)

This commit is contained in:
Kaito Sinclaire 2024-04-21 09:44:17 -07:00 committed by GitHub
parent ec18254e9e
commit ee69fa6a8c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 81 additions and 47 deletions

View File

@ -284,55 +284,89 @@ class SMZ3World(World):
return offworldSprites return offworldSprites
def convert_to_sm_item_name(self, itemName): def convert_to_sm_item_name(self, itemName):
charMap = { "A" : 0x3CE0, # SMZ3 uses a different font; this map is not compatible with just SM alone.
"B" : 0x3CE1, charMap = {
"C" : 0x3CE2, "A": 0x3CE0,
"D" : 0x3CE3, "B": 0x3CE1,
"E" : 0x3CE4, "C": 0x3CE2,
"F" : 0x3CE5, "D": 0x3CE3,
"G" : 0x3CE6, "E": 0x3CE4,
"H" : 0x3CE7, "F": 0x3CE5,
"I" : 0x3CE8, "G": 0x3CE6,
"J" : 0x3CE9, "H": 0x3CE7,
"K" : 0x3CEA, "I": 0x3CE8,
"L" : 0x3CEB, "J": 0x3CE9,
"M" : 0x3CEC, "K": 0x3CEA,
"N" : 0x3CED, "L": 0x3CEB,
"O" : 0x3CEE, "M": 0x3CEC,
"P" : 0x3CEF, "N": 0x3CED,
"Q" : 0x3CF0, "O": 0x3CEE,
"R" : 0x3CF1, "P": 0x3CEF,
"S" : 0x3CF2, "Q": 0x3CF0,
"T" : 0x3CF3, "R": 0x3CF1,
"U" : 0x3CF4, "S": 0x3CF2,
"V" : 0x3CF5, "T": 0x3CF3,
"W" : 0x3CF6, "U": 0x3CF4,
"X" : 0x3CF7, "V": 0x3CF5,
"Y" : 0x3CF8, "W": 0x3CF6,
"Z" : 0x3CF9, "X": 0x3CF7,
" " : 0x3C4E, "Y": 0x3CF8,
"!" : 0x3CFF, "Z": 0x3CF9,
"?" : 0x3CFE, " ": 0x3C4E,
"'" : 0x3CFD, "!": 0x3CFF,
"," : 0x3CFB, "?": 0x3CFE,
"." : 0x3CFA, "'": 0x3CFD,
"-" : 0x3CCF, ",": 0x3CFB,
"_" : 0x000E, ".": 0x3CFA,
"1" : 0x3C00, "-": 0x3CCF,
"2" : 0x3C01, "1": 0x3C80,
"3" : 0x3C02, "2": 0x3C81,
"4" : 0x3C03, "3": 0x3C82,
"5" : 0x3C04, "4": 0x3C83,
"6" : 0x3C05, "5": 0x3C84,
"7" : 0x3C06, "6": 0x3C85,
"8" : 0x3C07, "7": 0x3C86,
"9" : 0x3C08, "8": 0x3C87,
"0" : 0x3C09, "9": 0x3C88,
"%" : 0x3C0A} "0": 0x3C89,
"%": 0x3C0A,
"a": 0x3C90,
"b": 0x3C91,
"c": 0x3C92,
"d": 0x3C93,
"e": 0x3C94,
"f": 0x3C95,
"g": 0x3C96,
"h": 0x3C97,
"i": 0x3C98,
"j": 0x3C99,
"k": 0x3C9A,
"l": 0x3C9B,
"m": 0x3C9C,
"n": 0x3C9D,
"o": 0x3C9E,
"p": 0x3C9F,
"q": 0x3CA0,
"r": 0x3CA1,
"s": 0x3CA2,
"t": 0x3CA3,
"u": 0x3CA4,
"v": 0x3CA5,
"w": 0x3CA6,
"x": 0x3CA7,
"y": 0x3CA8,
"z": 0x3CA9,
'"': 0x3CAA,
":": 0x3CAB,
"~": 0x3CAC,
"@": 0x3CAD,
"#": 0x3CAE,
"+": 0x3CAF,
"_": 0x000E
}
data = [] data = []
itemName = itemName.upper()[:26] itemName = itemName.replace("_", "-").strip()[:26]
itemName = itemName.strip()
itemName = itemName.center(26, " ") itemName = itemName.center(26, " ")
itemName = "___" + itemName + "___" itemName = "___" + itemName + "___"