1
This commit is contained in:
parent
04c928af07
commit
aad3bd2fbe
@ -49,6 +49,7 @@ class Buff
|
||||
bool FreezeOperate();
|
||||
CreatureWeakPtr& GetCaster();
|
||||
void SetCaster(Creature* caster);
|
||||
virtual bool IsValid() { return is_valid_; };
|
||||
|
||||
void CalcPassengerShotOffset();
|
||||
|
||||
@ -65,6 +66,7 @@ protected:
|
||||
void ProcSputteringFunc(Bullet* bullet);
|
||||
|
||||
protected:
|
||||
bool is_valid_ = true;
|
||||
int hold_curr_weapon_idx_ = 0;
|
||||
std::list<Weapon> hold_weapons_;
|
||||
std::list<std::weak_ptr<EventHandlerPtr>> event_handlers_;
|
||||
|
@ -302,6 +302,9 @@ void FrameEvent::AddWeaponAmmoChg(CreatureWeakPtr& sender)
|
||||
|
||||
void FrameEvent::AddBuff(CreatureWeakPtr& sender, Buff* buff)
|
||||
{
|
||||
if (!buff->IsValid()) {
|
||||
return;
|
||||
}
|
||||
{
|
||||
cs::MFBuffChg chged_buff_pb;
|
||||
chged_buff_pb.set_obj_id(sender.Get()->GetUniId());
|
||||
@ -322,6 +325,9 @@ void FrameEvent::AddBuff(CreatureWeakPtr& sender, Buff* buff)
|
||||
|
||||
void FrameEvent::RemoveBuff(CreatureWeakPtr& sender, Buff* buff)
|
||||
{
|
||||
if (!buff->IsValid()) {
|
||||
return;
|
||||
}
|
||||
{
|
||||
cs::MFBuffChg chged_buff_pb;
|
||||
chged_buff_pb.set_obj_id(sender.Get()->GetUniId());
|
||||
|
@ -61,7 +61,7 @@ static void Creature_FillBuffList(Creature* self, Human* hum, ::google::protobuf
|
||||
(
|
||||
[hum, pb_buff_list] (Buff* buff, bool& stop)
|
||||
{
|
||||
if (buff->NeedSync(hum)) {
|
||||
if (buff->NeedSync(hum) && buff->IsValid()) {
|
||||
auto p = pb_buff_list->Add();
|
||||
buff->FillMFBuff(p);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user