diff --git a/charmap.txt b/charmap.txt index 98ad683c81..cd0972f84a 100644 --- a/charmap.txt +++ b/charmap.txt @@ -46,6 +46,8 @@ LV = 34 '=' = 35 ';' = 36 V_D_ARROW = 38 +NBSP = 39 +'~' = 39 '¿' = 51 '¡' = 52 PK = 53 diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index d1d139b800..5df1d1935f 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -872,7 +872,7 @@ BattleScript_EffectOctolock:: goto BattleScript_MoveEnd BattleScript_OctolockEndTurn:: - playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, STAT_CHANGE_NEGATIVE + playstatchangeanimation BS_TARGET, BIT_DEF | BIT_SPDEF, STAT_CHANGE_NEGATIVE setstatchanger STAT_DEF, 1, TRUE statbuffchange STAT_CHANGE_ALLOW_PTR | STAT_CHANGE_NOT_PROTECT_AFFECTED, BattleScript_OctolockTryLowerSpDef printfromtable gStatDownStringIds @@ -2749,9 +2749,9 @@ BattleScript_GravityLoopDrop: printstring STRINGID_GRAVITYGROUNDING waitmessage B_WAIT_TIME_LONG BattleScript_GravityLoopEnd: - moveendto MOVEEND_NEXT_TARGET + moveendcase MOVEEND_TARGET_VISIBLE jumpifnexttargetvalid BattleScript_GravityLoop - end + goto BattleScript_MoveEnd BattleScript_EffectRoost:: attackcanceler @@ -3423,7 +3423,7 @@ BattleScript_EffectOHKO:: attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE typecalc jumpifmovehadnoeffect BattleScript_HitFromAtkAnimation tryKO BattleScript_KOFail diff --git a/data/scripts/debug.inc b/data/scripts/debug.inc index 9da3f529fc..0be780609d 100644 --- a/data/scripts/debug.inc +++ b/data/scripts/debug.inc @@ -449,7 +449,7 @@ Debug_EventScript_EWRAMCounters_Text:: .string "Fishing Chain: {STR_VAR_2}.$" Debug_EventScript_FontTest_Text_1:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Angel Adept Blind Bodice Clique\n" .string "Coast Dunce Docile Enact Eosin\l" .string "Furlong Focal Gnome Gondola Human\l" @@ -463,7 +463,7 @@ Debug_EventScript_FontTest_Text_1:: .string "Zloty Zodiac.$" Debug_EventScript_FontTest_Text_2:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Angel angel adept for the nuance loads\n" .string "of the arena cocoa and quaalude. Blind\l" .string "blind bodice for the submit oboe of the\l" @@ -474,7 +474,7 @@ Debug_EventScript_FontTest_Text_2:: .string "loud statehood and huddle.$" Debug_EventScript_FontTest_Text_3:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Enact enact eosin for the quench coed\n" .string "of the pique canoe and bleep. Furlong\l" .string "furlong focal for the genuflect\l" @@ -486,7 +486,7 @@ Debug_EventScript_FontTest_Text_3:: .string "bathhouse.$" Debug_EventScript_FontTest_Text_4:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Inlet inlet iodine for the quince\n" .string "champion of the ennui scampi and shiite.\l" .string "Justin justin jocose for the djibouti\l" @@ -498,7 +498,7 @@ Debug_EventScript_FontTest_Text_4:: .string "shallot.$" Debug_EventScript_FontTest_Text_5:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Milliner milliner modal for the alumna\n" .string "solomon of the album custom and summon.\l" .string "Number number nodule for the unmade\l" @@ -510,7 +510,7 @@ Debug_EventScript_FontTest_Text_5:: .string "bishop and supplies.$" Debug_EventScript_FontTest_Text_6:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Quanta quanta qophs for the inquest\n" .string "sheqel of the cinq coq and suqqu. Rhone\l" .string "rhone roman for the burnt porous of the\l" @@ -521,7 +521,7 @@ Debug_EventScript_FontTest_Text_6:: .string "of the peasant ingot and ottoman.$" Debug_EventScript_FontTest_Text_7:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Uncle uncle udder for the dunes cloud\n" .string "of the hindu thou and continuum. Vulcan\l" .string "vulcan vocal for the alluvial ovoid of\l" @@ -533,12 +533,24 @@ Debug_EventScript_FontTest_Text_7:: .string "exxon.$" Debug_EventScript_FontTest_Text_8:: - .string "{FONT_SHORT_NARROWER}" @ Edit this to test your font + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font .string "Yunnan yunnan young for the dynamo\n" .string "coyote of the obloquy employ and\l" .string "sayyid. Zloty zloty zodiac for the gizmo\l" .string "ozone of the franz laissez and buzzing.$" + +Debug_EventScript_FontTest_Text_9:: @ Special thanks to Nintendo for this nice pangram to test other glyphs + .string "{FONT_SMALL_NARROWER}" @ Edit this to test your font + .string "42 × 138 = 5796.\n" + .string "Mr Jock, TV quiz PhD: bags 20% fewer\l" + .string "lynx at a café; voilà, they're “worth”\l" + .string "♂1/♀1 = ¥1. That's 10 + 9 - 8 = 11\l" + .string "Nintendo GBA can connect to a Nintendo\l" + .string "GameCube console! He claimed-though I don't\l" + .string "believe him-to have done so in an eyes-shut\l" + .string "state…?$" + Debug_PrintFontTest:: msgbox Debug_EventScript_FontTest_Text_1, MSGBOX_DEFAULT msgbox Debug_EventScript_FontTest_Text_2, MSGBOX_DEFAULT @@ -548,6 +560,7 @@ Debug_PrintFontTest:: msgbox Debug_EventScript_FontTest_Text_6, MSGBOX_DEFAULT msgbox Debug_EventScript_FontTest_Text_7, MSGBOX_DEFAULT msgbox Debug_EventScript_FontTest_Text_8, MSGBOX_DEFAULT + msgbox Debug_EventScript_FontTest_Text_9, MSGBOX_DEFAULT releaseall end diff --git a/graphics/battle_anims/sprites/attack_order.png b/graphics/battle_anims/sprites/attack_order.png index 18531b8304..624708545e 100644 Binary files a/graphics/battle_anims/sprites/attack_order.png and b/graphics/battle_anims/sprites/attack_order.png differ diff --git a/graphics/battle_anims/sprites/aura_sphere.png b/graphics/battle_anims/sprites/aura_sphere.png index 04c5030245..4ee16cd488 100644 Binary files a/graphics/battle_anims/sprites/aura_sphere.png and b/graphics/battle_anims/sprites/aura_sphere.png differ diff --git a/graphics/battle_anims/sprites/blue_flare.pal b/graphics/battle_anims/sprites/blue_flare.pal index 3b224c3459..87bb2254a3 100644 --- a/graphics/battle_anims/sprites/blue_flare.pal +++ b/graphics/battle_anims/sprites/blue_flare.pal @@ -1,6 +1,6 @@ JASC-PAL 0100 -256 +16 0 0 0 248 248 248 205 248 255 @@ -17,243 +17,3 @@ JASC-PAL 238 238 238 189 189 189 156 164 164 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 diff --git a/graphics/battle_anims/sprites/dragon_pulse.png b/graphics/battle_anims/sprites/dragon_pulse.png index cc6e28bc32..5a1f62321f 100644 Binary files a/graphics/battle_anims/sprites/dragon_pulse.png and b/graphics/battle_anims/sprites/dragon_pulse.png differ diff --git a/graphics/battle_anims/sprites/embers.png b/graphics/battle_anims/sprites/embers.png index 8bf2dd5aa6..c5799e7160 100644 Binary files a/graphics/battle_anims/sprites/embers.png and b/graphics/battle_anims/sprites/embers.png differ diff --git a/graphics/battle_anims/sprites/fly.png b/graphics/battle_anims/sprites/fly.png index dd1149de99..ff648a6e2e 100644 Binary files a/graphics/battle_anims/sprites/fly.png and b/graphics/battle_anims/sprites/fly.png differ diff --git a/graphics/battle_anims/sprites/horn_hit_new.png b/graphics/battle_anims/sprites/horn_hit_new.png index 9bdf61d7d9..0e1a9f2076 100644 Binary files a/graphics/battle_anims/sprites/horn_hit_new.png and b/graphics/battle_anims/sprites/horn_hit_new.png differ diff --git a/graphics/battle_anims/sprites/mean_look.png b/graphics/battle_anims/sprites/mean_look.png index 30e6eb5eea..ee9ad320b0 100644 Binary files a/graphics/battle_anims/sprites/mean_look.png and b/graphics/battle_anims/sprites/mean_look.png differ diff --git a/graphics/battle_anims/sprites/poison_jab.png b/graphics/battle_anims/sprites/poison_jab.png index e7871a2c9d..b03f4f8d7e 100644 Binary files a/graphics/battle_anims/sprites/poison_jab.png and b/graphics/battle_anims/sprites/poison_jab.png differ diff --git a/graphics/battle_anims/sprites/power_gem.png b/graphics/battle_anims/sprites/power_gem.png index 8d9ad469e3..439610c71b 100644 Binary files a/graphics/battle_anims/sprites/power_gem.png and b/graphics/battle_anims/sprites/power_gem.png differ diff --git a/graphics/battle_anims/sprites/psycho_cut.png b/graphics/battle_anims/sprites/psycho_cut.png index 3eb1de7d2a..f40d21f706 100644 Binary files a/graphics/battle_anims/sprites/psycho_cut.png and b/graphics/battle_anims/sprites/psycho_cut.png differ diff --git a/graphics/battle_anims/sprites/stealth_rock.png b/graphics/battle_anims/sprites/stealth_rock.png index 8b38ae1c17..9334a3419a 100644 Binary files a/graphics/battle_anims/sprites/stealth_rock.png and b/graphics/battle_anims/sprites/stealth_rock.png differ diff --git a/graphics/battle_anims/sprites/stone_edge.png b/graphics/battle_anims/sprites/stone_edge.png index 44f678d8db..80377da7ee 100644 Binary files a/graphics/battle_anims/sprites/stone_edge.png and b/graphics/battle_anims/sprites/stone_edge.png differ diff --git a/graphics/battle_anims/sprites/wood_hammer.png b/graphics/battle_anims/sprites/wood_hammer.png index 5768605f80..16e1749835 100644 Binary files a/graphics/battle_anims/sprites/wood_hammer.png and b/graphics/battle_anims/sprites/wood_hammer.png differ diff --git a/graphics/fonts/latin_narrow.png b/graphics/fonts/latin_narrow.png index 08652d45f4..434638ed17 100644 Binary files a/graphics/fonts/latin_narrow.png and b/graphics/fonts/latin_narrow.png differ diff --git a/graphics/fonts/latin_narrower.png b/graphics/fonts/latin_narrower.png index 22847ef099..19a6a98fb6 100644 Binary files a/graphics/fonts/latin_narrower.png and b/graphics/fonts/latin_narrower.png differ diff --git a/graphics/fonts/latin_short.png b/graphics/fonts/latin_short.png index 7eba3e748b..98ad3c5cc3 100644 Binary files a/graphics/fonts/latin_short.png and b/graphics/fonts/latin_short.png differ diff --git a/graphics/fonts/latin_short_narrow.png b/graphics/fonts/latin_short_narrow.png index cf48712719..6bf1bae0cf 100644 Binary files a/graphics/fonts/latin_short_narrow.png and b/graphics/fonts/latin_short_narrow.png differ diff --git a/graphics/fonts/latin_short_narrower.png b/graphics/fonts/latin_short_narrower.png index 9c79ae474f..5c4f4c1d4d 100644 Binary files a/graphics/fonts/latin_short_narrower.png and b/graphics/fonts/latin_short_narrower.png differ diff --git a/graphics/fonts/latin_small.png b/graphics/fonts/latin_small.png index 371cd5a968..41bb38cff8 100644 Binary files a/graphics/fonts/latin_small.png and b/graphics/fonts/latin_small.png differ diff --git a/graphics/fonts/latin_small_narrow.png b/graphics/fonts/latin_small_narrow.png index 3a88def3ad..ff07b857d7 100644 Binary files a/graphics/fonts/latin_small_narrow.png and b/graphics/fonts/latin_small_narrow.png differ diff --git a/graphics/fonts/latin_small_narrower.png b/graphics/fonts/latin_small_narrower.png index d03f1b8ad0..c20fa4ae48 100644 Binary files a/graphics/fonts/latin_small_narrower.png and b/graphics/fonts/latin_small_narrower.png differ diff --git a/include/constants/characters.h b/include/constants/characters.h index 3725cecce0..6ac3c5224c 100644 --- a/include/constants/characters.h +++ b/include/constants/characters.h @@ -54,6 +54,7 @@ #define CHAR_SEMICOLON 0x36 #define CHAR_BARD_WORD_DELIMIT 0x37 // Empty space to separate words in Bard's song #define CHAR_V_D_ARROW 0x38 +#define CHAR_NBSP 0x39 #define CHAR_INV_QUESTION_MARK 0x51 #define CHAR_INV_EXCL_MARK 0x52 #define CHAR_PK 0x53 diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 3396999487..00e73735e8 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1759,7 +1759,6 @@ static void MoveSelectionDisplayMoveDescription(u32 battler) u16 move = moveInfo->moves[gMoveSelectionCursor[battler]]; u16 pwr = gMovesInfo[move].power; u16 acc = gMovesInfo[move].accuracy; - u8 cat = gMovesInfo[move].category; u8 pwr_num[3], acc_num[3]; u8 cat_desc[7] = _("CAT: "); @@ -1796,7 +1795,7 @@ static void MoveSelectionDisplayMoveDescription(u32 battler) if (gCategoryIconSpriteId == 0xFF) gCategoryIconSpriteId = CreateSprite(&gSpriteTemplate_CategoryIcons, 38, 64, 1); - StartSpriteAnim(&gSprites[gCategoryIconSpriteId], cat); + StartSpriteAnim(&gSprites[gCategoryIconSpriteId], GetBattleMoveCategory(move)); CopyWindowToVram(B_WIN_MOVE_DESCRIPTION, COPYWIN_FULL); } diff --git a/src/battle_message.c b/src/battle_message.c index 88b33a2c03..684857edb1 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -3119,7 +3119,10 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst, u32 dstSize) { while (*toCpy != EOS) { - dst[dstID] = *toCpy; + if (*toCpy == CHAR_SPACE) + dst[dstID] = CHAR_NBSP; + else + dst[dstID] = *toCpy; dstID++; toCpy++; } diff --git a/src/battle_util.c b/src/battle_util.c index 3848a31212..36c994f2aa 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -2526,15 +2526,14 @@ u8 DoBattlerEndTurnEffects(void) gBattleStruct->turnEffectsTracker++; break; case ENDTURN_OCTOLOCK: - { if (gDisableStructs[battler].octolock) { + gBattlerAttacker = gDisableStructs[battler].battlerPreventingEscape; gBattlerTarget = battler; BattleScriptExecute(BattleScript_OctolockEndTurn); effect++; } gBattleStruct->turnEffectsTracker++; - } break; case ENDTURN_UPROAR: // uproar if (gBattleMons[battler].status2 & STATUS2_UPROAR) @@ -11199,7 +11198,7 @@ u8 GetBattleMoveCategory(u32 moveId) if (IS_MOVE_STATUS(moveId)) return DAMAGE_CATEGORY_STATUS; - return gTypesInfo[GetMoveType(gCurrentMove)].damageCategory; + return gTypesInfo[GetMoveType(moveId)].damageCategory; } static bool32 TryRemoveScreens(u32 battler) diff --git a/src/debug.c b/src/debug.c index 590e415b7e..3615ef1997 100644 --- a/src/debug.c +++ b/src/debug.c @@ -159,7 +159,7 @@ enum FlagsVarsDebugMenu DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_LOCATIONS, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BADGES_ALL, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_FRONTIER_PASS, - DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLISSION, + DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLLISION, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_ENCOUNTER, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_TRAINER_SEE, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BAG_USE, @@ -788,7 +788,7 @@ static const struct ListMenuItem sDebugMenu_Items_FlagsVars[] = [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_LOCATIONS] = {sDebugText_FlagsVars_ToggleFlyFlags, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_LOCATIONS}, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BADGES_ALL] = {sDebugText_FlagsVars_ToggleAllBadges, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BADGES_ALL}, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_FRONTIER_PASS] = {sDebugText_FlagsVars_ToggleFrontierPass, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_FRONTIER_PASS}, - [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLISSION] = {sDebugText_FlagsVars_SwitchCollision, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLISSION}, + [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLLISION] = {sDebugText_FlagsVars_SwitchCollision, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLLISION}, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_ENCOUNTER] = {sDebugText_FlagsVars_SwitchEncounter, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_ENCOUNTER}, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_TRAINER_SEE] = {sDebugText_FlagsVars_SwitchTrainerSee, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_TRAINER_SEE}, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BAG_USE] = {sDebugText_FlagsVars_SwitchBagUse, DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BAG_USE}, @@ -959,7 +959,7 @@ static void (*const sDebugMenu_Actions_Flags[])(u8) = [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_LOCATIONS] = DebugAction_FlagsVars_ToggleFlyFlags, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BADGES_ALL] = DebugAction_FlagsVars_ToggleBadgeFlags, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_FRONTIER_PASS] = DebugAction_FlagsVars_ToggleFrontierPass, - [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLISSION] = DebugAction_FlagsVars_CollisionOnOff, + [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLLISION] = DebugAction_FlagsVars_CollisionOnOff, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_ENCOUNTER] = DebugAction_FlagsVars_EncounterOnOff, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_TRAINER_SEE] = DebugAction_FlagsVars_TrainerSeeOnOff, [DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_BAG_USE] = DebugAction_FlagsVars_BagUseOnOff, @@ -1312,7 +1312,7 @@ static u8 Debug_CheckToggleFlags(u8 id) result = FlagGet(FLAG_SYS_FRONTIER_PASS); break; #if OW_FLAG_NO_COLLISION != 0 - case DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLISSION: + case DEBUG_FLAGVAR_MENU_ITEM_TOGGLE_COLLISION: result = FlagGet(OW_FLAG_NO_COLLISION); break; #endif @@ -1927,7 +1927,7 @@ static void DebugAction_Util_Warp_Warp(u8 taskId) StringExpandPlaceholders(gStringVar1, sDebugText_Util_WarpToMap_SelMax); StringCopy(gStringVar3, gText_DigitIndicator[0]); StringExpandPlaceholders(gStringVar4, sDebugText_Util_WarpToMap_SelectMapGroup); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Util_Warp_SelectMapGroup; gTasks[taskId].tSubWindowId = windowId; @@ -1971,7 +1971,7 @@ static void DebugAction_Util_Warp_SelectMapGroup(u8 taskId) StringExpandPlaceholders(gStringVar1, sDebugText_Util_WarpToMap_SelMax); StringCopy(gStringVar3, gText_DigitIndicator[gTasks[taskId].tDigit]); StringExpandPlaceholders(gStringVar4, sDebugText_Util_WarpToMap_SelectMapGroup); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -1986,7 +1986,7 @@ static void DebugAction_Util_Warp_SelectMapGroup(u8 taskId) GetMapName(gStringVar2, Overworld_GetMapHeaderByGroupAndId(gTasks[taskId].tMapGroup, gTasks[taskId].tInput)->regionMapSectionId, 0); StringCopy(gStringVar3, gText_DigitIndicator[gTasks[taskId].tDigit]); StringExpandPlaceholders(gStringVar4, sDebugText_Util_WarpToMap_SelectMap); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Util_Warp_SelectMap; } @@ -2033,7 +2033,7 @@ static void DebugAction_Util_Warp_SelectMap(u8 taskId) GetMapName(gStringVar2, Overworld_GetMapHeaderByGroupAndId(gTasks[taskId].tMapGroup, gTasks[taskId].tInput)->regionMapSectionId, 0); StringCopy(gStringVar3, gText_DigitIndicator[gTasks[taskId].tDigit]); StringExpandPlaceholders(gStringVar4, sDebugText_Util_WarpToMap_SelectMap); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -2045,7 +2045,7 @@ static void DebugAction_Util_Warp_SelectMap(u8 taskId) StringCopy(gStringVar3, gText_DigitIndicator[gTasks[taskId].tDigit]); ConvertIntToDecimalStringN(gStringVar1, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); StringExpandPlaceholders(gStringVar4, sDebugText_Util_WarpToMap_SelectWarp); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Util_Warp_SelectWarp; } else if (JOY_NEW(B_BUTTON)) @@ -2076,7 +2076,7 @@ static void DebugAction_Util_Warp_SelectWarp(u8 taskId) StringCopy(gStringVar3, gText_DigitIndicator[gTasks[taskId].tDigit]); ConvertIntToDecimalStringN(gStringVar1, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); StringExpandPlaceholders(gStringVar4, sDebugText_Util_WarpToMap_SelectWarp); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -2236,7 +2236,7 @@ static void DebugAction_Util_Weather(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, 1, STR_CONV_MODE_LEADING_ZEROS, 2); StringCopyPadded(gStringVar1, sWeatherNames[0], CHAR_SPACE, 30); StringExpandPlaceholders(gStringVar4, sDebugText_Util_Weather_ID); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Util_Weather_SelectId; gTasks[taskId].tSubWindowId = windowId; @@ -2282,7 +2282,7 @@ static void DebugAction_Util_Weather_SelectId(u8 taskId) StringCopyPadded(gStringVar1, sDebugText_WeatherNotDefined, CHAR_SPACE, 30); StringExpandPlaceholders(gStringVar4, sDebugText_Util_Weather_ID); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -2445,7 +2445,7 @@ static void DebugAction_FlagsVars_Flags(u8 taskId) StringCopyPadded(gStringVar2, sDebugText_False, CHAR_SPACE, 15); StringCopy(gStringVar3, gText_DigitIndicator[0]); StringExpandPlaceholders(gStringVar4, sDebugText_FlagsVars_Flag); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_FlagsVars_FlagsSelect; gTasks[taskId].tSubWindowId = windowId; @@ -2506,7 +2506,7 @@ static void DebugAction_FlagsVars_FlagsSelect(u8 taskId) StringCopyPadded(gStringVar2, sDebugText_False, CHAR_SPACE, 15); StringCopy(gStringVar3, gText_DigitIndicator[gTasks[taskId].tDigit]); StringExpandPlaceholders(gStringVar4, sDebugText_FlagsVars_Flag); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } } @@ -2534,7 +2534,7 @@ static void DebugAction_FlagsVars_Vars(u8 taskId) StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringCopy(gStringVar2, gText_DigitIndicator[0]); StringExpandPlaceholders(gStringVar4, sDebugText_FlagsVars_Variable); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_FlagsVars_Select; gTasks[taskId].tSubWindowId = windowId; @@ -2586,7 +2586,7 @@ static void DebugAction_FlagsVars_Select(u8 taskId) //Combine str's to full window string StringExpandPlaceholders(gStringVar4, sDebugText_FlagsVars_Variable); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -2606,7 +2606,7 @@ static void DebugAction_FlagsVars_Select(u8 taskId) StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); StringExpandPlaceholders(gStringVar4, sDebugText_FlagsVars_VariableValueSet); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].data[6] = gTasks[taskId].data[5]; //New value selector gTasks[taskId].func = DebugAction_FlagsVars_SetValue; @@ -2674,7 +2674,7 @@ static void DebugAction_FlagsVars_SetValue(u8 taskId) StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); StringExpandPlaceholders(gStringVar4, sDebugText_FlagsVars_VariableValueSet); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } } @@ -2960,10 +2960,11 @@ static void DebugAction_Give_Item(u8 taskId) // Display initial item StringCopy(gStringVar2, gText_DigitIndicator[0]); ConvertIntToDecimalStringN(gStringVar3, 1, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); - CopyItemName(1, gStringVar1); + u8* end = CopyItemName(1, gStringVar1); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(windowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_ItemID); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Item_SelectId; gTasks[taskId].tSubWindowId = windowId; @@ -3005,11 +3006,12 @@ static void DebugAction_Give_Item_SelectId(u8 taskId) } StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); - CopyItemName(gTasks[taskId].tInput, gStringVar1); + u8* end = CopyItemName(gTasks[taskId].tInput, gStringVar1); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(gTasks[taskId].tSubWindowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); StringExpandPlaceholders(gStringVar4, sDebugText_ItemID); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); FreeSpriteTilesByTag(ITEM_TAG); //Destroy item icon FreeSpritePaletteByTag(ITEM_TAG); //Destroy item icon @@ -3031,7 +3033,7 @@ static void DebugAction_Give_Item_SelectId(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEM_QUANTITY); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_ItemQuantity); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Item_SelectQuantity; } @@ -3082,7 +3084,7 @@ static void DebugAction_Give_Item_SelectQuantity(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEM_QUANTITY); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_ItemQuantity); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -3158,11 +3160,12 @@ static void DebugAction_Give_PokemonSimple(u8 taskId) // Display initial Pokémon StringCopy(gStringVar2, gText_DigitIndicator[0]); - ConvertIntToDecimalStringN(gStringVar3, sDebugMonData->species, STR_CONV_MODE_LEADING_ZEROS, 3); - StringCopy(gStringVar1, GetSpeciesName(sDebugMonData->species)); + ConvertIntToDecimalStringN(gStringVar3, sDebugMonData->species, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); + u8 *end = StringCopy(gStringVar1, GetSpeciesName(sDebugMonData->species)); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(windowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonID); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); //Set task data gTasks[taskId].func = DebugAction_Give_Pokemon_SelectId; @@ -3198,11 +3201,12 @@ static void DebugAction_Give_PokemonComplex(u8 taskId) // Display initial Pokémon StringCopy(gStringVar2, gText_DigitIndicator[0]); - ConvertIntToDecimalStringN(gStringVar3, sDebugMonData->species, STR_CONV_MODE_LEADING_ZEROS, 4); - StringCopy(gStringVar1, GetSpeciesName(sDebugMonData->species)); + ConvertIntToDecimalStringN(gStringVar3, sDebugMonData->species, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); + u8 *end = StringCopy(gStringVar1, GetSpeciesName(sDebugMonData->species)); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(windowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonID); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectId; gTasks[taskId].tSubWindowId = windowId; @@ -3247,11 +3251,12 @@ static void DebugAction_Give_Pokemon_SelectId(u8 taskId) } StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); - StringCopy(gStringVar1, GetSpeciesName(gTasks[taskId].tInput)); //CopyItemName(gTasks[taskId].tInput, gStringVar1); + u8 *end = StringCopy(gStringVar1, GetSpeciesName(gTasks[taskId].tInput)); //CopyItemName(gTasks[taskId].tInput, gStringVar1); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(gTasks[taskId].tSubWindowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); - ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 4); + ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonID); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); FreeAndDestroyMonIconSprite(&gSprites[gTasks[taskId].tSpriteId]); FreeMonIconPalettes(); @@ -3270,7 +3275,7 @@ static void DebugAction_Give_Pokemon_SelectId(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonLevel); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectLevel; } @@ -3317,7 +3322,7 @@ static void DebugAction_Give_Pokemon_SelectLevel(u8 taskId) ConvertIntToDecimalStringN(gStringVar1, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonLevel); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -3343,7 +3348,7 @@ static void DebugAction_Give_Pokemon_SelectLevel(u8 taskId) StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringCopyPadded(gStringVar2, sDebugText_False, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonShiny); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectShiny; } @@ -3371,7 +3376,7 @@ static void DebugAction_Give_Pokemon_SelectShiny(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 0); StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonShiny); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -3385,7 +3390,7 @@ static void DebugAction_Give_Pokemon_SelectShiny(u8 taskId) StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringCopy(gStringVar1, gNaturesInfo[0].name); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonNature); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectNature; } @@ -3421,7 +3426,7 @@ static void DebugAction_Give_Pokemon_SelectNature(u8 taskId) StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringCopy(gStringVar1, gNaturesInfo[gTasks[taskId].tInput].name); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonNature); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -3435,9 +3440,10 @@ static void DebugAction_Give_Pokemon_SelectNature(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 2); StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); abilityId = GetAbilityBySpecies(sDebugMonData->species, 0); - StringCopy(gStringVar1, gAbilitiesInfo[abilityId].name); + u8 *end = StringCopy(gStringVar1, gAbilitiesInfo[abilityId].name); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(gTasks[taskId].tSubWindowId)); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonAbility); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectAbility; } @@ -3480,9 +3486,10 @@ static void DebugAction_Give_Pokemon_SelectAbility(u8 taskId) StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 2); StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); - StringCopy(gStringVar1, gAbilitiesInfo[abilityId].name); + u8 *end = StringCopy(gStringVar1, gAbilitiesInfo[abilityId].name); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(gTasks[taskId].tSubWindowId)); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonAbility); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -3495,7 +3502,7 @@ static void DebugAction_Give_Pokemon_SelectAbility(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 2); StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_IV_HP); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectIVs; } @@ -3560,7 +3567,7 @@ static void DebugAction_Give_Pokemon_SelectIVs(u8 taskId) StringExpandPlaceholders(gStringVar4, sDebugText_IV_SpDefense); break; } - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } //If A or B button @@ -3619,7 +3626,7 @@ static void DebugAction_Give_Pokemon_SelectIVs(u8 taskId) StringExpandPlaceholders(gStringVar4, sDebugText_IV_SpDefense); break; } - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectIVs; } @@ -3633,7 +3640,7 @@ static void DebugAction_Give_Pokemon_SelectIVs(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_EV_HP); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectEVs; } } @@ -3710,7 +3717,7 @@ static void DebugAction_Give_Pokemon_SelectEVs(u8 taskId) StringExpandPlaceholders(gStringVar4, sDebugText_EV_SpDefense); break; } - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } //If A or B button @@ -3769,7 +3776,7 @@ static void DebugAction_Give_Pokemon_SelectEVs(u8 taskId) StringExpandPlaceholders(gStringVar4, sDebugText_EV_SpDefense); break; } - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectEVs; } @@ -3793,18 +3800,19 @@ static void DebugAction_Give_Pokemon_SelectEVs(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); StringCopyPadded(gStringVar3, gStringVar3, CHAR_SPACE, 15); StringExpandPlaceholders(gStringVar4, sDebugText_EV_HP); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_SelectEVs; } else { StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); - StringCopy(gStringVar1, GetMoveName(gTasks[taskId].tInput)); + u8 *end = StringCopy(gStringVar1, GetMoveName(gTasks[taskId].tInput)); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(gTasks[taskId].tSubWindowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); StringExpandPlaceholders(gStringVar4, sDebugText_PokemonMove_0); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_Move; } @@ -3848,7 +3856,8 @@ static void DebugAction_Give_Pokemon_Move(u8 taskId) } StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); - StringCopy(gStringVar1, GetMoveName(gTasks[taskId].tInput)); + u8 *end = StringCopy(gStringVar1, GetMoveName(gTasks[taskId].tInput)); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(gTasks[taskId].tSubWindowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); switch (gTasks[taskId].tIterator) @@ -3866,7 +3875,7 @@ static void DebugAction_Give_Pokemon_Move(u8 taskId) StringExpandPlaceholders(gStringVar4, sDebugText_PokemonMove_3); break; } - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -3900,7 +3909,8 @@ static void DebugAction_Give_Pokemon_Move(u8 taskId) gTasks[taskId].tDigit = 0; StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].tDigit]); - StringCopy(gStringVar1, GetMoveName(gTasks[taskId].tInput)); + u8 *end = StringCopy(gStringVar1, GetMoveName(gTasks[taskId].tInput)); + WrapFontIdToFit(gStringVar1, end, DEBUG_MENU_FONT, WindowWidthPx(gTasks[taskId].tSubWindowId)); StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15); ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, 3); switch (gTasks[taskId].tIterator) @@ -3918,7 +3928,7 @@ static void DebugAction_Give_Pokemon_Move(u8 taskId) StringExpandPlaceholders(gStringVar4, sDebugText_PokemonMove_3); break; } - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); gTasks[taskId].func = DebugAction_Give_Pokemon_Move; } @@ -4271,7 +4281,7 @@ static void DebugAction_Sound_SE(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, 1, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); StringCopyPadded(gStringVar1, sSENames[0], CHAR_SPACE, 35); StringExpandPlaceholders(gStringVar4, sDebugText_Sound_SFX_ID); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); StopMapMusic(); //Stop map music to better hear sounds @@ -4313,7 +4323,7 @@ static void DebugAction_Sound_SE_SelectId(u8 taskId) StringCopyPadded(gStringVar1, sSENames[gTasks[taskId].tInput-1], CHAR_SPACE, 35); ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); StringExpandPlaceholders(gStringVar4, sDebugText_Sound_SFX_ID); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) @@ -4353,7 +4363,7 @@ static void DebugAction_Sound_MUS(u8 taskId) ConvertIntToDecimalStringN(gStringVar3, START_MUS, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); StringCopyPadded(gStringVar1, sBGMNames[0], CHAR_SPACE, 35); StringExpandPlaceholders(gStringVar4, sDebugText_Sound_Music_ID); - AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(windowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); StopMapMusic(); //Stop map music to better hear new music @@ -4395,7 +4405,7 @@ static void DebugAction_Sound_MUS_SelectId(u8 taskId) StringCopyPadded(gStringVar1, sBGMNames[gTasks[taskId].tInput-START_MUS], CHAR_SPACE, 35); ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].tInput, STR_CONV_MODE_LEADING_ZEROS, DEBUG_NUMBER_DIGITS_ITEMS); StringExpandPlaceholders(gStringVar4, sDebugText_Sound_Music_ID); - AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 1, 1, 0, NULL); + AddTextPrinterParameterized(gTasks[taskId].tSubWindowId, DEBUG_MENU_FONT, gStringVar4, 0, 0, 0, NULL); } if (JOY_NEW(A_BUTTON)) diff --git a/src/fonts.c b/src/fonts.c index 2eb8ed062b..853f6fbde2 100644 --- a/src/fonts.c +++ b/src/fonts.c @@ -5,7 +5,7 @@ ALIGNED(4) const u8 gFontSmallNarrowLatinGlyphWidths[] = { 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 3, 4, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 8, 5, 6, 3, - 3, 3, 3, 3, 8, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 8, 0, 3, 3, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 3, 8, 8, 8, 8, 8, 8, 8, 4, 5, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4, @@ -41,7 +41,7 @@ ALIGNED(4) const u8 gFontSmallLatinGlyphWidths[] = { 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 3, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 6, 5, 5, 5, 5, 5, 5, 8, 7, 8, 3, - 3, 3, 3, 3, 8, 8, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 8, 8, 7, 3, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, 8, 8, 8, 8, 8, 8, 8, 4, 7, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4, @@ -77,7 +77,7 @@ ALIGNED(4) const u8 gFontNarrowLatinGlyphWidths[] = { 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 8, 5, 5, 5, 5, 6, 5, 5, 3, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 8, 5, 5, 5, 5, 5, 6, 9, 6, 6, 3, - 3, 3, 3, 3, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 8, 8, 3, 3, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 4, 8, 8, 8, 7, 8, 8, 4, 4, 6, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 4, @@ -113,7 +113,7 @@ ALIGNED(4) const u8 gFontShortLatinGlyphWidths[] = { 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 6, 3, 6, 6, 6, 6, 6, 8, 6, 6, 6, 6, 6, 6, 9, 8, 8, 3, - 3, 3, 3, 3, 10, 8, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 10, 8, 5, 3, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 6, 6, 8, 8, 8, 8, 8, 8, 4, 6, 8, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 3, 3, 3, 3, 3, 6, @@ -185,19 +185,19 @@ ALIGNED(4) const u8 gFontNarrowerLatinGlyphWidths[] = { 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 4, 4, 4, 4, 4, 8, 4, 4, 4, 5, 5, 4, 4, 3, 4, 4, 4, 4, 4, 4, 3, 4, 4, 4, 4, 4, 6, 4, 4, 4, 5, 4, 5, 8, 6, 6, 3, - 3, 3, 3, 3, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 8, 8, 2, 3, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 5, 5, 4, 8, 8, 8, 7, 8, 8, 4, 4, 6, 4, 4, 3, 3, + 5, 4, 2, 8, 8, 8, 7, 8, 8, 4, 4, 6, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 5, 3, 7, 7, 7, 7, 0, 0, 3, 4, 5, 6, 7, 4, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 3, 5, 3, - 5, 5, 5, 3, 3, 5, 5, 6, 3, 6, 6, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 5, 5, 4, 4, 4, 4, 4, 4, 4, - 4, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 4, 4, + 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 4, 2, 4, 2, + 4, 4, 4, 2, 2, 4, 4, 6, 2, 5, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 4, 4, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, - 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 8, 3, 3, 3, 3, + 2, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 8, 3, 3, 3, 3, 10, 10, 10, 10, 8, 8, 10, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, @@ -221,19 +221,19 @@ ALIGNED(4) const u8 gFontSmallNarrowerLatinGlyphWidths[] = { 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 4, 4, 4, 4, 4, 5, 4, 4, 4, 5, 4, 4, 4, 3, 4, 4, 4, 4, 4, 3, 3, 4, 4, 4, 4, 4, 6, 4, 4, 4, 5, 4, 4, 7, 5, 6, 3, - 3, 3, 3, 3, 8, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 8, 0, 2, 3, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 5, 4, 3, 7, 7, 7, 8, 8, 8, 8, 4, 5, 4, 4, 3, 3, + 5, 4, 2, 7, 7, 7, 8, 8, 8, 8, 4, 7, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 5, 3, 8, 8, 8, 8, 0, 0, 3, 4, 5, 6, 7, 4, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 4, 3, 4, 4, - 5, 5, 5, 3, 3, 5, 5, 5, 4, 5, 5, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 4, 4, + 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 4, 2, 4, 2, + 4, 4, 4, 2, 2, 4, 4, 8, 2, 8, 5, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 3, 4, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 7, - 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 8, 3, 3, 3, 3, + 2, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 8, 3, 3, 3, 3, 8, 8, 8, 8, 8, 7, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, @@ -257,7 +257,7 @@ ALIGNED(4) const u8 gFontShortNarrowLatinGlyphWidths[] = { 3, 5, 5, 5, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 8, 5, 5, 5, 5, 6, 5, 5, 3, 5, 5, 5, 5, 5, 4, 3, 4, 4, 5, 5, 5, 8, 5, 5, 5, 5, 6, 6, 9, 6, 6, 3, - 3, 3, 3, 3, 10, 8, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 10, 8, 5, 3, 7, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 6, 6, 8, 8, 8, 8, 8, 8, 4, 6, 8, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 3, 6, @@ -293,19 +293,19 @@ ALIGNED(4) const u8 gFontShortNarrowerLatinGlyphWidths[] = { 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 4, 4, 4, 4, 4, 8, 4, 4, 4, 5, 5, 4, 4, 3, 4, 4, 4, 4, 4, 4, 3, 4, 4, 4, 4, 4, 6, 4, 4, 4, 5, 4, 5, 8, 6, 6, 3, - 3, 3, 3, 3, 8, 8, 3, 5, 5, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 5, 5, 4, 8, 8, 8, 7, 8, 8, 4, 4, 6, 4, 4, 3, 3, + 3, 3, 3, 3, 10, 8, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 7, 3, 3, 3, 3, 3, 3, 3, + 6, 6, 6, 8, 8, 8, 8, 8, 8, 4, 6, 8, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 3, 3, 5, 3, 7, 7, 7, 7, 0, 0, 3, 4, 5, 6, 7, 4, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 3, 5, 3, - 5, 5, 5, 3, 3, 5, 5, 6, 3, 6, 6, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 5, 5, 4, 4, 4, 4, 4, 4, 4, - 4, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 4, 4, + 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 6, 5, 4, 5, + 6, 6, 6, 3, 3, 6, 6, 8, 3, 9, 6, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 4, 4, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, - 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 5, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 10, 10, 10, 10, 8, 8, 10, 8, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, diff --git a/src/item_menu.c b/src/item_menu.c index 709dded46b..f9e16e1ef7 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -916,7 +916,7 @@ static void GetItemName(u8 *dest, u16 itemId) { case TMHM_POCKET: end = StringCopy(gStringVar2, GetMoveName(ItemIdToBattleMoveId(itemId))); - PrependFontIdToFit(gStringVar2, end, FONT_NARROW, 73); + PrependFontIdToFit(gStringVar2, end, FONT_NARROW, 61); if (itemId >= ITEM_HM01) { // Get HM number @@ -933,7 +933,7 @@ static void GetItemName(u8 *dest, u16 itemId) case BERRIES_POCKET: ConvertIntToDecimalStringN(gStringVar1, itemId - FIRST_BERRY_INDEX + 1, STR_CONV_MODE_LEADING_ZEROS, 2); end = CopyItemName(itemId, gStringVar2); - PrependFontIdToFit(gStringVar2, end, FONT_NARROW, 73); + PrependFontIdToFit(gStringVar2, end, FONT_NARROW, 61); StringExpandPlaceholders(dest, gText_NumberItem_TMBerry); break; default: diff --git a/src/move_relearner.c b/src/move_relearner.c index a4cc778a45..1e66702695 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -165,18 +165,18 @@ enum { static EWRAM_DATA struct { u8 state; - u8 heartSpriteIds[16]; /*0x001*/ - u16 movesToLearn[MAX_RELEARNER_MOVES]; /*0x01A*/ - u8 partyMon; /*0x044*/ - u8 moveSlot; /*0x045*/ - struct ListMenuItem menuItems[MAX_RELEARNER_MOVES]; /*0x0E8*/ - u8 numMenuChoices; /*0x110*/ - u8 numToShowAtOnce; /*0x111*/ - u8 moveListMenuTask; /*0x112*/ - u8 moveListScrollArrowTask; /*0x113*/ - u8 moveDisplayArrowTask; /*0x114*/ - u16 scrollOffset; /*0x116*/ - u8 categoryIconSpriteId; /*0x117*/ + u8 heartSpriteIds[16]; /*0x001*/ + u16 movesToLearn[MAX_RELEARNER_MOVES]; /*0x01A*/ + u8 partyMon; /*0x044*/ + u8 moveSlot; /*0x045*/ + struct ListMenuItem menuItems[MAX_RELEARNER_MOVES + 1]; /*0x0E8*/ + u8 numMenuChoices; /*0x110*/ + u8 numToShowAtOnce; /*0x111*/ + u8 moveListMenuTask; /*0x112*/ + u8 moveListScrollArrowTask; /*0x113*/ + u8 moveDisplayArrowTask; /*0x114*/ + u16 scrollOffset; /*0x116*/ + u8 categoryIconSpriteId; /*0x117*/ } *sMoveRelearnerStruct = {0}; static EWRAM_DATA struct { diff --git a/test/battle/move_effect/gravity.c b/test/battle/move_effect/gravity.c new file mode 100644 index 0000000000..4ccad08b58 --- /dev/null +++ b/test/battle/move_effect/gravity.c @@ -0,0 +1,47 @@ +#include "global.h" +#include "test/battle.h" + +ASSUMPTIONS +{ + ASSUME(gMovesInfo[MOVE_GRAVITY].effect == EFFECT_GRAVITY); +} + +DOUBLE_BATTLE_TEST("Gravity cancels fly and sky drop if they are in the air") +{ + u8 visibility; + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(100); } + PLAYER(SPECIES_WYNAUT) { Speed(90); } + OPPONENT(SPECIES_PIDGEY) { Speed(50); } + OPPONENT(SPECIES_ROOKIDEE) { Speed(45); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_SKY_DROP, target: playerRight); MOVE(opponentRight, MOVE_FLY, target: playerLeft); } + TURN { MOVE(playerLeft, MOVE_GRAVITY); SKIP_TURN(opponentRight); SKIP_TURN(opponentLeft); } + } SCENE { + // turn 1 + MESSAGE("The opposing Pidgey used Sky Drop!"); + MESSAGE("The opposing Pidgey took Wynaut into the sky!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SKY_DROP, opponentLeft); + MESSAGE("The opposing Rookidee used Fly!"); + MESSAGE("The opposing Rookidee flew up high!"); + // turn 2 + MESSAGE("Wobbuffet used Gravity!"); + MESSAGE("Gravity intensified!"); + MESSAGE("The opposing Pidgey fell from the sky due to the gravity!"); + MESSAGE("The opposing Rookidee fell from the sky due to the gravity!"); + MESSAGE("The opposing Pidgey can't use Sky Drop because of gravity!"); + MESSAGE("The opposing Rookidee can't use Fly because of gravity!"); + } THEN { + // all battlers should be visible. assign to var first because expect_eq not working with bitfield address + visibility = gBattleSpritesDataPtr->battlerData[0].invisible; + EXPECT_EQ(visibility, 0); + visibility = gBattleSpritesDataPtr->battlerData[1].invisible; + EXPECT_EQ(visibility, 0); + visibility = gBattleSpritesDataPtr->battlerData[2].invisible; + EXPECT_EQ(visibility, 0); + visibility = gBattleSpritesDataPtr->battlerData[3].invisible; + EXPECT_EQ(visibility, 0); + // ensure moveend properly recorded + EXPECT_EQ(gLastMoves[0], MOVE_GRAVITY); + } +} diff --git a/test/battle/move_effect/octolock.c b/test/battle/move_effect/octolock.c index 1a04de7331..e93f6f29cb 100644 --- a/test/battle/move_effect/octolock.c +++ b/test/battle/move_effect/octolock.c @@ -131,3 +131,24 @@ SINGLE_BATTLE_TEST("Octolock will not decrease Defense and Sp. Def further then } } } + +SINGLE_BATTLE_TEST("Octolock triggers Defiant for both stat reductions") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_BISHARP) { Ability(ABILITY_DEFIANT); } + } WHEN { + TURN { MOVE(player, MOVE_OCTOLOCK); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_OCTOLOCK, player); + MESSAGE("The opposing Bisharp can no longer escape because of Octolock!"); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + MESSAGE("The opposing Bisharp's Defense fell!"); + ABILITY_POPUP(opponent, ABILITY_DEFIANT); + MESSAGE("The opposing Bisharp's Attack sharply rose!"); + NOT ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + MESSAGE("The opposing Bisharp's Sp. Def fell!"); + ABILITY_POPUP(opponent, ABILITY_DEFIANT); + MESSAGE("The opposing Bisharp's Attack sharply rose!"); + } +} diff --git a/test/battle/move_effect/ohko.c b/test/battle/move_effect/ohko.c index 511d76a8ad..8a8015309b 100644 --- a/test/battle/move_effect/ohko.c +++ b/test/battle/move_effect/ohko.c @@ -20,6 +20,22 @@ SINGLE_BATTLE_TEST("Sheer Cold doesn't affect Ice-type Pokémon") MESSAGE("It doesn't affect the opposing Glalie…"); } } + +SINGLE_BATTLE_TEST("OHKO moves can hit semi-invulnerable mons when the user has No-Guard") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_SHEER_COLD].effect == EFFECT_OHKO); + PLAYER(SPECIES_WOBBUFFET) { Ability(ABILITY_NO_GUARD); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_FLY); } + TURN { MOVE(player, MOVE_SHEER_COLD); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_SHEER_COLD, player); + HP_BAR(opponent, hp: 0); + } +} + TO_DO_BATTLE_TEST("Fissure faints the target, skipping regular damage calculations") TO_DO_BATTLE_TEST("Fissure always fails if the target has a higher level than the user") TO_DO_BATTLE_TEST("Fissure's accuracy increases by 1% for every level the user has over the target") diff --git a/test/test_runner.c b/test/test_runner.c index f7c4cf780e..1ff37fe8bc 100644 --- a/test/test_runner.c +++ b/test/test_runner.c @@ -490,6 +490,7 @@ static void Intr_Timer2(void) if (gTestRunnerState.state == STATE_RUN_TEST) gTestRunnerState.state = STATE_REPORT_RESULT; gTestRunnerState.result = TEST_RESULT_TIMEOUT; + Test_MgbaPrintf(":L%s:%d - TIMEOUT", gTestRunnerState.test->filename, SourceLine(0)); ReinitCallbacks(); IRQ_LR = ((uintptr_t)JumpToAgbMainLoop & ~1) + 4; } diff --git a/test/test_runner_battle.c b/test/test_runner_battle.c index 6faf6a4715..50d389c545 100644 --- a/test/test_runner_battle.c +++ b/test/test_runner_battle.c @@ -1160,6 +1160,7 @@ static s32 TryMessage(s32 i, s32 n, const u8 *string) switch (string[j]) { case CHAR_SPACE: + case CHAR_NBSP: case CHAR_PROMPT_SCROLL: case CHAR_PROMPT_CLEAR: case CHAR_NEWLINE: diff --git a/test/text.c b/test/text.c index 17d9ab0ee9..ed343d1039 100644 --- a/test/text.c +++ b/test/text.c @@ -44,7 +44,7 @@ TEST("Move names fit on Battle Screen") TEST("Move names fit on Contest Screen") { u32 i; - const u32 fontId = FONT_NARROWER, widthPx = 61; + const u32 fontId = FONT_NARROWER, widthPx = 59; u32 move = MOVE_NONE; for (i = 1; i < MOVES_COUNT; i++) { @@ -53,7 +53,9 @@ TEST("Move names fit on Contest Screen") // All moves explicitly listed here are too big to fit. switch (move) { + case MOVE_STOMPING_TANTRUM: case MOVE_NATURES_MADNESS: + case MOVE_DOUBLE_IRON_BASH: EXPECT_GT(GetStringWidth(fontId, gMovesInfo[move].name, 0), widthPx); break; default: @@ -65,14 +67,11 @@ TEST("Move names fit on Contest Screen") TEST("Move names fit on TMs & HMs Bag Screen") { u32 i; - const u32 fontId = FONT_NARROWER, widthPx = 63; + const u32 fontId = FONT_NARROWER, widthPx = 61; u32 move = MOVE_NONE; - for (i = 1; i < ITEMS_COUNT; i++) + for (i = 1; i < MOVES_COUNT; i++) { - if (gItemsInfo[i].pocket == POCKET_TM_HM) - { - PARAMETRIZE_LABEL("%S", gMovesInfo[gItemsInfo[i].secondaryId].name) { move = gItemsInfo[i].secondaryId; } - } + PARAMETRIZE_LABEL("%S", gMovesInfo[i].name) { move = i; } } EXPECT_LE(GetStringWidth(fontId, gMovesInfo[move].name, 0), widthPx); } @@ -105,7 +104,7 @@ TEST("Item names fit on Bag Screen (list)") { u32 i; const u32 fontId = FONT_NARROWER; - const u32 tmHmBerryWidthPx = 71, restWidthPx = 88; + const u32 tmHmBerryWidthPx = 61, restWidthPx = 88; u32 item = ITEM_NONE; for (i = 1; i < ITEMS_COUNT; i++) { @@ -122,7 +121,7 @@ TEST("Item plural names fit on Bag Screen (left box)") { u32 i; // -6 for the question mark in FONT_NORMAL. - const u32 fontId = FONT_NARROWER, widthPx = 102 - 6; + const u32 fontId = FONT_NARROWER, widthPx = 101 - 6; u32 item = ITEM_NONE; u8 pluralName[ITEM_NAME_PLURAL_LENGTH + 1]; for (i = 1; i < ITEMS_COUNT; i++) @@ -133,6 +132,18 @@ TEST("Item plural names fit on Bag Screen (left box)") EXPECT_LE(GetStringWidth(fontId, pluralName, 0), widthPx); } +TEST("Item names fit on PC Storage (list)") +{ + u32 i; + const u32 fontId = FONT_NARROWER, widthPx = 73; + u32 item = ITEM_NONE; + for (i = 1; i < ITEMS_COUNT; i++) + { + PARAMETRIZE_LABEL("%S", gItemsInfo[i].name) { item = i; } + } + EXPECT_LE(GetStringWidth(fontId, gItemsInfo[item].name, 0), widthPx); +} + TEST("Item plural names fit on PC storage (left box)") { u32 i; @@ -151,108 +162,22 @@ TEST("Item plural names fit on PC storage (left box)") TEST("Item names fit on Pokemon Storage System") { u32 i; - const u32 fontId = FONT_SMALL_NARROWER, widthPx = 50; + const u32 fontId = FONT_SMALL_NARROWER, widthPx = 66; u32 item = ITEM_NONE; for (i = 1; i < ITEMS_COUNT; i++) { if (gItemsInfo[i].importance) continue; PARAMETRIZE_LABEL("%S", gItemsInfo[i].name) { item = i; } } - // All items explicitly listed here are too big to fit. The ones - // with a hold effect are listed at the bottom in case you want to - // focus on making them fit (they are the most likely to appear on - // the storage system UI, along with anything that could be held - // in the wild). + // All items explicitly listed here are too big to fit. switch (item) { - case ITEM_ENERGY_POWDER: - case ITEM_PEWTER_CRUNCHIES: - case ITEM_RAGE_CANDY_BAR: - case ITEM_LUMIOSE_GALETTE: - case ITEM_HEALTH_FEATHER: - case ITEM_MUSCLE_FEATHER: - case ITEM_RESIST_FEATHER: - case ITEM_GENIUS_FEATHER: - case ITEM_CLEVER_FEATHER: - case ITEM_ABILITY_CAPSULE: - case ITEM_DYNAMAX_CANDY: - case ITEM_MAX_MUSHROOMS: - case ITEM_GOLD_BOTTLE_CAP: - case ITEM_PRETTY_FEATHER: - case ITEM_STRANGE_SOUVENIR: - case ITEM_FOSSILIZED_BIRD: - case ITEM_FOSSILIZED_FISH: - case ITEM_FOSSILIZED_DRAKE: - case ITEM_FOSSILIZED_DINO: - case ITEM_SURPRISE_MULCH: - case ITEM_YELLOW_APRICORN: - case ITEM_GREEN_APRICORN: - case ITEM_WHITE_APRICORN: - case ITEM_BLACK_APRICORN: - case ITEM_THUNDER_STONE: - case ITEM_GALARICA_WREATH: - case ITEM_STRAWBERRY_SWEET: - case ITEM_AUSPICIOUS_ARMOR: - case ITEM_BIG_BAMBOO_SHOOT: - case ITEM_GIMMIGHOUL_COIN: - case ITEM_LEADERS_CREST: - case ITEM_MALICIOUS_ARMOR: - case ITEM_TINY_BAMBOO_SHOOT: - case ITEM_BUG_TERA_SHARD: - case ITEM_DARK_TERA_SHARD: - case ITEM_DRAGON_TERA_SHARD: case ITEM_ELECTRIC_TERA_SHARD: - case ITEM_FAIRY_TERA_SHARD: case ITEM_FIGHTING_TERA_SHARD: - case ITEM_FIRE_TERA_SHARD: - case ITEM_FLYING_TERA_SHARD: - case ITEM_GHOST_TERA_SHARD: - case ITEM_GRASS_TERA_SHARD: - case ITEM_GROUND_TERA_SHARD: - case ITEM_ICE_TERA_SHARD: - case ITEM_NORMAL_TERA_SHARD: - case ITEM_POISON_TERA_SHARD: case ITEM_PSYCHIC_TERA_SHARD: - case ITEM_ROCK_TERA_SHARD: - case ITEM_STEEL_TERA_SHARD: - case ITEM_WATER_TERA_SHARD: - case ITEM_BLACK_AUGURITE: case ITEM_UNREMARKABLE_TEACUP: case ITEM_MASTERPIECE_TEACUP: - case ITEM_FRESH_START_MOCHI: - case ITEM_STELLAR_TERA_SHARD: - case ITEM_JUBILIFE_MUFFIN: - case ITEM_SUPERB_REMEDY: - case ITEM_AUX_POWERGUARD: - case ITEM_CHOICE_DUMPLING: case ITEM_TWICE_SPICED_RADISH: - // Items with hold effects: - case ITEM_ELECTRIC_MEMORY: - case ITEM_FIGHTING_MEMORY: - case ITEM_GROUND_MEMORY: - case ITEM_PSYCHIC_MEMORY: - case ITEM_DRAGON_MEMORY: - case ITEM_CHARIZARDITE_X: - case ITEM_CHARIZARDITE_Y: - case ITEM_ULTRANECROZIUM_Z: - case ITEM_DEEP_SEA_SCALE: - case ITEM_DEEP_SEA_TOOTH: - case ITEM_NEVER_MELT_ICE: - case ITEM_WEAKNESS_POLICY: - case ITEM_SAFETY_GOGGLES: - case ITEM_ADRENALINE_ORB: - case ITEM_TERRAIN_EXTENDER: - case ITEM_PROTECTIVE_PADS: - case ITEM_HEAVY_DUTY_BOOTS: - case ITEM_UTILITY_UMBRELLA: - case ITEM_MARANGA_BERRY: - case ITEM_PUNCHING_GLOVE: - case ITEM_BOOSTER_ENERGY: - case ITEM_ADAMANT_CRYSTAL: - case ITEM_LUSTROUS_GLOBE: - case ITEM_CORNERSTONE_MASK: - case ITEM_WELLSPRING_MASK: - case ITEM_HEARTHFLAME_MASK: EXPECT_GT(GetStringWidth(fontId, gItemsInfo[item].name, 0), widthPx); break; default: @@ -398,7 +323,7 @@ TEST("Species names fit on Pokemon Storage System") } } EXPECT_LE(GetStringWidth(FONT_NARROWER, gSpeciesInfo[species].speciesName, 0), 66); - EXPECT_LE(GetStringWidth(FONT_SHORT_NARROW, gSpeciesInfo[species].speciesName, 0), 60); + EXPECT_LE(GetStringWidth(FONT_SHORT_NARROWER, gSpeciesInfo[species].speciesName, 0), 60); } TEST("Species names fit on Contest Screen") @@ -434,7 +359,7 @@ TEST("Species names fit on Contest Screen - Rankings") TEST("Species names fit on Battle Dome Screen") { u32 i; - const u32 fontId = FONT_SHORT_NARROW, widthPx = 60; + const u32 fontId = FONT_SHORT_NARROWER, widthPx = 60; u32 species = SPECIES_NONE; for (i = 1; i < NUM_SPECIES; i++) { diff --git a/tools/learnset_helpers/porymoves_files/b2w2.json b/tools/learnset_helpers/porymoves_files/b2w2.json index 976b125c6c..bd1762990e 100644 --- a/tools/learnset_helpers/porymoves_files/b2w2.json +++ b/tools/learnset_helpers/porymoves_files/b2w2.json @@ -50290,7 +50290,7 @@ "MOVE_SNORE" ] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1, diff --git a/tools/learnset_helpers/porymoves_files/bdsp.json b/tools/learnset_helpers/porymoves_files/bdsp.json index 8e4ac589d3..af2e75a3ae 100644 --- a/tools/learnset_helpers/porymoves_files/bdsp.json +++ b/tools/learnset_helpers/porymoves_files/bdsp.json @@ -46223,7 +46223,7 @@ "EggMoves": [], "TutorMoves": [] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 0, diff --git a/tools/learnset_helpers/porymoves_files/bw.json b/tools/learnset_helpers/porymoves_files/bw.json index 7728235c5f..4a93b57602 100644 --- a/tools/learnset_helpers/porymoves_files/bw.json +++ b/tools/learnset_helpers/porymoves_files/bw.json @@ -45087,7 +45087,7 @@ "EggMoves": [], "TutorMoves": [] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1, diff --git a/tools/learnset_helpers/porymoves_files/dp.json b/tools/learnset_helpers/porymoves_files/dp.json index 666a6dda58..fdae45c2a6 100644 --- a/tools/learnset_helpers/porymoves_files/dp.json +++ b/tools/learnset_helpers/porymoves_files/dp.json @@ -44067,7 +44067,7 @@ "EggMoves": [], "TutorMoves": [] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1, diff --git a/tools/learnset_helpers/porymoves_files/hgss.json b/tools/learnset_helpers/porymoves_files/hgss.json index b0241c96f4..8aaf2714b3 100644 --- a/tools/learnset_helpers/porymoves_files/hgss.json +++ b/tools/learnset_helpers/porymoves_files/hgss.json @@ -49305,7 +49305,7 @@ "MOVE_STRING_SHOT" ] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1, diff --git a/tools/learnset_helpers/porymoves_files/la.json b/tools/learnset_helpers/porymoves_files/la.json index 599596a902..4492a37c69 100644 --- a/tools/learnset_helpers/porymoves_files/la.json +++ b/tools/learnset_helpers/porymoves_files/la.json @@ -8433,7 +8433,7 @@ "EggMoves": [], "TutorMoves": [] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1, diff --git a/tools/learnset_helpers/porymoves_files/oras.json b/tools/learnset_helpers/porymoves_files/oras.json index 11a737628e..da1a3bf21f 100644 --- a/tools/learnset_helpers/porymoves_files/oras.json +++ b/tools/learnset_helpers/porymoves_files/oras.json @@ -53725,7 +53725,7 @@ "MOVE_SNORE" ] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1, diff --git a/tools/learnset_helpers/porymoves_files/pt.json b/tools/learnset_helpers/porymoves_files/pt.json index e969777fa6..bf2ace3c59 100644 --- a/tools/learnset_helpers/porymoves_files/pt.json +++ b/tools/learnset_helpers/porymoves_files/pt.json @@ -48085,7 +48085,7 @@ "MOVE_SNORE" ] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1, diff --git a/tools/learnset_helpers/porymoves_files/sm.json b/tools/learnset_helpers/porymoves_files/sm.json index 65255a69fa..d79ab5c4e9 100644 --- a/tools/learnset_helpers/porymoves_files/sm.json +++ b/tools/learnset_helpers/porymoves_files/sm.json @@ -48246,7 +48246,7 @@ "EggMoves": [], "TutorMoves": [] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 0, diff --git a/tools/learnset_helpers/porymoves_files/sv.json b/tools/learnset_helpers/porymoves_files/sv.json index 04bc72f9e6..190b084611 100644 --- a/tools/learnset_helpers/porymoves_files/sv.json +++ b/tools/learnset_helpers/porymoves_files/sv.json @@ -36838,7 +36838,7 @@ "EggMoves": [], "TutorMoves": [] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [], "PreEvoMoves": [], "TMMoves": [], diff --git a/tools/learnset_helpers/porymoves_files/usum.json b/tools/learnset_helpers/porymoves_files/usum.json index ed4cfb69e0..2587a7de81 100644 --- a/tools/learnset_helpers/porymoves_files/usum.json +++ b/tools/learnset_helpers/porymoves_files/usum.json @@ -53477,7 +53477,7 @@ "MOVE_SNORE" ] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 0, diff --git a/tools/learnset_helpers/porymoves_files/xy.json b/tools/learnset_helpers/porymoves_files/xy.json index 8be594e6d7..1cb68d527b 100644 --- a/tools/learnset_helpers/porymoves_files/xy.json +++ b/tools/learnset_helpers/porymoves_files/xy.json @@ -47960,7 +47960,7 @@ "EggMoves": [], "TutorMoves": [] }, - "WORMADAM_PLANT_CLOAK": { + "WORMADAM_PLANT": { "LevelMoves": [ { "Level": 1,