Server.Items.Moongate.UseGate C# (CSharp) Method

UseGate() public method

public UseGate ( Mobile m ) : void
m Mobile
return void
		public virtual void UseGate( Mobile m )
		{
			ClientFlags flags = m.NetState == null ? ClientFlags.None : m.NetState.Flags;

			if ( (m.Kills >= 5 && m_TargetMap != Map.Felucca) )
			{
				m.SendLocalizedMessage( 1019004 ); // You are not allowed to travel there.
			}
			else if ( m.Spell != null )
			{
				m.SendLocalizedMessage( 1049616 ); // You are too busy to do that at the moment.
			}
			else if ( m_TargetMap != null && m_TargetMap != Map.Internal )
			{
				BaseCreature.TeleportPets( m, m_Target, m_TargetMap );

				m.MoveToWorld( m_Target, m_TargetMap );

				if ( m.AccessLevel == AccessLevel.Player || !m.Hidden )
					m.PlaySound( 0x1FE );

				OnGateUsed( m );
			}
			else
			{
				m.SendMessage( "This moongate does not seem to go anywhere." );
			}
		}

Usage Example

コード例 #1
0
ファイル: Moongate.cs プロジェクト: proxeeus/UORebirth
 public override void OnResponse(NetState state, int index)
 {
     if (index == 0)
     {
         m_Gate.UseGate(state.Mobile, m_Range);
     }
 }