summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPokeCodec <67983839+PokeCodec@users.noreply.github.com>2020-09-08 20:25:07 -0400
committerPokeCodec <67983839+PokeCodec@users.noreply.github.com>2020-09-08 20:25:07 -0400
commit6e3f5a462a0a42422310a11193d15b3065ffd536 (patch)
tree17582f4e20a7b5ef1670826a13a6a215d5d737c2 /src
parent6fb1d55c33059c90cfc3e590d1e67f7e50eb1c05 (diff)
Remove fakematch in trainer hell
Diffstat (limited to 'src')
-rw-r--r--src/trainer_hill.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/trainer_hill.c b/src/trainer_hill.c
index bed8df2e0..14af7372f 100644
--- a/src/trainer_hill.c
+++ b/src/trainer_hill.c
@@ -672,22 +672,17 @@ bool32 LoadTrainerHillFloorObjectEventScripts(void)
return TRUE;
}
-static u32 sub_81D5F58(u8 floorId, u32 bit, u32 arg2, u32 arg3)
+static u16 sub_81D5F58(u8 floorId, u32 bit, u32 arg2, u32 arg3)
{
- u16 var0, var1;
- #ifndef NONMATCHING
- register u16 var2 asm("r3"); //compiler keeps wanting to "mov r3, 0x80" instead of "mov r2 0x80" and then later "add r3, r2, 0"
- #else
+ u8 var0;
+ u16 var1;
u16 var2;
- #endif
- u16 var3;
var0 = (sHillData->floors[floorId].display.unk3A0[arg2] >> (15 - bit) & 1);
- var1 = sHillData->floors[floorId].display.data[arg3 * arg2 + bit];
- var2 = 0x200;
- var3 = 0x3000;
+ var1 = sHillData->floors[floorId].display.data[arg3 * arg2 + bit] + 0x200;
+ var2 = 0x3000;
- return ((var0 << 10) | var3) | (var1 | var2);
+ return (((var0 << 10) & 0xc00) | var2) | (var1 & 0x3ff);
}
void GenerateTrainerHillFloorLayout(u16 *mapArg)