This commit is contained in:
aozhiwei 2022-10-31 09:51:59 +08:00
parent 4aa1448379
commit 6843ae5cf9
3 changed files with 14 additions and 2 deletions

View File

@ -134,7 +134,9 @@ void Obstacle::FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_d
cs::MFObstaclePart* p = part_data->mutable_union_obj_2();
p->set_obj_uniid(GetUniId());
TypeConvert::ToPb(GetPos(), p->mutable_pos());
p->set_scale(1.0f);
if (std::abs(scale - 1.0f) > 0.00001f) {
p->set_scale(scale);
}
}
void Obstacle::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data)
@ -160,7 +162,9 @@ void Obstacle::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_d
}
p->set_obj_uniid(GetUniId());
TypeConvert::ToPb(GetPos(), p->mutable_pos());
p->set_scale(1.0f);
if (std::abs(scale - 1.0f) > 0.00001f) {
p->set_scale(scale);
}
p->set_obstacle_id(meta->i->thing_id());
p->set_health(GetHealth(room));

View File

@ -31,6 +31,7 @@ class Obstacle : public Entity
int collider_tag = 0;
int collider_param1 = 0;
int collider_param2 = 0;
float scale = 1.0f;
virtual ~Obstacle() override;
virtual void Initialize() override;

View File

@ -860,6 +860,13 @@ void RoomObstacle::ActiveMedicalStation()
if (skill_meta->GetMagicId() != MAGIC_YLZ) {
return;
}
scale = 1.0f;
if (skill_meta->base_skill_meta) {
float base_range = SkillHelper::GetYlzRange(skill_meta->base_skill_meta);
if (std::abs(base_range) > 0.0001f) {
scale = SkillHelper::GetYlzRange(skill_meta) / base_range;
}
}
room->xtimer.AddRepeatTimerAndAttach
(