2017-12-05 18:55:48 +01:00
|
|
|
#ifndef GUARD_CONSTANTS_MAPS_H
|
|
|
|
#define GUARD_CONSTANTS_MAPS_H
|
|
|
|
|
2019-01-31 22:51:20 +01:00
|
|
|
#include "map_groups.h"
|
2017-12-05 18:55:48 +01:00
|
|
|
|
2022-08-26 03:34:05 +02:00
|
|
|
// Warps using this map will instead use the warp data stored in gSaveBlock1Ptr->dynamicWarp.
|
|
|
|
// Used for warps that need to change destinations, e.g. when stepping off an elevator.
|
|
|
|
#define MAP_DYNAMIC (0x7F | (0x7F << 8))
|
|
|
|
|
2017-12-05 18:55:48 +01:00
|
|
|
#define MAP_UNDEFINED (0xFF | (0xFF << 8))
|
|
|
|
|
|
|
|
#define MAP_GROUP(map) (MAP_##map >> 8)
|
|
|
|
#define MAP_NUM(map) (MAP_##map & 0xFF)
|
|
|
|
|
2021-11-15 18:04:54 +01:00
|
|
|
// IDs for dynamic warps. Both are used in the dest_warp_id field for warp events, but they
|
2022-08-26 03:34:05 +02:00
|
|
|
// are never read in practice. A dest_map of MAP_DYNAMIC is used to indicate that a
|
2023-01-18 17:54:06 +01:00
|
|
|
// dynamic warp should be used, at which point the warp id is ignored. They can be passed
|
|
|
|
// as the argument to SetWarpDestinationToDynamicWarp, but this argument is unused.
|
2021-11-15 18:04:54 +01:00
|
|
|
// As only one dynamic warp is saved at a time there's no need to distinguish between them.
|
|
|
|
#define WARP_ID_SECRET_BASE 0x7E
|
|
|
|
#define WARP_ID_DYNAMIC 0x7F
|
|
|
|
|
|
|
|
// Used to indicate an invalid warp id, for dummy warps or when a warp should
|
|
|
|
// use the given coordinates rather than the coordinates of a target warp.
|
|
|
|
#define WARP_ID_NONE (-1)
|
|
|
|
|
2017-12-05 18:55:48 +01:00
|
|
|
#endif // GUARD_CONSTANTS_MAPS_H
|