mirror of
https://github.com/MonsterDruide1/OdysseyDecomp
synced 2026-04-23 09:04:21 +00:00
Some checks are pending
Compile and verify functions / compile_verify (push) Waiting to run
Copy headers to separate repo / copy_headers (push) Waiting to run
decomp-dev / publish_progress_decomp_dev (1.0) (push) Waiting to run
lint / clang-format (push) Waiting to run
lint / custom-lint (push) Waiting to run
Check and verify that setup works on NixOS / nixos_verify (push) Waiting to run
progress / publish_progress (push) Waiting to run
testcompile / test_compile (push) Waiting to run
Trigger full-sync on the tracker repo on push / api-trigger-workflow (push) Waiting to run
42 lines
1.4 KiB
C++
42 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include <math/seadQuat.h>
|
|
|
|
#include "Library/Fluid/IUseFluidSurface.h"
|
|
#include "Library/HostIO/HioNode.h"
|
|
|
|
namespace al {
|
|
class LiveActor;
|
|
struct ActorInitInfo;
|
|
|
|
// TODO: Finish this
|
|
class RippleCtrl : public IUseFluidSurface, public HioNode {
|
|
public:
|
|
RippleCtrl(LiveActor* parent);
|
|
|
|
static RippleCtrl* tryCreate(LiveActor* parent);
|
|
|
|
void init(const ActorInitInfo& info);
|
|
void calcPosQuat(sead::Quatf* quat) const;
|
|
void calcOffsetedTrans(sead::Vector3f* trans) const;
|
|
void tryCreateFlowMap();
|
|
void initAfterPlacement();
|
|
void update();
|
|
bool calcIsInArea(const sead::Vector3f&) const override;
|
|
bool isCollide(s32, s32) const;
|
|
void calcPos(sead::Vector3f*, const sead::Vector3f&) const override;
|
|
const sead::Vector3f& getCollidePos(s32, s32) const;
|
|
void calcNormal(sead::Vector3f*, const sead::Vector3f&) const override;
|
|
bool tryAddRipple(const sead::Vector3f&, f32, f32) override;
|
|
bool tryAddRippleWithRange(const sead::Vector3f&, f32, f32, f32, f32) override;
|
|
bool tryAddQuadRipple(const sead::Vector3f&, const sead::Vector3f&, const sead::Vector3f&,
|
|
const sead::Vector3f&, f32) override;
|
|
void setFieldScale(f32) override;
|
|
const char* getTypeName() const override;
|
|
void forceResetCount();
|
|
|
|
private:
|
|
unsigned char padding[0x128 - sizeof(IUseFluidSurface)];
|
|
};
|
|
} // namespace al
|