添加载具定身buff

This commit is contained in:
aozhiwei 2021-06-03 13:30:57 +08:00
parent 615936eaa6
commit 3a612cabca

View File

@ -94,10 +94,6 @@ void Car::GetDown(Human* passenger)
if (driver_ == passenger) { if (driver_ == passenger) {
driver_ = nullptr; driver_ = nullptr;
} }
if (meta->i->buffid()) {
passenger->RemoveBuffById(meta->i->buffid());
passenger->RecalcSelfCollider();
}
passengers_.erase(passenger); passengers_.erase(passenger);
passenger->SetCar(nullptr); passenger->SetCar(nullptr);
passenger->SetSeat(0); passenger->SetSeat(0);
@ -111,6 +107,9 @@ void Car::GetDown(Human* passenger)
room->TakeOffCarObject(GetEntityUniId(), GetPos()); room->TakeOffCarObject(GetEntityUniId(), GetPos());
RemoveBuffByEffectId(kBET_CarActive); RemoveBuffByEffectId(kBET_CarActive);
TryAddBuff(this, meta->car_deactive_buff_id); TryAddBuff(this, meta->car_deactive_buff_id);
if (meta->i->buffid() != 0) {
passenger->RemoveBuffById(meta->i->buffid());
}
} }
SyncAroundPlayers(__FILE__, __LINE__, __func__); SyncAroundPlayers(__FILE__, __LINE__, __func__);
room->NotifyUiUpdate(); room->NotifyUiUpdate();
@ -159,11 +158,8 @@ void Car::GetOn(Human* passenger)
passenger->AddBuff(passenger, buff_meta, 1); passenger->AddBuff(passenger, buff_meta, 1);
} }
} }
{ if (meta->i->buffid() != 0) {
MetaData::Buff* buff_meta = MetaMgr::Instance()->GetBuff(meta->i->buffid()); passenger->TryAddBuff(passenger, meta->i->buffid());
if (buff_meta) {
passenger->AddBuff(passenger, buff_meta, 1);
}
} }
passenger->CancelAction(); passenger->CancelAction();
room->frame_event.AddCarChg(passenger); room->frame_event.AddCarChg(passenger);
@ -318,10 +314,6 @@ void Car::BeKill(int killer_id, const std::string& killer_name, int weapon_id)
room->RemoveObjectLater(this); room->RemoveObjectLater(this);
int team_id = 0; int team_id = 0;
for (Human* passenger : passengers_) { for (Human* passenger : passengers_) {
if (meta->i->buffid()) {
passenger->RemoveBuffById(meta->i->buffid());
passenger->RecalcSelfCollider();
}
team_id = passenger->team_id; team_id = passenger->team_id;
passenger->SetCar(nullptr); passenger->SetCar(nullptr);
passenger->SetSeat(0); passenger->SetSeat(0);