diff --git a/server/gameserver/android.ai.cc b/server/gameserver/android.ai.cc index 1d0dfa7..c53517b 100644 --- a/server/gameserver/android.ai.cc +++ b/server/gameserver/android.ai.cc @@ -249,6 +249,14 @@ void AndroidAI::UpdateNewAI() VW_Gas); a8::UnSetBitFlag(hum->status, CS_Disable); } + if (!owner->IsDead(owner->room) && + a8::HasBitFlag(hum->status, CS_ForceTeam) && + App::Instance()->debug_params.find(120) != App::Instance()->debug_params.end()) { + hum->BeKill(VP_Gas, + TEXT("battle_server_killer_gas", "毒圈"), + VW_Gas); + a8::UnSetBitFlag(hum->status, CS_Disable); + } } #endif if (a8::HasBitFlag(hum->status, CS_Disable)) { diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index 6eb5319..d7dde0f 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -1834,6 +1834,11 @@ void Human::GenBattleReportData(a8::MutableXObject* params) void Human::DeadDrop() { + #ifdef DEBUG + a8::XPrintf("DeadDrop\n", {}); + //room->DropItem(GetPos(), 30908, 1, 1); + //return; + #endif auto SkinCanDrop = [this] (Skin* skin) -> bool { @@ -1864,6 +1869,10 @@ void Human::DeadDrop() AddInventory(weapon.bullet_meta->i->_inventory_slot(), weapon.ammo); } } + if (IsAndroid() && weapon.bullet_meta) { + int drop_num = weapon.bullet_meta->i->group_num(); + room->DropItem(GetPos(), weapon.bullet_meta->i->id(), drop_num, 1); + } weapon.Clear(); } } @@ -1949,7 +1958,13 @@ void Human::DeadDrop() if (IsPlayer()) { room->DropItem(drop_pos, equip_meta->i->id(), GetInventory(slot), 1); } else { + #if 1 + if (GetCurrWeapon()) { + + } + #else room->DropItem(drop_pos, equip_meta->i->id(), drop_num, 1); + #endif } DecInventory(slot, GetInventory(slot)); } @@ -3526,6 +3541,11 @@ void Human::ProcAddItemDto(AddItemDTO& dto) #endif return; } + #ifdef DEBUG + if (dto.item_id == 30606) { + int i = 0; + } + #endif switch (dto.item_meta->i->equip_type()) { case EQUIP_TYPE_WEAPON: { diff --git a/server/gameserver/metamgr.cc b/server/gameserver/metamgr.cc index e65fb11..8777e8a 100644 --- a/server/gameserver/metamgr.cc +++ b/server/gameserver/metamgr.cc @@ -351,11 +351,11 @@ public: #if 1 MetaMgr::Instance()->match_lock_time++; #endif -#ifdef DEBUG1 - MetaMgr::Instance()->match_team_time = 10; +#ifdef DEBUG + MetaMgr::Instance()->match_team_time = 6; MetaMgr::Instance()->match_robot_time = 5; MetaMgr::Instance()->match_choose_time = 25; - MetaMgr::Instance()->match_lock_time = 10; + MetaMgr::Instance()->match_lock_time = 3; #endif { METAMGR_READ(prebattle_box_id_chiji, 0); diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index b9e9767..7778791 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -903,6 +903,18 @@ void Player::_CMExecCommand(f8::MsgHdr& hdr, const cs::CMExecCommand& msg) App::Instance()->debug_params[119] = 1; } #endif + } else if (cmd == "autodie") { + #if DEBUG + if (cmds.size() >= 2) { + if (cmds[1] == "open") { + App::Instance()->debug_params[120] = 1; + } else if (cmds[1] == "close") { + App::Instance()->debug_params.erase(120); + } + } else { + App::Instance()->debug_params[120] = 1; + } + #endif } else if (cmd == "wudi") { int buff_uniid = TryAddBuff(this, 1005); if (buff_uniid != 0) { diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index bbb70d9..11c47d1 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -526,6 +526,16 @@ int Room::CreateLootEx(int equip_id, a8::Vec2 born_pos, a8::Vec2 pos, int count, { MetaData::Equip* equip_meta = MetaMgr::Instance()->GetEquip(equip_id); if (equip_meta) { + #ifdef DEBUG + if (GetGasData().gas_mode == GasWaiting || GetGasData().gas_mode == GasMoving) { + #if 0 + if (equip_id == 30908) { + abort(); + a8::XPrintf("CreateLootEx %d\n", {equip_id}); + } + #endif + } + #endif Loot* entity = EntityFactory::Instance()->MakeLoot(AllocUniid()); entity->room = this; entity->meta = equip_meta;