public virtual bool AcceptEscorter(Mobile m) { EDI dest = GetDestination(); if (dest == null) { return(false); } Mobile escorter = GetEscorter(); if (escorter != null || !m.Alive) { return(false); } BaseEscortable escortable = (BaseEscortable)m_EscortTable[m]; if (escortable != null && !escortable.Deleted && escortable.GetEscorter() == m) { Say("I see you already have an escort."); return(false); } else if (m is PlayerMobile && (((PlayerMobile)m).LastEscortTime + EscortDelay) >= DateTime.UtcNow) { int minutes = (int)Math.Ceiling(((((PlayerMobile)m).LastEscortTime + EscortDelay) - DateTime.UtcNow).TotalMinutes); Say("You must rest {0} minute{1} before we set out on this journey.", minutes, minutes == 1 ? "" : "s"); return(false); } else if (SetControlMaster(m)) { m_LastSeenEscorter = DateTime.UtcNow; if (m is PlayerMobile) { ((PlayerMobile)m).LastEscortTime = DateTime.UtcNow; } Say("Lead on! Payment will be made when we arrive in {0}.", (dest.Name == "Ocllo" && m.Map == Map.Trammel) ? "Haven" : dest.Name); m_EscortTable[m] = this; StartFollow(); return(true); } return(false); }
public AbandonEscortEntry(BaseEscortable m, Mobile from) : base(6102, 3) { m_Mobile = m; m_From = from; }
public AcceptEscortEntry(BaseEscortable m, Mobile from) : base(6101, 3) { m_Mobile = m; m_From = from; }
public AskDestinationEntry(BaseEscortable m, Mobile from) : base(6100, 3) { m_Mobile = m; m_From = from; }