From 750f28cbc59a957a31fff65b58ac6e8f1f55c966 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 6 Oct 2022 10:03:23 +0800 Subject: [PATCH] 1 --- server/gameserver/skill.cc | 59 ++++++++++++++++++++++++++++++++++++ server/gameserver/trigger.cc | 2 +- server/gameserver/trigger.h | 2 +- 3 files changed, 61 insertions(+), 2 deletions(-) diff --git a/server/gameserver/skill.cc b/server/gameserver/skill.cc index 4320f31c..8563e7b8 100644 --- a/server/gameserver/skill.cc +++ b/server/gameserver/skill.cc @@ -4,6 +4,7 @@ #include "creature.h" #include "room.h" #include "metamgr.h" +#include "trigger.h" void Skill::Initialzie() { @@ -317,27 +318,62 @@ void Skill::InitPassiveSkill() void Skill::ProcSJXY() { + owner->GetTrigger()->AddListener + ( + kBulletHitEvent, + [] (const std::vector& params) + { + } + ); } void Skill::ProcSSJS() { + owner->GetTrigger()->AddListener + ( + kReceiveDmgEvent, + [] (const std::vector& params) + { + } + ); } void Skill::ProcJSHX() { + owner->GetTrigger()->AddListener + ( + kKillEvent, + [] (const std::vector& params) + { + } + ); } void Skill::ProcSWZB() { + owner->GetTrigger()->AddListener + ( + kDieEvent, + [] (const std::vector& params) + { + } + ); } void Skill::ProcCMXD() { + owner->GetTrigger()->AddListener + ( + kShieldDestoryEvent, + [] (const std::vector& params) + { + } + ); } void Skill::ProcMYXY() @@ -352,15 +388,38 @@ void Skill::ProcGZJS() void Skill::ProcJYFH() { + owner->GetTrigger()->AddListener + ( + kRescueEvent, + [] (const std::vector& params) + { + } + ); } void Skill::ProcFH() { + owner->GetTrigger()->AddListener + ( + kDieEvent, + [] (const std::vector& params) + { + } + ); } void Skill::ProcYSHF() { + #if 0 + owner->GetTrigger()->AddListener + ( + kDieEvent, + [] (const std::vector& params) + { + } + ); + #endif } diff --git a/server/gameserver/trigger.cc b/server/gameserver/trigger.cc index 552a9719..8792825a 100644 --- a/server/gameserver/trigger.cc +++ b/server/gameserver/trigger.cc @@ -425,7 +425,7 @@ void Trigger::DispatchEvent(int event_id, const std::vector& param) void Trigger::BulletHit(Bullet* bullet) { if (bullet->sender.Get()) { - bullet->sender.Get()->GetTrigger()->DispatchEvent(kBulletHit, {bullet}); + bullet->sender.Get()->GetTrigger()->DispatchEvent(kBulletHitEvent, {bullet}); } } diff --git a/server/gameserver/trigger.h b/server/gameserver/trigger.h index 248ad3f8..13421a6e 100644 --- a/server/gameserver/trigger.h +++ b/server/gameserver/trigger.h @@ -28,7 +28,7 @@ enum EventId_e kShieldDestoryEvent = 5, kFlyHookPullEvent = 6, kRescueEvent = 7, - kBulletHit = 8 + kBulletHitEvent = 8 }; class Weapon;