2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-21 21:39:11 +00:00

Input handling for CGuiFrame

This commit is contained in:
Jack Andersen
2016-03-14 13:32:44 -10:00
parent aa207d3e5f
commit 66247cfe79
18 changed files with 501 additions and 93 deletions

View File

@@ -8,13 +8,23 @@ namespace urde
class CGuiAutoRepeatData
{
EPhysicalControllerID x0_a;
EPhysicalControllerID x4_b;
float x8_[8] = {0.f, 0.f, 0.f, 0.f, 0.2f, 0.2f, 0.2f, 0.2f};
bool x28_[8] = {};
EPhysicalControllerID x0_instEvent;
EPhysicalControllerID x4_contEvent;
float x8_nextDue[4] = {0.f, 0.f, 0.f, 0.f};
float x18_remainder[4] = {0.2f, 0.2f, 0.2f, 0.2f};
bool x28_pressed[4] = {};
bool x2c_defer[4] = {};
public:
CGuiAutoRepeatData(EPhysicalControllerID a, EPhysicalControllerID b)
: x0_a(a), x4_b(b) {}
CGuiAutoRepeatData(EPhysicalControllerID inst, EPhysicalControllerID cont)
: x0_instEvent(inst), x4_contEvent(cont) {}
void SetActive(int cIdx, float eTime)
{
x8_nextDue[cIdx] = eTime + 0.6f;
x28_pressed[cIdx] = true;
x2c_defer[cIdx] = true;
x18_remainder[cIdx] = 0.2f;
}
void AddAutoEvent(int cIdx, CGuiPhysicalMsg::PhysicalMap& events, float eTime);
};
}