Expanded UBGL ammo placement to try pockets if rig placement fails - fixes partisan not having any ubgl ammo

This commit is contained in:
Chomp
2025-09-06 19:05:54 +01:00
parent bf60770aa5
commit 495660bec3
3 changed files with 5 additions and 7 deletions
@@ -495,7 +495,7 @@ public class BotWeaponGenerator(
// get ammo template from db
var ubglAmmoDbTemplate = itemHelper.GetItem(generatedWeaponResult.ChosenUbglAmmoTemplate.Value).Value;
// Add greandes to bot inventory
// Add grenades to bot inventory
var ubglAmmoGenModel = new InventoryMagGen(ubglMinMax, ubglDbTemplate, ubglDbTemplate, ubglAmmoDbTemplate, inventory, botId);
InventoryMagGenComponents.FirstOrDefault(v => v.CanHandleInventoryMagGen(ubglAmmoGenModel)).Process(ubglAmmoGenModel);
@@ -708,10 +708,8 @@ public class BotWeaponGenerator(
// Try to get cartridges from slots array first, if none found, try Cartridges array
var cartridges =
magazineTemplate.Value.Properties.Slots.FirstOrDefault()?.Properties?.Filters.FirstOrDefault()?.Filter ?? magazineTemplate
.Value.Properties.Cartridges.FirstOrDefault()
?.Properties?.Filters.FirstOrDefault()
?.Filter;
magazineTemplate.Value.Properties.Slots.FirstOrDefault()?.Properties?.Filters.FirstOrDefault()?.Filter
?? magazineTemplate.Value.Properties.Cartridges.FirstOrDefault()?.Properties?.Filters.FirstOrDefault()?.Filter;
return cartridges ?? [];
}
@@ -28,7 +28,7 @@ public class UbglExternalMagGen(BotWeaponGeneratorHelper botWeaponGeneratorHelpe
inventoryMagGen.GetAmmoTemplate().Id,
(int)bulletCount,
inventoryMagGen.GetPmcInventory(),
[EquipmentSlots.TacticalVest]
[EquipmentSlots.TacticalVest, EquipmentSlots.Pockets]
);
}
}
@@ -140,7 +140,7 @@ public class BotWeaponGeneratorHelper(
{
logger.Debug($"Unable to add ammo: {ammoItem.Template} to bot inventory, {result.ToString()}");
if (result == ItemAddedResult.NO_SPACE || result == ItemAddedResult.NO_CONTAINERS)
if (result is ItemAddedResult.NO_SPACE or ItemAddedResult.NO_CONTAINERS)
// If there's no space for 1 stack or no containers to hold item, there's no space for the others
{
break;