protected override bool OnPerish(ActorBase collider) { if (collider is Player) { CreateDeathDebris(collider); levelHandler.PlayCommonSound("Splat", Transform.Pos); TryGenerateRandomDrop(); } else { Lizard lizard = new Lizard(); lizard.OnActivated(new ActorActivationDetails { LevelHandler = levelHandler, Pos = Transform.Pos, Params = new[] { theme, (ushort)1, (ushort)(IsFacingLeft ? 1 : 0) } }); levelHandler.AddActor(lizard); Explosion.Create(levelHandler, Transform.Pos, Explosion.SmokeGray); } return(base.OnPerish(collider)); }
protected override bool OnPerish(ActorBase collider) { if (collider is Player) { CreateDeathDebris(collider); api.PlayCommonSound(this, "Splat"); TryGenerateRandomDrop(); } else { Lizard lizard = new Lizard(); lizard.OnAttach(new ActorInstantiationDetails { Api = api, Pos = Transform.Pos, Params = new[] { theme, (ushort)1, (ushort)(IsFacingLeft ? 1 : 0) } }); api.AddActor(lizard); Explosion.Create(api, Transform.Pos, Explosion.SmokeGray); } return(base.OnPerish(collider)); }