diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index a023fc3d..784b442c 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -1075,15 +1075,19 @@ void Player::_CMExecCommand(f8::MsgHdr& hdr, const cs::CMExecCommand& msg) TEXT("battle_server_killer_gas", "毒圈"), dmg_out); } else if (cmd == "dec_hp") { - float dmg_out = 0; - float dmg = a8::XValue(cmds[1]).GetDouble(); - DecHP(dmg, VP_Gas, TEXT("battle_server_killer_gas", "毒圈"), VW_Gas, - VP_Gas, - TEXT("battle_server_killer_gas", "毒圈"), - dmg_out); + if (cmds.size() > 1) { + float dmg_out = 0; + float dmg = a8::XValue(cmds[1]).GetDouble(); + DecHP(dmg, VP_Gas, TEXT("battle_server_killer_gas", "毒圈"), VW_Gas, + VP_Gas, + TEXT("battle_server_killer_gas", "毒圈"), + dmg_out); + } } else if (cmd == "add_shield") { - float hp = a8::XValue(cmds[1]).GetDouble(); - AddEnergyShield(hp); + if (cmds.size() > 1) { + float hp = a8::XValue(cmds[1]).GetDouble(); + AddEnergyShield(hp); + } } else if (cmd == "shuaguai" && cmds.size() >= 3) { int hero_id = a8::XValue(cmds[1]); int hero_num = a8::XValue(cmds[2]);