diff --git a/include/constants/items.h b/include/constants/items.h index 7f5c051e1..779cbbcd8 100644 --- a/include/constants/items.h +++ b/include/constants/items.h @@ -731,15 +731,65 @@ #define ITEM_TM48 630 #define ITEM_TM49 631 #define ITEM_TM50 632 +#define ITEM_TM51 633 +#define ITEM_TM52 634 +#define ITEM_TM53 635 +#define ITEM_TM54 636 +#define ITEM_TM55 637 +#define ITEM_TM56 638 +#define ITEM_TM57 639 +#define ITEM_TM58 640 +#define ITEM_TM59 641 +#define ITEM_TM60 642 +#define ITEM_TM61 643 +#define ITEM_TM62 644 +#define ITEM_TM63 645 +#define ITEM_TM64 646 +#define ITEM_TM65 647 +#define ITEM_TM66 648 +#define ITEM_TM67 649 +#define ITEM_TM68 650 +#define ITEM_TM69 651 +#define ITEM_TM70 652 +#define ITEM_TM71 653 +#define ITEM_TM72 654 +#define ITEM_TM73 655 +#define ITEM_TM74 656 +#define ITEM_TM75 657 +#define ITEM_TM76 658 +#define ITEM_TM77 659 +#define ITEM_TM78 660 +#define ITEM_TM79 661 +#define ITEM_TM80 662 +#define ITEM_TM81 663 +#define ITEM_TM82 664 +#define ITEM_TM83 665 +#define ITEM_TM84 666 +#define ITEM_TM85 667 +#define ITEM_TM86 668 +#define ITEM_TM87 669 +#define ITEM_TM88 670 +#define ITEM_TM89 671 +#define ITEM_TM90 672 +#define ITEM_TM91 673 +#define ITEM_TM92 674 +#define ITEM_TM93 675 +#define ITEM_TM94 676 +#define ITEM_TM95 677 +#define ITEM_TM96 678 +#define ITEM_TM97 679 +#define ITEM_TM98 680 +#define ITEM_TM99 681 +#define ITEM_TM100 682 -#define ITEM_HM01 633 -#define ITEM_HM02 634 -#define ITEM_HM03 635 -#define ITEM_HM04 636 -#define ITEM_HM05 637 -#define ITEM_HM06 638 -#define ITEM_HM07 639 -#define ITEM_HM08 640 +#define ITEM_HM01 683 +#define ITEM_HM02 684 +#define ITEM_HM03 685 +#define ITEM_HM04 686 +#define ITEM_HM05 687 +#define ITEM_HM06 688 +#define ITEM_HM07 689 +#define ITEM_HM08 690 #define ITEM_TM01_FOCUS_PUNCH ITEM_TM01 #define ITEM_TM02_DRAGON_CLAW ITEM_TM02 @@ -801,66 +851,66 @@ #define ITEM_HM07_WATERFALL ITEM_HM07 #define ITEM_HM08_DIVE ITEM_HM08 // Key Items -#define ITEM_MACH_BIKE 641 -#define ITEM_COIN_CASE 642 -#define ITEM_ITEMFINDER 643 -#define ITEM_OLD_ROD 644 -#define ITEM_GOOD_ROD 645 -#define ITEM_SUPER_ROD 646 -#define ITEM_SS_TICKET 647 -#define ITEM_CONTEST_PASS 648 -#define ITEM_WAILMER_PAIL 649 -#define ITEM_DEVON_GOODS 650 -#define ITEM_SOOT_SACK 651 -#define ITEM_BASEMENT_KEY 652 -#define ITEM_ACRO_BIKE 653 -#define ITEM_POKEBLOCK_CASE 654 -#define ITEM_LETTER 655 -#define ITEM_EON_TICKET 656 -#define ITEM_SCANNER 657 -#define ITEM_GO_GOGGLES 658 -#define ITEM_METEORITE 659 -#define ITEM_ROOM_1_KEY 660 -#define ITEM_ROOM_2_KEY 661 -#define ITEM_ROOM_4_KEY 662 -#define ITEM_ROOM_6_KEY 663 -#define ITEM_STORAGE_KEY 664 -#define ITEM_DEVON_SCOPE 665 +#define ITEM_MACH_BIKE 691 +#define ITEM_COIN_CASE 692 +#define ITEM_ITEMFINDER 693 +#define ITEM_OLD_ROD 694 +#define ITEM_GOOD_ROD 695 +#define ITEM_SUPER_ROD 696 +#define ITEM_SS_TICKET 697 +#define ITEM_CONTEST_PASS 698 +#define ITEM_WAILMER_PAIL 699 +#define ITEM_DEVON_GOODS 700 +#define ITEM_SOOT_SACK 701 +#define ITEM_BASEMENT_KEY 702 +#define ITEM_ACRO_BIKE 703 +#define ITEM_POKEBLOCK_CASE 704 +#define ITEM_LETTER 705 +#define ITEM_EON_TICKET 706 +#define ITEM_SCANNER 707 +#define ITEM_GO_GOGGLES 708 +#define ITEM_METEORITE 709 +#define ITEM_ROOM_1_KEY 710 +#define ITEM_ROOM_2_KEY 711 +#define ITEM_ROOM_4_KEY 712 +#define ITEM_ROOM_6_KEY 713 +#define ITEM_STORAGE_KEY 714 +#define ITEM_DEVON_SCOPE 715 // FireRed/LeafGreen -#define ITEM_OAKS_PARCEL 666 -#define ITEM_POKE_FLUTE 667 -#define ITEM_SECRET_KEY 668 -#define ITEM_BIKE_VOUCHER 669 -#define ITEM_GOLD_TEETH 670 -#define ITEM_CARD_KEY 671 -#define ITEM_LIFT_KEY 672 -#define ITEM_SILPH_SCOPE 673 -#define ITEM_BICYCLE 674 -#define ITEM_TOWN_MAP 675 -#define ITEM_VS_SEEKER 676 -#define ITEM_FAME_CHECKER 677 -#define ITEM_TM_CASE 678 -#define ITEM_BERRY_POUCH 679 -#define ITEM_TEACHY_TV 680 -#define ITEM_TRI_PASS 681 -#define ITEM_RAINBOW_PASS 682 -#define ITEM_TEA 683 -#define ITEM_MYSTIC_TICKET 684 -#define ITEM_AURORA_TICKET 685 -#define ITEM_POWDER_JAR 686 -#define ITEM_RUBY 687 -#define ITEM_SAPPHIRE 688 +#define ITEM_OAKS_PARCEL 716 +#define ITEM_POKE_FLUTE 717 +#define ITEM_SECRET_KEY 718 +#define ITEM_BIKE_VOUCHER 719 +#define ITEM_GOLD_TEETH 720 +#define ITEM_CARD_KEY 721 +#define ITEM_LIFT_KEY 722 +#define ITEM_SILPH_SCOPE 723 +#define ITEM_BICYCLE 724 +#define ITEM_TOWN_MAP 725 +#define ITEM_VS_SEEKER 726 +#define ITEM_FAME_CHECKER 727 +#define ITEM_TM_CASE 728 +#define ITEM_BERRY_POUCH 729 +#define ITEM_TEACHY_TV 730 +#define ITEM_TRI_PASS 731 +#define ITEM_RAINBOW_PASS 732 +#define ITEM_TEA 733 +#define ITEM_MYSTIC_TICKET 734 +#define ITEM_AURORA_TICKET 735 +#define ITEM_POWDER_JAR 736 +#define ITEM_RUBY 737 +#define ITEM_SAPPHIRE 738 // Emerald -#define ITEM_MAGMA_EMBLEM 689 -#define ITEM_OLD_SEA_MAP 690 +#define ITEM_MAGMA_EMBLEM 739 +#define ITEM_OLD_SEA_MAP 740 -#define ITEM_GRACIDEA 691 -#define ITEM_MEGA_BRACELET 692 -#define ITEM_SHINY_CHARM 693 -#define ITEM_OVAL_CHARM 694 -#define ITEM_Z_RING 695 +#define ITEM_GRACIDEA 741 +#define ITEM_MEGA_BRACELET 742 +#define ITEM_SHINY_CHARM 743 +#define ITEM_OVAL_CHARM 744 +#define ITEM_Z_RING 745 -#define ITEMS_COUNT 696 +#define ITEMS_COUNT 746 #define ITEM_FIELD_ARROW ITEMS_COUNT // Range of berries given out by various NPCS diff --git a/src/data/item_icon_table.h b/src/data/item_icon_table.h index 6586f7c70..16b65213e 100644 --- a/src/data/item_icon_table.h +++ b/src/data/item_icon_table.h @@ -673,6 +673,56 @@ const u32 *const gItemIconTable[][2] = [ITEM_TM48] = {gItemIcon_TM, gItemIconPalette_PsychicTMHM}, [ITEM_TM49] = {gItemIcon_TM, gItemIconPalette_DarkTMHM}, [ITEM_TM50] = {gItemIcon_TM, gItemIconPalette_FireTMHM}, + [ITEM_TM51] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM52] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM53] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM54] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM55] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM56] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM57] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM58] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM59] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM60] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM61] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM62] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM63] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM64] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM65] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM66] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM67] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM68] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM69] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM70] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM71] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM72] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM73] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM74] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM75] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM76] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM77] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM78] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM79] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM80] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM81] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM82] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM83] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM84] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM85] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM86] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM87] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM88] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM89] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM90] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM91] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM92] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM93] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM94] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM95] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM96] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM97] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM98] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM99] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo + [ITEM_TM100] = {gItemIcon_TM, gItemIconPalette_NormalTMHM}, // Todo [ITEM_HM01] = {gItemIcon_HM, gItemIconPalette_NormalTMHM}, [ITEM_HM02] = {gItemIcon_HM, gItemIconPalette_FlyingTMHM}, [ITEM_HM03] = {gItemIcon_HM, gItemIconPalette_WaterTMHM}, diff --git a/src/data/items.h b/src/data/items.h index c14f40c28..fa2edce1b 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -7820,6 +7820,556 @@ const struct Item gItems[] = .fieldUseFunc = ItemUseOutOfBattle_TMHM, }, + [ITEM_TM51] = + { + .name = _("TM51"), + .itemId = ITEM_TM51, + .price = 3000, + .description = sTM51Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM52] = + { + .name = _("TM52"), + .itemId = ITEM_TM52, + .price = 3000, + .description = sTM52Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM53] = + { + .name = _("TM53"), + .itemId = ITEM_TM53, + .price = 3000, + .description = sTM53Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM54] = + { + .name = _("TM54"), + .itemId = ITEM_TM54, + .price = 3000, + .description = sTM54Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM55] = + { + .name = _("TM55"), + .itemId = ITEM_TM55, + .price = 3000, + .description = sTM55Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM56] = + { + .name = _("TM56"), + .itemId = ITEM_TM56, + .price = 3000, + .description = sTM56Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM57] = + { + .name = _("TM57"), + .itemId = ITEM_TM57, + .price = 3000, + .description = sTM57Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM58] = + { + .name = _("TM58"), + .itemId = ITEM_TM58, + .price = 3000, + .description = sTM58Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM59] = + { + .name = _("TM59"), + .itemId = ITEM_TM59, + .price = 3000, + .description = sTM59Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM60] = + { + .name = _("TM60"), + .itemId = ITEM_TM60, + .price = 3000, + .description = sTM60Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM61] = + { + .name = _("TM61"), + .itemId = ITEM_TM61, + .price = 3000, + .description = sTM61Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM62] = + { + .name = _("TM62"), + .itemId = ITEM_TM62, + .price = 3000, + .description = sTM62Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM63] = + { + .name = _("TM63"), + .itemId = ITEM_TM63, + .price = 3000, + .description = sTM63Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM64] = + { + .name = _("TM64"), + .itemId = ITEM_TM64, + .price = 3000, + .description = sTM64Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM65] = + { + .name = _("TM65"), + .itemId = ITEM_TM65, + .price = 3000, + .description = sTM65Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM66] = + { + .name = _("TM66"), + .itemId = ITEM_TM66, + .price = 3000, + .description = sTM66Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM67] = + { + .name = _("TM67"), + .itemId = ITEM_TM67, + .price = 3000, + .description = sTM67Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM68] = + { + .name = _("TM68"), + .itemId = ITEM_TM68, + .price = 3000, + .description = sTM68Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM69] = + { + .name = _("TM69"), + .itemId = ITEM_TM69, + .price = 3000, + .description = sTM69Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM70] = + { + .name = _("TM70"), + .itemId = ITEM_TM70, + .price = 3000, + .description = sTM70Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM71] = + { + .name = _("TM71"), + .itemId = ITEM_TM71, + .price = 3000, + .description = sTM71Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM72] = + { + .name = _("TM72"), + .itemId = ITEM_TM72, + .price = 3000, + .description = sTM72Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM73] = + { + .name = _("TM73"), + .itemId = ITEM_TM73, + .price = 3000, + .description = sTM73Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM74] = + { + .name = _("TM74"), + .itemId = ITEM_TM74, + .price = 3000, + .description = sTM74Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM75] = + { + .name = _("TM75"), + .itemId = ITEM_TM75, + .price = 3000, + .description = sTM75Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM76] = + { + .name = _("TM76"), + .itemId = ITEM_TM76, + .price = 3000, + .description = sTM76Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM77] = + { + .name = _("TM77"), + .itemId = ITEM_TM77, + .price = 3000, + .description = sTM77Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM78] = + { + .name = _("TM78"), + .itemId = ITEM_TM78, + .price = 3000, + .description = sTM78Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM79] = + { + .name = _("TM79"), + .itemId = ITEM_TM79, + .price = 3000, + .description = sTM79Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM80] = + { + .name = _("TM80"), + .itemId = ITEM_TM80, + .price = 3000, + .description = sTM80Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM81] = + { + .name = _("TM81"), + .itemId = ITEM_TM81, + .price = 3000, + .description = sTM81Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM82] = + { + .name = _("TM82"), + .itemId = ITEM_TM82, + .price = 3000, + .description = sTM82Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM83] = + { + .name = _("TM83"), + .itemId = ITEM_TM83, + .price = 3000, + .description = sTM83Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM84] = + { + .name = _("TM84"), + .itemId = ITEM_TM84, + .price = 3000, + .description = sTM84Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM85] = + { + .name = _("TM85"), + .itemId = ITEM_TM85, + .price = 3000, + .description = sTM85Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM86] = + { + .name = _("TM86"), + .itemId = ITEM_TM86, + .price = 3000, + .description = sTM86Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM87] = + { + .name = _("TM87"), + .itemId = ITEM_TM87, + .price = 3000, + .description = sTM87Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM88] = + { + .name = _("TM88"), + .itemId = ITEM_TM88, + .price = 3000, + .description = sTM88Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM89] = + { + .name = _("TM89"), + .itemId = ITEM_TM89, + .price = 3000, + .description = sTM89Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM90] = + { + .name = _("TM90"), + .itemId = ITEM_TM90, + .price = 3000, + .description = sTM90Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM91] = + { + .name = _("TM91"), + .itemId = ITEM_TM91, + .price = 3000, + .description = sTM91Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM92] = + { + .name = _("TM92"), + .itemId = ITEM_TM92, + .price = 3000, + .description = sTM92Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM93] = + { + .name = _("TM93"), + .itemId = ITEM_TM93, + .price = 3000, + .description = sTM93Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM94] = + { + .name = _("TM94"), + .itemId = ITEM_TM94, + .price = 3000, + .description = sTM94Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM95] = + { + .name = _("TM95"), + .itemId = ITEM_TM95, + .price = 3000, + .description = sTM95Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM96] = + { + .name = _("TM96"), + .itemId = ITEM_TM96, + .price = 3000, + .description = sTM96Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM97] = + { + .name = _("TM97"), + .itemId = ITEM_TM97, + .price = 3000, + .description = sTM97Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM98] = + { + .name = _("TM98"), + .itemId = ITEM_TM98, + .price = 3000, + .description = sTM98Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM99] = + { + .name = _("TM99"), + .itemId = ITEM_TM99, + .price = 3000, + .description = sTM99Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + + [ITEM_TM100] = + { + .name = _("TM100"), + .itemId = ITEM_TM100, + .price = 3000, + .description = sTM100Desc, + .pocket = POCKET_TM_HM, + .type = ITEM_USE_PARTY_MENU, + .fieldUseFunc = ItemUseOutOfBattle_TMHM, + }, + [ITEM_HM01_CUT] = { .name = _("HM01"), diff --git a/src/data/party_menu.h b/src/data/party_menu.h index 570ef738e..333968057 100644 --- a/src/data/party_menu.h +++ b/src/data/party_menu.h @@ -1244,6 +1244,56 @@ static const u16 sTMHMMoves[] = [ITEM_TM48 - ITEM_TM01] = MOVE_SKILL_SWAP, [ITEM_TM49 - ITEM_TM01] = MOVE_SNATCH, [ITEM_TM50 - ITEM_TM01] = MOVE_OVERHEAT, + [ITEM_TM51 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM52 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM53 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM54 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM55 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM56 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM57 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM58 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM59 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM60 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM61 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM62 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM63 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM64 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM65 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM66 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM67 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM68 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM69 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM70 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM71 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM72 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM73 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM74 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM75 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM76 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM77 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM78 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM79 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM80 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM81 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM82 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM83 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM84 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM85 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM86 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM87 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM88 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM89 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM90 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM91 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM92 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM93 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM94 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM95 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM96 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM97 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM98 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM99 - ITEM_TM01] = MOVE_NONE, // Todo + [ITEM_TM100 - ITEM_TM01] = MOVE_NONE, // Todo [ITEM_HM01 - ITEM_TM01] = MOVE_CUT, [ITEM_HM02 - ITEM_TM01] = MOVE_FLY, [ITEM_HM03 - ITEM_TM01] = MOVE_SURF, diff --git a/src/data/pokemon/tmhm_learnsets.h b/src/data/pokemon/tmhm_learnsets.h index deeeda16f..f762edb8d 100644 --- a/src/data/pokemon/tmhm_learnsets.h +++ b/src/data/pokemon/tmhm_learnsets.h @@ -1,5 +1,5 @@ #define TMHM_LEARNSET(moves) {(u32)(moves), ((u64)(moves) >> 32)} -#define TMHM(tmhm) ((u64)1 << (ITEM_##tmhm - ITEM_TM01_FOCUS_PUNCH)) +#define TMHM(tmhm) ((u64)1 << (ITEM_##tmhm - ITEM_TM01_FOCUS_PUNCH - ((ITEM_##tmhm > ITEM_TM100) ? 50 : 0))) // This table determines which TMs and HMs a species is capable of learning. // Each entry is a 64-bit bit array spread across two 32-bit values, with diff --git a/src/data/text/item_descriptions.h b/src/data/text/item_descriptions.h index 616c8160c..42ac81bed 100644 --- a/src/data/text/item_descriptions.h +++ b/src/data/text/item_descriptions.h @@ -2992,6 +2992,155 @@ static const u8 sTM50Desc[] = _( "attack, but sharply\n" "lowers Sp. Atk."); +static const u8 sTM51Desc[] = _( // Todo + "?????"); + +static const u8 sTM52Desc[] = _( // Todo + "?????"); + +static const u8 sTM53Desc[] = _( // Todo + "?????"); + +static const u8 sTM54Desc[] = _( // Todo + "?????"); + +static const u8 sTM55Desc[] = _( // Todo + "?????"); + +static const u8 sTM56Desc[] = _( // Todo + "?????"); + +static const u8 sTM57Desc[] = _( // Todo + "?????"); + +static const u8 sTM58Desc[] = _( // Todo + "?????"); + +static const u8 sTM59Desc[] = _( // Todo + "?????"); + +static const u8 sTM60Desc[] = _( // Todo + "?????"); + +static const u8 sTM61Desc[] = _( // Todo + "?????"); + +static const u8 sTM62Desc[] = _( // Todo + "?????"); + +static const u8 sTM63Desc[] = _( // Todo + "?????"); + +static const u8 sTM64Desc[] = _( // Todo + "?????"); + +static const u8 sTM65Desc[] = _( // Todo + "?????"); + +static const u8 sTM66Desc[] = _( // Todo + "?????"); + +static const u8 sTM67Desc[] = _( // Todo + "?????"); + +static const u8 sTM68Desc[] = _( // Todo + "?????"); + +static const u8 sTM69Desc[] = _( // Todo + "?????"); + +static const u8 sTM70Desc[] = _( // Todo + "?????"); + +static const u8 sTM71Desc[] = _( // Todo + "?????"); + +static const u8 sTM72Desc[] = _( // Todo + "?????"); + +static const u8 sTM73Desc[] = _( // Todo + "?????"); + +static const u8 sTM74Desc[] = _( // Todo + "?????"); + +static const u8 sTM75Desc[] = _( // Todo + "?????"); + +static const u8 sTM76Desc[] = _( // Todo + "?????"); + +static const u8 sTM77Desc[] = _( // Todo + "?????"); + +static const u8 sTM78Desc[] = _( // Todo + "?????"); + +static const u8 sTM79Desc[] = _( // Todo + "?????"); + +static const u8 sTM80Desc[] = _( // Todo + "?????"); + +static const u8 sTM81Desc[] = _( // Todo + "?????"); + +static const u8 sTM82Desc[] = _( // Todo + "?????"); + +static const u8 sTM83Desc[] = _( // Todo + "?????"); + +static const u8 sTM84Desc[] = _( // Todo + "?????"); + +static const u8 sTM85Desc[] = _( // Todo + "?????"); + +static const u8 sTM86Desc[] = _( // Todo + "?????"); + +static const u8 sTM87Desc[] = _( // Todo + "?????"); + +static const u8 sTM88Desc[] = _( // Todo + "?????"); + +static const u8 sTM89Desc[] = _( // Todo + "?????"); + +static const u8 sTM90Desc[] = _( // Todo + "?????"); + +static const u8 sTM91Desc[] = _( // Todo + "?????"); + +static const u8 sTM92Desc[] = _( // Todo + "?????"); + +static const u8 sTM93Desc[] = _( // Todo + "?????"); + +static const u8 sTM94Desc[] = _( // Todo + "?????"); + +static const u8 sTM95Desc[] = _( // Todo + "?????"); + +static const u8 sTM96Desc[] = _( // Todo + "?????"); + +static const u8 sTM97Desc[] = _( // Todo + "?????"); + +static const u8 sTM98Desc[] = _( // Todo + "?????"); + +static const u8 sTM99Desc[] = _( // Todo + "?????"); + +static const u8 sTM100Desc[] = _( // Todo + "?????"); static const u8 sHM01Desc[] = _( "Attacks the foe\n" diff --git a/src/party_menu.c b/src/party_menu.c index b03c59c7a..7e6dc5b4b 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -1963,7 +1963,9 @@ static u8 CanMonLearnTMTutor(struct Pokemon *mon, u16 item, u8 tutor) if (item >= ITEM_TM01) { - if (!CanMonLearnTMHM(mon, item - ITEM_TM01)) + if (item > ITEM_TM50 && item < ITEM_HM01) + return CANNOT_LEARN_MOVE; + else if (!CanMonLearnTMHM(mon, item - ITEM_TM01 - ((item > ITEM_TM100) ? 50 : 0))) return CANNOT_LEARN_MOVE; else move = ItemIdToBattleMoveId(item);