// Interface call public void OnPickUp(PowerUps.PowerUpsType p_type) { m_cPowerUp = p_type; }
private void Spawn() { if (m_carryPrincess) { m_carryPrincess = false; Princess prin = (Princess)GameObject.FindObjectOfType(typeof(Princess)); prin.RespawnAt(transform.position); } m_isDead = false; m_deathTimer = 0; m_powerUpCD = 0; m_isMoving = false; m_powerUpTimer = 0; m_isAttacking = false; m_currentSide = Sides.FRONT; m_lastSide = Sides.FRONT; m_cPowerUp = PowerUps.PowerUpsType.NONE; m_particles.Stop(); m_speed = SPEED_DEFAULT; m_health = MAX_HEALTH; m_mana = MAX_MANA; m_attackType = ATTACK_DEFAULT; StartCoroutine(SpawnRoutine()); }
private void PowerUpActive() { m_powerUpTimer += Time.deltaTime; if (m_powerUpTimer >= m_powerUpCD) { switch (m_cPowerUp) { // IronStorm case (PowerUps.PowerUpsType.IRONSTORM): AttackEnded(); break; // Double Speed case (PowerUps.PowerUpsType.DOUBLE_SPEED): if (!m_carryPrincess) m_speed = SPEED_DEFAULT; else m_speed = SPEED_MINIMUM; break; // Bomber man case (PowerUps.PowerUpsType.BOMBER_MAN): AttackEnded(); break; // Castle King // case (PowerUps.PowerUpsType.CASTLE_KING): // break; } m_cPowerUp = PowerUps.PowerUpsType.NONE; m_powerUpTimer = 0; m_attackType = ATTACK_DEFAULT; m_isPowerUpActive = false; } }