fix: 装备属性面板避让逻辑 + 多项功能更新
- item_tooltip_view.gd: 新增 avoid_rect 属性,tooltip 与装备窗口重叠时自动推到左侧 - inventory_ui.gd: 悬停装备时传入窗口矩形作为避让区域 - 包含其他累积的功能开发和测试文件
This commit is contained in:
+33
-6
@@ -6,16 +6,43 @@
|
||||
namespace fmt {
|
||||
|
||||
struct MotionEvent {
|
||||
int type = 0; // MotionEventType(10=effect, 4/5=sound, ...)
|
||||
float start_time = 0; // StartingTime
|
||||
std::string effect_file; // EffectFileName(type 10)
|
||||
int type = 0; // MotionEventType(1=effect, 4=special attack, 6=fly, ...)
|
||||
float start_time = 0; // StartingTime
|
||||
float duration_time = 0; // DuringTime(SCREEN_WAVING / SPECIAL_ATTACKING)
|
||||
std::string effect_file; // EffectFileName(type 1/10)
|
||||
std::string sound_file; // SoundFileName
|
||||
std::string attaching_bone;
|
||||
bool attaching = false;
|
||||
bool following = false;
|
||||
bool independent = false;
|
||||
bool fishing_effect = false;
|
||||
float position[3] = {0, 0, 0};
|
||||
bool independent = false;
|
||||
bool fishing_effect = false;
|
||||
float position[3] = {0, 0, 0};
|
||||
|
||||
// FLY 的字段不能复用 EFFECT 的 EffectFileName/EffectPosition:40250
|
||||
// 在 MotionEventDataEvent.h 中使用另一套 FlyFileName/FlyPosition。
|
||||
std::string fly_file;
|
||||
std::string fly_attaching_bone;
|
||||
bool fly_attaching = false;
|
||||
float fly_position[3] = {0, 0, 0};
|
||||
|
||||
// SCREEN_WAVING 参数(GameEventManager::ProcessEventScreenWaving)。
|
||||
int power = 0;
|
||||
int affecting_range = 0;
|
||||
|
||||
// SPECIAL_ATTACKING 参数(TMotionAttackingEventData)。
|
||||
bool enable_hit_process = true; // 40250 缺省值为 TRUE
|
||||
int attack_type = 0;
|
||||
int hitting_type = 0;
|
||||
float stiffen_time = 0;
|
||||
float invisible_time = 0;
|
||||
float external_force = 0;
|
||||
int hit_limit_count = 0;
|
||||
int collision_type = 0;
|
||||
struct CollisionSphere {
|
||||
float radius = 0;
|
||||
float position[3] = {0, 0, 0};
|
||||
};
|
||||
std::vector<CollisionSphere> collision_spheres;
|
||||
};
|
||||
|
||||
struct Msa {
|
||||
|
||||
Reference in New Issue
Block a user