group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
EquipmentSlots.hpp
Go to the documentation of this file.
1
3
4#pragma once
5
6#include "hud/HudWidget.hpp"
7
8#include <array>
9#include <string>
10
12{
14 {
15 float scale = 1.f;
16 float offsetX = 0.f;
17 float offsetY = 0.f;
18 float stretchX = 1.f;
19 float stretchY = 1.f;
20 };
21
34
35 float iconFrameWidth = 92.f;
36 float iconFrameHeight = 87.f;
37 float abilityIconSize = 54.f;
38 float bindingFontSize = 20.f;
39 float barWidth = 220.f;
40 float barHeight = 87.f;
41 float iconBarGap = 0.f;
42 float centerGap = 0.f;
43
44 std::array<AbilityElementTuning, 2> abilityElements{};
45
47 void update(float dt, const HudGameState& state, HudTweenPool& tweens) override;
48 void draw(HudContext& ctx, float drawX, float drawY) override;
49
50private:
52 std::array<std::string, 2> bindingLabels_{"", ""};
53};
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
Definition EquipmentSlots.hpp:23
SvgComponentTuning icon
Definition EquipmentSlots.hpp:25
SvgComponentTuning iconFrame
Definition EquipmentSlots.hpp:24
bool flipIconY
Definition EquipmentSlots.hpp:30
float bindingOffsetY
Definition EquipmentSlots.hpp:28
bool flipBarY
Definition EquipmentSlots.hpp:32
SvgComponentTuning bar
Definition EquipmentSlots.hpp:26
bool flipBarX
Definition EquipmentSlots.hpp:31
float bindingOffsetX
Definition EquipmentSlots.hpp:27
bool flipIconX
Definition EquipmentSlots.hpp:29
Definition EquipmentSlots.hpp:14
float offsetX
Definition EquipmentSlots.hpp:16
float stretchY
Definition EquipmentSlots.hpp:19
float stretchX
Definition EquipmentSlots.hpp:18
float offsetY
Definition EquipmentSlots.hpp:17
float scale
Definition EquipmentSlots.hpp:15
void update(float dt, const HudGameState &state, HudTweenPool &tweens) override
Called each frame before draw(). Update animation, consume events.
Definition EquipmentSlots.cpp:268
float barWidth
Definition EquipmentSlots.hpp:39
float iconBarGap
Definition EquipmentSlots.hpp:41
EquipmentSlots()
Definition EquipmentSlots.cpp:242
std::array< std::string, 2 > bindingLabels_
Definition EquipmentSlots.hpp:52
void draw(HudContext &ctx, float drawX, float drawY) override
Emit geometry into the draw context.
Definition EquipmentSlots.cpp:283
float centerGap
Definition EquipmentSlots.hpp:42
float barHeight
Definition EquipmentSlots.hpp:40
float abilityIconSize
Definition EquipmentSlots.hpp:37
HudEquipmentState state_
Definition EquipmentSlots.hpp:51
float iconFrameHeight
Definition EquipmentSlots.hpp:36
float iconFrameWidth
Definition EquipmentSlots.hpp:35
std::array< AbilityElementTuning, 2 > abilityElements
Definition EquipmentSlots.hpp:44
float bindingFontSize
Definition EquipmentSlots.hpp:38
Equipment slot state — drives the bottom-center grapple/grenade/tactical row.
Definition HudTypes.hpp:232
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