예제 #1
0
        public static GenericPacket PlaySound(int soundID, IPoint3D target)
        {
            var p = GenericPacket.Instantiate(0x54, 12);

            p.Stream.Write((byte)1);                // flags
            p.Stream.Write((short)soundID);
            p.Stream.Write((short)0);               // volume
            p.Stream.Write((short)target.X);
            p.Stream.Write((short)target.Y);
            p.Stream.Write((short)target.Z);

            return(p);
        }
예제 #2
0
        public static GenericPacket Instantiate( int id, int len )
        {
            GenericPacket p = null;

            lock ( m_Stack )
                if ( m_Stack.Count > 0 )
                    p = m_Stack.Pop();

            if ( p == null )
                p = new GenericPacket();

            p.Initialize( id, len );

            return p;
        }
예제 #3
0
        public static GenericPacket Instantiate(int id, int len)
        {
            GenericPacket p = null;

            lock (m_Stack)
                if (m_Stack.Count > 0)
                {
                    p = m_Stack.Pop();
                }

            if (p == null)
            {
                p = new GenericPacket();
            }

            p.Initialize(id, len);

            return(p);
        }
예제 #4
0
 public CompatPacket(int packetID, int length)
 {
     m_Packet = GenericPacket.GetInstance(packetID, length);
 }
		public CompatPacket(int packetID, int length) {
			m_Packet = GenericPacket.GetInstance(packetID, length);
		}
예제 #6
0
 public static void Release( GenericPacket p )
 {
     lock ( m_Stack )
         if ( !m_Stack.Contains( p ) )
             m_Stack.Push( p );
 }