Mario Kart 64
Loading...
Searching...
No Matches
waypoints.h
Go to the documentation of this file.
1#ifndef WAYPOINTS_H
2#define WAYPOINTS_H
3
4#include "common_structs.h"
5
6typedef struct {
7 /* 0x00 */ s16 posX;
8 /* 0x02 */ s16 posY;
9 /* 0x04 */ s16 posZ;
10 /* 0x06 */ u16 trackSegment;
11} TrackWaypoint; // size = 0x08
12
22
27// Waypoint types?
28extern s16 *D_80164580[];
29// Based on func_80010DBC this may be angles between waypoints
30// D_80164590[i] = atan2(waypoint_i, waypoint_i+1)?
31extern s16 *D_80164590[];
32// No idea. Adjacency list?
33extern s16 *D_801645A0[];
34
40// Shadows values from gNearestWaypointByPlayerId
41extern s16 D_80162FCE;
42// Shadows values from gPathIndexByPlayerId
43extern s32 D_80163448;
44// Shadows values from D_80164560
46// Shadows values from D_80164570
48// Shadows values from D_80164580
49extern s16 *D_801631D8;
50// Shadows values from D_80164590
51extern s16 *D_801631DC;
52// Shadowd values from gWaypointCountByPathIndex
53extern u16 D_80164430;
54// Shadows values from D_80164550
56// Shadows values from D_801645A0
57extern s16 *D_801645E0;
58
59
60extern u16 gNearestWaypointByPlayerId[]; // D_80164438
61// Total waypoints passed by playerId?
62extern s32 D_80164450[];
63extern u16 gPathIndexByPlayerId[]; // D_801645B0
64extern u16 gWaypointCountByPathIndex[]; // D_801645C8
65// These values are only used when the camera is in "cinematic" mode
66extern s16 gNearestWaypointByCameraId[]; // D_80164668
67
73// Tracks something on a per-player basis, no idea what though
74extern f32 D_80163068[];
75// Track segment by playerId, although it curiously does NOT track values for human players
76// So, in 2 Player Grand Prix, the first 2 entries are always 0
77extern u16 D_80163318[];
78// Seems to be a per-path overcount of the waypoint count
79extern s32 D_80163368[];
80// Seemingly the Z position of the 1st waypoint in the 0th path?
81extern f32 D_8016344C;
82// These seem to track whether a player has entered or exited the "unknown" zone in yoshi's valley
83// See func_80009000 and func_800090F0
84// Is 1 when a player is in the "unknown" zone in yoshi's valley
85extern s16 D_80163490[];
86// Is 1 when a player leaves the "unknown" zone in yoshi's valley
87extern s16 D_801634A8[];
88// Tracks whether a given player is in the "unknown" zone of yoshi's valley
89extern s16 D_801644F8[];
90
91#endif
Definition waypoints.h:6
u16 trackSegment
Definition waypoints.h:10
s16 posZ
Definition waypoints.h:9
s16 posY
Definition waypoints.h:8
s16 posX
Definition waypoints.h:7
signed int s32
Definition ultratypes.h:15
signed short int s16
Definition ultratypes.h:13
float f32
Definition ultratypes.h:33
unsigned short int u16
Definition ultratypes.h:14
s16 D_80163490[]
Definition code_80005FD0.c:129
TrackWaypoint * D_80164550[]
Definition code_80005FD0.c:173
TrackWaypoint * D_80164560[]
Definition code_80005FD0.c:174
TrackWaypoint * D_801631D4
Definition code_80005FD0.c:82
TrackWaypoint * D_80164490
Definition code_80005FD0.c:166
s16 * D_80164580[]
Definition code_80005FD0.c:176
s16 D_801644F8[]
Definition code_80005FD0.c:170
u16 gNearestWaypointByPlayerId[]
Definition code_80005FD0.c:162
s32 D_80163448
Definition code_80005FD0.c:118
s16 gNearestWaypointByCameraId[]
Definition code_80005FD0.c:191
u16 D_80163318[]
Definition code_80005FD0.c:99
s16 * D_801631DC
Definition code_80005FD0.c:84
f32 D_8016344C
Definition code_80005FD0.c:119
s16 * D_801631D8
Definition code_80005FD0.c:83
s16 * D_801645E0
Definition code_80005FD0.c:182
TrackWaypoint * D_801631D0
Definition code_80005FD0.c:81
s16 * D_80164590[]
Definition code_80005FD0.c:177
u16 gPathIndexByPlayerId[]
Definition code_80005FD0.c:179
s16 * D_801645A0[]
Definition code_80005FD0.c:178
TrackWaypoint * D_80164570[]
Definition code_80005FD0.c:175
s16 D_801634A8[]
Definition code_80005FD0.c:130
s32 D_80163368[]
Definition code_80005FD0.c:105
s16 D_80162FCE
Definition code_80005FD0.c:54
s32 D_80164450[]
Definition code_80005FD0.c:163
u16 gWaypointCountByPathIndex[]
Definition code_80005FD0.c:180
f32 D_80163068[]
Definition code_80005FD0.c:67
u16 D_80164430
Definition code_80005FD0.c:161