Documents `ov5_021D5B40`.
This module contains the functions used to create and delete the field
system's camera, as well as the camera presets (or types) used by the
different maps (see `include/data/map_headers.h`).
Also moves `CameraAngle` from `overlay115/camera_angle.h` to `camera.h`.
This is the main module for the mystery gift application, although
wireless functionality is mostly handled by other modules, as are some
miscellaneous functions.
* Clean up and finish documenting `unk_02096420`
* Rename `unk_02096420` -> `party_use_item`
* Use macros, rename functions to match first arg
* Rename `party_use_item` -> `item_use_pokemon`
* Document the Wonder Cards application
* Rename module and text bank
Text bank `unk_0421` -> `mystery_gift_menu`
Module `ov97_02230410` -> `wonder_cards_app`
* Missing uses of defined vars
* Vars 0x4000 to 0x402F with Var macros
* Vars 0x4000 to 0x402F with other macros
^ Conflicts:
^ res/field/scripts/scripts_amity_square.s
^ res/field/scripts/scripts_veilstone_city_southwest_house.s
* Other vars
* Special Flags
* Unk vars
* NUM_VARS
* `SPECIAL_VARS_START` -> `SCRIPT_LOCAL_VARS_START`
* `VAR_0x800C` -> `VAR_RESULT`
* `VAR_0x800D` -> `VAR_LAST_TALKED`
* Format
* VAR_MAP_LOCAL
* VAR_OBJ_GFX_ID
* STORY_VARS
* Coins scr commands
* Game Corner messages
* GoToIfCannotAddCoins macro
* CheckMoney
* Using GoToIfNotEnoughMoney
* Most of Game Corner script documented
* Some slot machine documentation
* AddToGameRecord
* Last scr commands but 1
* Format
* Fix typo
This simply renames the `y` component in 2D coordinates to `z` in
the names of variables, constants, function parameters and struct
members.
Most common examples include:
- `tileY` -> `tileZ`
- `mapMatrixY` -> `mapMatrixZ`
- `sizeY` -> `sizeZ`
Signed-off-by: Kuruyia <github@kuruyia.net>
This documents the `unk_02054BD0.c` file, which is in charge of loading
the terrain attributes from the land data NARC for some map load modes,
separately from the land data manager.
Signed-off-by: Kuruyia <github@kuruyia.net>
This documents the `MAP_OBJ_STATUS_23` map object status flag that
affects whether height is calculated for a map object using the terrain
collision manager.
This also documents the `ScrCmd_211` map script commands, that allows
setting this status flag from map scripts.
Signed-off-by: Kuruyia <github@kuruyia.net>
This documents the `unk_0207160C.c` file, which is in charge of setting
up and managing the platform lift dynamic map feature for maps that
contains platform lifts (Iron Island and the Pokémon League).
This does not manage platform lifts used by gyms.
Signed-off-by: Kuruyia <github@kuruyia.net>
This documents the `unk_02027F50.c` file, which is in charge of managing
data used by some maps to be more dynamic, and that needs to be
persisted in the save file. Examples include Sunyshore Gym's bridges
rotation, Pastoria Gym's water level, Canalave Gym's platform
positions...
This also documents related code in the save data module, and names
constants used as IDs for identifying the map that is currently using
dynamic features.
Signed-off-by: Kuruyia <github@kuruyia.net>
This identifies the following map prop models:
- `34`: generic ship, found in Canalave City for instance.
- `123`: the healing machine found in Pokémon Centers.
- `239`: the blue button found in the Pastoria City Gym, used to set the
water to its highest level.
- `240`: the green button found in the Pastoria City Gym, used to set
the water to half its highest level.
- `241`: the orange button found in the Pastoria City Gym, used to set
the water to its lowest level.
- `303`: the muddy slope found in the overworld that needs a bike to
traverse.
- `304`: the interior variant of the muddy slope.
- `502`: the lift platform found only in the Pokémon League.
- `507`: the "healing machine"-type machine that registers the Pokémons
in the Hall of Fame.
- `538`: the S.S. Spiral (aka S.S. Sinnoh) ship used to travel between
Snowpoint City and the Fight Area.
Signed-off-by: Kuruyia <github@kuruyia.net>
This documents the `unk_02054D00.c` file, which is in charge of managing
height, collision and tile behavior between the terrain and the
player/map objects.
Signed-off-by: Kuruyia <github@kuruyia.net>
This moves the files holding constants for the BDHC, map matrix and map
prop subsystems to the `include/constants/field` directory.
Signed-off-by: Kuruyia <github@kuruyia.net>
* Footstep house types and script commands
* Generated ribbons + messages
* Get Friendship + Get/Set Ribbon map scripts
* First non egg in party
* Standarized "ribbonID" as "monDataParam" and "ribbonNum" as "ribbonID"
This documents the `ov5_021E779C.c` file, which is in charge of loading
map data from the `land_data.narc` archive, dynamically load and unload
maps as the player moves, and render the map base models and their
props.
Also, for the viewer's pleasure, it includes a ton of Distortion
World-specific functions.
This also documents the `ov5_021EEAC8.c` file, which is in charge of
managing buffer allocation for the map base model and BDHC data.
Signed-off-by: Kuruyia <github@kuruyia.net>