From c56c6427da5d15e91d73386369fa03b83218e827 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Wed, 16 Sep 2020 14:23:01 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=A4=8D=E6=B4=BB=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=83=BD=E9=87=8F=E6=8A=A4=E7=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/gameserver/metamgr.cc | 1 + server/gameserver/metamgr.h | 1 + server/gameserver/player.cc | 9 ++++++++- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/server/gameserver/metamgr.cc b/server/gameserver/metamgr.cc index 6f08a0f..fed7afa 100755 --- a/server/gameserver/metamgr.cc +++ b/server/gameserver/metamgr.cc @@ -132,6 +132,7 @@ public: MetaMgr::Instance()->tank_damage_interval = MetaMgr::Instance()->GetSysParamAsFloat("tank_damage_interval", 1); MetaMgr::Instance()->average_oil = MetaMgr::Instance()->GetSysParamAsInt("average_oil"); MetaMgr::Instance()->max_oil = MetaMgr::Instance()->GetSysParamAsInt("max_oil"); + MetaMgr::Instance()->max_energy_shield = MetaMgr::Instance()->GetSysParamAsInt("max_energy_shield"); if (MetaMgr::Instance()->K < 0.01f) { abort(); } diff --git a/server/gameserver/metamgr.h b/server/gameserver/metamgr.h index 20a6057..75ec555 100755 --- a/server/gameserver/metamgr.h +++ b/server/gameserver/metamgr.h @@ -55,6 +55,7 @@ class MetaMgr : public a8::Singleton float tank_damage_interval = 0.0f; float average_oil = 0.0f; float max_oil = 0.0f; + int max_energy_shield = 100; private: MetaDataLoader* loader_ = nullptr; diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index 7b408df..b5a4812 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -31,7 +31,12 @@ void Player::Initialize() { Human::Initialize(); health = meta->i->health(); - max_energy_shield = energy_shield; + if (energy_shield) { + energy_shield = MetaMgr::Instance()->max_energy_shield; + max_energy_shield = energy_shield; + } else { + max_energy_shield = 0; + } skin_meta = MetaMgr::Instance()->GetDress(SkinId()); if (skin_meta) { skill_meta = MetaMgr::Instance()->GetSkill(skin_meta->i->skill_id()); @@ -1123,6 +1128,8 @@ void Player::_CMRevive(f8::MsgHdr& hdr, const cs::CMRevive& msg) dead = false; real_dead = false; downed = false; + energy_shield = MetaMgr::Instance()->max_energy_shield; + max_energy_shield = energy_shield; FreeDownedTimer(); health = GetMaxHP(); ResetTankSkin(); From a9e333e909ca9afb5947fdd55117449f160f2e92 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 18 Sep 2020 12:07:49 +0800 Subject: [PATCH 2/2] 1 --- server/bin/restart.sh | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/server/bin/restart.sh b/server/bin/restart.sh index 7d3ed21..152f905 100755 --- a/server/bin/restart.sh +++ b/server/bin/restart.sh @@ -1,5 +1,16 @@ #!/bin/bash -python manage.py restart $1 $2 +source /etc/profile +source /root/.bash_profile -echo 'success' +pid=$(ps -ef|grep "gameserver2001 -n $2 -i $1"|grep -v grep|awk '{print $2}') +echo $pid + +if [[ $pid != "" ]] +then + echo $pid|xargs kill -9 +else + echo "pid 为空" +fi + +nohup ./gameserver2001 -n $2 -i $1 >> gameserver2001$2_$1.out &