diff --git a/server/gameserver/buff.cc b/server/gameserver/buff.cc index 0659eca2..12318460 100644 --- a/server/gameserver/buff.cc +++ b/server/gameserver/buff.cc @@ -168,3 +168,10 @@ bool Buff::NeedSync(Human* hum) { return !meta->i->only_server() || !(meta->i->only_self() && owner == hum); } + +void Buff::ProcBecome(Creature* caster) +{ + if (caster->IsHuman()) { + + } +} diff --git a/server/gameserver/buff.h b/server/gameserver/buff.h index bc3c860a..557ec5c0 100644 --- a/server/gameserver/buff.h +++ b/server/gameserver/buff.h @@ -37,6 +37,7 @@ class Buff void ProcBatchAddBuff(Creature* caster); void ProcSummonHero(Creature* caster); void ProcBeRecycle(Creature* caster); + void ProcBecome(Creature* caster); private: void InternalTimerAddBuff(Creature* caster); diff --git a/server/gameserver/constant_export.h b/server/gameserver/constant_export.h index 52a40c35..9aeda63d 100644 --- a/server/gameserver/constant_export.h +++ b/server/gameserver/constant_export.h @@ -52,6 +52,7 @@ enum BuffEffectType_e kBET_Sprint = 35, //冲刺 kBET_SummonObstacle = 36, //召唤物件 kBET_FlashMove = 37, //瞬间移动 + kBET_Become = 38, //变身 kBET_FollowMaster = 49, //跟随主人 kBET_ThroughWall = 50, //穿墙 diff --git a/server/gameserver/creature.cc b/server/gameserver/creature.cc index 121a3b2c..95c802ed 100644 --- a/server/gameserver/creature.cc +++ b/server/gameserver/creature.cc @@ -901,6 +901,11 @@ void Creature::ProcBuffEffect(Creature* caster, Buff* buff) buff->ProcBeRecycle(caster); } break; + case kBET_Become: + { + buff->ProcBecome(caster); + } + break; default: { } diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index a1e91db1..63d1be22 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -3230,6 +3230,11 @@ void Human::OnBuffRemove(const Buff& buff) ); } break; + case kBET_Become: + { + + } + break; default: break; }