Merge branch 'main' into main

This commit is contained in:
Aetias
2025-04-20 08:26:37 +02:00
committed by GitHub
2 changed files with 36 additions and 4 deletions
+5 -1
View File
@@ -5,6 +5,8 @@
#include "nds/math.h"
#include "types.h"
extern u16 *data_0207aecc;
typedef u16 TouchFlags;
enum TouchFlag_ {
TouchFlag_TouchedNow = 0x0001,
@@ -42,9 +44,11 @@ public:
void Update(TouchState *state, u16 speed);
bool func_ov00_0207aeac();
void UpdateConditionally(TouchState *state, u16 speed);
void func_ov00_0207af38(u16 speed, bool param2);
void func_ov00_0207af38(u16 speedIncrease, bool shouldIncrease);
~TouchControl();
static bool func_0202b864(Vec3p *param1, s32 size, unk8 param3);
static bool func_0202b894(Vec3p *param1, s32 size, unk8 param3);
};
void Fill16(int value, unsigned short *dst, int size); // TODO: Replace with header file
+31 -3
View File
@@ -1,11 +1,39 @@
#include "Player/TouchControl.hpp"
TouchControl::TouchControl() {}
void TouchControl::IncreaseSpeed(s16 increase) {}
void TouchControl::IncreaseSpeed(s16 increase) {
this->mFlags = 0;
this->mSpeed += increase;
}
void TouchControl::UpdateFlags(u16 speed) {}
void TouchControl::UpdateWithStateFlags(TouchStateFlags *state, u16 speed) {}
void TouchControl::Update(TouchState *state, u16 speed) {}
bool TouchControl::func_ov00_0207aeac() {}
bool TouchControl::func_ov00_0207aeac() {
return ((*data_0207aecc & 0x8000) >> 15) == 1;
}
void TouchControl::UpdateConditionally(TouchState *state, u16 speed) {}
void TouchControl::func_ov00_0207af38(u16 speed, bool param2) {}
void TouchControl::func_ov00_0207af38(u16 speedIncrease, bool shouldIncrease) {
TouchStateFlags touchState;
if (shouldIncrease) {
IncreaseSpeed(speedIncrease); /* TODO: IncreaseSpeed expects an s16 variable,
while speedIncrease is a u16. As a result, the function
performs a conversion that is not present in the binary. */
return;
}
u32 result = TouchControl::func_ov00_0207aeac();
if (result != 0) {
Fill16(0, &touchState.touchX, 8);
} else {
GetTouchStateFlags(&touchState);
}
UpdateWithStateFlags(&touchState, speedIncrease);
}
TouchControl::~TouchControl() {}