enemy spawner

This commit is contained in:
2025-10-26 14:17:31 +01:00
parent 20d3b46834
commit 40a62b5b5a
2102 changed files with 1255290 additions and 70 deletions

View File

@@ -0,0 +1,8 @@
namespace Game.Scripts.Runtime.Abstractions
{
public interface IClock
{
float Elapsed { get; }
bool IsRunning { get; }
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 571bdb1b643aa3ca9a685d437bfa198e

View File

@@ -0,0 +1,11 @@
using Game.Scripts.Runtime.Data;
using UnityEngine;
namespace Game.Scripts.Runtime.Abstractions
{
public interface IEnemyFactory
{
GameObject Spawn(EnemyDefinition definition, Vector3 position, Quaternion rotation);
void Despawn(GameObject instance);
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9cd9bf4b38832adc09d08d55b0cf1503

View File

@@ -0,0 +1,9 @@
namespace Game.Scripts.Runtime.Abstractions
{
public interface IPool<TKey, TValue>
{
void Prewarm(TKey key, int count);
TValue Get(TKey key);
void Release(TKey key, TValue value);
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: d1a3c285bb7769484ba53b11d2d4dbea

View File

@@ -0,0 +1,10 @@
using Game.Scripts.Runtime.Data;
using UnityEngine;
namespace Game.Scripts.Runtime.Abstractions
{
public interface ISpawnRule
{
bool CanSpawn(EnemyDefinition definition, Vector3 position);
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 53678779ec0e460ac88698b25fc991f6