1
This commit is contained in:
parent
b60c2b92eb
commit
83e6d9e7c7
@ -1261,3 +1261,13 @@ void Buff::ProcRemoveImmune()
|
||||
owner->GetAbility()->DecImmuneTimes(tag);
|
||||
}
|
||||
}
|
||||
|
||||
void Buff::ProcCallFunc()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Buff::ProcRemoveCallFunc()
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -89,6 +89,8 @@ class Buff
|
||||
void ProcRemoveRescuer();
|
||||
void ProcImmune();
|
||||
void ProcRemoveImmune();
|
||||
void ProcCallFunc();
|
||||
void ProcRemoveCallFunc();
|
||||
|
||||
void CalcPassengerShotOffset();
|
||||
|
||||
|
@ -35,7 +35,7 @@ enum BuffEffectType_e
|
||||
kBET_Invincible = 4, //无敌
|
||||
kBET_Camouflage = 5, //伪装
|
||||
kBET_Immune = 6, //免疫
|
||||
kBET_LordMode = 7, //上帝模式
|
||||
kBET_CallFunc = 7, //调用功能
|
||||
kBET_NewProtect = 8, //新手保护血量低于50%
|
||||
kBET_BePull = 9, //拉人(被拉方)
|
||||
kBET_JumpTo = 10, //跳跃
|
||||
|
@ -559,6 +559,11 @@ void Creature::OnBuffRemove(Buff& buff)
|
||||
buff.ProcRemoveImmune();
|
||||
}
|
||||
break;
|
||||
case kBET_CallFunc:
|
||||
{
|
||||
buff.ProcRemoveCallFunc();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
{
|
||||
}
|
||||
|
@ -2549,7 +2549,6 @@ void Human::OnDie()
|
||||
if (HasBuffEffect(kBET_Camouflage)) {
|
||||
RemoveBuffByEffectId(kBET_Camouflage);
|
||||
}
|
||||
ClearLordMode();
|
||||
DoGetDown();
|
||||
}
|
||||
real_dead_frameno = room->GetFrameNo();
|
||||
@ -2800,20 +2799,6 @@ void Human::CancelRevive()
|
||||
}
|
||||
}
|
||||
|
||||
void Human::ClearLordMode()
|
||||
{
|
||||
Buff* buff = GetBuffByEffectId(kBET_LordMode);
|
||||
if (buff) {
|
||||
std::vector<std::string> strings;
|
||||
a8::Split(buff->meta->i->buff_param1(), strings, ':');
|
||||
for (auto& str : strings) {
|
||||
int buff_id = a8::XValue(str);
|
||||
RemoveBuffById(buff_id);
|
||||
}
|
||||
RemoveBuffByEffectId(kBET_LordMode);
|
||||
}
|
||||
}
|
||||
|
||||
void Human::AdjustDecHp(float old_health, float& new_health)
|
||||
{
|
||||
Buff* buff = GetBuffByEffectId(kBET_NewProtect);
|
||||
|
@ -370,7 +370,6 @@ private:
|
||||
void FillSMGameOver(cs::SMGameOver& msg);
|
||||
void SendBattleReport();
|
||||
void Revive();
|
||||
void ClearLordMode();
|
||||
void AdjustDecHp(float old_health, float& new_health);
|
||||
void ClearPartObjects();
|
||||
void GetViewObjects(std::set<Entity*>& view_objects);
|
||||
|
Loading…
x
Reference in New Issue
Block a user