group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
Minimap.hpp
Go to the documentation of this file.
1
2#pragma once
3
4#include "hud/HudWidget.hpp"
5
6#include <vector>
7
9{
10 float mapSize = 275.f;
11 float dotSize = 12.25f;
12 float dotZoneRadius = 109.5f;
13 float dotZoneOffsetX = -1.f;
14 float dotZoneOffsetY = 4.f;
15 bool showDotZoneDebug = false;
16
17 Minimap();
18 void update(float dt, const HudGameState& state, HudTweenPool& tweens) override;
19 void draw(HudContext& ctx, float drawX, float drawY) override;
20
21private:
22 float localX_ = 0.f, localZ_ = 0.f;
23 float localYaw_ = 0.f;
24 float worldRange_ = 100.f;
25 struct Dot
26 {
27 float worldX, worldZ;
28 };
29 std::vector<Dot> enemies_;
30};
Base struct for all HUD widgets.
Accumulates HUD geometry during a frame for batch rendering.
Definition HudContext.hpp:19
Fixed-size tween pool. No heap allocations.
Definition HudTween.hpp:35
Snapshot of game state consumed by the HUD each frame.
Definition HudTypes.hpp:367
Base class for a retained HUD element.
Definition HudWidget.hpp:16
Definition Minimap.hpp:26
float worldZ
Definition Minimap.hpp:27
float worldX
Definition Minimap.hpp:27
float mapSize
Pixel size of the Radar.svg quad.
Definition Minimap.hpp:10
float localX_
Definition Minimap.hpp:22
float localZ_
Definition Minimap.hpp:22
float localYaw_
Player yaw in radians.
Definition Minimap.hpp:23
float dotZoneOffsetY
Y offset of the dot projection circle from the SVG center.
Definition Minimap.hpp:14
float dotZoneRadius
Radius of the enemy-dot projection circle, in unscaled HUD pixels.
Definition Minimap.hpp:12
float dotSize
Definition Minimap.hpp:11
Minimap()
Definition Minimap.cpp:29
void update(float dt, const HudGameState &state, HudTweenPool &tweens) override
Called each frame before draw(). Update animation, consume events.
Definition Minimap.cpp:43
float worldRange_
Definition Minimap.hpp:24
bool showDotZoneDebug
Definition Minimap.hpp:15
void draw(HudContext &ctx, float drawX, float drawY) override
Emit geometry into the draw context.
Definition Minimap.cpp:55
std::vector< Dot > enemies_
Definition Minimap.hpp:29
float dotZoneOffsetX
X offset of the dot projection circle from the SVG center.
Definition Minimap.hpp:13