void SpawnRandom(Transform location) { var prefab = enemyPrefabs[Random.Range(0, enemyPrefabs.Length)]; var pos = location.position; if (prefab.name == "KamikazeBuzzer") { pos += new Vector3(0.0f, 1.0f, 0.0f); } var enemy = Instantiate(prefab, pos, location.rotation) as GameObject; enemy.tag = "Enemy"; var spawnCollider = location.gameObject.collider; var enemyCollider = enemy.collider; var health = enemy.GetComponent <Health>(); var origReceivers = health.dieSignals.receivers; var receivers = new ReceiverItem[origReceivers.Length + 1]; for (int i = 0; i < origReceivers.Length; i++) { receivers[i] = origReceivers[i]; } receivers[receivers.Length - 1] = new ReceiverItem { action = "OnEnemyDeath", receiver = gameObject }; health.dieSignals.receivers = receivers; enemy.SetActive(true); Physics.IgnoreCollision(spawnCollider, enemyCollider); enemy.BroadcastMessage("OnSpotted"); numCurrentEnemies++; }
private void dgvReceiver_RowEnter(object sender, DataGridViewCellEventArgs e) { this._target = this._source[e.RowIndex]; this.refresh(); }