private void Health_SpriteKilled(object sender, SpriteDamagedEventArgs e) { Vector2 flipVelocity = new Vector2(40f, -100f); isFlippedOver = true; Velocity = flipVelocity; TileCollisionMode = SpriteCollisionMode.NoCollision; SpriteCollisionMode = SpriteCollisionMode.NoCollision; Components.ForEach(c => c.IsActive = false); graphics.CurrentObjectName = "shell"; Owner.HUDInfo.AddScore(200); }
private void Health_SpriteKilled(object sender, SpriteDamagedEventArgs e) { if (e.DamageType == SpriteDamageTypes.PlayerStomp) { Velocity = Vector2.Zero; isFlippedOver = true; SpriteCollisionMode = TileCollisionMode = SpriteCollisionMode.NoCollision; respawnTimer = (int)(RespawnDelay.Value * 60f); Owner.HUDInfo.AddScore(200); } }
private void Health_SpriteKilled(object sender, SpriteDamagedEventArgs e) { Vector2 flipVelocity = new Vector2(40f, -100f); isFlippedOver = true; Velocity = flipVelocity; TileCollisionMode = SpriteCollisionMode.NoCollision; SpriteCollisionMode = SpriteCollisionMode.NoCollision; var walker = GetComponent<WalkerComponent>(); if (walker != null) { walker.IsActive = false; } Owner.HUDInfo.AddScore(200); }
private void HealthComponent_SpriteKilled(object sender, SpriteDamagedEventArgs e) { Vector2 flipVelocity = new Vector2(40f, -100f); if (e.DamageType == SpriteDamageTypes.PlayerStomp) { Velocity = Vector2.Zero; graphics.CurrentObjectName = AppendPaletteNameSuffix("flattened"); SpriteCollisionMode = SpriteCollisionMode.NoCollision; Components.RemoveAll(c => c is WalkerComponent); SMLimitless.Components.ActionScheduler.Instance.ScheduleAction(() => Owner.RemoveSprite(this), 120); } else { isFlippedOver = true; Velocity = flipVelocity; TileCollisionMode = SpriteCollisionMode.NoCollision; SpriteCollisionMode = SpriteCollisionMode.NoCollision; Components.RemoveAll(c => c is WalkerComponent); } Owner.HUDInfo.AddScore(200); }