Parcel Media Information
示例#1
0
 /// <summary>
 /// Construct a new instance of the ParcelMediaUpdateReplyEventArgs class
 /// </summary>
 /// <param name="simulator">the simulator the parcel media data was updated in</param>
 /// <param name="media">The updated media information</param>
 public ParcelMediaUpdateReplyEventArgs(Simulator simulator, ParcelMedia media)
 {
     this.m_Simulator = simulator;
     this.m_ParcelMedia = media;
 }
示例#2
0
 /// <summary>
 /// Defalt constructor
 /// </summary>
 /// <param name="localID">Local ID of this parcel</param>
 public Parcel(int localID)
 {
     LocalID = localID;
     ClaimDate = Utils.Epoch;
     Bitmap = Utils.EmptyBytes;
     Name = String.Empty;
     Desc = String.Empty;
     MusicURL = String.Empty;
     AccessWhiteList = new List<ParcelManager.ParcelAccessEntry>(0);
     AccessBlackList = new List<ParcelManager.ParcelAccessEntry>(0);
     Media = new ParcelMedia();
 }
示例#3
0
        /// <summary>Process an incoming packet and raise the appropriate events</summary>
        /// <param name="sender">The sender</param>
        /// <param name="e">The EventArgs object containing the packet data</param>
        /// <remarks>Raises the <see cref="ParcelMediaUpdateReply"/> event</remarks>
        protected void ParcelMediaUpdateHandler(object sender, PacketReceivedEventArgs e)
        {
            if (m_ParcelMediaUpdateReply != null)
            {
                Packet packet = e.Packet;
                Simulator simulator = e.Simulator;

                ParcelMediaUpdatePacket reply = (ParcelMediaUpdatePacket)packet;
                ParcelMedia media = new ParcelMedia();

                media.MediaAutoScale = (reply.DataBlock.MediaAutoScale == (byte)0x1) ? true : false;
                media.MediaID = reply.DataBlock.MediaID;
                media.MediaDesc = Utils.BytesToString(reply.DataBlockExtended.MediaDesc);
                media.MediaHeight = reply.DataBlockExtended.MediaHeight;
                media.MediaLoop = ((reply.DataBlockExtended.MediaLoop & 1) != 0) ? true : false;
                media.MediaType = Utils.BytesToString(reply.DataBlockExtended.MediaType);
                media.MediaWidth = reply.DataBlockExtended.MediaWidth;
                media.MediaURL = Utils.BytesToString(reply.DataBlock.MediaURL);

                OnParcelMediaUpdateReply(new ParcelMediaUpdateReplyEventArgs(simulator, media));
            }
        }
示例#4
0
 /// <summary>
 /// Defalt constructor
 /// </summary>
 /// <param name="simulator">Simulator this parcel resides in</param>
 /// <param name="localID">Local ID of this parcel</param>
 public Parcel(Simulator simulator, int localID)
 {
     Simulator = simulator;
     LocalID = localID;
     RequestResult = 0;
     SequenceID = 0;
     SnapSelection = false;
     SelfCount = 0;
     OtherCount = 0;
     PublicCount = 0;
     OwnerID = UUID.Zero;
     IsGroupOwned = false;
     AuctionID = 0;
     ClaimDate = Helpers.Epoch;
     ClaimPrice = 0;
     RentPrice = 0;
     AABBMin = Vector3.Zero;
     AABBMax = Vector3.Zero;
     Bitmap = new byte[0];
     Area = 0;
     Status = ParcelStatus.None;
     SimWideMaxPrims = 0;
     SimWideTotalPrims = 0;
     MaxPrims = 0;
     TotalPrims = 0;
     OwnerPrims = 0;
     GroupPrims = 0;
     OtherPrims = 0;
     SelectedPrims = 0;
     ParcelPrimBonus = 0;
     OtherCleanTime = 0;
     Flags = ParcelFlags.None;
     SalePrice = 0;
     Name = String.Empty;
     Desc = String.Empty;
     MusicURL = String.Empty;
     GroupID = UUID.Zero;
     PassPrice = 0;
     PassHours = 0;
     Category = ParcelCategory.None;
     AuthBuyerID = UUID.Zero;
     SnapshotID = UUID.Zero;
     UserLocation = Vector3.Zero;
     UserLookAt = Vector3.Zero;
     LandingType = 0x0;
     Dwell = 0;
     RegionDenyAnonymous = false;
     RegionPushOverride = false;
     AccessList = new List<ParcelManager.ParcelAccessEntry>(0);
     RegionDenyAgeUnverified = false;
     Media = new ParcelMedia();
     ObscureMedia = false;
     ObscureMusic = false;
 }
示例#5
0
        private void ParcelMediaUpdateHandler(Packet packet, Simulator simulator)
        {
            ParcelMediaUpdatePacket reply = (ParcelMediaUpdatePacket)packet;
            ParcelMedia media = new ParcelMedia();

            media.MediaAutoScale = reply.DataBlock.MediaAutoScale;
            media.MediaID = reply.DataBlock.MediaID;
            media.MediaDesc = Helpers.FieldToUTF8String(reply.DataBlockExtended.MediaDesc);
            media.MediaHeight = reply.DataBlockExtended.MediaHeight;
            media.MediaLoop = ((reply.DataBlockExtended.MediaLoop & 1) != 0) ? true : false;
            media.MediaType = Helpers.FieldToUTF8String(reply.DataBlockExtended.MediaType);
            media.MediaWidth = reply.DataBlockExtended.MediaWidth;
            media.MediaURL = Helpers.FieldToUTF8String(reply.DataBlock.MediaURL);

            if (OnParcelMediaUpdate != null)
            {
                try { OnParcelMediaUpdate(simulator, media); }
                catch (Exception e) { Logger.Log(e.Message, Helpers.LogLevel.Error, Client, e); }
            }
        }
示例#6
0
文件: IParcels.cs 项目: thoys/simian
 /// <summary>
 /// Copy constructor
 /// </summary>
 public SceneParcel(SceneParcel parcel)
 {
     if (parcel.AccessBlackList != null)
         AccessBlackList = new List<ParcelAccessEntry>(parcel.AccessBlackList);
     if (parcel.AccessWhiteList != null)
         AccessWhiteList = new List<ParcelAccessEntry>(parcel.AccessWhiteList);
     AuthBuyerID = parcel.AuthBuyerID;
     AutoReturnTime = parcel.AutoReturnTime;
     Bitmap = new byte[512];
     Buffer.BlockCopy(parcel.Bitmap, 0, Bitmap, 0, 512);
     Category = parcel.Category;
     ClaimDate = parcel.ClaimDate;
     Desc = parcel.Desc;
     Dwell = parcel.Dwell;
     Flags = parcel.Flags;
     GroupID = parcel.GroupID;
     IsGroupOwned = parcel.IsGroupOwned;
     Landing = parcel.Landing;
     LocalID = parcel.LocalID;
     MaxPrims = parcel.MaxPrims;
     ParcelMedia oldMedia = parcel.Media;
     Media = new ParcelMedia
     {
         MediaAutoScale = oldMedia.MediaAutoScale,
         MediaDesc = oldMedia.MediaDesc,
         MediaHeight = oldMedia.MediaHeight,
         MediaID = oldMedia.MediaID,
         MediaLoop = oldMedia.MediaLoop,
         MediaType = oldMedia.MediaType,
         MediaURL = oldMedia.MediaURL,
         MediaWidth = oldMedia.MediaWidth
     };
     MusicURL = parcel.MusicURL;
     Name = parcel.Name;
     ObscureMedia = parcel.ObscureMedia;
     ObscureMusic = parcel.ObscureMusic;
     OwnerID = parcel.OwnerID;
     PassHours = parcel.PassHours;
     PassPrice = parcel.PassPrice;
     DenyAgeUnverified = parcel.DenyAgeUnverified;
     DenyAnonymous = parcel.DenyAnonymous;
     PushOverride = parcel.PushOverride;
     SalePrice = parcel.SalePrice;
     SnapshotID = parcel.SnapshotID;
     Status = parcel.Status;
     LandingLocation = parcel.LandingLocation;
     LandingLookAt = parcel.LandingLookAt;
 }
示例#7
0
 /// <summary>
 /// Defalt constructor
 /// </summary>
 /// <param name="localID">Local ID of this parcel</param>
 public Parcel(int localID)
 {
     LocalID = localID;
     SelfCount = 0;
     OtherCount = 0;
     PublicCount = 0;
     OwnerID = Guid.Empty;
     IsGroupOwned = false;
     AuctionID = 0;
     ClaimDate = Utils.Epoch;
     ClaimPrice = 0;
     RentPrice = 0;
     AABBMin = Vector3f.Zero;
     AABBMax = Vector3f.Zero;
     Bitmap = new byte[0];
     Area = 0;
     Status = ParcelStatus.None;
     SimWideMaxPrims = 0;
     SimWideTotalPrims = 0;
     MaxPrims = 0;
     TotalPrims = 0;
     OwnerPrims = 0;
     GroupPrims = 0;
     OtherPrims = 0;
     ParcelPrimBonus = 0;
     OtherCleanTime = 0;
     Flags = ParcelFlags.None;
     SalePrice = 0;
     Name = String.Empty;
     Desc = String.Empty;
     MusicURL = String.Empty;
     GroupID = Guid.Empty;
     PassPrice = 0;
     PassHours = 0;
     Category = ParcelCategory.None;
     AuthBuyerID = Guid.Empty;
     SnapshotID = Guid.Empty;
     UserLocation = Vector3f.Zero;
     UserLookAt = Vector3f.Zero;
     Landing = LandingType.None;
     Dwell = 0;
     RegionDenyAnonymous = false;
     RegionPushOverride = false;
     AccessWhiteList = new List<ParcelManager.ParcelAccessEntry>();
     AccessBlackList = new List<ParcelManager.ParcelAccessEntry>(0);
     RegionDenyAgeUnverified = false;
     Media = new ParcelMedia();
     ObscureMedia = false;
     ObscureMusic = false;
 }