public override void UpdatePlayer(TheTransmission player) { if (turret != null) { float aimDistance = 300; Entity target = null; cooldown--; foreach (Entity entity in Miasma.gameEntities) { if (entity.team == 0 && entity.maxHealth != -1) { if ((entity.Position - turret.AbsolutePosition()).Length() < aimDistance) { aimDistance = (entity.Position - turret.AbsolutePosition()).Length(); target = entity; } } } if (target == null) { turret.AimToward(-(float)Math.PI / 2); } else { turret.AimTowardAbsolute(Functions.ToRotation((target.Position + target.Velocity * aimDistance / 8f) - turret.AbsolutePosition())); if (cooldown <= 0) { cooldown = 30; turret.Shoot(); } } turret.UpdateRelativePosition(); } }
public override void ModifyStats(TheTransmission player) { turret = new PlayerTurret(player, new Vector2(0, -3)); }
public override void ModifyStats(TheTransmission player) { player.playerHorizontalSpeed += 1; }
public override void ModifyStats(TheTransmission player) { player.MiasmaRate += .5f; player.MiasmaMaxCapacity += 400; }
public override void ModifyStats(TheTransmission player) { player.shotCooldown -= 5; }
public override void ModifyStats(TheTransmission player) { player.maxHealth += 10; }
public virtual void UpdatePlayer(TheTransmission player) { }
public virtual void OnLaunchMiasma(TheTransmission player) { }
public virtual void ModifyStats(TheTransmission player) { }
public override void OnLaunchMiasma(TheTransmission player) { player.LaunchMiasma((float)Math.PI / 12); player.LaunchMiasma(-(float)Math.PI / 12); }
public override void ModifyStats(TheTransmission player) { player.MiasmaRate -= .2f; }