feat(loadout): add mindforce implant field and tier-based enhancers to LoadoutConfig

- Added mindforce_implant and mindforce_decay_pec fields
- Changed enhancers from list to Dict[int, NexusEnhancer] for tier-based system
- Updated get_total_decay_per_shot() to include enhancer and mindforce decay
- Max 10 tiers, 1 enhancer per tier
This commit is contained in:
LemonNexus 2026-02-09 16:01:16 +00:00
parent 1e115db548
commit b58af87533
1 changed files with 13 additions and 3 deletions

View File

@ -140,6 +140,14 @@ class LoadoutConfig:
clothing_items: List[str] = field(default_factory=list) clothing_items: List[str] = field(default_factory=list)
pet: Optional[str] = None pet: Optional[str] = None
# Mindforce
mindforce_implant: Optional[str] = None
mindforce_decay_pec: Decimal = Decimal("0")
# Enhancers - tier-based (1 per tier, max 10 tiers)
# Format: {tier_number: enhancer}
enhancers: Dict[int, 'NexusEnhancer'] = field(default_factory=dict)
# Settings # Settings
shots_per_hour: int = 3600 shots_per_hour: int = 3600
hits_per_hour: int = 720 hits_per_hour: int = 720
@ -161,9 +169,11 @@ class LoadoutConfig:
total += self.weapon_scope.decay_pec total += self.weapon_scope.decay_pec
if self.weapon_absorber: if self.weapon_absorber:
total += self.weapon_absorber.decay_pec total += self.weapon_absorber.decay_pec
# Add enhancer decay (assuming 1 use per shot) # Add enhancer decay from all tiers
for enhancer in self.weapon_enhancers: for tier, enhancer in self.enhancers.items():
total += enhancer.decay_pec total += enhancer.decay
# Add mindforce decay if used
total += self.mindforce_decay_pec
return total return total
def get_total_ammo_per_shot(self) -> Decimal: def get_total_ammo_per_shot(self) -> Decimal: