Exemple #1
0
  @Override
  public void Draw(SpriteBatch renderer) {
    super.Draw(renderer);
    if (!m_inMenu) {

      m_detectionRange = m_detectionRangeReset;
      SetShieldColor();
      m_pooledShieldEffect.setPosition(m_objectXPosition, m_objectYPosition);
      m_pooledShieldEffect.getEmitters().get(0).getRotation().setHigh((float) m_angleDegrees);
      m_pooledShieldEffect.getEmitters().get(0).getRotation().setLow((float) m_angleDegrees);
      m_pooledShieldEffect.draw(renderer, 1f / 60f);

      DrawHackedIndicator(renderer);
      for (int i = 0; i < m_overTimeEffects.size(); i++) {
        OverTimeEffect e = m_overTimeEffects.get(i);
        if (!e.Action()) {
          m_overTimeEffects.remove(e);
        }
      }

      if (!m_freezeShip) {
        if (m_weaponsFree > 0) {
          ProcessCounterMeasures(renderer);
        } else {
          StopCounterMeasureSound();
        }
        ce.Draw(renderer);
        me.Draw(renderer);
        HandleShieldRecharging();
        HandleBoostRecharge();
      }
    }

    super.Draw(renderer);
  }
Exemple #2
0
 @Override
 public void damageCalc(ViewedCollidable object2, float crashVelocity) {
   if (crashVelocity > 3) {
     object2.damageIntegrity(this, crashVelocity * m_body.getMass() / 30, DamageType.Collision);
     me.RegisterCollision();
   }
 }
Exemple #3
0
  @Override
  public void damageIntegrity(
      ViewedCollidable damageOrigin,
      float damage,
      DamageType type,
      boolean bypassShieldResistances,
      boolean bypassShields,
      boolean bypassResistances) {
    float damageToIntegrity = damage;

    if (m_shieldIntegrity > 0 && !bypassShields) {
      if (!bypassShieldResistances) {
        damage = damage * m_shieldDamageResistances[type.value];
        damage =
            damage > m_shieldDamageReductions[type.value]
                ? damage - m_damageReductions[type.value]
                : 0;
      }
      damageToIntegrity = 0;
      m_shieldIntegrity = damage > m_shieldIntegrity ? 0 : m_shieldIntegrity - damage;
    }

    if (damage > 0) {
      m_shieldRechargeCounter = m_shieldRechargeDelay;
    }

    super.damageIntegrity(
        damageOrigin,
        damageToIntegrity,
        type,
        bypassShieldResistances,
        bypassShields,
        bypassResistances);
  }
 @Override
 public void damageCalc(ViewedCollidable object2, float crashVelocity) {
   object2.damageIntegrity(this, (crashVelocity * 1), DamageType.Collision);
   me.RegisterCollision();
 }