public void OnHealthDepleted() { TaskManager mTaskManager = gameObject.GetComponent <TaskManager>(); TaskDeath taskDeath = new TaskDeath(); taskDeath.priority = 5; mTaskManager.TriggerTask(taskDeath, "TaskReactHit::OnHealthDepleted"); }
public virtual void OnKilled(DamageType damageType = DamageType.None) { string reason = Game.UserName + " Died!"; switch (damageType) { default: break; case DamageType.Sand: { int r = level.random.Next(0, 2); if (r == 0) { reason = "[color:Red]" + Game.UserName + "[/color] was crushed."; } else if (r == 1) { reason = "[color:Red]" + Game.UserName + "[/color] suffocated."; } } break; case DamageType.Spike: { int r = level.random.Next(0, 3); if (r == 0) { reason = "[color:Red]" + Game.UserName + "[/color] was stabbed."; } else if (r == 1) { reason = "[color:Red]" + Game.UserName + "[/color] got sliced."; } else if (r == 2) { reason = "[color:Red]" + Game.UserName + "[/color] was impaled by a spike."; } } break; case DamageType.Fall: { int r = level.random.Next(0, 3); if (r == 0) { reason = "[color:Red]" + Game.UserName + "[/color] went splat!"; } else if (r == 1) { reason = "[color:Red]" + Game.UserName + "[/color] took a nosedive."; } else if (r == 2) { reason = "[color:Red]" + Game.UserName + "[/color] jumped a bit far..."; } } break; case DamageType.Fire: { int r = level.random.Next(0, 3); if (r == 0) { reason = "[color:Red]" + Game.UserName + "[/color] was burnt to a crisp."; } else if (r == 1) { reason = "[color:Red]" + Game.UserName + "[/color] was playing with fire."; } else if (r == 2) { reason = "[color:Red]" + Game.UserName + "[/color] is a pyromaniac."; } } break; case DamageType.Drown: { int r = level.random.Next(0, 3); if (r == 0) { reason = "[color:Red]" + Game.UserName + "[/color] drowned."; } else if (r == 1) { reason = "[color:Red]" + Game.UserName + "[/color] couldn't find air."; } else if (r == 2) { reason = "[color:Red]" + Game.UserName + "[/color] thought they were a fish."; } } break; case DamageType.Self: { int r = level.random.Next(0, 4); if (r == 0) { reason = "[color:Red]" + Game.UserName + "[/color] took their life."; } else if (r == 1 || r == 2) { reason = "[color:Red]" + Game.UserName + "[/color] suicided."; } else if (r == 3) { reason = "[color:Red]" + Game.UserName + "[/color] has hit restart."; } } break; case DamageType.Lava: { int r = level.random.Next(0, 4); if (r == 0) { reason = "[color:Red]" + Game.UserName + "[/color] swam in lava."; } else if (r == 1 || r == 2) { reason = "[color:Red]" + Game.UserName + "[/color] was incinerated."; } else if (r == 3) { reason = "[color:Red]" + Game.UserName + "[/color] couldn't stand the heat."; } } break; } Interface.MainWindow.Console.MessageBuffer.Add(new TomShane.Neoforce.Controls.ConsoleMessage(reason, 0)); TaskDeath tmp = new TaskDeath(level.game.Manager, reason); tmp.Closing += new WindowClosingEventHandler(((MainWindow)Game.MainWindow).WindowClosing); tmp.Closed += new WindowClosedEventHandler(((MainWindow)Game.MainWindow).WindowClosed); tmp.Init(); level.game.Manager.Add(tmp); tmp.Show(); }