sm64coopdx/include/course_table.h

35 lines
1,004 B
C
Raw Permalink Normal View History

2020-06-02 16:44:34 +00:00
#ifndef COURSE_TABLE_H
#define COURSE_TABLE_H
2019-12-02 02:52:53 +00:00
// Start of the 3 cap courses in a row.
#define COURSE_CAP_COURSES COURSE_COTMC
2020-01-03 15:38:57 +00:00
#define DEFINE_COURSE(courseenum, _1) courseenum,
2019-12-02 02:52:53 +00:00
#define DEFINE_COURSES_END() \
COURSE_BONUS_STAGES, \
COURSE_STAGES_MAX = COURSE_BONUS_STAGES - 1, \
COURSE_STAGES_COUNT = COURSE_STAGES_MAX,
2020-01-03 15:38:57 +00:00
#define DEFINE_BONUS_COURSE(courseenum, _1) courseenum,
2019-12-02 02:52:53 +00:00
enum CourseNum
{
#include "levels/course_defines.h"
2020-06-02 16:44:34 +00:00
COURSE_END, // To mark end + 1 for marking max and count.
// TODO: clean this up. This is still bad. Which
2019-12-02 02:52:53 +00:00
// one is clearer? Need to get rid of one of these.
COURSE_MAX = COURSE_END - 1,
COURSE_COUNT = COURSE_MAX,
COURSE_MIN = COURSE_NONE + 1
};
#undef DEFINE_COURSE
#undef DEFINE_COURSES_END
#undef DEFINE_BONUS_COURSE
#define COURSE_IS_MAIN_COURSE(cmd) (cmd >= COURSE_MIN && cmd <= COURSE_STAGES_MAX)
2023-11-20 18:11:42 +00:00
#define COURSE_IS_VALID_COURSE(cmd) (cmd >= COURSE_MIN && cmd <= COURSE_MAX)
2019-12-02 02:52:53 +00:00
2020-06-02 16:44:34 +00:00
#endif // COURSE_TABLE_H