summaryrefslogtreecommitdiff
path: root/src/KingSystem/Physics/RigidBody/physEdgeRigidBodyParam.h
blob: c3d3d45893942f453b20abcc3fdc0260d5034b1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#pragma once

#include <container/seadBuffer.h>
#include <utility/aglParameter.h>
#include <utility/aglParameterList.h>
#include <utility/aglParameterObj.h>

namespace ksys::phys {

struct EdgeRigidBodyParam : agl::utl::ParameterObj {
    EdgeRigidBodyParam();
    ~EdgeRigidBodyParam() override;

    agl::utl::Parameter<sead::SafeString> set_name;
    agl::utl::Parameter<sead::SafeString> body_name;
    agl::utl::Parameter<sead::SafeString> edge_type;
};

struct EdgeRigidBodySetParam : agl::utl::ParameterList {
    EdgeRigidBodySetParam();
    ~EdgeRigidBodySetParam() override;
    EdgeRigidBodySetParam(const EdgeRigidBodySetParam&) = delete;
    auto operator=(const EdgeRigidBodySetParam&) = delete;

    void parse(int num, sead::Heap* heap);

    sead::Buffer<EdgeRigidBodyParam> edge_rigid_bodies;
};

}  // namespace ksys::phys