private IEnumerator TimerToSpawn(int extraTime = 0) { yield return(new WaitForSeconds(respawnTime + extraTime)); if (spawnSFX) { spawnSFX.Play(); } GameObject enemy = Instantiate(enemyPrefab, transform.position, Quaternion.identity, transform); IRespawnable respawnable = enemy.GetComponent <IRespawnable>(); if (respawnable != null) { respawnable.SetRespawner(this); } GameObject spawnFX = Instantiate(spawnEffect, transform.position, Quaternion.identity); EnemySpawnEffect enemySpawnEffect = spawnFX.GetComponent <EnemySpawnEffect>(); enemySpawnEffect.Set(enemy); spawnFX.SetActive(true); }
public PlayerRegistryTracker(IRespawnable <CharacterSpawnParameters> respawnable, PlayerRegistry registry, CharacterFacade facade) { _respawnable = respawnable; _registry = registry; _facade = facade; PreInitialize(); }
public NetworkedCharacterWeaponInitalizer(IRespawnable <CharacterSpawnParameters> respawnable, WeaponCreator creator, IWeapon weapon) { _respawnable = respawnable; _creator = creator; _weapon = weapon; PreInitialize(); }
public PlayerEquipmentInitializer(IRespawnable <CharacterSpawnParameters> respawnable, ItemFactory itemFactory, IItemContainer inventory, IWeapon weapon) { _respawnable = respawnable; _itemFactory = itemFactory; _inventory = inventory; _weapon = weapon; PreInitialize(); }
private void OnTriggerEnter2D(Collider2D collision) { IRespawnable respawnable = collision.gameObject.GetComponent <IRespawnable>(); if (respawnable != null) { respawnable.setRespawn(this.Transform); } }
public AILootCreator(IRespawnable <CharacterSpawnParameters> respawnable, PickupManager pickupManager, ItemDatabase database, Rigidbody2D rb, Settings settings) { _respawnable = respawnable; _pickupManager = pickupManager; _database = database; _rb = rb; _settings = settings; PreInitialize(); }
/// <summary> /// Adds an <see cref="IRespawnable"/> to the list of objects that need to respawn. /// </summary> /// <param name="respawnable">The object to respawn.</param> /// <exception cref="ArgumentNullException"><paramref name="respawnable"/> is null.</exception> public void AddToRespawn(IRespawnable respawnable) { if (respawnable == null) { throw new ArgumentNullException("respawnable"); } Debug.Assert(respawnable.DynamicEntity != null); _respawnTaskList.Add(respawnable); }
/// <summary> /// Adds an IRespawnable to the list of objects that need to respawn. /// </summary> /// <param name="respawnable">The object to respawn.</param> public void AddToRespawn(IRespawnable respawnable) { World.AddToRespawn(respawnable); }
public CharacterHealth(IHealthSettings settings, IRespawnable <CharacterSpawnParameters> respawnable) { _settings = settings; _respawnable = respawnable; PreInitialize(); }
public NetId(IRespawnable <PickupSpawnParameters> respawnable) { _respawnable = respawnable; PreInitialize(); }
public CharacterInfo(IRespawnable <CharacterSpawnParameters> respawnable) { _respawnable = respawnable; PreInitialize(); }