public void AddShotPatternPowerUp(ShotPatternPowerUp p_shotPatternPowerUp)
 {
     if (m_spPowerUps.Any(s => s.shotPatternPowerUp == p_shotPatternPowerUp))
     {
         ShotPatternPowerUpWrapper wrapper = m_spPowerUps.Last(s => s.shotPatternPowerUp == p_shotPatternPowerUp);
         wrapper.time = Time.time * 1000;
         m_spPowerUps.Remove(wrapper);
         m_spPowerUps.AddLast(wrapper);
     }
     else
     {
         ShotPatternPowerUpWrapper wrapper = new ShotPatternPowerUpWrapper(p_shotPatternPowerUp);
         m_spPowerUps.AddLast(wrapper);
         StartCoroutine(RemoveShotPatternPowerUp(wrapper, p_shotPatternPowerUp.m_duration));
     }
 }
 public ShotPatternPowerUpWrapper(ShotPatternPowerUp p_shotPatternPowerUp)
 {
     shotPatternPowerUp = p_shotPatternPowerUp;
     time = Time.time * 1000;
 }