factory pattern for zombie error

This commit is contained in:
Mausham
2025-12-31 18:23:11 -08:00
parent 8eafd8bb60
commit 3470ca4dc6
10 changed files with 152 additions and 198 deletions

View File

@@ -4,6 +4,7 @@ using UnityEngine;
using Darkmatter.Core;
using Darkmatter.Presentation;
using Darkmatter.Domain;
using System.Collections.Generic;
namespace Darkmatter.App
{
@@ -19,10 +20,20 @@ namespace Darkmatter.App
[SerializeField] private CameraService camService;
[SerializeField] private GunWeapon gunWeapon;
[SerializeField] private PlayerAimTargetProvider TargetProvider;
[Header("Factory parameters")]
[SerializeField] private Transform playerTransform;
[SerializeField] private GameObject fatZombie;
[SerializeField] private GameObject SlimZombie;
[SerializeField] private List<Transform> patrolPoints;
[SerializeField] private EnemiesSpawnner spawnner;
private readonly IObjectResolver resolver;
protected override void Configure(IContainerBuilder builder)
{
builder.RegisterEntryPoint<PlayerController>(Lifetime.Scoped);
builder.RegisterEntryPoint<EnemyController>(Lifetime.Scoped);
builder.RegisterComponent<IPlayerAnim>(playerAnim);
builder.RegisterComponent<IInputReader>(inputReader);
@@ -30,17 +41,29 @@ namespace Darkmatter.App
builder.RegisterComponent<ITargetProvider>(TargetProvider);
builder.RegisterComponent(playerConfig);
builder.RegisterComponent(cameraConfig);
builder.RegisterComponent(enemyConfig);
builder.RegisterComponent(enemyConfig);
builder.RegisterComponent<ICameraService>(camService);
builder.RegisterComponent<IReloadableWeapon>(gunWeapon);
builder.RegisterComponent(spawnner);
builder.RegisterComponentInHierarchy<IEnemyAnimController>();
builder.RegisterComponentInHierarchy<IEnemyPawn>();
//builder.RegisterComponentInHierarchy<IEnemyAnimController>();
//builder.RegisterComponentInHierarchy<IEnemyPawn>();
builder.Register<PlayerStateMachine>(Lifetime.Scoped);
builder.Register<EnemyStateMachine>(Lifetime.Scoped);
builder.Register<IEnemyFactory>(container =>
new EnemyFactory(
playerTransform,
patrolPoints,
fatZombie,
SlimZombie,
resolver),
Lifetime.Scoped);
}
}
}