diff options
-rw-r--r-- | Dynamic-Trade-Names.md | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Dynamic-Trade-Names.md b/Dynamic-Trade-Names.md new file mode 100644 index 0000000..ee4b8d8 --- /dev/null +++ b/Dynamic-Trade-Names.md @@ -0,0 +1,26 @@ +## Dynamic Trade Names + +Traded Pokemon are stored at gEnemyParty[0]. If you create a custom Pokemon to trade (not in sIngameTrades), the trading scene strings will get messed up. This loads the correct OT name / OT nickname from the pokemon's data structure rather than the in game trade array. + +credit: Zeturic's binary FR src + +### Open (src/trade.c)[../blob/master/src/trade.c] + +Find `BufferTradeSceneStrings` After the `else` statement, replace the following: +```c +ingameTrade = &sIngameTrades[gSpecialVar_0x8004]; +StringCopy(gStringVar1, ingameTrade->otName); +StringCopy10(gStringVar3, ingameTrade->nickname); +GetMonData(&gPlayerParty[gSpecialVar_0x8005], MON_DATA_NICKNAME, name); +StringCopy10(gStringVar2, name); +``` +with: +```c +GetMonData(&gEnemyParty[0], MON_DATA_OT_NAME, gStringVar1); +GetMonData(&gEnemyParty[0], MON_DATA_NICKNAME, name); +StringCopy10(gStringVar3, name); +GetMonData(&gPlayerParty[gSpecialVar_0x8005], MON_DATA_NICKNAME, name); +StringCopy10(gStringVar2, name); +``` + +That's it!
\ No newline at end of file |