@@ -519,10 +519,18 @@ void drawSingleColumnMain()
519
519
uint32_t tempTotalMenuOptions = Menu[CurrentMenu].TotalMenuOptions ;
520
520
uint32_t tempCurrentPage = 0 ;
521
521
522
- drawSingleColumn (tempTotalMenuOptions, tempCurrentPage);
522
+ drawSingleColumn (tempTotalMenuOptions, tempCurrentPage, false );
523
523
}
524
524
525
- void drawSingleColumn (uint32_t maxOptionsPerPage, uint32_t currentPage)
525
+ void drawSingleColumnSelectedOption ()
526
+ {
527
+ uint32_t tempTotalMenuOptions = Menu[CurrentMenu].TotalMenuOptions ;
528
+ uint32_t tempCurrentPage = 0 ;
529
+
530
+ drawSingleColumn (tempTotalMenuOptions, tempCurrentPage, true );
531
+ }
532
+
533
+ void drawSingleColumn (uint32_t maxOptionsPerPage, uint32_t currentPage, bool adjustSelectedOption)
526
534
{
527
535
uint32_t tempCurrentMenu = CurrentMenu;
528
536
uint32_t tempSelectedOption = SelectedOption;
@@ -548,6 +556,10 @@ void drawSingleColumn(uint32_t maxOptionsPerPage, uint32_t currentPage)
548
556
{
549
557
CurrentOptionCheck = CurrentMenuOption == i;
550
558
}
559
+ else if (adjustSelectedOption)
560
+ {
561
+ CurrentOptionCheck = (tempSelectedOption - 1 ) == i;
562
+ }
551
563
else
552
564
{
553
565
CurrentOptionCheck = tempSelectedOption == i;
@@ -996,7 +1008,7 @@ void drawMarioStats()
996
1008
float TextScale = 0.6 ;
997
1009
float IconScale = 0.6 ;
998
1010
int32_t TextPosX = -208 ;
999
- int32_t TextPosY = 120 ;
1011
+ int32_t TextPosY = 140 ;
1000
1012
int32_t ValuesPosX = TextPosX + 105 ;
1001
1013
int32_t IconPosX = TextPosX - 15 ;
1002
1014
int32_t IconPosY = TextPosY - 20 ;
@@ -1092,7 +1104,7 @@ void drawMarioStats()
1092
1104
float SpecialMovesScale = 0.37 ;
1093
1105
int16_t SpecialMoveIcon;
1094
1106
IconPosition[IconPositionX] = 133 ;
1095
- IconPosition[IconPositionY] = 46 ;
1107
+ IconPosition[IconPositionY] = 66 ;
1096
1108
1097
1109
int16_t SpecialMovesBits = *reinterpret_cast <int16_t *>(PouchPtr + 0x8C );
1098
1110
for (uint32_t i = 0 ; i < 8 ; i++)
@@ -1121,12 +1133,6 @@ void drawPartnerStats()
1121
1133
uint32_t tempCurrentMenuOption = CurrentMenuOption;
1122
1134
uint32_t tempSelectedOption = SelectedOption;
1123
1135
1124
- // Only display if a partner is selected
1125
- if ((tempSelectedOption == 0 ) && (tempCurrentMenuOption == 0 ))
1126
- {
1127
- return ;
1128
- }
1129
-
1130
1136
// Create array for each stat to go in
1131
1137
int16_t PartnerStats[3 ];
1132
1138
clearMemory (PartnerStats, sizeof (PartnerStats));
@@ -1357,7 +1363,7 @@ void drawBattlesActorStats()
1357
1363
uint32_t Color = 0xFFFFFFFF ;
1358
1364
uint8_t Alpha = 0xFF ;
1359
1365
int32_t NamePosX = -232 ;
1360
- int32_t NamePosY = 0 ;
1366
+ int32_t NamePosY = 20 ;
1361
1367
float Scale = 0.6 ;
1362
1368
1363
1369
uint32_t CurrentActor = *reinterpret_cast <uint32_t *>(ActorAddress + 0x8 );
@@ -1509,7 +1515,7 @@ void drawCurrentFollowerOut()
1509
1515
uint8_t Alpha = 0xFF ;
1510
1516
uint32_t Color = 0xFFFFFFFF ;
1511
1517
int32_t PosX = -232 ;
1512
- int32_t PosY = 100 ;
1518
+ int32_t PosY = 120 ;
1513
1519
float Scale = 0.6 ;
1514
1520
1515
1521
drawText (tempDisplayBuffer, PosX, PosY, Alpha, Color, Scale);
@@ -1525,13 +1531,13 @@ void drawMemoryWatches()
1525
1531
1526
1532
uint32_t tempCurrentPage = CurrentPage;
1527
1533
int32_t TotalMenuOptions = sizeof (MemoryWatch) / sizeof (MemoryWatch[0 ]);
1528
- int32_t MaxOptionsPerPage = 9 ;
1534
+ int32_t MaxOptionsPerPage = 10 ;
1529
1535
int32_t IndexStart = tempCurrentPage * MaxOptionsPerPage;
1530
1536
1531
1537
uint32_t Color = 0xFFFFFFFF ;
1532
1538
uint8_t Alpha = 0xFF ;
1533
1539
int32_t PosX = -232 ;
1534
- int32_t PosY = 60 ;
1540
+ int32_t PosY = 80 ;
1535
1541
float Scale = 0.6 ;
1536
1542
1537
1543
const int32_t TypeOffset = 150 ;
@@ -1610,7 +1616,7 @@ void drawMemoryModifyList()
1610
1616
}
1611
1617
else
1612
1618
{
1613
- CurrentOptionCheck = tempSelectedOption == i;
1619
+ CurrentOptionCheck = ( tempSelectedOption - 1 ) == i;
1614
1620
}
1615
1621
1616
1622
Color = getSelectedTextColor (CurrentOptionCheck);
@@ -1622,7 +1628,7 @@ void drawMemoryModifyList()
1622
1628
Color = 0xFFFFFFFF ;
1623
1629
1624
1630
// Draw the value for the text
1625
- switch (i)
1631
+ switch (i + 1 )
1626
1632
{
1627
1633
case CHANGE_ADDRESS:
1628
1634
{
@@ -1788,7 +1794,7 @@ void drawMemoryChangeAddressList()
1788
1794
1789
1795
uint8_t Alpha = 0xFF ;
1790
1796
int32_t PosX = -232 ;
1791
- int32_t PosY = 80 ;
1797
+ int32_t PosY = 100 ;
1792
1798
float Scale = 0.6 ;
1793
1799
uint32_t Color;
1794
1800
@@ -1878,12 +1884,12 @@ void drawBattlesActorsList()
1878
1884
{
1879
1885
uint32_t tempCurrentPage = CurrentPage;
1880
1886
uint32_t TotalMenuOptions = 62 ; // Excluding System
1881
- uint32_t MaxOptionsPerPage = 13 ;
1887
+ uint32_t MaxOptionsPerPage = 14 ;
1882
1888
uint32_t IndexStart = tempCurrentPage * MaxOptionsPerPage;
1883
1889
1884
1890
uint8_t Alpha = 0xFF ;
1885
1891
int32_t PosX = -232 ;
1886
- int32_t PosY = 120 ;
1892
+ int32_t PosY = 140 ;
1887
1893
float Scale = 0.6 ;
1888
1894
uint32_t Color;
1889
1895
@@ -2337,7 +2343,7 @@ void drawAdjustableValue(bool changingItem, uint32_t currentMenu)
2337
2343
}
2338
2344
else if (currentMenu == WARPS_INDEX)
2339
2345
{
2340
- if (tempCurrentMenuOption == INDEX_SELECT_MAP)
2346
+ if (( tempCurrentMenuOption + 1 ) == INDEX_SELECT_MAP)
2341
2347
{
2342
2348
height = 212 ;
2343
2349
}
@@ -2435,7 +2441,7 @@ void drawAdjustableValue(bool changingItem, uint32_t currentMenu)
2435
2441
y -= 60 ;
2436
2442
}
2437
2443
else if ((currentMenu == WARPS_INDEX) &&
2438
- (tempCurrentMenuOption == INDEX_SELECT_MAP))
2444
+ (( tempCurrentMenuOption + 1 ) == INDEX_SELECT_MAP))
2439
2445
{
2440
2446
sprintf (tempDisplayBuffer,
2441
2447
" Map: %s" ,
@@ -2928,7 +2934,7 @@ void drawCheatsChangeSequence()
2928
2934
uint32_t Color = 0xFFFFFFFF ;
2929
2935
uint8_t Alpha = 0xFF ;
2930
2936
int32_t PosX = -232 ;
2931
- int32_t PosY = 120 ;
2937
+ int32_t PosY = 140 ;
2932
2938
float Scale = 0.6 ;
2933
2939
2934
2940
uint32_t SequencePosition = getSequencePosition ();
@@ -2973,7 +2979,7 @@ void drawCheatsBool(int32_t posY)
2973
2979
uint32_t tempMenuSelectedOption = MenuSelectedOption;
2974
2980
2975
2981
bool CheatActive = Cheat[tempMenuSelectedOption].Active ;
2976
- const char *CurrentLine = CheatsLines[tempMenuSelectedOption + 1 ];
2982
+ const char *CurrentLine = CheatsLines[tempMenuSelectedOption];
2977
2983
2978
2984
drawBoolOnOrOff (CheatActive, CurrentLine, posY);
2979
2985
}
@@ -3099,7 +3105,7 @@ void drawCheatsForcedDropItem()
3099
3105
uint8_t Alpha = 0xFF ;
3100
3106
uint32_t Color = 0xFFFFFFFF ;
3101
3107
int32_t PosX = -232 ;
3102
- int32_t PosY = 10 ;
3108
+ int32_t PosY = 60 ;
3103
3109
float Scale = 0.6 ;
3104
3110
3105
3111
// Draw the text for showing what the current item is
@@ -3143,7 +3149,7 @@ void drawCheatsManageFlagsMain(uint32_t currentMenu)
3143
3149
{
3144
3150
ChangingWord = true ;
3145
3151
Line = CheatsManageGlobalWordsOptions;
3146
- Size = 4 ;
3152
+ Size = 3 ;
3147
3153
break ;
3148
3154
}
3149
3155
case SET_GSWF:
@@ -3152,7 +3158,7 @@ void drawCheatsManageFlagsMain(uint32_t currentMenu)
3152
3158
default :
3153
3159
{
3154
3160
Line = CheatsManageGlobalFlagsOptions;
3155
- Size = 3 ;
3161
+ Size = 2 ;
3156
3162
}
3157
3163
}
3158
3164
@@ -3209,18 +3215,18 @@ void drawCheatsManageFlagsMain(uint32_t currentMenu)
3209
3215
for (uint32_t i = 0 ; i < Size; i++)
3210
3216
{
3211
3217
bool CurrentOptionCheck;
3212
- if (tempSelectedOption == 0 )
3218
+ if (tempSelectedOption <= 1 )
3213
3219
{
3214
3220
CurrentOptionCheck = CurrentMenuOption == i;
3215
3221
}
3216
3222
else
3217
3223
{
3218
- CurrentOptionCheck = tempSelectedOption == i;
3224
+ CurrentOptionCheck = ( tempSelectedOption - 1 ) == i;
3219
3225
}
3220
3226
3221
3227
Color = getSelectedTextColor (CurrentOptionCheck);
3222
3228
3223
- if (i == 1 )
3229
+ if (i == 0 )
3224
3230
{
3225
3231
sprintf (tempDisplayBuffer,
3226
3232
" Change %s" ,
@@ -3292,7 +3298,7 @@ void drawCheatsClearArea()
3292
3298
const char **tempCheatsForceItemDropAreas = CheatsForceItemDropAreas;
3293
3299
3294
3300
int32_t PosX = -232 ;
3295
- int32_t PosY = 100 ;
3301
+ int32_t PosY = 120 ;
3296
3302
uint32_t Size = tempCheatsForceItemDropAreasSize;
3297
3303
uint32_t MaxOptionsPerPage = tempCheatsForceItemDropAreasSize;
3298
3304
uint32_t MaxOptionsPerRow = 4 ;
@@ -3337,7 +3343,7 @@ void drawWarpsOptions()
3337
3343
const char **tempWarpDestinations = WarpDestinations;
3338
3344
3339
3345
int32_t PosX = -232 ;
3340
- int32_t PosY = 100 ;
3346
+ int32_t PosY = 120 ;
3341
3347
uint32_t Size = tempWarpDestinationsSize;
3342
3348
uint32_t MaxOptionsPerPage = tempWarpDestinationsSize;
3343
3349
uint32_t MaxOptionsPerRow = 4 ;
@@ -3373,7 +3379,7 @@ void drawWarpIndexMapAndEntrance()
3373
3379
uint32_t Color = 0xFFFFFFFF ;
3374
3380
uint8_t Alpha = 0xFF ;
3375
3381
int32_t PosX = -232 ;
3376
- int32_t PosY = 60 ;
3382
+ int32_t PosY = 80 ;
3377
3383
float Scale = 0.6 ;
3378
3384
3379
3385
const char *String = " Current Map\n Current Entrance\n\n New Map\n New Entrance Id" ;
@@ -3479,7 +3485,7 @@ void drawWarpIndexEntranceList()
3479
3485
3480
3486
void drawOnScreenTimerButtonCombos ()
3481
3487
{
3482
- int32_t PosY = - 20 ;
3488
+ int32_t PosY = 0 ;
3483
3489
uint32_t tempOnScreenTimerOptionsSize = OnScreenTimerOptionsSize;
3484
3490
3485
3491
for (uint32_t i = 0 ; i < tempOnScreenTimerOptionsSize; i++)
0 commit comments