X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fmutators%2Fmutator%2Fwaypoints%2Fall.qh;h=9693d2809050cb5ff88b7d0072981795dfccb18c;hb=46ae54b152183f3e2895457f958fe830b1d97eb8;hp=790d08698858a2ff4c9b910f3bdf12a26f87d34d;hpb=5607e279fe7b0dc9f92e15556ed6dc33f17f549c;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/mutators/mutator/waypoints/all.qh b/qcsrc/common/mutators/mutator/waypoints/all.qh index 790d08698..9693d2809 100644 --- a/qcsrc/common/mutators/mutator/waypoints/all.qh +++ b/qcsrc/common/mutators/mutator/waypoints/all.qh @@ -3,13 +3,13 @@ #include "waypointsprites.qh" -void RegisterWaypoints(); -const int MAX_WAYPOINTS = 240; -entity WAYPOINTS[MAX_WAYPOINTS], WAYPOINTS_first, WAYPOINTS_last; -int WAYPOINT_COUNT; +REGISTRY(Waypoints, BITS(6)) +#define Waypoints_from(i) _Waypoints_from(i, WP_Null) +REGISTER_REGISTRY(Waypoints) +REGISTRY_CHECK(Waypoints) + /** If you register a new waypoint, make sure to add it to all.inc */ -#define REGISTER_WAYPOINT_(id, init) REGISTER(RegisterWaypoints, WP, WAYPOINTS, WAYPOINT_COUNT, id, m_id, init) -REGISTER_REGISTRY(RegisterWaypoints) +#define REGISTER_WAYPOINT_(id, init) REGISTER(Waypoints, WP, id, m_id, init) CLASS(Waypoint, Object) ATTRIB(Waypoint, m_id, int, 0) @@ -28,6 +28,36 @@ ENDCLASS(Waypoint) #define REGISTER_WAYPOINT(id, text, color, blink) REGISTER_WAYPOINT_(id, NEW(Waypoint, #id, text, color, blink)) +REGISTRY(RadarIcons, BITS(7)) +#define RadarIcons_from(i) _RadarIcons_from(i, RADARICON_NONE) +REGISTER_REGISTRY(RadarIcons) +REGISTRY_CHECK(RadarIcons) + +.int m_radaricon; +#define REGISTER_RADARICON(id, num) REGISTER(RadarIcons, RADARICON, id, m_id, new(RadarIcon)) { make_pure(this); this.m_radaricon = num; this.netname = #id; } + +REGISTER_WAYPOINT(Null, "", '0 0 0', 1); + +REGISTER_RADARICON(NONE, 0); +REGISTER_RADARICON(FLAG, 1); +REGISTER_RADARICON(FLAGCARRIER, 1); + +// TODO make these 3 and 4, and make images for them +REGISTER_RADARICON(HERE, 1); +REGISTER_RADARICON(DANGER, 1); + +REGISTER_RADARICON(WAYPOINT, 1); +REGISTER_RADARICON(HELPME, 1); +REGISTER_RADARICON(CONTROLPOINT, 1); +REGISTER_RADARICON(GENERATOR, 1); +REGISTER_RADARICON(OBJECTIVE, 1); +REGISTER_RADARICON(DOMPOINT, 1); +REGISTER_RADARICON(TAGGED, 1); + +REGISTER_RADARICON(Item, 1); +REGISTER_RADARICON(Vehicle, 1); +REGISTER_RADARICON(Weapon, 1); + #include "all.inc" #endif