修复手雷烟雾弹丢弃问题

This commit is contained in:
aozhiwei 2019-07-01 14:24:43 +08:00
parent 3a201c57d5
commit 3e86e734f5

View File

@ -961,11 +961,13 @@ void Player::UpdateDropWeapon()
if (drop_ok) {
if (drop_weapon_idx == 0 ||
drop_weapon_idx == GUN_SLOT1 ||
drop_weapon_idx == GUN_SLOT2
drop_weapon_idx == GUN_SLOT2 ||
drop_weapon_idx == FRAG_SLOT ||
drop_weapon_idx == SMOKE_SLOT
) {
a8::Vec2 dir = a8::Vec2::UP;
dir.Rotate(a8::RandAngle());
room->CreateLoot(weapon_id, pos + dir * (25 + rand() % 50), 1, weapon_lv);
room->CreateLoot(weapon_id, pos + dir * (40 + rand() % 50), 1, weapon_lv);
}
if (weapon_ammo > 0) {
MetaData::Equip* bullet_meta = MetaMgr::Instance()->GetEquip(weapon_meta->i->use_bullet());
@ -973,7 +975,8 @@ void Player::UpdateDropWeapon()
int volume = GetVolume(bullet_meta->i->_inventory_slot());
int inventory = GetInventory(bullet_meta->i->_inventory_slot());
int add_inventory = std::min(weapon_ammo, volume - std::min(volume, inventory));
if (add_inventory > 0) {
if (add_inventory > 0 &&
!(drop_weapon_idx == FRAG_SLOT || drop_weapon_idx == SMOKE_SLOT)) {
AddInventory(bullet_meta->i->_inventory_slot(), add_inventory);
}
int drop_num = weapon_ammo - add_inventory;