Files
Petari/include/Game/Camera/CameraShakePatternImpl.hpp
2024-08-20 20:19:54 -04:00

53 lines
1.1 KiB
C++

#pragma once
#include "JSystem/JGeometry/TVec.hpp"
class CameraShakePattern {
public:
inline CameraShakePattern() {
_4 = 0;
}
virtual inline ~CameraShakePattern() {
}
virtual bool isEnd() const = 0;
virtual void getOffset(TVec2f *) const = 0;
virtual void start() = 0;
virtual void update() = 0;
u32 _4;
};
class CameraShakePatternSingly : public CameraShakePattern {
public:
CameraShakePatternSingly(float);
virtual ~CameraShakePatternSingly();
virtual bool isEnd() const;
virtual void getOffset(TVec2f *) const;
virtual void start();
virtual void update();
void setDirection(const TVec2f &);
f32 _8;
TVec2f mOffset; // 0xC
TVec2f mDirection; // 0x14
};
class CameraShakePatternVerticalSin : public CameraShakePattern {
public:
CameraShakePatternVerticalSin(float, float);
virtual ~CameraShakePatternVerticalSin();
virtual bool isEnd() const;
virtual void getOffset(TVec2f *) const;
virtual void start();
virtual void update();
f32 _8;
f32 _C;
TVec2f mOffset; // 0x10
};