From 5a5df532a36c10eeaf72f47348902029b201f85d Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 8 Jul 2021 02:41:34 +0000 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=09=E6=95=91=E6=8F=B4?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/gameserver/player.cc | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index f22b32a..128f1fe 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -781,7 +781,7 @@ void Player::HumanInteraction(Human* hum) if (hum->GetActionType() == AT_Rescue) { return; } - hum->TryAddBuff(this, kRescueBuffId); + TryAddBuff(this, kRescueBuffId); int downed_relive_time = MetaMgr::Instance()->GetSysParamAsInt("downed_relive_time") * 1000; downed_relive_time -= GetAbility()->GetAttrAbs(kHAT_RescueTime); downed_relive_time = std::max(1000, downed_relive_time); @@ -1195,6 +1195,17 @@ void Player::_CMExecCommand(f8::MsgHdr& hdr, const cs::CMExecCommand& msg) int hero_num = a8::XValue(cmds[2]); std::vector mons = std::vector{hero_id}; room->ShuaMon(GetPos(), mons, 100); + } else if (cmd == "jiuyuan") { + TryAddBuff(this, kRescueBuffId); + int downed_relive_time = MetaMgr::Instance()->GetSysParamAsInt("downed_relive_time") * 1000; + downed_relive_time -= GetAbility()->GetAttrAbs(kHAT_RescueTime); + downed_relive_time = std::max(1000, downed_relive_time); + StartAction( + AT_Relive, + downed_relive_time, + room->GetFrameNo(), + 0 + ); } else if (cmd == "addbuff" && cmds.size() >= 2) { int buff_id = a8::XValue(cmds[1]); MetaData::Buff* buff_meta = MetaMgr::Instance()->GetBuff(buff_id);