private void OnDestroy() { if (Instance == this) { Instance = null; } }
void OnDisable() { LevelEventManager.StopListening("PlayerDamageTaken", DamagePlayer); LevelEventManager.StopListening("PlayerInstantDeath", KillPlayer); LevelEventManager.StopListening("EnemyKilled", CountEnemyDeath); LevelEventManager.StopListening("LevelComplete", LoadNextLevel); }
public void Die() { Destroy(gameObject); Debug.Log("Wasp has ceased evil activities"); LevelEventManager.TriggerEvent("EnemyKilled"); }
public void Die() { Destroy(gameObject); Debug.Log("Spider has been murdered"); LevelEventManager.TriggerEvent("EnemyKilled"); }
void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.tag == "Player") { LevelEventManager.TriggerEvent("PlayerInstantDeath"); } }
void OnTriggerEnter2D(Collider2D collider) { if (collider.gameObject.tag.Equals("Player")) { Debug.Log("Level exit reached"); LevelEventManager.TriggerEvent("LevelComplete"); } }
void OnCollisionEnter2D(Collision2D col) { GameObject other = col.gameObject; if (other.tag == "Player") { LevelEventManager.TriggerEvent("PlayerDamageTaken"); } }
void Awake() { if (Instance == null) { Instance = this; } else if (Instance != this) { Destroy(gameObject); } }
// Use this for initialization void Start() { player = Instantiate(playerPrefab, spawnPoint.transform.position, Quaternion.identity); player.transform.SetParent(entityContainer.transform); hitPoints = hitPointObjects.Length; Debug.Log("Player has " + hitPoints + " hit points"); entityContainerScript = entityContainer.GetComponent <EntityContainer>(); LevelEventManager.TriggerEvent("PlayerSpawned"); }
void OnCollisionEnter2D(Collision2D collision) { GameObject other = collision.gameObject; if (other.tag.Equals("Ground") && animator != null) { animator.SetBool("IsOnGround", true); jumpCount = 0; } else if (other.tag == "Enemy") { LevelEventManager.TriggerEvent("PlayerDamageTaken"); } }
IEnumerator GenerateExit() { Vector3 offset; exitInstance = Instantiate(exit, lastObjectGenerated.transform.position, Quaternion.identity); offset = new Vector3(exitInstance.GetComponent <BoxCollider2D>().bounds.size.x / 2 + 5f, 0, 0); exitInstance.transform.position += offset; Debug.Log("Generated exit at " + exitInstance.transform.position); LevelEventManager.TriggerEvent("LevelExitCreated"); yield return(null); }
void Explode() { GameObject explosion = Instantiate(sporeExplosionPrefab, transform.position, Quaternion.identity); float explosionRadius = explosion.GetComponent <SpriteRenderer>().bounds.size.x / 2 + 1f; if (Vector3.Distance(player.transform.position, explosion.transform.position) <= explosionRadius) { Vector3 knockback = Vector3.Normalize(player.transform.position - explosion.transform.position); player.GetComponent <Rigidbody2D>().AddForce(knockback * 5f, ForceMode2D.Impulse); LevelEventManager.TriggerEvent("PlayerDamageTaken"); } Destroy(explosion, 1f); }
void OnTriggerEnter2D(Collider2D col) { if (player != null) { return; } LevelEventManager.TriggerEvent("EnteredBossArena"); GameObject other = col.gameObject; if (other.tag == "Player") { player = other; } }
public IEnumerator DieRoutine() { Debug.Log("Boss has been slain"); Rigidbody2D rb = GetComponent <Rigidbody2D>(); rb.bodyType = RigidbodyType2D.Dynamic; rb.gravityScale = 1; StopCoroutine(attack); StopAllCoroutines(); yield return(new WaitForSeconds(2f)); LevelEventManager.TriggerEvent("LevelComplete"); yield return(null); }
// Use this for initialization void Start() { int difficultyMod = defineDifficultyMod(Difficulty); pseudoRandom = new System.Random(seed); WindBurstsAmount = new int[2]; BirdsAmount = new int[2]; //Mins and maxes for events //Param init int param1, param2 = 0; if (Difficulty > difficultyMod) { param2 = Difficulty; param1 = difficultyMod; } else { param2 = difficultyMod; param1 = Difficulty; } /* //WindBurstsAmount[0] = pseudoRandom.Next(Difficulty, difficultyMod); * //WindBurstsAmount[1] = pseudoRandom.Next(difficultyMod, LevelLength * 3); * WindBurstsAmount[0] = pseudoRandom.Next(param1, param2); * WindBurstsAmount[1] = pseudoRandom.Next(difficultyMod, LevelLength * 3); * * //BirdsAmount[0] = pseudoRandom.Next(Difficulty, difficultyMod); * //BirdsAmount[1] = pseudoRandom.Next(difficultyMod, LevelLength * 3); * * BirdsAmount[0] = pseudoRandom.Next(param1, param2); * BirdsAmount[1] = pseudoRandom.Next(difficultyMod, LevelLength * 3);*/ //pseudoRandom.Next(); GroundArray = new GameObject[LevelLength, LandHeight]; SkyArray = new GameObject[LevelLength, SkyHeight]; eventManager = gameObject.GetComponent <LevelEventManager>(); generateMap(); }
IEnumerator CreateExit() { SpriteRenderer treeSprite = levelExitPrefab.GetComponentInChildren <SpriteRenderer>(); float scaleMultiplier = (1 / generatedTilemap.transform.localScale.x); float yOffset = treeSprite.bounds.size.y / 2 - treeSprite.bounds.size.y / 100; // subtract to avoid pixel line between sprite and ground float xOffset = treeSprite.bounds.size.x / 2; int xSpawnLocation = (int)(Mathf.Round(map.GetUpperBound(0) / scaleMultiplier) - xOffset); RaycastHit2D hit = Physics2D.Raycast(new Vector2(xSpawnLocation, 100), Vector2.down); if (hit.collider != null) { GameObject exit = Instantiate(levelExitPrefab, new Vector3(hit.point.x, hit.point.y + yOffset, 0), Quaternion.identity); LevelEventManager.TriggerEvent("LevelExitCreated"); Debug.Log("Spawned exit at " + exit.transform.position); } yield return(null); }
void ConfigureLevelEvents() { List <LevelEventManager.EventType> eventTypes = new List <LevelEventManager.EventType>(); if (_gameManager.CurrentLevelInfo.weatherEvents) { _lvlEventManager = gameObject.AddComponent <LevelEventManager>(); eventTypes.Add(LevelEventManager.EventType.Weather); } if (_gameManager.CurrentLevelInfo.levelEvents) { if (_lvlEventManager == null) { _lvlEventManager = gameObject.AddComponent <LevelEventManager>(); } eventTypes.Add(LevelEventManager.EventType.Environment); } if (_lvlEventManager != null) { _lvlEventManager.Init(eventTypes, levelID, _gameManager, this); } }
void OnDisable() { LevelEventManager.StopListening("LevelExitCreated", OnLevelExitCreated); LevelEventManager.StartListening("PlayerSpawned", OnPlayerSpawned); }
static void ExportLEM() { GameObject sel = Selection.activeGameObject; LevelEventManager manager = sel.GetComponent <LevelEventManager>(); }
void OnDisable() { LevelEventManager.StopListening("PlayerSpawned", OnPlayerSpawned); LevelEventManager.StopListening("EnteredBossArena", OnEnterBossArena); }
void OnDisable() { LevelEventManager.StartListening("PlayerSpawned", OnPlayerSpawned); }