protected override void OnTick() { if (!m_Corpse.m_NoBones) { m_Corpse.TurnToBones(); } else { m_Corpse.Delete(); } }
protected override void OnTick() { if (m_Corpse.TotalItems > 3 && (m_Corpse.Owner != null && m_Corpse.Owner.Player)) { m_Corpse.TurnToBones(); } else { m_Corpse.Delete(); } }
protected override void OnTick() { if (!m_Corpse.GetFlag(CorpseFlag.NoBones)) { m_Corpse.TurnToBones(); } else { m_Corpse.Delete(); } }
protected override void OnTick() { /*** ADDED ***/ // Alambik's Undead system if (m_Corpse.Amount == 3 && m_Corpse.Killer != null && m_Corpse.Killer.Player) // Protocol for corpse is Amount = owner's body value { // Scriptiz : on ajoute deux conditions sur le Killer pour éviter que des gardes // ne kills à longueur de journée des zombies Mobile zombie = new Zombie(true); // Create zombie with no packed items zombie.MoveToWorld(m_Corpse.Location, m_Corpse.Map); zombie.Emote("*se redresse*"); m_Corpse.Delete(); } else /*** END ***/ if (!m_Corpse.GetFlag(CorpseFlag.NoBones)) { m_Corpse.TurnToBones(); } else { m_Corpse.Delete(); } }
public bool Devour(Corpse corpse) { if (corpse == null || corpse.Owner == null) // sorry we can't devour because the corpse's owner is null return false; if (corpse.Owner.Body.IsHuman) corpse.TurnToBones(); // Not bones yet, and we are a human body therefore we turn to bones. IncreaseHits((int) Math.Ceiling(corpse.Owner.HitsMax*0.75)); TotalDevoured++; PublicOverheadMessage(MessageType.Emote, 0x3B2, 1053033); // * The plague beast absorbs the fleshy remains of the corpse * if (!HasMetalChest && TotalDevoured >= DevourGoal) { PackItem(new MetalChest()); HasMetalChest = true; } return true; }