pmdsky-debug-py 10.1.14__py3-none-any.whl → 10.2.19__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -403,6 +403,24 @@ class NaItcmArm9Functions:
403
403
  None,
404
404
  )
405
405
 
406
+ SinAbs4096 = Symbol(
407
+ None,
408
+ None,
409
+ None,
410
+ "SinAbs4096",
411
+ "This function computes the sine of the absolute value of r0 using a lookup table. The period of the function is 4096, and the range is [-256, 256].\n\nr0: The value to get the sine of.\nreturn: floor(256 * sin(pi * abs(x) / 2048)) as a signed 32-bit integer.",
412
+ None,
413
+ )
414
+
415
+ CosAbs4096 = Symbol(
416
+ None,
417
+ None,
418
+ None,
419
+ "CosAbs4096",
420
+ "This function computes the cosine of the absolute value of r0 using a lookup table. The period of the function is 4096, and the range is [-256, 256].\n\nr0: The value to get the cosine of.\nreturn: floor(256 * cos(pi * abs(x) / 2048)) as a signed 32-bit integer.",
421
+ None,
422
+ )
423
+
406
424
  UFixedPoint64CmpLt = Symbol(
407
425
  None,
408
426
  None,
@@ -1806,6 +1824,15 @@ class NaItcmArm9Functions:
1806
1824
  None,
1807
1825
  )
1808
1826
 
1827
+ ReturnEggExclusiveItem = Symbol(
1828
+ None,
1829
+ None,
1830
+ None,
1831
+ "ReturnEggExclusiveItem",
1832
+ "Checks if a species has an egg exclusive item, for the purposes of the Croagunk Swap Shop.\nPulls from BABY_EXCLUSIVE_ITEM_PAIRS, so Pichu/Thundershard is not correctly accounted for by this function.\nr0: monster ID\nreturn: Exclusive item_id for that monster, 0 if none found.",
1833
+ None,
1834
+ )
1835
+
1809
1836
  SetActiveInventoryToMain = Symbol(
1810
1837
  None,
1811
1838
  None,
@@ -2724,12 +2751,30 @@ class NaItcmArm9Functions:
2724
2751
  None,
2725
2752
  )
2726
2753
 
2754
+ GenerateCroagunkItems = Symbol(
2755
+ None,
2756
+ None,
2757
+ None,
2758
+ "GenerateCroagunkItems",
2759
+ "Generates the Croagunk Swap Shop items for Croagunk in Wigglytuff's Guild.\nreturn: 1 if at least one item generated, 0 otherwise.",
2760
+ None,
2761
+ )
2762
+
2727
2763
  GetSynthItem = Symbol(
2728
2764
  None,
2729
2765
  None,
2730
2766
  None,
2731
2767
  "GetSynthItem",
2732
- "Note: unverified, ported from Irdkwia's notes",
2768
+ "Searches synth_template in SYNTH/synth.bin for a matching exclusive item.\nr0: item_id of an exclusive item.\nreturn: pointer to synth_template containing that item. 0 if no match was found.",
2769
+ None,
2770
+ )
2771
+
2772
+ GetValidSynthsForSpecies = Symbol(
2773
+ None,
2774
+ None,
2775
+ None,
2776
+ "GetValidSynthsForSpecies",
2777
+ "Fills out monster_synth_data for the specified monster, containing the synth templates that apply to said monster.\nr0: monster_id of the monster\nr1: [output] Pointer to an empty monster_synth_data, to be filled by the function.\nr2: Pointer to a type_synth_data, so the monster's types can be enabled in the bitfield.\nreturn: 1 if at least one synth_template matches the species, and 0 if not.",
2733
2778
  None,
2734
2779
  )
2735
2780
 
@@ -2792,7 +2837,7 @@ class NaItcmArm9Functions:
2792
2837
  None,
2793
2838
  None,
2794
2839
  "InitMove",
2795
- "Initializes a move info struct.\n\nThis sets f_exists and f_enabled_for_ai on the flags, the ID to the given ID, the PP to the max PP for the move ID, and the ginseng boost to 0.\n\nr0: pointer to move to initialize\nr1: move ID",
2840
+ "Initializes a move info struct.\n\nThis sets f_exists and f_enabled_for_ai on the flags, the ID to the given ID, the PP to the max PP for the move ID, and the ginseng boost to 0.\n\nr0: [output] pointer to move to initialize\nr1: move ID",
2796
2841
  None,
2797
2842
  )
2798
2843
 
@@ -2967,12 +3012,12 @@ class NaItcmArm9Functions:
2967
3012
  None,
2968
3013
  )
2969
3014
 
2970
- IsAffectedByTaunt = Symbol(
3015
+ IsUsableWhileTaunted = Symbol(
2971
3016
  None,
2972
3017
  None,
2973
3018
  None,
2974
- "IsAffectedByTaunt",
2975
- "Note: unverified, ported from Irdkwia's notes\n\nBased on struct move_data, maybe this should be IsUsableWhileTaunted?\n\nr0: move\nreturn: bool",
3019
+ "IsUsableWhileTaunted",
3020
+ "Returns true if the given move can be used while the user is affected by Taunt, or false if the move cannot be used while taunted.\n\nr0: move\nreturn: bool whether the move can be used while taunted.",
2976
3021
  None,
2977
3022
  )
2978
3023
 
@@ -3003,11 +3048,11 @@ class NaItcmArm9Functions:
3003
3048
  None,
3004
3049
  )
3005
3050
 
3006
- IsMoveRangeString19 = Symbol(
3051
+ IsMoveRangeStringUser = Symbol(
3007
3052
  None,
3008
3053
  None,
3009
3054
  None,
3010
- "IsMoveRangeString19",
3055
+ "IsMoveRangeStringUser",
3011
3056
  "Returns whether a move's range string is 19 ('User').\n\nr0: Move pointer\nreturn: True if the move's range string field has a value of 19.",
3012
3057
  None,
3013
3058
  )
@@ -3408,6 +3453,15 @@ class NaItcmArm9Functions:
3408
3453
  None,
3409
3454
  )
3410
3455
 
3456
+ PlaySeByIdVolumeWrapper = Symbol(
3457
+ None,
3458
+ None,
3459
+ None,
3460
+ "PlaySeByIdVolumeWrapper",
3461
+ "Wrapper for PlaySeByIdVolume with 0x100 as the volume.\n\nr0: Sound effect ID",
3462
+ None,
3463
+ )
3464
+
3411
3465
  PlaySeVolumeWrapper = Symbol(
3412
3466
  None,
3413
3467
  None,
@@ -3444,6 +3498,15 @@ class NaItcmArm9Functions:
3444
3498
  None,
3445
3499
  )
3446
3500
 
3501
+ PlayMeById = Symbol(
3502
+ None,
3503
+ None,
3504
+ None,
3505
+ "PlayMeById",
3506
+ "Initializes some values and then calls SendAudioCommand to play a ME track (musical sound effect).\n\nFor a list of tracks, see https://wiki.skytemple.org/index.php?title=List_of_Sound_Effects#ME\n\nChecks for DEBUG_FLAG_BGM_OFF. The volume is set to either 0 or 255 depending on the flag before calling SendAudioCommand.\n\nr0: ME ID",
3507
+ None,
3508
+ )
3509
+
3447
3510
  PlaySeByIdVolume = Symbol(
3448
3511
  None,
3449
3512
  None,
@@ -4326,6 +4389,24 @@ class NaItcmArm9Functions:
4326
4389
  None,
4327
4390
  )
4328
4391
 
4392
+ GetSize0x80Buffer = Symbol(
4393
+ None,
4394
+ None,
4395
+ None,
4396
+ "GetSize0x80Buffer",
4397
+ "Returns a pointer to a buffer of size 0x80.\n\nr0: index in a global list of buffers\nreturn: buffer pointer",
4398
+ None,
4399
+ )
4400
+
4401
+ GetSize0x80Buffer2 = Symbol(
4402
+ None,
4403
+ None,
4404
+ None,
4405
+ "GetSize0x80Buffer2",
4406
+ "Same as GetSize0x80Buffer, except the buffer is from a separate list.\n\nr0: index in a global list of buffers\nreturn: buffer pointer",
4407
+ None,
4408
+ )
4409
+
4329
4410
  GetDungeonResultString = Symbol(
4330
4411
  None,
4331
4412
  None,
@@ -4335,6 +4416,15 @@ class NaItcmArm9Functions:
4335
4416
  None,
4336
4417
  )
4337
4418
 
4419
+ SubstitutePlaceholderItemTags = Symbol(
4420
+ None,
4421
+ None,
4422
+ None,
4423
+ "SubstitutePlaceholderItemTags",
4424
+ "Sets what item's name should be displayed in place of the [item:r0] tag when printing a string to the message log.\n\nIs almost always accompanied by a SetMessageLogPreprocessorArgsIdVal(tag id, tag id | 0x40000) call.\n\nr0: tag id\nr1: item struct pointer\nr2: some static address related to storing the item (always the same throughout the code)",
4425
+ None,
4426
+ )
4427
+
4338
4428
  SetQuestionMarks = Symbol(
4339
4429
  None,
4340
4430
  None,
@@ -4484,7 +4574,7 @@ class NaItcmArm9Functions:
4484
4574
  None,
4485
4575
  None,
4486
4576
  "GetTalkLine",
4487
- "Note: unverified, ported from Irdkwia's notes\n\nr0: personality_index\nr1: group_id\nr2: restrictions\nreturn: ?",
4577
+ "Gets the string id to be displayed for dialogue with a team member.\n\nr0: personality_index (either a monster id or some constant)\nr1: talk type\nr2: restrictions\nreturn: string id",
4488
4578
  None,
4489
4579
  )
4490
4580
 
@@ -4785,6 +4875,24 @@ class NaItcmArm9Functions:
4785
4875
  None,
4786
4876
  )
4787
4877
 
4878
+ GetWindowIdSelectedItemOnPage = Symbol(
4879
+ None,
4880
+ None,
4881
+ None,
4882
+ "GetWindowIdSelectedItemOnPage",
4883
+ "Gets the index on the page of the current item the user has selected on the menu given by the window_id.\n\nr0: window id\nreturn: index of current selected item on the page",
4884
+ None,
4885
+ )
4886
+
4887
+ GetSimpleMenuResult = Symbol(
4888
+ None,
4889
+ None,
4890
+ None,
4891
+ "GetSimpleMenuResult",
4892
+ "Note: unverified, ported from Irdkwia's notes\n\nr0: window_id\nreturn: ?",
4893
+ None,
4894
+ )
4895
+
4788
4896
  UpdateParentMenu = Symbol(
4789
4897
  None,
4790
4898
  None,
@@ -4866,15 +4974,6 @@ class NaItcmArm9Functions:
4866
4974
  None,
4867
4975
  )
4868
4976
 
4869
- GetSimpleMenuResult = Symbol(
4870
- None,
4871
- None,
4872
- None,
4873
- "GetSimpleMenuResult",
4874
- "Note: unverified, ported from Irdkwia's notes\n\nr0: window_id\nreturn: ?",
4875
- None,
4876
- )
4877
-
4878
4977
  UpdateSimpleMenu = Symbol(
4879
4978
  None,
4880
4979
  None,
@@ -4965,6 +5064,15 @@ class NaItcmArm9Functions:
4965
5064
  None,
4966
5065
  )
4967
5066
 
5067
+ DrawAdvancedMenu = Symbol(
5068
+ None,
5069
+ None,
5070
+ None,
5071
+ "DrawAdvancedMenu",
5072
+ "Draws the contents of an advanced menu on the screen.\n\nr0: window pointer",
5073
+ None,
5074
+ )
5075
+
4968
5076
  CreateCollectionMenu = Symbol(
4969
5077
  None,
4970
5078
  None,
@@ -5523,6 +5631,15 @@ class NaItcmArm9Functions:
5523
5631
  None,
5524
5632
  )
5525
5633
 
5634
+ AddMessageToAlertBox = Symbol(
5635
+ None,
5636
+ None,
5637
+ None,
5638
+ "AddMessageToAlertBox",
5639
+ "Adds a message to the dungeon alert box.\n\nr0: window_id\nr1: preprocessor flags\nr2: message string pointer\nr3: preprocessor_args struct pointer\nstack[0]: whether the message is the start of a new group (meaning it should be preceded by a horizontal line)\nreturn: whether the message was successfully added",
5640
+ None,
5641
+ )
5642
+
5526
5643
  IsAlertBoxActive = Symbol(
5527
5644
  None,
5528
5645
  None,
@@ -5631,6 +5748,15 @@ class NaItcmArm9Functions:
5631
5748
  None,
5632
5749
  )
5633
5750
 
5751
+ GetWindowIdPageStart = Symbol(
5752
+ None,
5753
+ None,
5754
+ None,
5755
+ "GetWindowIdPageStart",
5756
+ "Gets the item the current menu page of a given window id starts on (the current page id times the maximum number of items on one page).\n\nr0: window id\nreturn: first item on page",
5757
+ None,
5758
+ )
5759
+
5634
5760
  GetAdvancedTextBoxFlags2 = Symbol(
5635
5761
  None,
5636
5762
  None,
@@ -5744,7 +5870,88 @@ class NaItcmArm9Functions:
5744
5870
  None,
5745
5871
  None,
5746
5872
  "IsMenuOptionActive",
5747
- "Called whenever a menu option is selected. Returns whether the option is active or not.\n\nr0: ?\nreturn: True if the menu option is enabled, false otherwise.",
5873
+ "Called whenever a menu option is selected. Returns whether the option is active or not.\n\nr0: window_input_ctx struct pointer\nreturn: True if the menu option is enabled, false otherwise.",
5874
+ None,
5875
+ )
5876
+
5877
+ GetSelectedItemOnPage = Symbol(
5878
+ None,
5879
+ None,
5880
+ None,
5881
+ "GetSelectedItemOnPage",
5882
+ "Gets the index on the page of the current item the user has selected.\n\nr0: window_input_ctx struct pointer\nreturn: index of current selected item on the page",
5883
+ None,
5884
+ )
5885
+
5886
+ GetCurrentPage = Symbol(
5887
+ None,
5888
+ None,
5889
+ None,
5890
+ "GetCurrentPage",
5891
+ "Gets the index of the current menu page the user is on.\n\nr0: window_input_ctx struct pointer\nreturn: current page",
5892
+ None,
5893
+ )
5894
+
5895
+ GetPageStart = Symbol(
5896
+ None,
5897
+ None,
5898
+ None,
5899
+ "GetPageStart",
5900
+ "Gets the index of the item the current menu page starts on (the current page index times the maximum number of items on one page).\n\nr0: window_input_ctx struct pointer\nreturn: index of first item on page",
5901
+ None,
5902
+ )
5903
+
5904
+ GetSelectedMenuItemIdx = Symbol(
5905
+ None,
5906
+ None,
5907
+ None,
5908
+ "GetSelectedMenuItemIdx",
5909
+ "Gets the index of the current menu item the user has selected.\n\nr0: window_input_ctx struct pointer\nreturn: index of current selected item",
5910
+ None,
5911
+ )
5912
+
5913
+ GetTotalNumMenuItems = Symbol(
5914
+ None,
5915
+ None,
5916
+ None,
5917
+ "GetTotalNumMenuItems",
5918
+ "Gets the total number of items in the menu.\n\nr0: window_input_ctx struct pointer\nreturn: number of menu items",
5919
+ None,
5920
+ )
5921
+
5922
+ GetNumItemsOnPage = Symbol(
5923
+ None,
5924
+ None,
5925
+ None,
5926
+ "GetNumItemsOnPage",
5927
+ "Gets the number of items on the current menu page.\n\nr0: window_input_ctx struct pointer\nreturn: number of items on page",
5928
+ None,
5929
+ )
5930
+
5931
+ GetMaxItemsOnPage = Symbol(
5932
+ None,
5933
+ None,
5934
+ None,
5935
+ "GetMaxItemsOnPage",
5936
+ "Gets the maximum possible number of items the menu can hold on one of its pages.\n\nr0: window_input_ctx struct pointer\nreturn: number of menu pages",
5937
+ None,
5938
+ )
5939
+
5940
+ GetTotalNumPages = Symbol(
5941
+ None,
5942
+ None,
5943
+ None,
5944
+ "GetTotalNumPages",
5945
+ "Gets the total number of pages in the menu.\n\nr0: window_input_ctx struct pointer\nreturn: number of menu pages",
5946
+ None,
5947
+ )
5948
+
5949
+ GetPageItemYOffset = Symbol(
5950
+ None,
5951
+ None,
5952
+ None,
5953
+ "GetPageItemYOffset",
5954
+ "Gets the y-offset of a given item on the current menu page.\n\nr0: window_input_ctx struct pointer\nr1: item index on page, in range [0, n_items_on_page)\nreturn: y-offset",
5748
5955
  None,
5749
5956
  )
5750
5957
 
@@ -5766,6 +5973,60 @@ class NaItcmArm9Functions:
5766
5973
  None,
5767
5974
  )
5768
5975
 
5976
+ OverlayLoadEntriesEqual = Symbol(
5977
+ None,
5978
+ None,
5979
+ None,
5980
+ "OverlayLoadEntriesEqual",
5981
+ "Checks if two overlay_load_entries have the same values for all of their fields.\n\nr0: overlay_load_entry pointer\nr1: overlay_load_entry pointer\nreturn: bool",
5982
+ None,
5983
+ )
5984
+
5985
+ FreeActiveMenu = Symbol(
5986
+ None,
5987
+ None,
5988
+ None,
5989
+ "FreeActiveMenu",
5990
+ "Frees the currently active menu by calling the destructor function of the active entry in menu_control.\n\nNo params.",
5991
+ None,
5992
+ )
5993
+
5994
+ InitMenu = Symbol(
5995
+ None,
5996
+ None,
5997
+ None,
5998
+ "InitMenu",
5999
+ "Initializes a menu by setting the incoming_entry field of menu_control to the given overlay_load_entry.\n\nr0: overlay_load_entry pointer\nreturn: whether the menu was successfully initialized",
6000
+ None,
6001
+ )
6002
+
6003
+ InitMenuWithWindowExtraInfo = Symbol(
6004
+ None,
6005
+ None,
6006
+ None,
6007
+ "InitMenuWithWindowExtraInfo",
6008
+ "Has the same functionality as InitMenu except also tries to initialize menu_control's window_extra_info struct.\n\nr0: overlay_load_entry pointer\nr1: whether there is a window_extra_info struct\nr2: window_extra_info pointer\nreturn: whether the menu was successfully initialized",
6009
+ None,
6010
+ )
6011
+
6012
+ CopyMenuControlWindowExtraInfo = Symbol(
6013
+ None,
6014
+ None,
6015
+ None,
6016
+ "CopyMenuControlWindowExtraInfo",
6017
+ "Copies menu_control's window_extra_info to the given address.\n\nr0: [output] window_extra_info pointer\nreturn: whether the window extra info was successfully copied",
6018
+ None,
6019
+ )
6020
+
6021
+ HandleMenus = Symbol(
6022
+ None,
6023
+ None,
6024
+ None,
6025
+ "HandleMenus",
6026
+ "Master function called on every frame for handling the game's menus (seemingly the vast majority with the exception of some in dungeon mode). \n\nThis includes updating them, freeing them, and entering and exiting their respective overlays if applicable.\n\nNo params.",
6027
+ None,
6028
+ )
6029
+
5769
6030
  SetupAndShowKeyboard = Symbol(
5770
6031
  None,
5771
6032
  None,
@@ -5829,6 +6090,15 @@ class NaItcmArm9Functions:
5829
6090
  None,
5830
6091
  )
5831
6092
 
6093
+ GetCheckIqMenuSkillString = Symbol(
6094
+ None,
6095
+ None,
6096
+ None,
6097
+ "GetCheckIqMenuSkillString",
6098
+ "Gets the string for a team member's IQ skill to be displayed in the Check IQ menu.\n\nIs stored as an advanced_menu_entry_fn_t in the advanced_menu struct.\n\nr0: [output] buffer\nr1: id in team member's IQ skill list\nreturn: input buffer",
6099
+ None,
6100
+ )
6101
+
5832
6102
  GetNotifyNote = Symbol(
5833
6103
  None,
5834
6104
  None,
@@ -6099,6 +6369,15 @@ class NaItcmArm9Functions:
6099
6369
  None,
6100
6370
  )
6101
6371
 
6372
+ LoadScriptVariableValueString = Symbol(
6373
+ None,
6374
+ None,
6375
+ None,
6376
+ "LoadScriptVariableValueString",
6377
+ "Loads a string from the value of a given script variable. Adds a trailing null terminator in the output.\n\nr0: script variable ID\nr1: [output] script variable value string\nr2: number of characters to load",
6378
+ None,
6379
+ )
6380
+
6102
6381
  SaveScriptVariableValueBytes = Symbol(
6103
6382
  None,
6104
6383
  None,
@@ -6117,6 +6396,15 @@ class NaItcmArm9Functions:
6117
6396
  None,
6118
6397
  )
6119
6398
 
6399
+ CalcScriptVariables = Symbol(
6400
+ None,
6401
+ None,
6402
+ None,
6403
+ "CalcScriptVariables",
6404
+ "Performs a calculation on two loaded script variables.\n\nr0: script variable 1\nr1: script variable 2\nr2: calculation to perform on the script variables\nreturn: calculation result",
6405
+ None,
6406
+ )
6407
+
6120
6408
  EventFlagResume = Symbol(
6121
6409
  None,
6122
6410
  None,
@@ -6576,6 +6864,15 @@ class NaItcmArm9Functions:
6576
6864
  None,
6577
6865
  )
6578
6866
 
6867
+ TilesetSecondaryTerrainIsChasm = Symbol(
6868
+ None,
6869
+ None,
6870
+ None,
6871
+ "TilesetSecondaryTerrainIsChasm",
6872
+ "Returns true if the given tileset has a chasm secondary terrain.\n\nr0: tileset id\nreturn: bool",
6873
+ None,
6874
+ )
6875
+
6579
6876
  GetNbFloors = Symbol(
6580
6877
  None,
6581
6878
  None,
@@ -8795,7 +9092,7 @@ class NaItcmArm9Functions:
8795
9092
  None,
8796
9093
  None,
8797
9094
  "DungeonRequestsDoneWrapper",
8798
- "Calls DungeonRequestsDone with the second argument set to false.\n\nr0: ?\nreturn: number of mission completed",
9095
+ "Calls DungeonRequestsDone with the second argument set to false.\n\nr0: ?\nreturn: number of missions completed",
8799
9096
  None,
8800
9097
  )
8801
9098
 
@@ -8813,7 +9110,7 @@ class NaItcmArm9Functions:
8813
9110
  None,
8814
9111
  None,
8815
9112
  "AddMissionToJobList",
8816
- "Adds a mission to the Job List.\n\nr0: mission to add",
9113
+ "Adds a mission to the Job List.\n\nr0: mission to add\nreturn: bool (0 if mission was successfully added)",
8817
9114
  None,
8818
9115
  )
8819
9116
 
@@ -9042,12 +9339,21 @@ class NaItcmArm9Functions:
9042
9339
  None,
9043
9340
  )
9044
9341
 
9045
- GetActorMatchingStorageId = Symbol(
9342
+ GetScriptEntityMonsterId = Symbol(
9343
+ None,
9344
+ None,
9345
+ None,
9346
+ "GetScriptEntityMonsterId",
9347
+ "Returns the monster id of the script entity given by the id.\n\nr0: script_entity_id\nreturn: monster id",
9348
+ None,
9349
+ )
9350
+
9351
+ GetScriptEntityMatchingStorageId = Symbol(
9046
9352
  None,
9047
9353
  None,
9048
9354
  None,
9049
- "GetActorMatchingStorageId",
9050
- "Note: unverified, ported from Irdkwia's notes\n\nr0: actor_id\nreturn: storage ID",
9355
+ "GetScriptEntityMatchingStorageId",
9356
+ "Returns the storage id matching the script entity given by the id.\n\nr0: script_entity_id\nreturn: storage ID",
9051
9357
  None,
9052
9358
  )
9053
9359
 
@@ -9056,7 +9362,7 @@ class NaItcmArm9Functions:
9056
9362
  None,
9057
9363
  None,
9058
9364
  "SetActorTalkMainAndActorTalkSub",
9059
- "Sets ACTOR_TALK_MAIN and ACTOR_TALK_SUB to given actor IDs.\n\nr0: actor_id for ACTOR_TALK_MAIN\nr1: actor_id for ACTOR_TALK_SUB",
9365
+ "Sets ACTOR_TALK_MAIN and ACTOR_TALK_SUB to given actor IDs.\n\nr0: script_entity_id for ACTOR_TALK_MAIN\nr1: script_entity_id for ACTOR_TALK_SUB",
9060
9366
  None,
9061
9367
  )
9062
9368
 
@@ -9065,7 +9371,7 @@ class NaItcmArm9Functions:
9065
9371
  None,
9066
9372
  None,
9067
9373
  "SetActorTalkMain",
9068
- "Sets ACTOR_TALK_MAIN to be actor_id.\nImplements SPECIAL_PROC_SET_ACTOR_TALK_MAIN (see ScriptSpecialProcessCall).\n\nr0: actor_id",
9374
+ "Sets ACTOR_TALK_MAIN to be actor_id.\nImplements SPECIAL_PROC_SET_ACTOR_TALK_MAIN (see ScriptSpecialProcessCall).\n\nr0: script_entity_id",
9069
9375
  None,
9070
9376
  )
9071
9377
 
@@ -9074,7 +9380,7 @@ class NaItcmArm9Functions:
9074
9380
  None,
9075
9381
  None,
9076
9382
  "SetActorTalkSub",
9077
- "Sets ACTOR_TALK_SUB to be actor_id.\nImplements SPECIAL_PROC_SET_ACTOR_TALK_SUB (see ScriptSpecialProcessCall).\n\nr0: actor_id",
9383
+ "Sets ACTOR_TALK_SUB to be actor_id.\nImplements SPECIAL_PROC_SET_ACTOR_TALK_SUB (see ScriptSpecialProcessCall).\n\nr0: script_entity_id",
9078
9384
  None,
9079
9385
  )
9080
9386
 
@@ -9215,8 +9521,16 @@ class NaItcmArm9Functions:
9215
9521
  "DirectoryFile_LoadDirectoryFile", LoadFileInPack
9216
9522
  )
9217
9523
 
9524
+ IsAffectedByTaunt = _Deprecated("IsAffectedByTaunt", IsUsableWhileTaunted)
9525
+
9526
+ IsMoveRangeString19 = _Deprecated("IsMoveRangeString19", IsMoveRangeStringUser)
9527
+
9218
9528
  GetLowKickMultiplier = _Deprecated("GetLowKickMultiplier", GetWeightMultiplier)
9219
9529
 
9530
+ GetActorMatchingStorageId = _Deprecated(
9531
+ "GetActorMatchingStorageId", GetScriptEntityMatchingStorageId
9532
+ )
9533
+
9220
9534
 
9221
9535
  class NaItcmArm9Data:
9222
9536
 
@@ -9350,6 +9664,15 @@ class NaItcmArm9Data:
9350
9664
  "uint32_t",
9351
9665
  )
9352
9666
 
9667
+ SINE_VALUE_TABLE = Symbol(
9668
+ None,
9669
+ None,
9670
+ None,
9671
+ "SINE_VALUE_TABLE",
9672
+ "A lookup table for the values of sine. The table contains 1024 values evenly distributed in the range [sin(0) * 256, sin(pi / 2) * 256); i.e., the first quarter of the unit circle. The rest of sine (and cosine) is derived by reusing these values.",
9673
+ "int16_t[1024]",
9674
+ )
9675
+
9353
9676
  NATURAL_LOG_VALUE_TABLE = Symbol(
9354
9677
  None,
9355
9678
  None,
@@ -9428,13 +9751,13 @@ class NaItcmArm9Data:
9428
9751
  "",
9429
9752
  )
9430
9753
 
9431
- ARM9_UNKNOWN_TABLE__NA_2097FF8 = Symbol(
9754
+ BABY_EXCLUSIVE_ITEM_PAIRS = Symbol(
9432
9755
  None,
9433
9756
  None,
9434
9757
  None,
9435
- "ARM9_UNKNOWN_TABLE__NA_2097FF8",
9436
- "16*0x4 (0x2+0x2)\n\nNote: unverified, ported from Irdkwia's notes",
9437
- "",
9758
+ "BABY_EXCLUSIVE_ITEM_PAIRS",
9759
+ "Stores the IDs of each baby Pokemon (and Phione), as well as the exclusive item they hatch with.",
9760
+ "struct baby_exclusive_item_pair[16]",
9438
9761
  )
9439
9762
 
9440
9763
  KECLEON_SHOP_ITEM_TABLE_LISTS_1 = Symbol(
@@ -9698,6 +10021,15 @@ class NaItcmArm9Data:
9698
10021
  "struct window_params",
9699
10022
  )
9700
10023
 
10024
+ NULL_OVERLAY_LOAD_ENTRY = Symbol(
10025
+ None,
10026
+ None,
10027
+ None,
10028
+ "NULL_OVERLAY_LOAD_ENTRY",
10029
+ "An overlay_load_entry whose values are all zeroes.\n\ntype: overlay_load_entry",
10030
+ "struct overlay_load_entry",
10031
+ )
10032
+
9701
10033
  PARTNER_TALK_KIND_TABLE = Symbol(
9702
10034
  None,
9703
10035
  None,
@@ -9707,6 +10039,15 @@ class NaItcmArm9Data:
9707
10039
  "struct partner_talk_kind_table_entry[11]",
9708
10040
  )
9709
10041
 
10042
+ EVENT_FLAG_PROG_POS_INFO = Symbol(
10043
+ None,
10044
+ None,
10045
+ None,
10046
+ "EVENT_FLAG_PROG_POS_INFO",
10047
+ "Debug information used to log an error with an unrecognized operation in CalcScriptVariables.",
10048
+ "struct prog_pos_info",
10049
+ )
10050
+
9710
10051
  SCRIPT_VARS_LOCALS = Symbol(
9711
10052
  None,
9712
10053
  None,
@@ -9716,6 +10057,15 @@ class NaItcmArm9Data:
9716
10057
  "struct script_local_var_table",
9717
10058
  )
9718
10059
 
10060
+ EVENT_FLAG_EXPANSION_ERROR = Symbol(
10061
+ None,
10062
+ None,
10063
+ None,
10064
+ "EVENT_FLAG_EXPANSION_ERROR",
10065
+ "Error log message for an unrecognized operation in CalcScriptVariables.",
10066
+ "",
10067
+ )
10068
+
9719
10069
  SCRIPT_VARS = Symbol(
9720
10070
  None,
9721
10071
  None,
@@ -10157,6 +10507,15 @@ class NaItcmArm9Data:
10157
10507
  "fx32_8",
10158
10508
  )
10159
10509
 
10510
+ TACTICS_FOLLOW_LEADER = Symbol(
10511
+ None,
10512
+ None,
10513
+ None,
10514
+ "TACTICS_FOLLOW_LEADER",
10515
+ "Array of boolean values corresponding to each tactic_id enum, determining whether the tactic makes party members follow the leader.",
10516
+ "bool[12]",
10517
+ )
10518
+
10160
10519
  FORBIDDEN_FORGOT_MOVE_LIST = Symbol(
10161
10520
  None,
10162
10521
  None,
@@ -10234,7 +10593,7 @@ class NaItcmArm9Data:
10234
10593
  None,
10235
10594
  None,
10236
10595
  "SECONDARY_TERRAIN_TYPES",
10237
- "The type of secondary terrain for each dungeon in the game.\n\nThis is an array of 200 bytes. Each byte is an enum corresponding to one dungeon.\n\ntype: struct secondary_terrain_type_8[200]",
10596
+ "The type of secondary terrain for each tileset in the game.\n\nThis is an array of 200 bytes. Each byte is an enum corresponding to one tileset.\n\ntype: struct secondary_terrain_type_8[200]",
10238
10597
  "struct secondary_terrain_type_8[200]",
10239
10598
  )
10240
10599
 
@@ -10922,6 +11281,15 @@ class NaItcmArm9Data:
10922
11281
  "int16_t[6]",
10923
11282
  )
10924
11283
 
11284
+ MENU_CONTROL_PTR = Symbol(
11285
+ None,
11286
+ None,
11287
+ None,
11288
+ "MENU_CONTROL_PTR",
11289
+ "Pointer to the master struct used for handling menus.\n\ntype: menu_control*",
11290
+ "struct menu_control*",
11291
+ )
11292
+
10925
11293
  KEYBOARD_STRING_IDS = Symbol(
10926
11294
  None,
10927
11295
  None,
@@ -11000,7 +11368,7 @@ class NaItcmArm9Data:
11000
11368
  None,
11001
11369
  "MONSTER_DATA_TABLE_PTR",
11002
11370
  "[Runtime] Points to data about monster species.",
11003
- "undefined*",
11371
+ "struct monster_data_table*",
11004
11372
  )
11005
11373
 
11006
11374
  UNOWN_SPECIES_ADDITIONAL_CHAR_PTR_TABLE = Symbol(
@@ -13001,6 +13369,15 @@ class NaItcmLibsFunctions:
13001
13369
  None,
13002
13370
  )
13003
13371
 
13372
+ PM_ForceToPowerOff = Symbol(
13373
+ None,
13374
+ None,
13375
+ None,
13376
+ "PM_ForceToPowerOff",
13377
+ "Powers off the system.\n\nreturn: ?",
13378
+ None,
13379
+ )
13380
+
13004
13381
  abs = Symbol(
13005
13382
  None,
13006
13383
  None,
@@ -13334,12 +13711,12 @@ class NaItcmLibsFunctions:
13334
13711
  None,
13335
13712
  )
13336
13713
 
13337
- _dgeq = Symbol(
13714
+ _dgr = Symbol(
13338
13715
  None,
13339
13716
  None,
13340
13717
  None,
13341
- "_dgeq",
13342
- "Implements the >= operator for IEEE 754 double-precision floating-point numbers.\n\nr0: a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b (high bits)\nreturn: a >= b",
13718
+ "_dgr",
13719
+ "Implements the > operator for IEEE 754 double-precision floating-point numbers.\n\nr0: a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b (high bits)\nreturn: a > b",
13343
13720
  None,
13344
13721
  )
13345
13722
 
@@ -16958,6 +17335,15 @@ class NaItcmOverlay10Data:
16958
17335
  "struct dungeon_id_8",
16959
17336
  )
16960
17337
 
17338
+ FIERY_DRUM_RECRUIT_BOOST = Symbol(
17339
+ None,
17340
+ None,
17341
+ None,
17342
+ "FIERY_DRUM_RECRUIT_BOOST",
17343
+ "The amount added to the recruit rate with compatible species when holding a Fiery Drum.",
17344
+ "int16_t",
17345
+ )
17346
+
16961
17347
  BAD_POISON_DAMAGE_COOLDOWN = Symbol(
16962
17348
  None,
16963
17349
  None,
@@ -16967,6 +17353,15 @@ class NaItcmOverlay10Data:
16967
17353
  "int16_t",
16968
17354
  )
16969
17355
 
17356
+ ICY_FLUTE_RECRUIT_BOOST = Symbol(
17357
+ None,
17358
+ None,
17359
+ None,
17360
+ "ICY_FLUTE_RECRUIT_BOOST",
17361
+ "The amount added to the recruit rate with compatible species when holding an Icy Flute.",
17362
+ "int16_t",
17363
+ )
17364
+
16970
17365
  PROTEIN_STAT_BOOST = Symbol(
16971
17366
  None,
16972
17367
  None,
@@ -17012,6 +17407,15 @@ class NaItcmOverlay10Data:
17012
17407
  "int16_t",
17013
17408
  )
17014
17409
 
17410
+ GOLDEN_MASK_RECRUIT_BOOST = Symbol(
17411
+ None,
17412
+ None,
17413
+ None,
17414
+ "GOLDEN_MASK_RECRUIT_BOOST",
17415
+ "The amount added to the recruit rate when holding a Golden Mask.",
17416
+ "int16_t",
17417
+ )
17418
+
17015
17419
  IRON_TAIL_LOWER_DEFENSE_CHANCE = Symbol(
17016
17420
  None,
17017
17421
  None,
@@ -17057,6 +17461,15 @@ class NaItcmOverlay10Data:
17057
17461
  "int16_t",
17058
17462
  )
17059
17463
 
17464
+ HURL_DAMAGE = Symbol(
17465
+ None,
17466
+ None,
17467
+ None,
17468
+ "HURL_DAMAGE",
17469
+ "Damage dealt from hurling a monster at another monster (10).",
17470
+ "int16_t",
17471
+ )
17472
+
17060
17473
  TRAP_BUSTER_ACTIVATION_CHANCE = Symbol(
17061
17474
  None,
17062
17475
  None,
@@ -17093,6 +17506,15 @@ class NaItcmOverlay10Data:
17093
17506
  "int16_t",
17094
17507
  )
17095
17508
 
17509
+ AMBER_TEAR_RECRUIT_BOOST = Symbol(
17510
+ None,
17511
+ None,
17512
+ None,
17513
+ "AMBER_TEAR_RECRUIT_BOOST",
17514
+ "The amount added to the recruit rate when holding an Amber Tear.",
17515
+ "int16_t",
17516
+ )
17517
+
17096
17518
  MUDDY_WATER_LOWER_ACCURACY_CHANCE = Symbol(
17097
17519
  None,
17098
17520
  None,
@@ -17201,6 +17623,15 @@ class NaItcmOverlay10Data:
17201
17623
  "int16_t",
17202
17624
  )
17203
17625
 
17626
+ CURSE_DAMAGE_COOLDOWN = Symbol(
17627
+ None,
17628
+ None,
17629
+ None,
17630
+ "CURSE_DAMAGE_COOLDOWN",
17631
+ "The number of turns between passive curse damage (3).",
17632
+ "int16_t",
17633
+ )
17634
+
17204
17635
  STEEL_WING_BOOST_DEFENSE_CHANCE = Symbol(
17205
17636
  None,
17206
17637
  None,
@@ -17255,6 +17686,15 @@ class NaItcmOverlay10Data:
17255
17686
  "int16_t",
17256
17687
  )
17257
17688
 
17689
+ PITFALL_TRAP_DAMAGE = Symbol(
17690
+ None,
17691
+ None,
17692
+ None,
17693
+ "PITFALL_TRAP_DAMAGE",
17694
+ "Damage dealt by pitfall traps (5).",
17695
+ "int16_t",
17696
+ )
17697
+
17258
17698
  CHARGE_BEAM_BOOST_SPECIAL_ATTACK_CHANCE = Symbol(
17259
17699
  None,
17260
17700
  None,
@@ -17282,6 +17722,15 @@ class NaItcmOverlay10Data:
17282
17722
  "int16_t",
17283
17723
  )
17284
17724
 
17725
+ FRIEND_BOW_FAST_FRIEND_BOOST = Symbol(
17726
+ None,
17727
+ None,
17728
+ None,
17729
+ "FRIEND_BOW_FAST_FRIEND_BOOST",
17730
+ "The amount added to the recruit rate when holding a Friend Bow or with the Fast Friend IQ skill.",
17731
+ "int16_t",
17732
+ )
17733
+
17285
17734
  OCTAZOOKA_LOWER_ACCURACY_CHANCE = Symbol(
17286
17735
  None,
17287
17736
  None,
@@ -17336,6 +17785,15 @@ class NaItcmOverlay10Data:
17336
17785
  "int16_t",
17337
17786
  )
17338
17787
 
17788
+ CUTE_CHARM_INFATUATE_CHANCE = Symbol(
17789
+ None,
17790
+ None,
17791
+ None,
17792
+ "CUTE_CHARM_INFATUATE_CHANCE",
17793
+ "The chance of Cute Charm infatuating, as a percentage (12%).",
17794
+ "int16_t",
17795
+ )
17796
+
17339
17797
  LICK_PARALYZE_CHANCE = Symbol(
17340
17798
  None,
17341
17799
  None,
@@ -17480,6 +17938,15 @@ class NaItcmOverlay10Data:
17480
17938
  "int16_t",
17481
17939
  )
17482
17940
 
17941
+ INGRAIN_BONUS_REGEN = Symbol(
17942
+ None,
17943
+ None,
17944
+ None,
17945
+ "INGRAIN_BONUS_REGEN",
17946
+ "The passive bonus regen given by the Ingrain status condition (10).",
17947
+ "int16_t",
17948
+ )
17949
+
17483
17950
  AFTERMATH_CHANCE = Symbol(
17484
17951
  None,
17485
17952
  None,
@@ -17507,6 +17974,15 @@ class NaItcmOverlay10Data:
17507
17974
  "int16_t",
17508
17975
  )
17509
17976
 
17977
+ WRAP_DAMAGE = Symbol(
17978
+ None,
17979
+ None,
17980
+ None,
17981
+ "WRAP_DAMAGE",
17982
+ "Damage dealt by the wrap status condition (6).",
17983
+ "int16_t",
17984
+ )
17985
+
17510
17986
  TYPE_ADVANTAGE_MASTER_CRIT_RATE = Symbol(
17511
17987
  None,
17512
17988
  None,
@@ -17516,6 +17992,15 @@ class NaItcmOverlay10Data:
17516
17992
  "int16_t",
17517
17993
  )
17518
17994
 
17995
+ INGRAIN_BONUS_REGEN_COOLDOWN = Symbol(
17996
+ None,
17997
+ None,
17998
+ None,
17999
+ "INGRAIN_BONUS_REGEN_COOLDOWN",
18000
+ "The number of turns between ingrain health regeneration (5).",
18001
+ "int16_t",
18002
+ )
18003
+
17519
18004
  ORAN_BERRY_HP_RESTORATION = Symbol(
17520
18005
  None,
17521
18006
  None,
@@ -17525,6 +18010,15 @@ class NaItcmOverlay10Data:
17525
18010
  "int16_t",
17526
18011
  )
17527
18012
 
18013
+ WRAP_DAMAGE_COOLDOWN = Symbol(
18014
+ None,
18015
+ None,
18016
+ None,
18017
+ "WRAP_DAMAGE_COOLDOWN",
18018
+ "The number of turns between passive wrap damage (2).",
18019
+ "int16_t",
18020
+ )
18021
+
17528
18022
  SITRUS_BERRY_FULL_HP_BOOST = Symbol(
17529
18023
  None,
17530
18024
  None,
@@ -17583,6 +18077,15 @@ class NaItcmOverlay10Data:
17583
18077
  None, None, None, "STICK_POWER", "Attack power for Sticks.", "int16_t"
17584
18078
  )
17585
18079
 
18080
+ AQUA_RING_BONUS_REGEN = Symbol(
18081
+ None,
18082
+ None,
18083
+ None,
18084
+ "AQUA_RING_BONUS_REGEN",
18085
+ "The passive bonus regen given by the Aqua Ring status condition (8).",
18086
+ "int16_t",
18087
+ )
18088
+
17586
18089
  BUBBLE_LOWER_SPEED_CHANCE = Symbol(
17587
18090
  None,
17588
18091
  None,
@@ -17637,6 +18140,15 @@ class NaItcmOverlay10Data:
17637
18140
  "int16_t",
17638
18141
  )
17639
18142
 
18143
+ CHATOT_SCARF_BOUNCE_CHANCE = Symbol(
18144
+ None,
18145
+ None,
18146
+ None,
18147
+ "CHATOT_SCARF_BOUNCE_CHANCE",
18148
+ "The chance of the Chatot Scarf bouncing back a move, as a percentage (20%).",
18149
+ "int16_t",
18150
+ )
18151
+
17640
18152
  WEATHER_MOVE_TURN_COUNT = Symbol(
17641
18153
  None,
17642
18154
  None,
@@ -17910,6 +18422,15 @@ class NaItcmOverlay10Data:
17910
18422
  None, None, None, "IRON_THORN_POWER", "Attack power for Iron Thorns.", "int16_t"
17911
18423
  )
17912
18424
 
18425
+ BAD_WEATHER_DAMAGE = Symbol(
18426
+ None,
18427
+ None,
18428
+ None,
18429
+ "BAD_WEATHER_DAMAGE",
18430
+ "Damage dealt by the Sandstorm and Hail weather conditions (3).",
18431
+ "int16_t",
18432
+ )
18433
+
17913
18434
  SCOPE_LENS_CRIT_RATE_BOOST = Symbol(
17914
18435
  None,
17915
18436
  None,
@@ -17928,6 +18449,51 @@ class NaItcmOverlay10Data:
17928
18449
  "int16_t",
17929
18450
  )
17930
18451
 
18452
+ SKY_MELODICA_RECRUIT_BOOST = Symbol(
18453
+ None,
18454
+ None,
18455
+ None,
18456
+ "SKY_MELODICA_RECRUIT_BOOST",
18457
+ "The amount added to the recruit rate with compatible species when holding a Sky Melodica.",
18458
+ "int16_t",
18459
+ )
18460
+
18461
+ GRASS_CORNET_RECRUIT_BOOST = Symbol(
18462
+ None,
18463
+ None,
18464
+ None,
18465
+ "GRASS_CORNET_RECRUIT_BOOST",
18466
+ "The amount added to the recruit rate with compatible species when holding a Grass Cornet.",
18467
+ "int16_t",
18468
+ )
18469
+
18470
+ ROCK_HORN_RECRUIT_BOOST = Symbol(
18471
+ None,
18472
+ None,
18473
+ None,
18474
+ "ROCK_HORN_RECRUIT_BOOST",
18475
+ "The amount added to the recruit rate with compatible species when holding a Rock Horn.",
18476
+ "int16_t",
18477
+ )
18478
+
18479
+ AQUA_MONICA_RECRUIT_BOOST = Symbol(
18480
+ None,
18481
+ None,
18482
+ None,
18483
+ "AQUA_MONICA_RECRUIT_BOOST",
18484
+ "The amount added to the recruit rate with compatible species when holding a Aqua Monica.",
18485
+ "int16_t",
18486
+ )
18487
+
18488
+ TERRA_CYMBAL_RECRUIT_BOOST = Symbol(
18489
+ None,
18490
+ None,
18491
+ None,
18492
+ "TERRA_CYMBAL_RECRUIT_BOOST",
18493
+ "The amount added to the recruit rate with compatible species when holding a Terra Cymbal.",
18494
+ "int16_t",
18495
+ )
18496
+
17931
18497
  ME_FIRST_MULTIPLIER = Symbol(
17932
18498
  None,
17933
18499
  None,
@@ -17973,6 +18539,60 @@ class NaItcmOverlay10Data:
17973
18539
  "int16_t[2]",
17974
18540
  )
17975
18541
 
18542
+ SLEEPLESSNESS_TURN_RANGE = Symbol(
18543
+ None,
18544
+ None,
18545
+ None,
18546
+ "SLEEPLESSNESS_TURN_RANGE",
18547
+ "The turn range for the Sleepless status, [0x7F, 0x7F] (infinite).\n\ntype: int16_t[2]",
18548
+ "int16_t[2]",
18549
+ )
18550
+
18551
+ REFLECT_TURN_RANGE = Symbol(
18552
+ None,
18553
+ None,
18554
+ None,
18555
+ "REFLECT_TURN_RANGE",
18556
+ "The turn range for the Reflect status, [10, 12).\n\ntype: int16_t[2]",
18557
+ "int16_t[2]",
18558
+ )
18559
+
18560
+ LIGHT_SCREEN_TURN_RANGE = Symbol(
18561
+ None,
18562
+ None,
18563
+ None,
18564
+ "LIGHT_SCREEN_TURN_RANGE",
18565
+ "The turn range for the Light Screen status, [10, 12).\n\ntype: int16_t[2]",
18566
+ "int16_t[2]",
18567
+ )
18568
+
18569
+ SAFEGUARD_TURN_RANGE = Symbol(
18570
+ None,
18571
+ None,
18572
+ None,
18573
+ "SAFEGUARD_TURN_RANGE",
18574
+ "The turn range for the Safeguard status, [15, 20).\n\ntype: int16_t[2]",
18575
+ "int16_t[2]",
18576
+ )
18577
+
18578
+ MIST_TURN_RANGE = Symbol(
18579
+ None,
18580
+ None,
18581
+ None,
18582
+ "MIST_TURN_RANGE",
18583
+ "The turn range for the Mist status, [10, 14).\n\ntype: int16_t[2]",
18584
+ "int16_t[2]",
18585
+ )
18586
+
18587
+ MAGIC_COAT_TURN_RANGE = Symbol(
18588
+ None,
18589
+ None,
18590
+ None,
18591
+ "MAGIC_COAT_TURN_RANGE",
18592
+ "The turn range for the Magic Coat status, [10, 14).\n\ntype: int16_t[2]",
18593
+ "int16_t[2]",
18594
+ )
18595
+
17976
18596
  BURN_DAMAGE_MULTIPLIER = Symbol(
17977
18597
  None,
17978
18598
  None,
@@ -18000,6 +18620,15 @@ class NaItcmOverlay10Data:
18000
18620
  "fx32_8",
18001
18621
  )
18002
18622
 
18623
+ SET_REFLECT_STATUS_TURN_RANGE = Symbol(
18624
+ None,
18625
+ None,
18626
+ None,
18627
+ "SET_REFLECT_STATUS_TURN_RANGE",
18628
+ "The turn range for the statuses (Counter, Mini Counter, Metal Burst) set by SetReflectStatus, [6, 12).\n\ntype: int16_t[2]",
18629
+ "int16_t[2]",
18630
+ )
18631
+
18003
18632
  MATCHUP_IMMUNE_MULTIPLIER = Symbol(
18004
18633
  None,
18005
18634
  None,
@@ -18009,6 +18638,15 @@ class NaItcmOverlay10Data:
18009
18638
  "fx32_8",
18010
18639
  )
18011
18640
 
18641
+ GASTRO_ACID_TURN_RANGE = Symbol(
18642
+ None,
18643
+ None,
18644
+ None,
18645
+ "GASTRO_ACID_TURN_RANGE",
18646
+ "The turn range for the Gastro Acid status, [4, 10).\n\ntype: int16_t[2]",
18647
+ "int16_t[2]",
18648
+ )
18649
+
18012
18650
  SPORT_CONDITION_TURN_RANGE = Symbol(
18013
18651
  None,
18014
18652
  None,
@@ -18036,6 +18674,15 @@ class NaItcmOverlay10Data:
18036
18674
  "int",
18037
18675
  )
18038
18676
 
18677
+ DECOY_TURN_RANGE = Symbol(
18678
+ None,
18679
+ None,
18680
+ None,
18681
+ "DECOY_TURN_RANGE",
18682
+ "The turn range for the Decoy status, [20, 50).\n\ntype: int16_t[2]",
18683
+ "int16_t[2]",
18684
+ )
18685
+
18039
18686
  TINTED_LENS_MULTIPLIER = Symbol(
18040
18687
  None,
18041
18688
  None,
@@ -18171,6 +18818,15 @@ class NaItcmOverlay10Data:
18171
18818
  "fx32_8",
18172
18819
  )
18173
18820
 
18821
+ MIRROR_MOVE_TURN_RANGE = Symbol(
18822
+ None,
18823
+ None,
18824
+ None,
18825
+ "MIRROR_MOVE_TURN_RANGE",
18826
+ "The turn range for the Mirror Move status, [1, 3).\n\ntype: int16_t[2]",
18827
+ "int16_t[2]",
18828
+ )
18829
+
18174
18830
  AIR_BLADE_DAMAGE_MULTIPLIER = Symbol(
18175
18831
  None,
18176
18832
  None,
@@ -18207,6 +18863,15 @@ class NaItcmOverlay10Data:
18207
18863
  "int16_t[2]",
18208
18864
  )
18209
18865
 
18866
+ CRINGE_TURN_RANGE = Symbol(
18867
+ None,
18868
+ None,
18869
+ None,
18870
+ "CRINGE_TURN_RANGE",
18871
+ "The turn range for the Cringe status, [1, 1].\n\ntype: int16_t[2]",
18872
+ "int16_t[2]",
18873
+ )
18874
+
18210
18875
  SPEED_BOOST_TURN_RANGE = Symbol(
18211
18876
  None,
18212
18877
  None,
@@ -18216,6 +18881,24 @@ class NaItcmOverlay10Data:
18216
18881
  "int16_t[2]",
18217
18882
  )
18218
18883
 
18884
+ SPEED_LOWER_TURN_RANGE = Symbol(
18885
+ None,
18886
+ None,
18887
+ None,
18888
+ "SPEED_LOWER_TURN_RANGE",
18889
+ "The turn range for lowered speed, [6, 8].\n\ntype: int16_t[2]",
18890
+ "int16_t[2]",
18891
+ )
18892
+
18893
+ PARALYSIS_TURN_RANGE = Symbol(
18894
+ None,
18895
+ None,
18896
+ None,
18897
+ "PARALYSIS_TURN_RANGE",
18898
+ "The turn range for the Paralysis status, [1, 2].\n\ntype: int16_t[2]",
18899
+ "int16_t[2]",
18900
+ )
18901
+
18219
18902
  SOLARBEAM_DAMAGE_MULTIPLIER = Symbol(
18220
18903
  None,
18221
18904
  None,
@@ -18630,6 +19313,10 @@ class NaItcmOverlay10Data:
18630
19313
  "struct data_processing_instruction",
18631
19314
  )
18632
19315
 
19316
+ REFLECT_LIGHT_SCREEN_TURN_RANGE = _Deprecated(
19317
+ "REFLECT_LIGHT_SCREEN_TURN_RANGE", REFLECT_TURN_RANGE
19318
+ )
19319
+
18633
19320
 
18634
19321
  class NaItcmOverlay10Section:
18635
19322
  name = "overlay10"
@@ -18938,6 +19625,33 @@ class NaItcmOverlay11Functions:
18938
19625
  None,
18939
19626
  )
18940
19627
 
19628
+ GroundBgInit = Symbol(
19629
+ None,
19630
+ None,
19631
+ None,
19632
+ "GroundBgInit",
19633
+ "Initializes the ground_bg struct by setting most fields to 0 and allocating memory for sub-structs.\n\nr0: ground_bg struct pointer\nr1: Unknown sub-struct of ground_bg (offset 0x52C)",
19634
+ None,
19635
+ )
19636
+
19637
+ GroundBgFreeAll = Symbol(
19638
+ None,
19639
+ None,
19640
+ None,
19641
+ "GroundBgFreeAll",
19642
+ "Frees memory and closes any open files in the ground_bg struct.\n\nr0: ground_bg struct pointer",
19643
+ None,
19644
+ )
19645
+
19646
+ GroundBgCloseOpenedFiles = Symbol(
19647
+ None,
19648
+ None,
19649
+ None,
19650
+ "GroundBgCloseOpenedFiles",
19651
+ "Closes any open files in the ground_bg struct.\n\nr0: ground_bg struct pointer",
19652
+ None,
19653
+ )
19654
+
18941
19655
  LoadMapType10 = Symbol(
18942
19656
  None,
18943
19657
  None,
@@ -18956,6 +19670,15 @@ class NaItcmOverlay11Functions:
18956
19670
  None,
18957
19671
  )
18958
19672
 
19673
+ BmaLayerNrlDecompressor = Symbol(
19674
+ None,
19675
+ None,
19676
+ None,
19677
+ "BmaLayerNrlDecompressor",
19678
+ "Decompresses the NRL-compressed data in a .bma file.\n\nr0: [output] Array to hold the decompressed data\nr1: Pointer to the start of the compressed .bma data to decompress\nr2: Unknown ground_bg sub-struct (offset 0x52C)\nr3: .bma file header\nreturn: Pointer at the end of the .bma data",
19679
+ None,
19680
+ )
19681
+
18959
19682
  GetSpecialLayoutBackground = Symbol(
18960
19683
  None,
18961
19684
  None,
@@ -19865,6 +20588,15 @@ class NaItcmOverlay11Functions:
19865
20588
  None,
19866
20589
  )
19867
20590
 
20591
+ SwapShopInventoryManager = Symbol(
20592
+ None,
20593
+ None,
20594
+ None,
20595
+ "SwapShopInventoryManager",
20596
+ "Called primarily handle the display and preparation of the swap shop inventory list, exclusive items list, and the item trade list. \nCreates a swap_shop_inventory_data struct if one does not already exist. \nIs the child function to SwapShopDialogueManager.\n\nr0: switch case index for the function: 0 = Swap List Inventory, 1 = Unknown, 2 = Species Exclusive Item List, 3 = Item Trade Away Selection List.\nr1: Depends on r0. If case 2: ID of the monster to retrieve an exclusive item list for. If case 3: Number of Exclusive Items the player owns.",
20597
+ None,
20598
+ )
20599
+
19868
20600
  HandleControlsTopScreenGround = Symbol(
19869
20601
  None,
19870
20602
  None,
@@ -20041,6 +20773,15 @@ class NaItcmOverlay11Data:
20041
20773
  "struct monster_id_16[22]",
20042
20774
  )
20043
20775
 
20776
+ POSITION_ZERO = Symbol(
20777
+ None,
20778
+ None,
20779
+ None,
20780
+ "POSITION_ZERO",
20781
+ "A pixel_position struct initialized at position (0, 0). Used to initialize the camera_pixel_position field in the ground_bg struct.\n\ntype: struct pixel_position",
20782
+ "struct pixel_position",
20783
+ )
20784
+
20044
20785
  LEVEL_TILEMAP_LIST = Symbol(
20045
20786
  None,
20046
20787
  None,
@@ -20128,6 +20869,15 @@ class NaItcmOverlay11Data:
20128
20869
  "struct main_ground_data",
20129
20870
  )
20130
20871
 
20872
+ SWAP_SHOP_INVENTORY_PTRS = Symbol(
20873
+ None,
20874
+ None,
20875
+ None,
20876
+ "SWAP_SHOP_INVENTORY_PTRS",
20877
+ "Host pointers to multiple structures used for performing internal Swap Shop checks.",
20878
+ "struct swap_shop_inventory_ptrs",
20879
+ )
20880
+
20131
20881
  WORLD_MAP_MODE = Symbol(
20132
20882
  None, None, None, "WORLD_MAP_MODE", "The current world map", "uint32_t"
20133
20883
  )
@@ -22010,7 +22760,68 @@ class NaItcmOverlay20Section:
22010
22760
 
22011
22761
  class NaItcmOverlay21Functions:
22012
22762
 
22013
- pass
22763
+ SwapShopDialogueManager = Symbol(
22764
+ None,
22765
+ None,
22766
+ None,
22767
+ "SwapShopDialogueManager",
22768
+ "Called primarily to fill dialogue boxes or display portraits, this function exists to print the next portrait, dialogue, or input for the Swap Shop. \nConsistently writes the provided input to shared_switch_case, and occasionally writes to next_switch_case. \nOften calls SwapShopInventoryManager, and is often called by SwapShopMainManager.\n\nr0: New current_switch_case value.",
22769
+ None,
22770
+ )
22771
+
22772
+ GetFirstExclusivePrerequisite = Symbol(
22773
+ None,
22774
+ None,
22775
+ None,
22776
+ "GetFirstExclusivePrerequisite",
22777
+ "Retrieves the item ID of the first item needed to trade for the specified item. There are hardcoded exceptions for the Eeveelution/Hitmontrio items,\nbut outside of that, the output will be as follows.\n output_id = input_id - ((input_id - 0x1FA) % 4)\n\nr0: item ID of the exclusive item to be checked.\nreturn: item ID of the first exclusive item required to trade for the input.",
22778
+ None,
22779
+ )
22780
+
22781
+ SwapShopEntryPoint = Symbol(
22782
+ None,
22783
+ None,
22784
+ None,
22785
+ "SwapShopEntryPoint",
22786
+ "Is the entrypoint of the overlay_load_entry, and seems to run once to initiate the Swap Shop. Is not called anywhere else.\nAllocates space for swap_shop_menu_data, and initializes many of its fields.\n\nreturn: Always returns 1.",
22787
+ None,
22788
+ )
22789
+
22790
+ SwapShopDestructor = Symbol(
22791
+ None,
22792
+ None,
22793
+ None,
22794
+ "SwapShopDestructor",
22795
+ "Is the destructor of the overlay_load_entry, and seems to run once on closing the Swap Shop. Is not called anywhere else.\nFrees up the allocated space for swap_shop_menu_data if it is not already empty.\n\nNo params.",
22796
+ None,
22797
+ )
22798
+
22799
+ SwapShopMainManager = Symbol(
22800
+ None,
22801
+ None,
22802
+ None,
22803
+ "SwapShopMainManager",
22804
+ "Called every frame the Croagunk Swap Shop is open, acting as a parent function for the various processes the Swap Shop is responsible for. \nPrimarily handles displaying dialogue boxes, retrieving menu selections, and contributing updates to the various switch case indices.\nOften calls SwapShopDialogueManager, either with an immediate or with the designated next_switch_case value. \n\nreturn: Typically returns 1, but seems to return 4 to exit the Swap Shop. Possibly related to the explorerscript output?",
22805
+ None,
22806
+ )
22807
+
22808
+ CloseTextboxAndSimpleMenu = Symbol(
22809
+ None,
22810
+ None,
22811
+ None,
22812
+ "CloseTextboxAndSimpleMenu",
22813
+ "Checks both the text_window_id and menu_window_id for -2. If either are not -2, close the textbox/simple menu, and assign the id to -2.\n\nNo params.",
22814
+ None,
22815
+ )
22816
+
22817
+ SwapShopPrintCurrentGold = Symbol(
22818
+ None,
22819
+ None,
22820
+ None,
22821
+ "SwapShopPrintCurrentGold",
22822
+ "A text box callback function containing the player's current gold using SWAP_SHOP_GOLD_STRING, as seen on the Swap Shop main menu.\n\nr0: window_id of the textbox",
22823
+ None,
22824
+ )
22014
22825
 
22015
22826
 
22016
22827
  class NaItcmOverlay21Data:
@@ -22020,7 +22831,7 @@ class NaItcmOverlay21Data:
22020
22831
  None,
22021
22832
  None,
22022
22833
  "SWAP_SHOP_WINDOW_PARAMS_1",
22023
- "Note: unverified, ported from Irdkwia's notes",
22834
+ "Used with SwapShopPrintCurrentGold for a simple textbox.",
22024
22835
  "struct window_params",
22025
22836
  )
22026
22837
 
@@ -22029,7 +22840,7 @@ class NaItcmOverlay21Data:
22029
22840
  None,
22030
22841
  None,
22031
22842
  "SWAP_SHOP_MENU_ITEMS_CONFIRM",
22032
- "",
22843
+ "Used with SWAP_SHOP_WINDOW_PARAMS_7.",
22033
22844
  "struct simple_menu_id_item[3]",
22034
22845
  )
22035
22846
 
@@ -22038,7 +22849,7 @@ class NaItcmOverlay21Data:
22038
22849
  None,
22039
22850
  None,
22040
22851
  "SWAP_SHOP_SUBMENU_ITEMS_1",
22041
- "",
22852
+ "Used with SWAP_SHOP_WINDOW_PARAMS_6.",
22042
22853
  "struct simple_menu_id_item[3]",
22043
22854
  )
22044
22855
 
@@ -22047,7 +22858,7 @@ class NaItcmOverlay21Data:
22047
22858
  None,
22048
22859
  None,
22049
22860
  "SWAP_SHOP_SUBMENU_ITEMS_2",
22050
- "",
22861
+ "Used with SWAP_SHOP_WINDOW_PARAMS_7.",
22051
22862
  "struct simple_menu_id_item[4]",
22052
22863
  )
22053
22864
 
@@ -22056,7 +22867,7 @@ class NaItcmOverlay21Data:
22056
22867
  None,
22057
22868
  None,
22058
22869
  "SWAP_SHOP_MAIN_MENU_ITEMS_1",
22059
- "",
22870
+ "Used with SWAP_SHOP_WINDOW_PARAMS_6.",
22060
22871
  "struct simple_menu_id_item[4]",
22061
22872
  )
22062
22873
 
@@ -22065,7 +22876,7 @@ class NaItcmOverlay21Data:
22065
22876
  None,
22066
22877
  None,
22067
22878
  "SWAP_SHOP_MAIN_MENU_ITEMS_2",
22068
- "",
22879
+ "Used alongside SWAP_SHOP_WINDOW_PARAMS_5.",
22069
22880
  "struct simple_menu_id_item[5]",
22070
22881
  )
22071
22882
 
@@ -22074,7 +22885,7 @@ class NaItcmOverlay21Data:
22074
22885
  None,
22075
22886
  None,
22076
22887
  "SWAP_SHOP_SUBMENU_ITEMS_3",
22077
- "",
22888
+ "Used alongside SWAP_SHOP_WINDOW_PARAMS_9.",
22078
22889
  "struct simple_menu_id_item[6]",
22079
22890
  )
22080
22891
 
@@ -22083,8 +22894,8 @@ class NaItcmOverlay21Data:
22083
22894
  None,
22084
22895
  None,
22085
22896
  "OVERLAY21_UNKNOWN_STRING_IDS",
22086
- "Note: unverified, ported from Irdkwia's notes",
22087
- "",
22897
+ "Seem to be completely unused by the Swap Shop, but the strings are 1:1 for the ones that are in use elsewhere in the shop.",
22898
+ "int16_t[24]",
22088
22899
  )
22089
22900
 
22090
22901
  SWAP_SHOP_WINDOW_PARAMS_2 = Symbol(
@@ -22092,7 +22903,7 @@ class NaItcmOverlay21Data:
22092
22903
  None,
22093
22904
  None,
22094
22905
  "SWAP_SHOP_WINDOW_PARAMS_2",
22095
- "Note: unverified, ported from Irdkwia's notes",
22906
+ "Seem to be completely unused by the Swap Shop.",
22096
22907
  "struct window_params",
22097
22908
  )
22098
22909
 
@@ -22101,7 +22912,7 @@ class NaItcmOverlay21Data:
22101
22912
  None,
22102
22913
  None,
22103
22914
  "SWAP_SHOP_WINDOW_PARAMS_3",
22104
- "Note: unverified, ported from Irdkwia's notes",
22915
+ "Seem to be completely unused by the Swap Shop.",
22105
22916
  "struct window_params",
22106
22917
  )
22107
22918
 
@@ -22110,7 +22921,7 @@ class NaItcmOverlay21Data:
22110
22921
  None,
22111
22922
  None,
22112
22923
  "SWAP_SHOP_WINDOW_PARAMS_4",
22113
- "Note: unverified, ported from Irdkwia's notes",
22924
+ "Seem to be completely unused by the Swap Shop.",
22114
22925
  "struct window_params",
22115
22926
  )
22116
22927
 
@@ -22119,7 +22930,7 @@ class NaItcmOverlay21Data:
22119
22930
  None,
22120
22931
  None,
22121
22932
  "SWAP_SHOP_WINDOW_PARAMS_5",
22122
- "Note: unverified, ported from Irdkwia's notes",
22933
+ "Used alongside SWAP_SHOP_MAIN_MENU_ITEMS_2.",
22123
22934
  "struct window_params",
22124
22935
  )
22125
22936
 
@@ -22128,7 +22939,7 @@ class NaItcmOverlay21Data:
22128
22939
  None,
22129
22940
  None,
22130
22941
  "SWAP_SHOP_WINDOW_PARAMS_6",
22131
- "Note: unverified, ported from Irdkwia's notes",
22942
+ "Used alongside both SWAP_SHOP_MAIN_MENU_ITEMS_1 and SWAP_SHOP_SUBMENU_ITEMS_1.",
22132
22943
  "struct window_params",
22133
22944
  )
22134
22945
 
@@ -22137,7 +22948,7 @@ class NaItcmOverlay21Data:
22137
22948
  None,
22138
22949
  None,
22139
22950
  "SWAP_SHOP_WINDOW_PARAMS_7",
22140
- "Note: unverified, ported from Irdkwia's notes",
22951
+ "Used alongside both SWAP_SHOP_MENU_ITEMS_CONFIRM and SWAP_SHOP_SUBMENU_ITEMS_2.",
22141
22952
  "struct window_params",
22142
22953
  )
22143
22954
 
@@ -22146,7 +22957,7 @@ class NaItcmOverlay21Data:
22146
22957
  None,
22147
22958
  None,
22148
22959
  "SWAP_SHOP_WINDOW_PARAMS_8",
22149
- "Note: unverified, ported from Irdkwia's notes",
22960
+ "Used alone, seemingly for the exclusive item description window.",
22150
22961
  "struct window_params",
22151
22962
  )
22152
22963
 
@@ -22155,11 +22966,242 @@ class NaItcmOverlay21Data:
22155
22966
  None,
22156
22967
  None,
22157
22968
  "SWAP_SHOP_WINDOW_PARAMS_9",
22158
- "Note: unverified, ported from Irdkwia's notes",
22969
+ "Used alongside SWAP_SHOP_SUBMENU_ITEMS_3.",
22159
22970
  "struct window_params",
22160
22971
  )
22161
22972
 
22162
- OVERLAY21_JP_STRING = Symbol(None, None, None, "OVERLAY21_JP_STRING", "合成:", "")
22973
+ SWAP_SHOP_TALK_WELCOME_DEBUG_STRING = Symbol(
22974
+ None,
22975
+ None,
22976
+ None,
22977
+ "SWAP_SHOP_TALK_WELCOME_DEBUG_STRING",
22978
+ "MENU_SYNTHESIS_MODE_START:\n",
22979
+ "char[28]",
22980
+ )
22981
+
22982
+ SWAP_SHOP_MAIN_MENU_OPTIONS_DEBUG_STRING = Symbol(
22983
+ None,
22984
+ None,
22985
+ None,
22986
+ "SWAP_SHOP_MAIN_MENU_OPTIONS_DEBUG_STRING",
22987
+ "MENU_SYNTHESIS_MODE_SELECTMENU:\n",
22988
+ "char[33]",
22989
+ )
22990
+
22991
+ SWAP_SHOP_TALK_CONTINUE_SWAP_DEBUG_STRING = Symbol(
22992
+ None,
22993
+ None,
22994
+ None,
22995
+ "SWAP_SHOP_TALK_CONTINUE_SWAP_DEBUG_STRING",
22996
+ "MENU_SYNTHESIS_MODE_RESTART:\n",
22997
+ "char[30]",
22998
+ )
22999
+
23000
+ SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING = Symbol(
23001
+ None,
23002
+ None,
23003
+ None,
23004
+ "SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING",
23005
+ "MENU_SYNTHESIS_MODE_EXPLANATION:\n",
23006
+ "char[34]",
23007
+ )
23008
+
23009
+ SWAP_SHOP_TALK_COME_AGAIN_DEBUG_STRING = Symbol(
23010
+ None,
23011
+ None,
23012
+ None,
23013
+ "SWAP_SHOP_TALK_COME_AGAIN_DEBUG_STRING",
23014
+ "MENU_SYNTHESIS_MODE_THANKS:\n",
23015
+ "char[29]",
23016
+ )
23017
+
23018
+ SWAP_SHOP_TALK_LACKING_SWAP_ITEMS_DEBUG_STRING = Symbol(
23019
+ None,
23020
+ None,
23021
+ None,
23022
+ "SWAP_SHOP_TALK_LACKING_SWAP_ITEMS_DEBUG_STRING",
23023
+ "MENU_SYNTHESIS_MODE_ITEM_NON:\n",
23024
+ "char[31]",
23025
+ )
23026
+
23027
+ SWAP_SHOP_TALK_SWAP_BROKE_DEBUG_STRING = Symbol(
23028
+ None,
23029
+ None,
23030
+ None,
23031
+ "SWAP_SHOP_TALK_SWAP_BROKE_DEBUG_STRING",
23032
+ "MENU_SYNTHESIS_MODE_GOLD_NON\n",
23033
+ "char[30]",
23034
+ )
23035
+
23036
+ SWAP_SHOP_TALK_SWAP_POOR_DEBUG_STRING = Symbol(
23037
+ None,
23038
+ None,
23039
+ None,
23040
+ "SWAP_SHOP_TALK_SWAP_POOR_DEBUG_STRING",
23041
+ "MENU_SYNTHESIS_GOLD",
23042
+ "char[19]",
23043
+ )
23044
+
23045
+ SWAP_SHOP_UNK_8_DEBUG_STRING = Symbol(
23046
+ None,
23047
+ None,
23048
+ None,
23049
+ "SWAP_SHOP_UNK_8_DEBUG_STRING",
23050
+ "MENU_SYNTHESIS_MODE_SELECT_FULL:\n",
23051
+ "char[34]",
23052
+ )
23053
+
23054
+ SWAP_SHOP_CLOSE_SHOP_DEBUG_STRING = Symbol(
23055
+ None,
23056
+ None,
23057
+ None,
23058
+ "SWAP_SHOP_CLOSE_SHOP_DEBUG_STRING",
23059
+ "MENU_SYNTHESIS_MODE_QUIT\n",
23060
+ "char[26]",
23061
+ )
23062
+
23063
+ SWAP_SHOP_TALK_WHAT_ITEMS_DEBUG_STRING = Symbol(
23064
+ None,
23065
+ None,
23066
+ None,
23067
+ "SWAP_SHOP_TALK_WHAT_ITEMS_DEBUG_STRING",
23068
+ "MENU_SYNTHESIS_MODE_SELECT_START:\n",
23069
+ "char[35]",
23070
+ )
23071
+
23072
+ SWAP_SHOP_TALK_VALUABLE_SWAP_DEBUG_STRING = Symbol(
23073
+ None,
23074
+ None,
23075
+ None,
23076
+ "SWAP_SHOP_TALK_VALUABLE_SWAP_DEBUG_STRING",
23077
+ "MENU_SYNTHESIS_MODE__RESTART:\n",
23078
+ "char[31]",
23079
+ )
23080
+
23081
+ SWAP_SHOP_INIT_SWAP_ITEMS_MENU_DEBUG_STRING = Symbol(
23082
+ None,
23083
+ None,
23084
+ None,
23085
+ "SWAP_SHOP_INIT_SWAP_ITEMS_MENU_DEBUG_STRING",
23086
+ "MENU_SYNTHESIS_MODE_SELECT_INIT:\n",
23087
+ "char[34]",
23088
+ )
23089
+
23090
+ SWAP_SHOP_SWAP_ITEMS_MENU_DEBUG_STRING = Symbol(
23091
+ None,
23092
+ None,
23093
+ None,
23094
+ "SWAP_SHOP_SWAP_ITEMS_MENU_DEBUG_STRING",
23095
+ "MENU_SYNTHESIS_MODE_SELECT_SELECT:\n",
23096
+ "char[36]",
23097
+ )
23098
+
23099
+ SWAP_SHOP_RETURN_SWAP_ITEMS_MENU_DEBUG_STRING = Symbol(
23100
+ None,
23101
+ None,
23102
+ None,
23103
+ "SWAP_SHOP_RETURN_SWAP_ITEMS_MENU_DEBUG_STRING",
23104
+ "MENU_SYNTHESIS_MODE_SELECT_RESELECT:\n",
23105
+ "char[38]",
23106
+ )
23107
+
23108
+ SWAP_SHOP_SELECT_SWAP_ITEM_OPTIONS_DEBUG_STRING = Symbol(
23109
+ None,
23110
+ None,
23111
+ None,
23112
+ "SWAP_SHOP_SELECT_SWAP_ITEM_OPTIONS_DEBUG_STRING",
23113
+ "\tMENU_SYNTHESIS_MODE_SELECT_SUB_MENU:\n",
23114
+ "char[40]",
23115
+ )
23116
+
23117
+ SWAP_SHOP_SWAP_ITEM_GET_INFO_DEBUG_STRING = Symbol(
23118
+ None,
23119
+ None,
23120
+ None,
23121
+ "SWAP_SHOP_SWAP_ITEM_GET_INFO_DEBUG_STRING",
23122
+ "MENU_SYNTHESIS_MODE_SELECT_EXPLA\n",
23123
+ "char[34]",
23124
+ )
23125
+
23126
+ SWAP_SHOP_ITEM_ZERO_STRING = Symbol(
23127
+ None, None, None, "SWAP_SHOP_ITEM_ZERO_STRING", "[item:0]", "char[8]"
23128
+ )
23129
+
23130
+ SWAP_SHOP_TALK_CONFIRM_SWAP_DEBUG_STRING = Symbol(
23131
+ None,
23132
+ None,
23133
+ None,
23134
+ "SWAP_SHOP_TALK_CONFIRM_SWAP_DEBUG_STRING",
23135
+ "MENU_SYNTHESIS_MODE_SELECT_CONFIRM_1:\n",
23136
+ "char[39]",
23137
+ )
23138
+
23139
+ SWAP_SHOP_CONFIRM_CHOICE_DEBUG_STRING = Symbol(
23140
+ None,
23141
+ None,
23142
+ None,
23143
+ "SWAP_SHOP_CONFIRM_CHOICE_DEBUG_STRING",
23144
+ "_SELL_CONFIRM NEW_1\n",
23145
+ "char[21]",
23146
+ )
23147
+
23148
+ SWAP_SHOP_INIT_SCRIPT_ACTION_1_DEBUG_STRING = Symbol(
23149
+ None,
23150
+ None,
23151
+ None,
23152
+ "SWAP_SHOP_INIT_SCRIPT_ACTION_1_DEBUG_STRING",
23153
+ "MENU_SYNTHESIS_MODE_SELECT_THANKS_ACTION:\n",
23154
+ "char[43]",
23155
+ )
23156
+
23157
+ SWAP_SHOP_INIT_SCRIPT_ACTION_2_DEBUG_STRING = Symbol(
23158
+ None,
23159
+ None,
23160
+ None,
23161
+ "SWAP_SHOP_INIT_SCRIPT_ACTION_2_DEBUG_STRING",
23162
+ "MENU_SYNTHESIS_MODE_SELECT_THANKS_ACTION2:\n",
23163
+ "char[44]",
23164
+ )
23165
+
23166
+ SWAP_SHOP_INIT_SCRIPT_ACTION_3_DEBUG_STRING = Symbol(
23167
+ None,
23168
+ None,
23169
+ None,
23170
+ "SWAP_SHOP_INIT_SCRIPT_ACTION_3_DEBUG_STRING",
23171
+ "MENU_SYNTHESIS_MODE_SELECT_THANKS_ACTION3:\n",
23172
+ "char[44]",
23173
+ )
23174
+
23175
+ SWAP_SHOP_TEXT_PUT_IN_CAULDRON_DEBUG_STRING = Symbol(
23176
+ None,
23177
+ None,
23178
+ None,
23179
+ "SWAP_SHOP_TEXT_PUT_IN_CAULDRON_DEBUG_STRING",
23180
+ "MENU_SYNTHESIS_MODE_SELECT_THANKS_1:\n",
23181
+ "char[38]",
23182
+ )
23183
+
23184
+ SWAP_SHOP_DO_SWAP_THEN_TALK_DEBUG_STRING = Symbol(
23185
+ None,
23186
+ None,
23187
+ None,
23188
+ "SWAP_SHOP_DO_SWAP_THEN_TALK_DEBUG_STRING",
23189
+ "MENU_SYNTHESIS_MODE_SELECT_THANKS:\n",
23190
+ "char[36]",
23191
+ )
23192
+
23193
+ OVERLAY21_JP_STRING = Symbol(
23194
+ None,
23195
+ None,
23196
+ None,
23197
+ "OVERLAY21_JP_STRING",
23198
+ "合成:(synthesis in Japanese)",
23199
+ "wchar_t[3]",
23200
+ )
23201
+
23202
+ SWAP_SHOP_GOLD_STRING = Symbol(
23203
+ None, None, None, "SWAP_SHOP_GOLD_STRING", "[CS:V][gold:0][CR]", "char[18]"
23204
+ )
22163
23205
 
22164
23206
  OVERLAY21_RESERVED_SPACE = Symbol(
22165
23207
  None,
@@ -22167,16 +23209,16 @@ class NaItcmOverlay21Data:
22167
23209
  None,
22168
23210
  "OVERLAY21_RESERVED_SPACE",
22169
23211
  "Note: unverified, ported from Irdkwia's notes",
22170
- "",
23212
+ "undefined[8]",
22171
23213
  )
22172
23214
 
22173
- OVERLAY21_UNKNOWN_POINTER__NA_238CF40 = Symbol(
23215
+ SWAP_SHOP_MENU_DATA_PTR = Symbol(
22174
23216
  None,
22175
23217
  None,
22176
23218
  None,
22177
- "OVERLAY21_UNKNOWN_POINTER__NA_238CF40",
22178
- "Note: unverified, ported from Irdkwia's notes",
22179
- "",
23219
+ "SWAP_SHOP_MENU_DATA_PTR",
23220
+ "Pointer to the swap_shop_menu_data that governs the operations of most overlay_21 functions.",
23221
+ "struct swap_shop_menu_data*",
22180
23222
  )
22181
23223
 
22182
23224
  OVERLAY21_UNKNOWN_POINTER__NA_238CF44 = Symbol(
@@ -22185,7 +23227,7 @@ class NaItcmOverlay21Data:
22185
23227
  None,
22186
23228
  "OVERLAY21_UNKNOWN_POINTER__NA_238CF44",
22187
23229
  "Note: unverified, ported from Irdkwia's notes",
22188
- "",
23230
+ "undefined*",
22189
23231
  )
22190
23232
 
22191
23233
 
@@ -23202,6 +24244,15 @@ class NaItcmOverlay29Functions:
23202
24244
  None,
23203
24245
  )
23204
24246
 
24247
+ FloorSecondaryTerrainIsChasm = Symbol(
24248
+ None,
24249
+ None,
24250
+ None,
24251
+ "FloorSecondaryTerrainIsChasm",
24252
+ "Returns true if the current floor has a chasm secondary terrain, checking first if floor_generation_status::has_chasms_as_secondary_terrain is true\nand if not, whether the tileset's entry in SECONDARY_TERRAIN_TYPES is SECONDARY_TERRAIN_CHASM.\n\nr0: tileset id\nreturn: bool",
24253
+ None,
24254
+ )
24255
+
23205
24256
  GetFloorType = Symbol(
23206
24257
  None,
23207
24258
  None,
@@ -23283,6 +24334,24 @@ class NaItcmOverlay29Functions:
23283
24334
  None,
23284
24335
  )
23285
24336
 
24337
+ SetDungeonEscapeFields = Symbol(
24338
+ None,
24339
+ None,
24340
+ None,
24341
+ "SetDungeonEscapeFields",
24342
+ "Sets the successful_exit_tracker and end_floor_no_death_check_flag fields of the dungeon struct.\n\nr0: new successful_exit_tracker\nr1: new end_floor_no_death_check_flag",
24343
+ None,
24344
+ )
24345
+
24346
+ GetSuccessfulExitTracker = Symbol(
24347
+ None,
24348
+ None,
24349
+ None,
24350
+ "GetSuccessfulExitTracker",
24351
+ "Returns the successful_exit_tracker field of the dungeon struct.\n\nreturn: successful_exit_tracker",
24352
+ None,
24353
+ )
24354
+
23286
24355
  CheckTouchscreenArea = Symbol(
23287
24356
  None,
23288
24357
  None,
@@ -23450,7 +24519,7 @@ class NaItcmOverlay29Functions:
23450
24519
  None,
23451
24520
  None,
23452
24521
  "SubstitutePlaceholderStringTags",
23453
- "Replaces instances of a given placeholder tag by the string representation of the given entity.\n\nFrom the eos-move-effects docs (which are somewhat nebulous): 'Replaces the string at StringID [r0] by the string representation of the target [r1] (aka its name). Any message with the string manipulator '[string:StringID]' will use that string'.\n\nThe game uses various placeholder tags in its strings, which you can read about here: https://textbox.skytemple.org/.\n\nr0: string ID (unclear what this means)\nr1: entity pointer\nr2: ?",
24522
+ "Replaces instances of a given placeholder tag by the string representation of the given entity.\n\nFrom the eos-move-effects docs (which are somewhat nebulous): 'Replaces the string at StringID [r0] by the string representation of the target [r1] (aka its name). Any message with the string manipulator '[string:StringID]' will use that string'.\n\nThe game uses various placeholder tags in its strings, which you can read about here: https://textbox.skytemple.org/.\n\nr0: string ID (unclear what this means)\nr1: entity pointer\nr2: unused",
23454
24523
  None,
23455
24524
  )
23456
24525
 
@@ -23589,6 +24658,15 @@ class NaItcmOverlay29Functions:
23589
24658
  None,
23590
24659
  )
23591
24660
 
24661
+ PlayParalysisEffect = Symbol(
24662
+ None,
24663
+ None,
24664
+ None,
24665
+ "PlayParalysisEffect",
24666
+ "Displays the graphical effect on a monster that just became paralyzed.\n\nr0: entity pointer",
24667
+ None,
24668
+ )
24669
+
23592
24670
  PlayEffectAnimationEntityStandard = Symbol(
23593
24671
  None,
23594
24672
  None,
@@ -23598,6 +24676,24 @@ class NaItcmOverlay29Functions:
23598
24676
  None,
23599
24677
  )
23600
24678
 
24679
+ PlaySpeedUpEffect = Symbol(
24680
+ None,
24681
+ None,
24682
+ None,
24683
+ "PlaySpeedUpEffect",
24684
+ "Displays the graphical effect on a monster that just raised movement speed.\n\nr0: entity pointer",
24685
+ None,
24686
+ )
24687
+
24688
+ PlaySpeedDownEffect = Symbol(
24689
+ None,
24690
+ None,
24691
+ None,
24692
+ "PlaySpeedDownEffect",
24693
+ "Displays the graphical effect on a monster that just lowered movement speed.\n\nr0: entity pointer",
24694
+ None,
24695
+ )
24696
+
23601
24697
  ShowPpRestoreEffect = Symbol(
23602
24698
  None,
23603
24699
  None,
@@ -23607,6 +24703,105 @@ class NaItcmOverlay29Functions:
23607
24703
  None,
23608
24704
  )
23609
24705
 
24706
+ PlayOffensiveStatDownEffect = Symbol(
24707
+ None,
24708
+ None,
24709
+ None,
24710
+ "PlayOffensiveStatDownEffect",
24711
+ "Displays the graphical effect on a monster that just lowered an offensive stat.\n\nr0: entity pointer\nr1: stat index",
24712
+ None,
24713
+ )
24714
+
24715
+ PlayDefensiveStatDownEffect = Symbol(
24716
+ None,
24717
+ None,
24718
+ None,
24719
+ "PlayDefensiveStatDownEffect",
24720
+ "Displays the graphical effect on a monster that just lowered a defensive stat.\n\nr0: entity pointer\nr1: stat index",
24721
+ None,
24722
+ )
24723
+
24724
+ PlayOffensiveStatUpEffect = Symbol(
24725
+ None,
24726
+ None,
24727
+ None,
24728
+ "PlayOffensiveStatUpEffect",
24729
+ "Displays the graphical effect on a monster that just raised an offensive stat.\n\nr0: entity pointer\nr1: stat index",
24730
+ None,
24731
+ )
24732
+
24733
+ PlayDefensiveStatUpEffect = Symbol(
24734
+ None,
24735
+ None,
24736
+ None,
24737
+ "PlayDefensiveStatUpEffect",
24738
+ "Displays the graphical effect on a monster that just raised a defensive stat.\n\nr0: entity pointer\nr1: stat index",
24739
+ None,
24740
+ )
24741
+
24742
+ PlayOffensiveStatMultiplierUpEffect = Symbol(
24743
+ None,
24744
+ None,
24745
+ None,
24746
+ "PlayOffensiveStatMultiplierUpEffect",
24747
+ "Displays the graphical effect on a monster that just raised an offensive stat multiplier.\n\nr0: entity pointer\nr1: stat index",
24748
+ None,
24749
+ )
24750
+
24751
+ PlayOffensiveStatMultiplierDownEffect = Symbol(
24752
+ None,
24753
+ None,
24754
+ None,
24755
+ "PlayOffensiveStatMultiplierDownEffect",
24756
+ "Displays the graphical effect on a monster that just lowered an offensive stat multiplier.\n\nr0: entity pointer\nr1: stat index",
24757
+ None,
24758
+ )
24759
+
24760
+ PlayDefensiveStatMultiplierUpEffect = Symbol(
24761
+ None,
24762
+ None,
24763
+ None,
24764
+ "PlayDefensiveStatMultiplierUpEffect",
24765
+ "Displays the graphical effect on a monster that just raised a defensive stat multiplier.\n\nr0: entity pointer\nr1: stat index",
24766
+ None,
24767
+ )
24768
+
24769
+ PlayDefensiveStatMultiplierDownEffect = Symbol(
24770
+ None,
24771
+ None,
24772
+ None,
24773
+ "PlayDefensiveStatMultiplierDownEffect",
24774
+ "Displays the graphical effect on a monster that just lowered a defensive stat multiplier.\n\nr0: entity pointer\nr1: stat index",
24775
+ None,
24776
+ )
24777
+
24778
+ PlayHitChanceUpEffect = Symbol(
24779
+ None,
24780
+ None,
24781
+ None,
24782
+ "PlayHitChanceUpEffect",
24783
+ "Displays the graphical effect on a monster that just raised a hit chance stat.\n\nr0: entity pointer\nr1: stat index",
24784
+ None,
24785
+ )
24786
+
24787
+ PlayHitChanceDownEffect = Symbol(
24788
+ None,
24789
+ None,
24790
+ None,
24791
+ "PlayHitChanceDownEffect",
24792
+ "Displays the graphical effect on a monster that just lowered a hit chance stat.\n\nr0: entity pointer\nr1: stat index",
24793
+ None,
24794
+ )
24795
+
24796
+ PlaySeByIdIfShouldDisplayEntity = Symbol(
24797
+ None,
24798
+ None,
24799
+ None,
24800
+ "PlaySeByIdIfShouldDisplayEntity",
24801
+ "Plays the specified sound effect if ShouldDisplayEntityAdvanced returns true for the entity (or if the entity pointer is null).\n\nr0: entity pointer\nr1: Sound effect ID",
24802
+ None,
24803
+ )
24804
+
23610
24805
  ShouldDisplayEntityAdvanced = Symbol(
23611
24806
  None,
23612
24807
  None,
@@ -23652,6 +24847,15 @@ class NaItcmOverlay29Functions:
23652
24847
  None,
23653
24848
  )
23654
24849
 
24850
+ GetRandomTrapId = Symbol(
24851
+ None,
24852
+ None,
24853
+ None,
24854
+ "GetRandomTrapId",
24855
+ "Gets the id of the trap to be used as the effect of a Random Trap.\n\nreturn: trap id",
24856
+ None,
24857
+ )
24858
+
23655
24859
  GetItemIdToSpawn = Symbol(
23656
24860
  None,
23657
24861
  None,
@@ -23814,6 +25018,15 @@ class NaItcmOverlay29Functions:
23814
25018
  None,
23815
25019
  )
23816
25020
 
25021
+ IsPositionWithinTwoTiles = Symbol(
25022
+ None,
25023
+ None,
25024
+ None,
25025
+ "IsPositionWithinTwoTiles",
25026
+ "Checks if a given target position is within two tiles of a given origin position.\n\nr0: Origin position\nr1: Target position\nreturn: True if the target position within two tiles of the origin position.",
25027
+ None,
25028
+ )
25029
+
23817
25030
  GetLeader = Symbol(
23818
25031
  None,
23819
25032
  None,
@@ -24021,6 +25234,15 @@ class NaItcmOverlay29Functions:
24021
25234
  None,
24022
25235
  )
24023
25236
 
25237
+ PlaySeByIdIfNotSilence = Symbol(
25238
+ None,
25239
+ None,
25240
+ None,
25241
+ "PlaySeByIdIfNotSilence",
25242
+ "Plays the specified sound effect if it is not the designated silence value (0x3F00).\n\nr0: Sound effect ID",
25243
+ None,
25244
+ )
25245
+
24024
25246
  MusicTableIdxToMusicId = Symbol(
24025
25247
  None,
24026
25248
  None,
@@ -24048,6 +25270,15 @@ class NaItcmOverlay29Functions:
24048
25270
  None,
24049
25271
  )
24050
25272
 
25273
+ ResetLeaderActionFields = Symbol(
25274
+ None,
25275
+ None,
25276
+ None,
25277
+ "ResetLeaderActionFields",
25278
+ "Resets the leader monster's action_id fields to 0.\n\nr0: whether to also set the action_use_idx fields of the action_parameters structs and the arc_item_target_pos fields to 0",
25279
+ None,
25280
+ )
25281
+
24051
25282
  SetLeaderActionFields = Symbol(
24052
25283
  None,
24053
25284
  None,
@@ -24264,6 +25495,15 @@ class NaItcmOverlay29Functions:
24264
25495
  None,
24265
25496
  )
24266
25497
 
25498
+ SpawnTraps = Symbol(
25499
+ None,
25500
+ None,
25501
+ None,
25502
+ "SpawnTraps",
25503
+ "Spawns a new dungeon floor's traps.\n\nNo params.",
25504
+ None,
25505
+ )
25506
+
24267
25507
  SpawnEnemyTrapAtPos = Symbol(
24268
25508
  None,
24269
25509
  None,
@@ -24282,6 +25522,15 @@ class NaItcmOverlay29Functions:
24282
25522
  None,
24283
25523
  )
24284
25524
 
25525
+ CanLayTrap = Symbol(
25526
+ None,
25527
+ None,
25528
+ None,
25529
+ "CanLayTrap",
25530
+ "Checks if a trap can be placed on the tile.\n\nr0: position\nreturn: true if a trap can be spawned at the given position.",
25531
+ None,
25532
+ )
25533
+
24285
25534
  TrySpawnTrap = Symbol(
24286
25535
  None,
24287
25536
  None,
@@ -24309,6 +25558,33 @@ class NaItcmOverlay29Functions:
24309
25558
  None,
24310
25559
  )
24311
25560
 
25561
+ TryRevealAttackedTrap = Symbol(
25562
+ None,
25563
+ None,
25564
+ None,
25565
+ "TryRevealAttackedTrap",
25566
+ "Reveals the trap given by the position if the dungeon struct's regular_attack_reveal_traps field is true.\n\nIs also activated on a tile if a fainted monster drops an item on it.\n\nr0: position struct pointer\nr1: boolean for whether to update trap visibility afterwards (always 1 in practice)\nreturn: true if there is a trap on the position",
25567
+ None,
25568
+ )
25569
+
25570
+ SubstitutePlaceholderTrapTags2 = Symbol(
25571
+ None,
25572
+ None,
25573
+ None,
25574
+ "SubstitutePlaceholderTrapTags2",
25575
+ "Used in TryTriggerTrap. Has the same functionality as SubstitutePlaceholderTrapTags.\n\nr1: tag id\nr2: trap id",
25576
+ None,
25577
+ )
25578
+
25579
+ SubstitutePlaceholderTrapTags = Symbol(
25580
+ None,
25581
+ None,
25582
+ None,
25583
+ "SubstitutePlaceholderTrapTags",
25584
+ "Used in SubstitutePlaceholderStringTags. Substitutes a [trap:r1] tag in a message log message for the name of a trap.\n\nr0: preprocessor_args pointer (in practice, always the global struct used for the message log)\nr1: tag id\nr2: trap id",
25585
+ None,
25586
+ )
25587
+
24312
25588
  TryTriggerTrap = Symbol(
24313
25589
  None,
24314
25590
  None,
@@ -24435,6 +25711,15 @@ class NaItcmOverlay29Functions:
24435
25711
  None,
24436
25712
  )
24437
25713
 
25714
+ SpawnMonstersAroundPos = Symbol(
25715
+ None,
25716
+ None,
25717
+ None,
25718
+ "SpawnMonstersAroundPos",
25719
+ "Spawns a given number of monsters around a position. Used by the Summon Trap and Grudge Trap.\n\nr0: entity pointer (unused)\nr1: position\nr2: number of enemies to spawn\nreturn: number of enemies that have actually been spawned",
25720
+ None,
25721
+ )
25722
+
24438
25723
  RevealTrapsNearby = Symbol(
24439
25724
  None,
24440
25725
  None,
@@ -24471,6 +25756,15 @@ class NaItcmOverlay29Functions:
24471
25756
  None,
24472
25757
  )
24473
25758
 
25759
+ IsBehaviorLoneOutlaw = Symbol(
25760
+ None,
25761
+ None,
25762
+ None,
25763
+ "IsBehaviorLoneOutlaw",
25764
+ "Checks if a behavior ID corresponds to one of the outlaw types that are not from an outlaw team. I.e., BEHAVIOR_OUTLAW, BEHAVIOR_HIDDEN_OUTLAW, or BEHAVIOR_FLEEING_OUTLAW.\n\nr0: monster behavior ID\nreturn: bool",
25765
+ None,
25766
+ )
25767
+
24474
25768
  IsSecretBazaarNpcBehavior = Symbol(
24475
25769
  None,
24476
25770
  None,
@@ -24489,6 +25783,15 @@ class NaItcmOverlay29Functions:
24489
25783
  None,
24490
25784
  )
24491
25785
 
25786
+ GetLeaderActionId = Symbol(
25787
+ None,
25788
+ None,
25789
+ None,
25790
+ "GetLeaderActionId",
25791
+ "Gets the current action id of the leader monster's action data.\n\nreturn: action_id",
25792
+ None,
25793
+ )
25794
+
24492
25795
  GetEntityTouchscreenArea = Symbol(
24493
25796
  None,
24494
25797
  None,
@@ -24543,6 +25846,15 @@ class NaItcmOverlay29Functions:
24543
25846
  None,
24544
25847
  )
24545
25848
 
25849
+ HandleHeldItemSwaps = Symbol(
25850
+ None,
25851
+ None,
25852
+ None,
25853
+ "HandleHeldItemSwaps",
25854
+ "Handles giving/taking held items to/from a party member (and likely other things).\n\nr0: entity pointer",
25855
+ None,
25856
+ )
25857
+
24546
25858
  UseSingleUseItemWrapper = Symbol(
24547
25859
  None,
24548
25860
  None,
@@ -24741,12 +26053,12 @@ class NaItcmOverlay29Functions:
24741
26053
  None,
24742
26054
  )
24743
26055
 
24744
- CreateMonsterSummaryFromMonster = Symbol(
26056
+ CreateMonsterSummaryFromEntity = Symbol(
24745
26057
  None,
24746
26058
  None,
24747
26059
  None,
24748
- "CreateMonsterSummaryFromMonster",
24749
- "Creates a snapshot of the condition of a monster struct in a monster_summary struct.\n\nr0: [output] monster_summary\nr1: monster",
26060
+ "CreateMonsterSummaryFromEntity",
26061
+ "Creates a snapshot of the condition of a monster struct in a monster_summary struct.\n\nr0: [output] monster_summary\nr1: monster_entity",
24750
26062
  None,
24751
26063
  )
24752
26064
 
@@ -25029,6 +26341,33 @@ class NaItcmOverlay29Functions:
25029
26341
  None,
25030
26342
  )
25031
26343
 
26344
+ IsHero = Symbol(
26345
+ None,
26346
+ None,
26347
+ None,
26348
+ "IsHero",
26349
+ "Checks if an entity is the hero, returning true if the 'Joined At' field of its monster struct is DUNGEON_JOINED_AT_QUESTION_MARKS (reserved for the hero).\n\nr0: entity pointer\nreturn: bool",
26350
+ None,
26351
+ )
26352
+
26353
+ IsSpecialStoryAllyOrClient = Symbol(
26354
+ None,
26355
+ None,
26356
+ None,
26357
+ "IsSpecialStoryAllyOrClient",
26358
+ "Same as IsSpecialStoryAlly, except taking an entity pointer and also checking if it is a client.\n\nr0: entity pointer\nreturn: bool",
26359
+ None,
26360
+ )
26361
+
26362
+ ResetTriggerFlags = Symbol(
26363
+ None,
26364
+ None,
26365
+ None,
26366
+ "ResetTriggerFlags",
26367
+ "Resets a monster's contact_ability_trigger_bitflags and exclusive_item_trigger_bitflags fields to 0.\n\nr0: entity pointer",
26368
+ None,
26369
+ )
26370
+
25032
26371
  IsSpecialStoryAlly = Symbol(
25033
26372
  None,
25034
26373
  None,
@@ -25047,6 +26386,33 @@ class NaItcmOverlay29Functions:
25047
26386
  None,
25048
26387
  )
25049
26388
 
26389
+ IsMonsterLoneOutlaw = Symbol(
26390
+ None,
26391
+ None,
26392
+ None,
26393
+ "IsMonsterLoneOutlaw",
26394
+ "Checks if a monster's behavior corresponds to one of the outlaw types that are not from an outlaw team. I.e., BEHAVIOR_OUTLAW, BEHAVIOR_HIDDEN_OUTLAW, or BEHAVIOR_FLEEING_OUTLAW.\n\nr0: monster pointer\nreturn: bool",
26395
+ None,
26396
+ )
26397
+
26398
+ IsSecretBazaarNpc = Symbol(
26399
+ None,
26400
+ None,
26401
+ None,
26402
+ "IsSecretBazaarNpc",
26403
+ "Checks if an entity is a Secret Bazaar NPCs.\n\nr0: entity pointer\nreturn: bool",
26404
+ None,
26405
+ )
26406
+
26407
+ IsTeamMemberOnFirstTurnInFixedRoom = Symbol(
26408
+ None,
26409
+ None,
26410
+ None,
26411
+ "IsTeamMemberOnFirstTurnInFixedRoom",
26412
+ "Returns true if a monster is a team member, it is the first turn of the current floor, and the floor is a fixed room.\n\nr0: monster pointer\nreturn: bool",
26413
+ None,
26414
+ )
26415
+
25050
26416
  InitOtherMonsterData = Symbol(
25051
26417
  None,
25052
26418
  None,
@@ -25245,6 +26611,15 @@ class NaItcmOverlay29Functions:
25245
26611
  None,
25246
26612
  )
25247
26613
 
26614
+ CanMoveThroughWalls = Symbol(
26615
+ None,
26616
+ None,
26617
+ None,
26618
+ "CanMoveThroughWalls",
26619
+ "Checks if a given monster can move through walls, including both the innate ability of Ghost types and outside modifiers like Mobile Scarf/Orb.\n\nr0: Entity pointer\nreturn: True if the monster can move through walls.",
26620
+ None,
26621
+ )
26622
+
25248
26623
  CannotStandOnTile = Symbol(
25249
26624
  None,
25250
26625
  None,
@@ -25286,7 +26661,7 @@ class NaItcmOverlay29Functions:
25286
26661
  None,
25287
26662
  None,
25288
26663
  "GetMonsterDisplayNameType",
25289
- "Determines how the name of a monster should be displayed.\n\nr0: Entity pointer\nreturn: Display name type",
26664
+ "Determines how the name of a monster should be displayed.\n\nr0: Monster pointer\nreturn: Display name type",
25290
26665
  None,
25291
26666
  )
25292
26667
 
@@ -25308,6 +26683,15 @@ class NaItcmOverlay29Functions:
25308
26683
  None,
25309
26684
  )
25310
26685
 
26686
+ SetPreprocessorArgsStringToName = Symbol(
26687
+ None,
26688
+ None,
26689
+ None,
26690
+ "SetPreprocessorArgsStringToName",
26691
+ "Sets a strings element in a preprocessor_args struct to the name of a monster.\n\nr0: preprocessor_args pointer (if this is null, will use the global message log preprocessor_args struct)\nr1: position in strings array\nr2: monster pointer\nr3: unused\nstack[0]: if 0, will call GetMonsterName; if 1, will call GetMonsterNameWithGender; the 2 case is unknown and seemingly unused.",
26692
+ None,
26693
+ )
26694
+
25311
26695
  IsMonsterDrowsy = Symbol(
25312
26696
  None,
25313
26697
  None,
@@ -25416,6 +26800,15 @@ class NaItcmOverlay29Functions:
25416
26800
  None,
25417
26801
  )
25418
26802
 
26803
+ MonsterHasQuarterHp = Symbol(
26804
+ None,
26805
+ None,
26806
+ None,
26807
+ "MonsterHasQuarterHp",
26808
+ "Checks if a monster has a quarter or less HP remaining.\n\nr0: entity pointer\nreturn: bool",
26809
+ None,
26810
+ )
26811
+
25419
26812
  CheckVariousStatuses2 = Symbol(
25420
26813
  None,
25421
26814
  None,
@@ -25479,6 +26872,15 @@ class NaItcmOverlay29Functions:
25479
26872
  None,
25480
26873
  )
25481
26874
 
26875
+ CanMonsterMoveOrSwapWithAllyInDirection = Symbol(
26876
+ None,
26877
+ None,
26878
+ None,
26879
+ "CanMonsterMoveOrSwapWithAllyInDirection",
26880
+ "Checks if the given monster can move in the specified direction. Includes if an allied or neutral monster is standing on an adjacent tile, as the monsters can swap places.\n\nReturns false if an enemy monster is standing on the target tile\n\nr0: Monster entity pointer\nr1: Direction to check\nreturn: bool",
26881
+ None,
26882
+ )
26883
+
25482
26884
  CanAttackInDirection = Symbol(
25483
26885
  None,
25484
26886
  None,
@@ -25497,6 +26899,24 @@ class NaItcmOverlay29Functions:
25497
26899
  None,
25498
26900
  )
25499
26901
 
26902
+ IsAtJunction = Symbol(
26903
+ None,
26904
+ None,
26905
+ None,
26906
+ "IsAtJunction",
26907
+ "Checks if the tile the given monster is on is considered a junction for the purposes of AI movement. This is affected by what types of terrain the monster can cross.\n\nr0: Entity pointer\nreturn: True if tile the monster is on is a junction.",
26908
+ None,
26909
+ )
26910
+
26911
+ ShouldAvoidFirstHit = Symbol(
26912
+ None,
26913
+ None,
26914
+ None,
26915
+ "ShouldAvoidFirstHit",
26916
+ "Checks whether an AI-controlled monster should try to avoid the first hit in battle.\n\nr0: Entity pointer\nr1: If false, this function always returns false.\nreturn: True if the monster should try to avoid the first hit in battle.",
26917
+ None,
26918
+ )
26919
+
25500
26920
  ShouldMonsterRunAway = Symbol(
25501
26921
  None,
25502
26922
  None,
@@ -25533,6 +26953,15 @@ class NaItcmOverlay29Functions:
25533
26953
  None,
25534
26954
  )
25535
26955
 
26956
+ GetTreatmentBetweenMonstersIgnoreStatus = Symbol(
26957
+ None,
26958
+ None,
26959
+ None,
26960
+ "GetTreatmentBetweenMonstersIgnoreStatus",
26961
+ "Called to check if a monster should treat another as an ally, enemy, or ignore it. Similar to GetTreatmentBetweenMonsters, except temporary statuses (decoy, invisible, petrified) are ignored.\n\nr0: Pointer to entity 1\nr1: Pointer to entity 2\nreturn: Treatment that monster 1 should apply to monster 2",
26962
+ None,
26963
+ )
26964
+
25536
26965
  SafeguardIsActive = Symbol(
25537
26966
  None,
25538
26967
  None,
@@ -25677,6 +27106,15 @@ class NaItcmOverlay29Functions:
25677
27106
  None,
25678
27107
  )
25679
27108
 
27109
+ CanSeeTeammate = Symbol(
27110
+ None,
27111
+ None,
27112
+ None,
27113
+ "CanSeeTeammate",
27114
+ "Checks if an allied monster can see any other teammate (via CanSeeTarget). Always returns false for enemy monsters.\n\nr0: monster pointer\nreturn: True if the monster is an allied monster that can see another teammate.",
27115
+ None,
27116
+ )
27117
+
25680
27118
  GetMoveTypeForMonster = Symbol(
25681
27119
  None,
25682
27120
  None,
@@ -25767,6 +27205,15 @@ class NaItcmOverlay29Functions:
25767
27205
  None,
25768
27206
  )
25769
27207
 
27208
+ DungeonTmLearnMove = Symbol(
27209
+ None,
27210
+ None,
27211
+ None,
27212
+ "DungeonTmLearnMove",
27213
+ "Makes a team member learn a given move, or prompts them to forget one first if their move list is full. Used when activating a TM in dungeon mode.\n\nr0: user entity pointer\nr1: move id\nreturn: whether the move was successfully learned",
27214
+ None,
27215
+ )
27216
+
25770
27217
  GetMonsterMoves = Symbol(
25771
27218
  None,
25772
27219
  None,
@@ -26001,6 +27448,15 @@ class NaItcmOverlay29Functions:
26001
27448
  None,
26002
27449
  )
26003
27450
 
27451
+ TryEndPetrifiedOrSleepStatus = Symbol(
27452
+ None,
27453
+ None,
27454
+ None,
27455
+ "TryEndPetrifiedOrSleepStatus",
27456
+ "Ends the target's petrified status unconditionally, and the target's sleep status if the status turns have run out.\n\nr0: user entity who attacked the target\nr1: target entity to try ending a status for.\nreturn: Whether or not the target's status ended.",
27457
+ None,
27458
+ )
27459
+
26004
27460
  EndFrozenStatus = Symbol(
26005
27461
  None,
26006
27462
  None,
@@ -26046,6 +27502,15 @@ class NaItcmOverlay29Functions:
26046
27502
  None,
26047
27503
  )
26048
27504
 
27505
+ GetLeaderIfVisible = Symbol(
27506
+ None,
27507
+ None,
27508
+ None,
27509
+ "GetLeaderIfVisible",
27510
+ "For allied monsters, gets the leader monster if they are visible to the ally. Always returns null for enemy monsters.\n\nr0: Pointer to monster\nreturn: Pointer to the leader monster if visible, null otherwise.",
27511
+ None,
27512
+ )
27513
+
26049
27514
  RunMonsterAi = Symbol(
26050
27515
  None,
26051
27516
  None,
@@ -26136,6 +27601,15 @@ class NaItcmOverlay29Functions:
26136
27601
  None,
26137
27602
  )
26138
27603
 
27604
+ WeightWeakTypePicker = Symbol(
27605
+ None,
27606
+ None,
27607
+ None,
27608
+ "WeightWeakTypePicker",
27609
+ "Calculates a move weight used for deciding which target the move should be used on.\nThis function is used to calculate move weight when the attacker has the IQ skill Weak-Type Picker,\nwhich weights moves higher depending on type effectiveness.\n\nr0: attacker pointer\nr2: defender pointer\nr3: attack type\nreturn: Move weight for deciding move targeting.",
27610
+ None,
27611
+ )
27612
+
26139
27613
  CalcDamage = Symbol(
26140
27614
  None,
26141
27615
  None,
@@ -26343,6 +27817,15 @@ class NaItcmOverlay29Functions:
26343
27817
  None,
26344
27818
  )
26345
27819
 
27820
+ FindDirectionOfAdjacentMonsterWithItem = Symbol(
27821
+ None,
27822
+ None,
27823
+ None,
27824
+ "FindDirectionOfAdjacentMonsterWithItem",
27825
+ "Given a monster, looks for an adjacent monster with the specified held item and returns the direction of that monster. Returns DIR_NONE if no monster is found. If there are multiple monsters with the specified held item, start in the direction the monster is facing and rotate in the order of DIRECTIONS_XY, picking the first direction with an eligible monster.\n\nr0: entity to look for an adjacent monster around it\nr1: held item to search for on adjacent monsters\nreturn: direction of an adjacent monster with the specified held item, or DIR_NONE if there are none.",
27826
+ None,
27827
+ )
27828
+
26346
27829
  TrySpawnEnemyItemDrop = Symbol(
26347
27830
  None,
26348
27831
  None,
@@ -26438,7 +27921,7 @@ class NaItcmOverlay29Functions:
26438
27921
  None,
26439
27922
  None,
26440
27923
  "TryInflictPausedStatus",
26441
- "Inflicts the Paused status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: ?\nr3: number of turns\nstack[0]: flag to log a message on failure\nstack[1]: flag to only perform the check for inflicting without actually inflicting\nreturn: Whether or not the status could be inflicted",
27924
+ "Inflicts the Paused status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: bool for whether status should not be inflicted if Safeguard is active\nr3: number of turns\nstack[0]: flag to log a message on failure\nstack[1]: flag to only perform the check for inflicting without actually inflicting\nreturn: Whether or not the status could be inflicted",
26442
27925
  None,
26443
27926
  )
26444
27927
 
@@ -26690,7 +28173,7 @@ class NaItcmOverlay29Functions:
26690
28173
  None,
26691
28174
  None,
26692
28175
  "TrySealMove",
26693
- "Seals one of the target monster's moves. The move to be sealed is randomly selected.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: flag to log a message on failure\nreturn: Whether or not a move was sealed",
28176
+ "Seals one of the target monster's moves. The move to be sealed is randomly selected.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: flag to only perform the check for inflicting without actually inflicting\nreturn: Whether or not a move was sealed",
26694
28177
  None,
26695
28178
  )
26696
28179
 
@@ -26834,7 +28317,7 @@ class NaItcmOverlay29Functions:
26834
28317
  None,
26835
28318
  None,
26836
28319
  "TryInflictSureShotStatus",
26837
- "Inflicts the Sure Shot status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer",
28320
+ "Inflicts the Sure Shot status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: number of turns the status will last for",
26838
28321
  None,
26839
28322
  )
26840
28323
 
@@ -26843,7 +28326,7 @@ class NaItcmOverlay29Functions:
26843
28326
  None,
26844
28327
  None,
26845
28328
  "TryInflictWhifferStatus",
26846
- "Inflicts the Whiffer status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer",
28329
+ "Inflicts the Whiffer status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: number of turns the status will last for\nr3: flag to only perform the check for inflicting without actually inflicting",
26847
28330
  None,
26848
28331
  )
26849
28332
 
@@ -26870,7 +28353,7 @@ class NaItcmOverlay29Functions:
26870
28353
  None,
26871
28354
  None,
26872
28355
  "TryInflictDecoyStatus",
26873
- "Inflicts the Decoy status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nreturn: Whether or not the status could be inflicted",
28356
+ "Inflicts the Decoy status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: value to set the target monster's unk_decoy_tracker field to\nr3: flag to log a message\nstack[0]: flag to only perform the check for inflicting without actually inflicting\nreturn: Whether or not the status could be inflicted",
26874
28357
  None,
26875
28358
  )
26876
28359
 
@@ -26897,7 +28380,7 @@ class NaItcmOverlay29Functions:
26897
28380
  None,
26898
28381
  None,
26899
28382
  "TryInflictTauntStatus",
26900
- "Inflicts the Taunt status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nreturn: Whether or not the status could be inflicted",
28383
+ "Inflicts the Taunt status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: flag to only perform the check for inflicting without actually inflicting\nreturn: Whether or not the status could be inflicted",
26901
28384
  None,
26902
28385
  )
26903
28386
 
@@ -27005,7 +28488,7 @@ class NaItcmOverlay29Functions:
27005
28488
  None,
27006
28489
  None,
27007
28490
  "TryInflictBlinkerStatus",
27008
- "Inflicts the Blinker status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: flag to only perform the check for inflicting without actually inflicting\nr3: flag to log a message on failure\nreturn: Whether or not the status could be inflicted",
28491
+ "Inflicts the Blinker status condition on a target monster if possible.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: flag to only perform the check for inflicting without actually inflicting\nr3: flag to make the status permanent (always 0 in the base game)\nreturn: Whether or not the status could be inflicted",
27009
28492
  None,
27010
28493
  )
27011
28494
 
@@ -27243,6 +28726,15 @@ class NaItcmOverlay29Functions:
27243
28726
  None,
27244
28727
  )
27245
28728
 
28729
+ SetReflectStatus = Symbol(
28730
+ None,
28731
+ None,
28732
+ None,
28733
+ "SetReflectStatus",
28734
+ "Sets a target monster's reflect status to the specified value. \n\nIf it already has the Counter, Mini Counter or Metal Burst status, its remaining turn counter will remain the same.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: reflect status",
28735
+ None,
28736
+ )
28737
+
27246
28738
  TryInflictSafeguardStatus = Symbol(
27247
28739
  None,
27248
28740
  None,
@@ -27387,12 +28879,21 @@ class NaItcmOverlay29Functions:
27387
28879
  None,
27388
28880
  )
27389
28881
 
28882
+ ResetAiCanAttackInDirection = Symbol(
28883
+ None,
28884
+ None,
28885
+ None,
28886
+ "ResetAiCanAttackInDirection",
28887
+ "Resets all entries in AI_CAN_ATTACK_IN_DIRECTION to false.\n\nNo params.",
28888
+ None,
28889
+ )
28890
+
27390
28891
  AiConsiderMove = Symbol(
27391
28892
  None,
27392
28893
  None,
27393
28894
  None,
27394
28895
  "AiConsiderMove",
27395
- "The AI uses this function to check if a move has any potential targets, to calculate the list of potential targets and to calculate the move's special weight.\nThis weight will be higher if the pokémon has weak-type picker and the target is weak to the move (allies only, enemies always get a result of 1 even if the move is super effective). More things could affect the result.\nThis function also sets the flag can_be_used on the ai_possible_move struct if it makes sense to use it.\nMore research is needed. There's more documentation about this special weight. Does all the documented behavior happen in this function?\n\nr0: ai_possible_move struct for this move\nr1: Entity pointer\nr2: Move pointer\nreturn: Move's calculated special weight",
28896
+ "The AI uses this function to check if a move has any potential targets, to calculate the list of potential targets and to calculate the move's special weight. The weight is calculated using WeightMoveWithIqSkills.\nThis function also sets the flag can_be_used on the ai_possible_move struct if it makes sense to use it.\n\nThe weight returned by this function is not the same as GetMoveAiWeight. If the AI does not have Weak-Type Picker, AiConsiderMove is called after the AI has selected which move it will use (using GetMoveAiWeight). It determines whether it makes sense for the AI to actually use the chosen move (i.e., whether targets are in range), and which direction the AI will use the move in if so. The return value of this function is not used anywhere in this case.\n\nIf the AI has Weak-Type Picker, the AI calls this function earlier in the AI logic to determine which move to use, using the returned special weight to find which move has the most advantageous type matchups.\n\nr0: ai_possible_move struct for this move\nr1: Entity pointer\nr2: Move pointer\nreturn: Move's calculated special weight",
27396
28897
  None,
27397
28898
  )
27398
28899
 
@@ -27414,6 +28915,15 @@ class NaItcmOverlay29Functions:
27414
28915
  None,
27415
28916
  )
27416
28917
 
28918
+ WeightMoveWithIqSkills = Symbol(
28919
+ None,
28920
+ None,
28921
+ None,
28922
+ "WeightMoveWithIqSkills",
28923
+ "Calculates a move weight used for deciding which target the move should be used on. If the user is an ally, the target is an enemy Pokémon, and the user has Exp. Go-Getter, Efficiency Expert, or Weak-Type Picker enabled, this function calculates a move weight based on that IQ skill's functionality. Otherwise, this function returns a weight of 1.\n\nr0: User entity pointer\nr1: Move's AI range field\nr2: Target entity pointer\nr3: Move type\nreturn: Move weight for deciding move targeting.",
28924
+ None,
28925
+ )
28926
+
27417
28927
  TargetRegularAttack = Symbol(
27418
28928
  None,
27419
28929
  None,
@@ -27707,7 +29217,7 @@ class NaItcmOverlay29Functions:
27707
29217
  None,
27708
29218
  None,
27709
29219
  "IsAdjacentToEnemy",
27710
- "Called to check if a hostile entity is present in any of the tiles adjacent to an entity.\n\nr0: Pointer to entity\nreturn: True if yes, false if no",
29220
+ "Called to check if a hostile entity is present in any of the tiles adjacent to an entity. This function uses GetTreatmentBetweenMonsters to determine whether an adjacent entity is hostile, which has special handling for the decoy, petrified, and invisible statuses.\n\nr0: Pointer to entity\nreturn: True if yes, false if no",
27711
29221
  None,
27712
29222
  )
27713
29223
 
@@ -27729,6 +29239,15 @@ class NaItcmOverlay29Functions:
27729
29239
  None,
27730
29240
  )
27731
29241
 
29242
+ InitMoveWrapper = Symbol(
29243
+ None,
29244
+ None,
29245
+ None,
29246
+ "InitMoveWrapper",
29247
+ "Wrapper for InitMove which takes a superfluous parameter.\n\nr0: unused\nr1: [output] pointer to move to initialize\nr2: move ID",
29248
+ None,
29249
+ )
29250
+
27732
29251
  MoveIsNotPhysical = Symbol(
27733
29252
  None,
27734
29253
  None,
@@ -27747,6 +29266,24 @@ class NaItcmOverlay29Functions:
27747
29266
  None,
27748
29267
  )
27749
29268
 
29269
+ MakeFloorOneRoom = Symbol(
29270
+ None,
29271
+ None,
29272
+ None,
29273
+ "MakeFloorOneRoom",
29274
+ "Removes all walls to make the floor one room.\n\nr0: user entity pointer",
29275
+ None,
29276
+ )
29277
+
29278
+ TryHurl = Symbol(
29279
+ None,
29280
+ None,
29281
+ None,
29282
+ "TryHurl",
29283
+ "Attempts to hurl the target monster at another monster, or to an unoccupied tile if there is no valid one in range.\n\nr0: user entity pointer\nr1: target entity pointer",
29284
+ None,
29285
+ )
29286
+
27750
29287
  TryDrought = Symbol(
27751
29288
  None,
27752
29289
  None,
@@ -27756,6 +29293,15 @@ class NaItcmOverlay29Functions:
27756
29293
  None,
27757
29294
  )
27758
29295
 
29296
+ TryTrawl = Symbol(
29297
+ None,
29298
+ None,
29299
+ None,
29300
+ "TryTrawl",
29301
+ "Attempts to pull all items on the floor towards the user.\n\nFails if the floor is a fixed room on which Trawl Orbs are disabled.\n\nr0: user entity pointer",
29302
+ None,
29303
+ )
29304
+
27759
29305
  TryPounce = Symbol(
27760
29306
  None,
27761
29307
  None,
@@ -28067,7 +29613,25 @@ class NaItcmOverlay29Functions:
28067
29613
  None,
28068
29614
  None,
28069
29615
  "StatusCheckerCheck",
28070
- "Determines if using a given move against its intended targets would be redundant because all of them already have the effect caused by said move.\n\nr0: Pointer to the entity that is considering using the move\nr1: Move pointer\nreturn: True if it makes sense to use the move, false if it would be redundant given the effects it causes and the effects that all the targets already have.",
29616
+ "Determines if using a given move against its intended targets would be redundant because all of them already have the effect caused by said move. Used for moves that affect the user or allies.\n\nr0: Pointer to the entity that is considering using the move\nr1: Move pointer\nreturn: True if it makes sense to use the move, false if it would be redundant given the effects it causes and the effects that all the targets already have.",
29617
+ None,
29618
+ )
29619
+
29620
+ StatusCheckerCheckOnTarget = Symbol(
29621
+ None,
29622
+ None,
29623
+ None,
29624
+ "StatusCheckerCheckOnTarget",
29625
+ "Determines if using a given move against its intended target would be redundant because all of them already have the effect caused by said move. Used for moves that affect enemies.\n\nr0: Pointer to the entity that is considering using the move\nr2: Pointer to the entity being targeted by the move\nr1: Move pointer\nreturn: True if it makes sense to use the move, false if it would be redundant given the effects it causes and the effects that the target already has.",
29626
+ None,
29627
+ )
29628
+
29629
+ HasLastUsedMove = Symbol(
29630
+ None,
29631
+ None,
29632
+ None,
29633
+ "HasLastUsedMove",
29634
+ "Determines whether a monster has used any of its moves on this floor.\nThis function takes in the monster's move list and checks if any moves have the f_last_used flag set.\n\nr0: Pointer to the monster's moves.\nreturn: True if the move list has any moves with the f_last_used flag set, false otherwise.",
28071
29635
  None,
28072
29636
  )
28073
29637
 
@@ -28323,6 +29887,15 @@ class NaItcmOverlay29Functions:
28323
29887
  None,
28324
29888
  )
28325
29889
 
29890
+ IsTileGround = Symbol(
29891
+ None,
29892
+ None,
29893
+ None,
29894
+ "IsTileGround",
29895
+ "Returns true if the given position is a ground tile, meaning that Dig can be used and Dive cannot be used.\nThis depends on the terrain type of the position and the dungeon tileset.\n\nr0: Position\nreturn: True if the current tile is a ground tile.",
29896
+ None,
29897
+ )
29898
+
28326
29899
  IsWaterTileset = Symbol(
28327
29900
  None,
28328
29901
  None,
@@ -28350,6 +29923,24 @@ class NaItcmOverlay29Functions:
28350
29923
  None,
28351
29924
  )
28352
29925
 
29926
+ FindAdjacentEnemy = Symbol(
29927
+ None,
29928
+ None,
29929
+ None,
29930
+ "FindAdjacentEnemy",
29931
+ "Finds a hostile entity adjacent to the given entity. Hostility is based on whether the monster->is_not_team_member flag does not match. If there are multiple adjacent hostile enemies, the first one is returned based on the order of directions in DIRECTION_XY.\n\nr0: Pointer to entity\nreturn: A hostile entity adjacent to the given entity, or null if there aren't any.",
29932
+ None,
29933
+ )
29934
+
29935
+ IsAdjacentToEnemyIgnoreTreatment = Symbol(
29936
+ None,
29937
+ None,
29938
+ None,
29939
+ "IsAdjacentToEnemyIgnoreTreatment",
29940
+ "Called to check if a hostile entity is present in any of the tiles adjacent to an entity. Unlike IsAdjacentToEnemy, this function uses monster->is_not_team_member to determine if an adjacent enemy is hostile rather than GetTreatmentBetweenMonsters, which means it doesn't take decoy, petrified, and invisible statuses into account.\n\nr0: Pointer to entity\nreturn: True if yes, false if no",
29941
+ None,
29942
+ )
29943
+
28353
29944
  ResetGravity = Symbol(
28354
29945
  None,
28355
29946
  None,
@@ -28377,6 +29968,15 @@ class NaItcmOverlay29Functions:
28377
29968
  None,
28378
29969
  )
28379
29970
 
29971
+ RevealAttackedTile = Symbol(
29972
+ None,
29973
+ None,
29974
+ None,
29975
+ "RevealAttackedTile",
29976
+ "Reveals the tile given by the position.\n\nIs also activated on a tile if a fainted monster drops an item on it.\n\nr0: position struct pointer",
29977
+ None,
29978
+ )
29979
+
28380
29980
  ShouldBoostKecleonShopSpawnChance = Symbol(
28381
29981
  None,
28382
29982
  None,
@@ -29300,7 +30900,7 @@ class NaItcmOverlay29Functions:
29300
30900
  None,
29301
30901
  None,
29302
30902
  "AreLateGameTrapsEnabled",
29303
- "Check if late-game traps (Summon, Pitfall, and Pokémon traps) work in the given fixed room.\n\nOr disabled? This function, which Irdkwia's notes label as a disable check, check the struct field labeled in End's notes as an enable flag.\n\nr0: fixed room ID\nreturn: bool",
30903
+ "Check if late-game traps (Summon, Pitfall, and Pokémon traps) work in the given fixed room.\n\nr0: fixed room ID\nreturn: True if late-game traps are enabled, false if they are disabled.",
29304
30904
  None,
29305
30905
  )
29306
30906
 
@@ -29367,6 +30967,24 @@ class NaItcmOverlay29Functions:
29367
30967
  None,
29368
30968
  )
29369
30969
 
30970
+ PrepareItemForPrinting = Symbol(
30971
+ None,
30972
+ None,
30973
+ None,
30974
+ "PrepareItemForPrinting",
30975
+ "Calls functions to prepare an item to be printed in place of the [item:r0] tag in a message log message.\n\nr0: tag id\nr1: item struct pointer",
30976
+ None,
30977
+ )
30978
+
30979
+ PrepareItemForPrinting2 = Symbol(
30980
+ None,
30981
+ None,
30982
+ None,
30983
+ "PrepareItemForPrinting2",
30984
+ "Used in SubstitutePlaceholderStringTags. Has the same functionality as PrepareItemForPrinting, except the message log preprocessor_args struct is passed as a parameter.\n\nr0: preprocessor_args pointer (in practice, always the global struct used for the message log)\nr1: tag id\nr2: item pointer",
30985
+ None,
30986
+ )
30987
+
29370
30988
  GenerateStandardItem = Symbol(
29371
30989
  None,
29372
30990
  None,
@@ -29493,6 +31111,15 @@ class NaItcmOverlay29Functions:
29493
31111
  None,
29494
31112
  )
29495
31113
 
31114
+ HandleCurvedProjectileThrow = Symbol(
31115
+ None,
31116
+ None,
31117
+ None,
31118
+ "HandleCurvedProjectileThrow",
31119
+ "Throws an item in a curved arc, like a Gravelerock.\n\nr0: monster entity throwing the item\nr1: item being thrown\nr2: position to start throwing the item from\nr3: position to throw the item to\nstack[0]: Metadata about the item being thrown",
31120
+ None,
31121
+ )
31122
+
29496
31123
  DoesProjectileHitTarget = Symbol(
29497
31124
  None,
29498
31125
  None,
@@ -29529,6 +31156,15 @@ class NaItcmOverlay29Functions:
29529
31156
  None,
29530
31157
  )
29531
31158
 
31159
+ IsItemUnkMissionItem2 = Symbol(
31160
+ None,
31161
+ None,
31162
+ None,
31163
+ "IsItemUnkMissionItem2",
31164
+ "Checks if an item is a special target item with flag item::f_unk_mission_item2 set.\n\nr0: item pointer\nreturn: True if the item is a special target item with flag item::f_unk_mission_item2 set.",
31165
+ None,
31166
+ )
31167
+
29532
31168
  CheckActiveChallengeRequest = Symbol(
29533
31169
  None,
29534
31170
  None,
@@ -29781,12 +31417,129 @@ class NaItcmOverlay29Functions:
29781
31417
  None,
29782
31418
  )
29783
31419
 
29784
- LogMessageByIdWithPopupCheckParticipants = Symbol(
31420
+ InitAlertBoxInfo = Symbol(
29785
31421
  None,
29786
31422
  None,
29787
31423
  None,
29788
- "LogMessageByIdWithPopupCheckParticipants",
29789
- "Logs the appropriate message based on the participating entites; this function calls LogMessageByIdWithPopupCheckUserTarget is both the user and target pointers are non-null, otherwise it calls LogMessageByIdWithPopupCheckUser if the user pointer is non-null, otherwise doesn't log anything.\n\nThis function also seems to set some global table entry to some value?\n\nr0: user entity pointer\nr1: target entity pointer\nr2: message ID\nr3: index into some table?\nstack[0]: value to set at the table index specified by r3?",
31424
+ "InitAlertBoxInfo",
31425
+ "Initializes the heap-allocated alert_box_info struct in MESSAGE_LOG_INFO.\n\nNo params.",
31426
+ None,
31427
+ )
31428
+
31429
+ FreeAlertBoxInfo = Symbol(
31430
+ None,
31431
+ None,
31432
+ None,
31433
+ "FreeAlertBoxInfo",
31434
+ "Frees the heap-allocated alert_box_info struct in MESSAGE_LOG_INFO.\n\nNo params.",
31435
+ None,
31436
+ )
31437
+
31438
+ SetMessageLogGroupStartFlag = Symbol(
31439
+ None,
31440
+ None,
31441
+ None,
31442
+ "SetMessageLogGroupStartFlag",
31443
+ "Sets whether the next message in the message log should be the start of a new group separated by a horizontal line.\n\nr0: bool",
31444
+ None,
31445
+ )
31446
+
31447
+ GetMessageLogPreprocessorArgs = Symbol(
31448
+ None,
31449
+ None,
31450
+ None,
31451
+ "GetMessageLogPreprocessorArgs",
31452
+ "Gets a pointer to the global preprocessor_args struct used for the message log.\n\nreturn: preprocessor_args pointer",
31453
+ None,
31454
+ )
31455
+
31456
+ InitMessageLogPreprocessorArgs = Symbol(
31457
+ None,
31458
+ None,
31459
+ None,
31460
+ "InitMessageLogPreprocessorArgs",
31461
+ "Initializes the global preprocessor_args struct used for the message log.\n\nNo params.",
31462
+ None,
31463
+ )
31464
+
31465
+ SetMessageLogPreprocessorArgsFlagVal = Symbol(
31466
+ None,
31467
+ None,
31468
+ None,
31469
+ "SetMessageLogPreprocessorArgsFlagVal",
31470
+ "Sets a flag_vals element in the global preprocessor_args struct used for the message log to a specified value.\n\nr0: position in flag_vals array\nr1: value",
31471
+ None,
31472
+ )
31473
+
31474
+ SetMessageLogPreprocessorArgsIdVal = Symbol(
31475
+ None,
31476
+ None,
31477
+ None,
31478
+ "SetMessageLogPreprocessorArgsIdVal",
31479
+ "Sets an id_vals element in the global preprocessor_args struct used for the message log to a specified value.\n\nr0: position in id_vals array\nr1: value",
31480
+ None,
31481
+ )
31482
+
31483
+ SetMessageLogPreprocessorArgsNumberVal = Symbol(
31484
+ None,
31485
+ None,
31486
+ None,
31487
+ "SetMessageLogPreprocessorArgsNumberVal",
31488
+ "Sets a number_vals element in the global preprocessor_args struct used for the message log to a specified value.\n\nr0: position in number_vals array\nr1: value",
31489
+ None,
31490
+ )
31491
+
31492
+ SetMessageLogPreprocessorArgsString = Symbol(
31493
+ None,
31494
+ None,
31495
+ None,
31496
+ "SetMessageLogPreprocessorArgsString",
31497
+ "Sets a strings element in the global preprocessor_args struct used for the message log to a specified string.\n\nr0: position in strings array\nr1: string pointer",
31498
+ None,
31499
+ )
31500
+
31501
+ SetMessageLogPreprocessorArgsStringToName = Symbol(
31502
+ None,
31503
+ None,
31504
+ None,
31505
+ "SetMessageLogPreprocessorArgsStringToName",
31506
+ "Sets a strings element in the global preprocessor_args struct used for the message log to the name of a monster.\n\nr0: position in strings array\nr1: monster_id",
31507
+ None,
31508
+ )
31509
+
31510
+ SetMessageLogPreprocessorArgsSpeakerId = Symbol(
31511
+ None,
31512
+ None,
31513
+ None,
31514
+ "SetMessageLogPreprocessorArgsSpeakerId",
31515
+ "Sets the speaker_id in the global preprocessor_args struct used for the message log to the id of a monster.\n\nr0: monster_id",
31516
+ None,
31517
+ )
31518
+
31519
+ SetMessageLogPreprocessorArgsSpeakerId0x30000 = Symbol(
31520
+ None,
31521
+ None,
31522
+ None,
31523
+ "SetMessageLogPreprocessorArgsSpeakerId0x30000",
31524
+ "Sets the speaker_id in the global preprocessor_args struct used for the message log to a monster's team index, ORed with 0x30000.\n\nr0: team_index",
31525
+ None,
31526
+ )
31527
+
31528
+ LogMessageByIdWithPopupAndAbility = Symbol(
31529
+ None,
31530
+ None,
31531
+ None,
31532
+ "LogMessageByIdWithPopupAndAbility",
31533
+ "Logs the appropriate message based on the participating entites; this function calls LogMessageByIdWithPopupCheckUserTarget is both the user and target pointers are non-null, otherwise it calls LogMessageByIdWithPopupCheckUser if the user pointer is non-null, otherwise doesn't log anything.\n\nThis function also replaces the [c_i:r3] tag by setting an id_vals element in the global preprocessor_args struct used for the message log to an ability.\n\nr0: user entity pointer\nr1: target entity pointer\nr2: message ID\nr3: position in id_vals array\nstack[0]: value (in practice, always the ability, although could be used for any other text tag that uses id_vals)",
31534
+ None,
31535
+ )
31536
+
31537
+ WaitUntilAlertBoxTextIsLoadedWrapper = Symbol(
31538
+ None,
31539
+ None,
31540
+ None,
31541
+ "WaitUntilAlertBoxTextIsLoadedWrapper",
31542
+ "Calls WaitUntilAlertBoxTextIsLoaded with r0 = 0x50.\n\nNo params.",
29790
31543
  None,
29791
31544
  )
29792
31545
 
@@ -29898,6 +31651,24 @@ class NaItcmOverlay29Functions:
29898
31651
  None,
29899
31652
  )
29900
31653
 
31654
+ AlertBoxIsScrolling = Symbol(
31655
+ None,
31656
+ None,
31657
+ None,
31658
+ "AlertBoxIsScrolling",
31659
+ "Returns true if the alert box is currently scrolling (i.e. a message is being loaded).\n\nreturn: bool",
31660
+ None,
31661
+ )
31662
+
31663
+ WaitUntilAlertBoxTextIsLoaded = Symbol(
31664
+ None,
31665
+ None,
31666
+ None,
31667
+ "WaitUntilAlertBoxTextIsLoaded",
31668
+ "Calls AdvanceFrame in a loop until the dungeon alert box has finished scrolling.\n\nr0: value to pass to AdvanceFrame (unused by the function)",
31669
+ None,
31670
+ )
31671
+
29901
31672
  InitPortraitDungeon = Symbol(
29902
31673
  None,
29903
31674
  None,
@@ -30046,6 +31817,15 @@ class NaItcmOverlay29Functions:
30046
31817
  None,
30047
31818
  )
30048
31819
 
31820
+ StairsMenuAfterStep = Symbol(
31821
+ None,
31822
+ None,
31823
+ None,
31824
+ "StairsMenuAfterStep",
31825
+ "Opens the stairs menu after stepping on a stairs tile.\n\nr0: Entity pointer (in practice, always the leader)\nr1: whether to not open minimap upon menu close",
31826
+ None,
31827
+ )
31828
+
30049
31829
  DungeonModeSetupAndShowNameKeyboard = Symbol(
30050
31830
  None,
30051
31831
  None,
@@ -30073,10 +31853,24 @@ class NaItcmOverlay29Functions:
30073
31853
  None,
30074
31854
  )
30075
31855
 
31856
+ CreateMonsterSummaryFromMonster = _Deprecated(
31857
+ "CreateMonsterSummaryFromMonster", CreateMonsterSummaryFromEntity
31858
+ )
31859
+
30076
31860
  ShouldMonsterRunAwayVariation = _Deprecated(
30077
31861
  "ShouldMonsterRunAwayVariation", ShouldMonsterRunAwayAndShowEffect
30078
31862
  )
30079
31863
 
31864
+ GetFlashFireStatus = _Deprecated("GetFlashFireStatus", FlashFireShouldActivate)
31865
+
31866
+ SetPreprocessorArgsIdVal = _Deprecated(
31867
+ "SetPreprocessorArgsIdVal", SetMessageLogPreprocessorArgsIdVal
31868
+ )
31869
+
31870
+ LogMessageByIdWithPopupCheckParticipants = _Deprecated(
31871
+ "LogMessageByIdWithPopupCheckParticipants", LogMessageByIdWithPopupAndAbility
31872
+ )
31873
+
30080
31874
 
30081
31875
  class NaItcmOverlay29Data:
30082
31876
 
@@ -30611,6 +32405,15 @@ class NaItcmOverlay29Data:
30611
32405
  "int16_t[8][2]",
30612
32406
  )
30613
32407
 
32408
+ FACING_DIRECTION_INCREMENTS = Symbol(
32409
+ None,
32410
+ None,
32411
+ None,
32412
+ "FACING_DIRECTION_INCREMENTS",
32413
+ "An array of direction offsets from a monster's current facing direction, each increasingly farther away from the current direction.\n\nFor example, the array starts with [0, 1, -1, 2...]. If the monster's current direction is DIR_UP, the first four array elements\nare each added to the current direction, corresponding to DIR_UP, DIR_UP_LEFT, DIR_UP_RIGHT, DIR_LEFT.",
32414
+ "int[8]",
32415
+ )
32416
+
30614
32417
  DISPLACEMENTS_WITHIN_2_LARGEST_FIRST = Symbol(
30615
32418
  None,
30616
32419
  None,
@@ -30764,6 +32567,15 @@ class NaItcmOverlay29Data:
30764
32567
  "struct fx64_16",
30765
32568
  )
30766
32569
 
32570
+ WEAK_TYPE_PICKER_MATCHUP_MULTIPLIERS = Symbol(
32571
+ None,
32572
+ None,
32573
+ None,
32574
+ "WEAK_TYPE_PICKER_MATCHUP_MULTIPLIERS",
32575
+ "Array of multipliers to a move's AI weight when Weak-Type Picker is in effect, based on the move's type matchup against its target. Array indexes correspond to enum type_matchup.",
32576
+ "int[4]",
32577
+ )
32578
+
30767
32579
  TYPE_DAMAGE_NEGATING_EXCLUSIVE_ITEM_EFFECTS = Symbol(
30768
32580
  None,
30769
32581
  None,
@@ -31007,6 +32819,15 @@ class NaItcmOverlay29Data:
31007
32819
  "void*",
31008
32820
  )
31009
32821
 
32822
+ MESSAGE_LOG_INFO = Symbol(
32823
+ None,
32824
+ None,
32825
+ None,
32826
+ "MESSAGE_LOG_INFO",
32827
+ "[Runtime] Struct containing information and state for logged messages.",
32828
+ "struct message_log_info",
32829
+ )
32830
+
31010
32831
  DUNGEON_FADES_PTR = Symbol(
31011
32832
  None,
31012
32833
  None,
@@ -31115,12 +32936,12 @@ class NaItcmOverlay30Section:
31115
32936
 
31116
32937
  class NaItcmOverlay31Functions:
31117
32938
 
31118
- EntryOverlay31 = Symbol(
32939
+ InitDungeonMenu = Symbol(
31119
32940
  None,
31120
32941
  None,
31121
32942
  None,
31122
- "EntryOverlay31",
31123
- "Note: unverified, ported from Irdkwia's notes\n\nNo params.",
32943
+ "InitDungeonMenu",
32944
+ "Initializes the main dungeon menu and allocates a struct on the heap with information for HandleDungeonMenu.\n\nNo params.",
31124
32945
  None,
31125
32946
  )
31126
32947
 
@@ -31142,12 +32963,39 @@ class NaItcmOverlay31Functions:
31142
32963
  None,
31143
32964
  )
31144
32965
 
31145
- CreateStairsMenuState = Symbol(
32966
+ DungeonMenuLoop = Symbol(
31146
32967
  None,
31147
32968
  None,
31148
32969
  None,
31149
- "CreateStairsMenuState",
31150
- "Called when the leader steps on any stairs tile (regular, warp zone, rescue point, hidden stairs).\n\nAllocates a stairs_menu struct on the heap with information for HandleStairsMenu, which will be pointed to by STAIRS_MENU_PTR.\n\nr0: Entity pointer (in practice, always the leader)",
32970
+ "DungeonMenuLoop",
32971
+ "Handles displaying the main dungeon menu and is called on each frame while it is open.\n\nUses a switch statement based on a state field of the struct allocated in InitDungeonMenu to determine what actions to take.\n\nreturn: 4 if should close main dungeon menu (including when switching menus), 1 otherwise",
32972
+ None,
32973
+ )
32974
+
32975
+ FreeDungeonMenu = Symbol(
32976
+ None,
32977
+ None,
32978
+ None,
32979
+ "FreeDungeonMenu",
32980
+ "Closes the main dungeon menu and frees the heap-allocated struct initialized in InitDungeonMenu.\n\nNo params.",
32981
+ None,
32982
+ )
32983
+
32984
+ StairsMenu = Symbol(
32985
+ None,
32986
+ None,
32987
+ None,
32988
+ "StairsMenu",
32989
+ "Called when the stairs menu is open. Does not return until the menu is closed.\n\nr0: Entity pointer (in practice, always the leader)\nr1: whether to not open minimap upon menu close",
32990
+ None,
32991
+ )
32992
+
32993
+ InitStairsMenu = Symbol(
32994
+ None,
32995
+ None,
32996
+ None,
32997
+ "InitStairsMenu",
32998
+ "Called when the leader steps on any stairs tile (regular, warp zone, rescue point, hidden stairs).\n\nInitializes the stairs menu and allocates a stairs_menu struct on the heap with information for HandleStairsMenu, which will be pointed to by STAIRS_MENU_PTR.\n\nr0: Entity pointer (in practice, always the leader)",
31151
32999
  None,
31152
33000
  )
31153
33001
 
@@ -31160,12 +33008,48 @@ class NaItcmOverlay31Functions:
31160
33008
  None,
31161
33009
  )
31162
33010
 
31163
- HandleStairsMenu = Symbol(
33011
+ StairsMenuLoop = Symbol(
31164
33012
  None,
31165
33013
  None,
31166
33014
  None,
31167
- "HandleStairsMenu",
31168
- "Handles displaying the stairs menu and is called on each frame while it is open, also updating the leader's action fields.\n\nUses a switch statement based on the state field in stairs_menu to determine what actions to take.\n\nreturn: int",
33015
+ "StairsMenuLoop",
33016
+ "Handles displaying the stairs menu and is called on each frame while it is open, also updating the leader's action fields.\n\nUses a switch statement based on the state field in stairs_menu to determine what actions to take.\n\nreturn: 4 if should close stairs menu entirely, 1 otherwise (including when switching between main/info menus)",
33017
+ None,
33018
+ )
33019
+
33020
+ CloseMainStairsMenu = Symbol(
33021
+ None,
33022
+ None,
33023
+ None,
33024
+ "CloseMainStairsMenu",
33025
+ "Closes the main stairs menu. Used both when closing it entirely as well as when switching to the info menu.\n\nNo params.",
33026
+ None,
33027
+ )
33028
+
33029
+ FreeStairsMenu = Symbol(
33030
+ None,
33031
+ None,
33032
+ None,
33033
+ "FreeStairsMenu",
33034
+ "Closes the main stairs menu and frees the heap-allocated stairs_menu struct pointed to by STAIRS_MENU_PTR.\n\nNo params.",
33035
+ None,
33036
+ )
33037
+
33038
+ EntityIsValidOverlay31 = Symbol(
33039
+ None,
33040
+ None,
33041
+ None,
33042
+ "EntityIsValidOverlay31",
33043
+ "See overlay29.yml::EntityIsValid",
33044
+ None,
33045
+ )
33046
+
33047
+ ItemsMenu = Symbol(
33048
+ None,
33049
+ None,
33050
+ None,
33051
+ "ItemsMenu",
33052
+ "Called when the in-dungeon 'items' menu is open. Does not return until the menu is closed.\n\nr0: Pointer to the leader's entity struct\nr1: ?\nreturn: ?",
31169
33053
  None,
31170
33054
  )
31171
33055
 
@@ -31232,6 +33116,15 @@ class NaItcmOverlay31Functions:
31232
33116
  None,
31233
33117
  )
31234
33118
 
33119
+ DrawDungeonHintContents = Symbol(
33120
+ None,
33121
+ None,
33122
+ None,
33123
+ "DrawDungeonHintContents",
33124
+ "Draws the contents of the current dungeon hint that is to be displayed in the Dungeon Hints menu.\n\nr0: window id",
33125
+ None,
33126
+ )
33127
+
31235
33128
  HelpMenuLoop = Symbol(
31236
33129
  None,
31237
33130
  None,
@@ -31241,6 +33134,12 @@ class NaItcmOverlay31Functions:
31241
33134
  None,
31242
33135
  )
31243
33136
 
33137
+ EntryOverlay31 = _Deprecated("EntryOverlay31", InitDungeonMenu)
33138
+
33139
+ CreateStairsMenuState = _Deprecated("CreateStairsMenuState", InitStairsMenu)
33140
+
33141
+ HandleStairsMenu = _Deprecated("HandleStairsMenu", StairsMenuLoop)
33142
+
31244
33143
 
31245
33144
  class NaItcmOverlay31Data:
31246
33145
 
@@ -31333,20 +33232,40 @@ class NaItcmOverlay31Data:
31333
33232
  "struct window_params",
31334
33233
  )
31335
33234
 
31336
- DUNGEON_SUBMENU_ITEMS_1 = Symbol(
31337
- None, None, None, "DUNGEON_SUBMENU_ITEMS_1", "", "struct simple_menu_id_item[4]"
33235
+ STAIRS_MENU_ITEMS_NORMAL = Symbol(
33236
+ None,
33237
+ None,
33238
+ None,
33239
+ "STAIRS_MENU_ITEMS_NORMAL",
33240
+ "List of 4 simple_menu_id_items for the normal stairs menu.",
33241
+ "struct simple_menu_id_item[4]",
31338
33242
  )
31339
33243
 
31340
- DUNGEON_SUBMENU_ITEMS_2 = Symbol(
31341
- None, None, None, "DUNGEON_SUBMENU_ITEMS_2", "", "struct simple_menu_id_item[4]"
33244
+ STAIRS_MENU_ITEMS_WARP_ZONE = Symbol(
33245
+ None,
33246
+ None,
33247
+ None,
33248
+ "STAIRS_MENU_ITEMS_WARP_ZONE",
33249
+ "List of 4 simple_menu_id_items for the Warp Zone stairs menu.",
33250
+ "struct simple_menu_id_item[4]",
31342
33251
  )
31343
33252
 
31344
- DUNGEON_SUBMENU_ITEMS_3 = Symbol(
31345
- None, None, None, "DUNGEON_SUBMENU_ITEMS_3", "", "struct simple_menu_id_item[4]"
33253
+ STAIRS_MENU_ITEMS_RESCUE_POINT = Symbol(
33254
+ None,
33255
+ None,
33256
+ None,
33257
+ "STAIRS_MENU_ITEMS_RESCUE_POINT",
33258
+ "List of 4 simple_menu_id_items for the Rescue Point stairs menu.",
33259
+ "struct simple_menu_id_item[4]",
31346
33260
  )
31347
33261
 
31348
- DUNGEON_SUBMENU_ITEMS_4 = Symbol(
31349
- None, None, None, "DUNGEON_SUBMENU_ITEMS_4", "", "struct simple_menu_id_item[4]"
33262
+ STAIRS_MENU_ITEMS_HIDDEN_STAIRS = Symbol(
33263
+ None,
33264
+ None,
33265
+ None,
33266
+ "STAIRS_MENU_ITEMS_HIDDEN_STAIRS",
33267
+ "List of 4 simple_menu_id_items for the hidden stairs menu.",
33268
+ "struct simple_menu_id_item[4]",
31350
33269
  )
31351
33270
 
31352
33271
  OVERLAY31_UNKNOWN_STRUCT__NA_2389EF0 = Symbol(
@@ -31744,6 +33663,22 @@ class NaItcmOverlay31Data:
31744
33663
  "",
31745
33664
  )
31746
33665
 
33666
+ DUNGEON_SUBMENU_ITEMS_1 = _Deprecated(
33667
+ "DUNGEON_SUBMENU_ITEMS_1", STAIRS_MENU_ITEMS_NORMAL
33668
+ )
33669
+
33670
+ DUNGEON_SUBMENU_ITEMS_2 = _Deprecated(
33671
+ "DUNGEON_SUBMENU_ITEMS_2", STAIRS_MENU_ITEMS_WARP_ZONE
33672
+ )
33673
+
33674
+ DUNGEON_SUBMENU_ITEMS_3 = _Deprecated(
33675
+ "DUNGEON_SUBMENU_ITEMS_3", STAIRS_MENU_ITEMS_RESCUE_POINT
33676
+ )
33677
+
33678
+ DUNGEON_SUBMENU_ITEMS_4 = _Deprecated(
33679
+ "DUNGEON_SUBMENU_ITEMS_4", STAIRS_MENU_ITEMS_HIDDEN_STAIRS
33680
+ )
33681
+
31747
33682
 
31748
33683
  class NaItcmOverlay31Section:
31749
33684
  name = "overlay31"
@@ -32748,6 +34683,42 @@ class NaItcmRamData:
32748
34683
  "uint32_t[8]",
32749
34684
  )
32750
34685
 
34686
+ AI_CAN_ATTACK_IN_DIRECTION = Symbol(
34687
+ None,
34688
+ None,
34689
+ None,
34690
+ "AI_CAN_ATTACK_IN_DIRECTION",
34691
+ "[Runtime] Stores whether the AI can use an attack in each direction.",
34692
+ "bool[8]",
34693
+ )
34694
+
34695
+ AI_POTENTIAL_ATTACK_TARGET_DIRECTIONS = Symbol(
34696
+ None,
34697
+ None,
34698
+ None,
34699
+ "AI_POTENTIAL_ATTACK_TARGET_DIRECTIONS",
34700
+ "[Runtime] Stores the directions that the AI can use an attack in. Parallel to AI_POTENTIAL_ATTACK_TARGET_WEIGHTS and AI_POTENTIAL_ATTACK_TARGETS.",
34701
+ "struct direction_id_8[8]",
34702
+ )
34703
+
34704
+ AI_POTENTIAL_ATTACK_TARGET_WEIGHTS = Symbol(
34705
+ None,
34706
+ None,
34707
+ None,
34708
+ "AI_POTENTIAL_ATTACK_TARGET_WEIGHTS",
34709
+ "[Runtime] Stores the targeting weights for each direction the AI can use an attack in. Parallel to AI_POTENTIAL_ATTACK_TARGET_DIRECTIONS and AI_POTENTIAL_ATTACK_TARGETS.",
34710
+ "uint32_t[8]",
34711
+ )
34712
+
34713
+ AI_POTENTIAL_ATTACK_TARGETS = Symbol(
34714
+ None,
34715
+ None,
34716
+ None,
34717
+ "AI_POTENTIAL_ATTACK_TARGETS",
34718
+ "[Runtime] Stores the target entity for each direction the AI can use an attack in. Parallel to AI_POTENTIAL_ATTACK_TARGET_DIRECTIONS and AI_POTENTIAL_ATTACK_TARGET_DIRECTIONS.",
34719
+ "struct entity*[8]",
34720
+ )
34721
+
32751
34722
  ROLLOUT_ICE_BALL_MISSED = Symbol(
32752
34723
  None,
32753
34724
  None,
@@ -32820,6 +34791,15 @@ class NaItcmRamData:
32820
34791
  "int",
32821
34792
  )
32822
34793
 
34794
+ DEFAULT_TILE_COPY = Symbol(
34795
+ None,
34796
+ None,
34797
+ None,
34798
+ "DEFAULT_TILE_COPY",
34799
+ "A copy of DEFAULT_TILE. Used to hold the default tile returned from GetTileSafe.",
34800
+ "struct tile",
34801
+ )
34802
+
32823
34803
  FLOOR_GENERATION_STATUS = Symbol(
32824
34804
  None,
32825
34805
  None,