1
This commit is contained in:
parent
a26b840d8f
commit
2bf334dbfd
@ -24,6 +24,7 @@ class Car : public MoveableEntity
|
|||||||
virtual void FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_data) override;
|
virtual void FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_data) override;
|
||||||
virtual void FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data) override;
|
virtual void FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data) override;
|
||||||
|
|
||||||
|
bool IsDriver(Human* hum) { return driver_ == hum && driver_; }
|
||||||
void GetDown(Human* passenger);
|
void GetDown(Human* passenger);
|
||||||
void GetOn(Human* passenger);
|
void GetOn(Human* passenger);
|
||||||
|
|
||||||
|
@ -389,10 +389,17 @@ void Human::GetAabbBox(AabbCollider& aabb_box)
|
|||||||
}
|
}
|
||||||
aabb_box.active = true;
|
aabb_box.active = true;
|
||||||
aabb_box.owner = this;
|
aabb_box.owner = this;
|
||||||
aabb_box._min.x = -meta->i->radius();
|
if (GetCar() && GetCar()->IsDriver(this)) {
|
||||||
aabb_box._min.y = -meta->i->radius();
|
aabb_box._min.x = -GetCar()->meta->i->rad();
|
||||||
aabb_box._max.x = meta->i->radius();
|
aabb_box._min.y = -GetCar()->meta->i->rad();
|
||||||
aabb_box._max.y = meta->i->radius();
|
aabb_box._max.x = GetCar()->meta->i->rad();
|
||||||
|
aabb_box._max.y = GetCar()->meta->i->rad();
|
||||||
|
} else {
|
||||||
|
aabb_box._min.x = -meta->i->radius();
|
||||||
|
aabb_box._min.y = -meta->i->radius();
|
||||||
|
aabb_box._max.x = meta->i->radius();
|
||||||
|
aabb_box._max.y = meta->i->radius();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Human::IsDead(Room * room)
|
bool Human::IsDead(Room * room)
|
||||||
|
@ -132,6 +132,9 @@ void Player::UpdateMove()
|
|||||||
if (HasBuffEffect(kBET_Vertigo)) {
|
if (HasBuffEffect(kBET_Vertigo)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (HasBuffEffect(kBET_Passenger)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (HasBuffEffect(kBET_Camouflage)) {
|
if (HasBuffEffect(kBET_Camouflage)) {
|
||||||
RemoveBuffByEffectId(kBET_Camouflage);
|
RemoveBuffByEffectId(kBET_Camouflage);
|
||||||
}
|
}
|
||||||
@ -145,14 +148,6 @@ void Player::UpdateMove()
|
|||||||
if (GetLastCollisionDoor() && !TestCollision(room, GetLastCollisionDoor())) {
|
if (GetLastCollisionDoor() && !TestCollision(room, GetLastCollisionDoor())) {
|
||||||
SetLastCollisionDoor(nullptr);
|
SetLastCollisionDoor(nullptr);
|
||||||
}
|
}
|
||||||
#if 0
|
|
||||||
a8::Vec2 old_pos = GetPos();
|
|
||||||
if (tank_weapon.meta) {
|
|
||||||
CheckSkinTank();
|
|
||||||
tank_oil_value -= old_pos.Distance(GetPos()) * (MetaMgr::Instance()->average_oil / 100.0f);
|
|
||||||
tank_oil_value = std::max(0.0f, tank_oil_value);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
room->CheckPartObjects();
|
room->CheckPartObjects();
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user