mirror of https://github.com/zeldaret/botw.git
Merge pull request #12 from notyourav/pr3
decompiled resResourceAwareness
This commit is contained in:
commit
228471ee3c
|
|
@ -88945,7 +88945,7 @@
|
|||
0x00000071011829dc,sub_71011829DC,376,
|
||||
0x0000007101182b54,sub_7101182B54,8,
|
||||
0x0000007101182b5c,sub_7101182B5C,8,
|
||||
0x0000007101182b64,Bawareness::ctor,1260,
|
||||
0x0000007101182b64,Bawareness::ctor,1260,_ZN4ksys3res9AwarenessC1Ev
|
||||
0x0000007101183050,sub_7101183050,372,
|
||||
0x00000071011831c4,sub_71011831C4,380,
|
||||
0x0000007101183340,sub_7101183340,132,
|
||||
|
|
@ -94280,23 +94280,23 @@
|
|||
0x00000071012f50c0,sub_71012F50C0,92,
|
||||
0x00000071012f511c,j__ZdlPv_1321,4,
|
||||
0x00000071012f5120,sub_71012F5120,8,
|
||||
0x00000071012f529c,nullsub_4833,4,
|
||||
0x00000071012f52a0,nullsub_4834,4,
|
||||
0x00000071012f52a4,Bawareness::parse,5992,
|
||||
0x00000071012f6a0c,ResourceBawareness::parse,28,
|
||||
0x00000071012f6a28,sub_71012F6A28,336,
|
||||
0x00000071012f6b78,sub_71012F6B78,324,
|
||||
0x00000071012f6cbc,sub_71012F6CBC,8,
|
||||
0x00000071012f6cc4,sub_71012F6CC4,8,
|
||||
0x00000071012f6ccc,sub_71012F6CCC,92,
|
||||
0x00000071012f6d28,sub_71012F6D28,8,
|
||||
0x00000071012f6d30,sub_71012F6D30,8,
|
||||
0x00000071012f6d38,sub_71012F6D38,92,
|
||||
0x00000071012f6d94,sub_71012F6D94,332,
|
||||
0x00000071012f6ee0,sub_71012F6EE0,320,
|
||||
0x00000071012f7020,sub_71012F7020,8,
|
||||
0x00000071012f7028,sub_71012F7028,340,
|
||||
0x00000071012f717c,sub_71012F717C,328,
|
||||
0x00000071012f529c,nullsub_4833,4,_ZN4ksys3res9Awareness9doCreate_EPhjPN4sead4HeapE
|
||||
0x00000071012f52a0,nullsub_4834,4,_ZThn632_N4ksys3res9Awareness9doCreate_EPhjPN4sead4HeapE
|
||||
0x00000071012f52a4,Bawareness::parse,5992,_ZN4ksys3res9Awareness6parse_EPhmPN4sead4HeapE
|
||||
0x00000071012f6a0c,ResourceBawareness::parse,28,_ZThn632_N4ksys3res9Awareness6parse_EPhmPN4sead4HeapE
|
||||
0x00000071012f6a28,sub_71012F6A28,336,_ZN4ksys3res9AwarenessD2Ev
|
||||
0x00000071012f6b78,sub_71012F6B78,324,_ZN4ksys3res9AwarenessD0Ev
|
||||
0x00000071012f6cbc,sub_71012F6CBC,8,_ZN4ksys3res9Awareness10ParamIO_m0Ev
|
||||
0x00000071012f6cc4,sub_71012F6CC4,8,_ZNK4ksys3res9Awareness27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE?
|
||||
0x00000071012f6ccc,sub_71012F6CCC,92,_ZNK4ksys3res9Awareness18getRuntimeTypeInfoEv
|
||||
0x00000071012f6d28,sub_71012F6D28,8,_ZNK4ksys3res9Awareness10needsParseEv
|
||||
0x00000071012f6d30,sub_71012F6D30,8,_ZThn632_NK4ksys3res9Awareness27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE?
|
||||
0x00000071012f6d38,sub_71012F6D38,92,_ZThn632_NK4ksys3res9Awareness18getRuntimeTypeInfoEv
|
||||
0x00000071012f6d94,sub_71012F6D94,332,_ZThn632_N4ksys3res9AwarenessD1Ev
|
||||
0x00000071012f6ee0,sub_71012F6EE0,320,_ZThn632_N4ksys3res9AwarenessD0Ev
|
||||
0x00000071012f7020,sub_71012F7020,8,_ZThn632_NK4ksys3res9Awareness10needsParseEv
|
||||
0x00000071012f7028,sub_71012F7028,340,_ZThn664_N4ksys3res9AwarenessD1Ev
|
||||
0x00000071012f717c,sub_71012F717C,328,_ZThn664_N4ksys3res9AwarenessD0Ev
|
||||
0x00000071012f7438,sub_71012F7438,520,
|
||||
0x00000071012f7640,sub_71012F7640,940,
|
||||
0x00000071012f79ec,sub_71012F79EC,8,
|
||||
|
|
|
|||
|
Can't render this file because it is too large.
|
|
|
@ -128,6 +128,8 @@ target_sources(uking PRIVATE
|
|||
resResourceAIProgram.h
|
||||
resResourceArchive.cpp
|
||||
resResourceArchive.h
|
||||
resResourceAwareness.cpp
|
||||
resResourceAwareness.h
|
||||
resResourceDemo.cpp
|
||||
resResourceDemo.h
|
||||
resResourceDrop.cpp
|
||||
|
|
|
|||
|
|
@ -0,0 +1,89 @@
|
|||
#include "KingSystem/Resource/resResourceAwareness.h"
|
||||
|
||||
namespace ksys::res {
|
||||
|
||||
Awareness::Awareness() : ParamIO("awareness", 0) {}
|
||||
|
||||
bool Awareness::parse_(u8* data, size_t, sead::Heap*) {
|
||||
addObj(&mBasisObj, "Basis");
|
||||
addObj(&mSightObj, "Sight");
|
||||
addObj(&mHearingObj, "Hearing");
|
||||
addObj(&mSenseObj, "Sense");
|
||||
addObj(&mWorryObj, "Worry");
|
||||
|
||||
contactpoint_num.init(64, "contactpoint_num", "センサーに引っ掛けるバッファの数", &mBasisObj);
|
||||
base_node_name.init(sead::FixedSafeString<32>(""), "base_node_name", "前方基準ノード",
|
||||
&mBasisObj);
|
||||
is_bind_rot.init(false, "is_bind_rot", "姿勢を追従させる", &mBasisObj);
|
||||
is_bind_pos.init(false, "is_bind_pos", "位置を追従させる", &mBasisObj);
|
||||
base_offset.init(sead::Vector3f::zero, "base_offset", "位置オフセット", &mBasisObj);
|
||||
base_dir.init(2, "base_dir", "基準方向", &mBasisObj);
|
||||
up_dir.init(6, "up_dir", "UP方向", &mBasisObj);
|
||||
awareness_target.init(sead::FixedSafeString<32>("一般敵"), "awareness_target", "種別設定",
|
||||
&mBasisObj);
|
||||
interest_lv1_radius.init(5.0, "interest_lv1_radius", "興味値用接近距離", &mBasisObj);
|
||||
system_radius.init(0.0, "system_radius", "システム半径(プログラマ設定用)", &mBasisObj);
|
||||
invalidate_wheather_ratio.init(false, "invalidate_wheather_ratio", "天候影響無視", &mBasisObj);
|
||||
|
||||
sight_buffer_num.init(32, "sight_buffer_num", "情報を格納するバッファの数", &mSightObj);
|
||||
sight_radius.init(15.0, "sight_radius", "発見水平範囲", &mSightObj);
|
||||
sight_angle.init(1.04719758034, "sight_angle", "発見有効角度", &mSightObj);
|
||||
sight_height_max.init(4.0, "sight_height_max", "発見垂直範囲最大", &mSightObj);
|
||||
sight_height_min.init(-2.0, "sight_height_min", "発見垂直範囲最小", &mSightObj);
|
||||
sight_height_near_max.init(4.0, "sight_height_near_max", "至近発見垂直範囲最大", &mSightObj);
|
||||
sight_height_near_min.init(-2.0, "sight_height_near_min", "至近発見垂直範囲最小", &mSightObj);
|
||||
sight_alert_radius.init(0.0, "sight_alert_radius", "警戒水平範囲", &mSightObj);
|
||||
sight_alert_angle.init(0.0, "sight_alert_angle", "警戒有効角度", &mSightObj);
|
||||
sight_alert_height_max.init(0.0, "sight_alert_height_max", "警戒垂直範囲最大", &mSightObj);
|
||||
sight_alert_height_min.init(0.0, "sight_alert_height_min", "警戒垂直範囲最小", &mSightObj);
|
||||
sight_alert_height_near_max.init(0.0, "sight_alert_height_near_max", "至近警戒垂直範囲最大",
|
||||
&mSightObj);
|
||||
sight_alert_height_near_min.init(0.0, "sight_alert_height_near_min", "至近警戒垂直範囲最小",
|
||||
&mSightObj);
|
||||
sight_ignore_grass_radius.init(2.0, "sight_ignore_grass_radius", "草無視範囲", &mSightObj);
|
||||
sight_delay_time_max.init(0, "sight_delay_time_max", "認識遅延時間最大", &mSightObj);
|
||||
sight_ray_check_range_max.init(-1.0, "sight_ray_check_range_max", "レイキャストの長さ制限値",
|
||||
&mSightObj);
|
||||
sight_base_node_name.init(sead::FixedSafeString<32>(""), "sight_base_node_name",
|
||||
"(上書き用)前方基準ノード", &mSightObj);
|
||||
sight_far_use.init(false, "sight_far_use", "遠距離視界を使う", &mSightObj);
|
||||
sight_radius_far.init(0.0, "sight_radius_far", "遠距離開始距離", &mSightObj);
|
||||
sight_angle_far.init(1.04719758034, "sight_angle_far", "遠距離発見有効角度", &mSightObj);
|
||||
|
||||
hearing_buffer_num.init(32, "hearing_buffer_num", "情報を格納するバッファの数", &mHearingObj);
|
||||
hearing_radius.init(15.0, "hearing_radius", "半径", &mHearingObj);
|
||||
hearing_notice_level.init(1.0, "hearing_notice_level", "発見状態になるノイズレベル",
|
||||
&mHearingObj);
|
||||
hearing_alert_level.init(0.40000000596, "hearing_alert_level", "警戒状態になるノイズレベル",
|
||||
&mHearingObj);
|
||||
hearing_blind_angle.init(0.0, "hearing_blind_angle", "死角角度", &mHearingObj);
|
||||
hearing_blind_margin_angle.init(0.0, "hearing_blind_margin_angle", "死角入り角度",
|
||||
&mHearingObj);
|
||||
hearing_reduce_ratio.init(0.0, "hearing_reduce_ratio", "死角に入られた際のノイズ反応倍率",
|
||||
&mHearingObj);
|
||||
hearing_delay_time_max.init(0, "hearing_delay_time_max", "認識遅延時間最大", &mHearingObj);
|
||||
hearing_base_node_name.init(sead::FixedSafeString<32>(""), "hearing_base_node_name",
|
||||
"(上書き用)前方基準ノード", &mHearingObj);
|
||||
|
||||
sense_buffer_num.init(32, "sense_buffer_num", "情報を格納するバッファの数", &mSenseObj);
|
||||
sense_target.init(sead::FixedSafeString<32>("Enemy"), "sense_target", "テラー受付設定",
|
||||
&mSenseObj);
|
||||
sense_radius_offset.init(0.0, "sense_radius_offset", "水平範囲オフセット", &mSenseObj);
|
||||
sense_angle.init(3.14159274101, "sense_angle", "有効角度", &mSenseObj);
|
||||
sense_delay_time_max.init(0, "sense_delay_time_max", "認識遅延時間最大", &mSenseObj);
|
||||
sense_base_node_name.init(sead::FixedSafeString<32>(""), "sense_base_node_name",
|
||||
"(上書き用)前方基準ノード", &mSenseObj);
|
||||
|
||||
worry_buffer_num.init(0, "worry_buffer_num", "情報を格納するバッファの数", &mWorryObj);
|
||||
worry_radius.init(0.0, "worry_radius", "範囲", &mWorryObj);
|
||||
worry_delay_time_max.init(0, "worry_delay_time_max", "認識遅延時間最大", &mWorryObj);
|
||||
worry_base_node_name.init(sead::FixedSafeString<32>(""), "worry_base_node_name",
|
||||
"(上書き用)前方基準ノード", &mWorryObj);
|
||||
|
||||
if (data)
|
||||
applyResParameterArchive(agl::utl::ResParameterArchive(data));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
} // namespace ksys::res
|
||||
|
|
@ -0,0 +1,86 @@
|
|||
#pragma once
|
||||
|
||||
#include <agl/Utils/aglParameter.h>
|
||||
#include <agl/Utils/aglParameterObj.h>
|
||||
#include "KingSystem/Resource/resResource.h"
|
||||
#include "KingSystem/Utils/ParamIO.h"
|
||||
|
||||
namespace ksys::res {
|
||||
|
||||
class Awareness : public ParamIO, public Resource {
|
||||
SEAD_RTTI_OVERRIDE(Awareness, Resource)
|
||||
public:
|
||||
Awareness();
|
||||
~Awareness() override = default;
|
||||
|
||||
bool needsParse() const override { return true; }
|
||||
bool ParamIO_m0() override { return true; }
|
||||
|
||||
private:
|
||||
void doCreate_(u8*, u32, sead::Heap*) override {}
|
||||
bool parse_(u8* data, size_t size, sead::Heap* heap) override;
|
||||
|
||||
agl::utl::ParameterObj mBasisObj;
|
||||
agl::utl::ParameterObj mSightObj;
|
||||
agl::utl::ParameterObj mHearingObj;
|
||||
agl::utl::ParameterObj mSenseObj;
|
||||
agl::utl::ParameterObj mWorryObj;
|
||||
|
||||
public:
|
||||
agl::utl::Parameter<s32> contactpoint_num;
|
||||
agl::utl::Parameter<sead::FixedSafeString<32>> base_node_name;
|
||||
agl::utl::Parameter<bool> is_bind_rot;
|
||||
agl::utl::Parameter<bool> is_bind_pos;
|
||||
agl::utl::Parameter<sead::Vector3f> base_offset;
|
||||
agl::utl::Parameter<s32> base_dir;
|
||||
agl::utl::Parameter<s32> up_dir;
|
||||
agl::utl::Parameter<sead::FixedSafeString<32>> awareness_target;
|
||||
agl::utl::Parameter<f32> interest_lv1_radius;
|
||||
agl::utl::Parameter<f32> system_radius;
|
||||
agl::utl::Parameter<bool> invalidate_wheather_ratio;
|
||||
|
||||
agl::utl::Parameter<s32> sight_buffer_num;
|
||||
agl::utl::Parameter<f32> sight_radius;
|
||||
agl::utl::Parameter<f32> sight_angle;
|
||||
agl::utl::Parameter<f32> sight_height_max;
|
||||
agl::utl::Parameter<f32> sight_height_min;
|
||||
agl::utl::Parameter<f32> sight_height_near_max;
|
||||
agl::utl::Parameter<f32> sight_height_near_min;
|
||||
agl::utl::Parameter<f32> sight_alert_radius;
|
||||
agl::utl::Parameter<f32> sight_alert_angle;
|
||||
agl::utl::Parameter<f32> sight_alert_height_max;
|
||||
agl::utl::Parameter<f32> sight_alert_height_min;
|
||||
agl::utl::Parameter<f32> sight_alert_height_near_max;
|
||||
agl::utl::Parameter<f32> sight_alert_height_near_min;
|
||||
agl::utl::Parameter<f32> sight_ignore_grass_radius;
|
||||
agl::utl::Parameter<s32> sight_delay_time_max;
|
||||
agl::utl::Parameter<f32> sight_ray_check_range_max;
|
||||
agl::utl::Parameter<sead::FixedSafeString<32>> sight_base_node_name;
|
||||
agl::utl::Parameter<bool> sight_far_use;
|
||||
agl::utl::Parameter<f32> sight_radius_far;
|
||||
agl::utl::Parameter<f32> sight_angle_far;
|
||||
|
||||
agl::utl::Parameter<s32> hearing_buffer_num;
|
||||
agl::utl::Parameter<f32> hearing_radius;
|
||||
agl::utl::Parameter<f32> hearing_notice_level;
|
||||
agl::utl::Parameter<f32> hearing_alert_level;
|
||||
agl::utl::Parameter<f32> hearing_blind_angle;
|
||||
agl::utl::Parameter<f32> hearing_blind_margin_angle;
|
||||
agl::utl::Parameter<f32> hearing_reduce_ratio;
|
||||
agl::utl::Parameter<s32> hearing_delay_time_max;
|
||||
agl::utl::Parameter<sead::FixedSafeString<32>> hearing_base_node_name;
|
||||
|
||||
agl::utl::Parameter<s32> sense_buffer_num;
|
||||
agl::utl::Parameter<sead::FixedSafeString<32>> sense_target;
|
||||
agl::utl::Parameter<f32> sense_radius_offset;
|
||||
agl::utl::Parameter<f32> sense_angle;
|
||||
agl::utl::Parameter<s32> sense_delay_time_max;
|
||||
agl::utl::Parameter<sead::FixedSafeString<32>> sense_base_node_name;
|
||||
|
||||
agl::utl::Parameter<s32> worry_buffer_num;
|
||||
agl::utl::Parameter<f32> worry_radius;
|
||||
agl::utl::Parameter<s32> worry_delay_time_max;
|
||||
agl::utl::Parameter<sead::FixedSafeString<32>> worry_base_node_name;
|
||||
};
|
||||
|
||||
} // namespace ksys::res
|
||||
Loading…
Reference in New Issue