public void FinishSequence(Mobile cible) { Owner.Animate(17, 7, 1, true, false, 0); //SortNubiaHelper.MakeEffect( Owner, cible, this, true, mustExplose ); if (!(cible is NubiaCreature)) { return; } NubiaCreature creat = cible as NubiaCreature; if (creat.Hits < Math.Max(8, (creat.HitsMax / 5))) { SortNubiaHelper.makeBigSmoke(creat.Location, creat.Map); RuneVie rune = new RuneVie(); rune.creature = NubiaHelper.CopyCreature(creat); rune.MoveToWorld(creat.Location, creat.Map); creat.Delete(); } else { Owner.SendMessage("La créature n'est pas assez affaibli"); } EndSortNubia(); //important ;) }
public override bool Cast() { if (!base.Cast()) { return(false); } double time = (int)(Owner.Niveau) * (Maitrise / 10.0); time *= getRatio(); if (m_toClone == null) { return(false); } if (m_invoc != null) { m_invoc.Delete(); m_invoc = null; } NubiaCreature m = NubiaHelper.CopyCreature(m_toClone); m_invoc = m; m_invoc.Summoned = true; m_invoc.ControlMaster = Owner; m_invoc.ControlOrder = OrderType.Guard; m_invoc.Controlled = true; m.MoveToWorld(Owner.Location, Owner.Map); Effects.SendLocationEffect(new Point3D(m.X + 1, m.Y, m.Z + 4), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X + 1, m.Y, m.Z), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X + 1, m.Y, m.Z - 4), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X, m.Y + 1, m.Z + 4), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X, m.Y + 1, m.Z), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X, m.Y + 1, m.Z - 4), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X + 1, m.Y + 1, m.Z + 11), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X + 1, m.Y + 1, m.Z + 7), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X + 1, m.Y + 1, m.Z + 3), m.Map, 0x3728, 13); Effects.SendLocationEffect(new Point3D(m.X + 1, m.Y + 1, m.Z - 1), m.Map, 0x3728, 13); Owner.PlaySound(0x228); m_timer = new InternalTimer(this, time); m_timer.Start(); return(true); }
protected override void OnTarget(Mobile from, object o) { if (o is RuneVie) { RuneVie rune = o as RuneVie; if (rune.creature == null) { player.SendMessage("Cette rune est vide"); } else { m_Owner.toClone = NubiaHelper.CopyCreature(rune.creature); // m_Owner.competence = rune.creature.competenceLie; } player.CloseGump(typeof(SortCreationGump)); player.SendGump(new SortCreationGump(player, m_Owner)); } }