mirror of
https://github.com/zeldaret/botw
synced 2026-06-04 10:48:32 -04:00
77 lines
1.7 KiB
C++
77 lines
1.7 KiB
C++
#include "KingSystem/Physics/System/physDefines.h"
|
|
|
|
namespace ksys::phys {
|
|
|
|
const char* contactLayerToText(ContactLayer layer) {
|
|
return layer.text();
|
|
}
|
|
|
|
ContactLayer contactLayerFromText(const sead::SafeString& text) {
|
|
for (auto layer : ContactLayer()) {
|
|
if (text == layer.text())
|
|
return layer;
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
const char* materialToText(Material material) {
|
|
return material.text();
|
|
}
|
|
|
|
Material materialFromText(const sead::SafeString& text) {
|
|
for (auto material : Material()) {
|
|
if (text == material.text())
|
|
return material;
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
const char* groundHitToText(GroundHit hit) {
|
|
return hit.text();
|
|
}
|
|
|
|
GroundHit groundHitFromText(const sead::SafeString& text) {
|
|
for (auto hit : GroundHit()) {
|
|
if (text == hit.text())
|
|
return hit;
|
|
}
|
|
return GroundHit::HitAll;
|
|
}
|
|
|
|
const char* floorCodeToText(FloorCode code) {
|
|
return code.text();
|
|
}
|
|
|
|
FloorCode floorCodeFromText(const sead::SafeString& text) {
|
|
for (auto code : FloorCode()) {
|
|
if (text == code.text())
|
|
return code;
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
const char* wallCodeToText(WallCode code) {
|
|
return code.text();
|
|
}
|
|
|
|
WallCode wallCodeFromText(const sead::SafeString& text) {
|
|
for (auto code : WallCode()) {
|
|
if (text == code.text())
|
|
return code;
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
// NON_MATCHING: duplicated branches?
|
|
MotionType motionTypeFromText(const sead::SafeString& text) {
|
|
if (text == "Dynamic")
|
|
return MotionType::Dynamic;
|
|
if (text == "Fixed")
|
|
return MotionType::Fixed;
|
|
if (text == "Keyframed")
|
|
return MotionType::Keyframed;
|
|
return MotionType::Unknown;
|
|
}
|
|
|
|
} // namespace ksys::phys
|