Exemple #1
0
 public virtual void SendRegionHandshake(RegionInfo regionInfo, RegionHandshakeArgs args)
 {
     if (OnRegionHandShakeReply != null)
     {
         OnRegionHandShakeReply(this);
     }
 }
Exemple #2
0
        public virtual void SendRegionHandshake(RegionInfo regionInfo, RegionHandshakeArgs args)
        {
            if (OnRegionHandShakeReply != null)
            {
                OnRegionHandShakeReply(this);
            }

            if (OnCompleteMovementToRegion != null)
            {
                OnCompleteMovementToRegion(this, true);
            }
        }
        public void sendRegionHandshake(IClientAPI remoteClient)
        {
            RegionHandshakeArgs args = new RegionHandshakeArgs();

            args.isEstateManager = m_scene.RegionInfo.EstateSettings.IsEstateManager(remoteClient.AgentId);
            if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero && m_scene.RegionInfo.EstateSettings.EstateOwner == remoteClient.AgentId)
            {
                args.isEstateManager = true;
            }

            args.billableFactor      = m_scene.RegionInfo.EstateSettings.BillableFactor;
            args.terrainStartHeight0 = (float)m_scene.RegionInfo.RegionSettings.Elevation1SW;
            args.terrainHeightRange0 = (float)m_scene.RegionInfo.RegionSettings.Elevation2SW;
            args.terrainStartHeight1 = (float)m_scene.RegionInfo.RegionSettings.Elevation1NW;
            args.terrainHeightRange1 = (float)m_scene.RegionInfo.RegionSettings.Elevation2NW;
            args.terrainStartHeight2 = (float)m_scene.RegionInfo.RegionSettings.Elevation1SE;
            args.terrainHeightRange2 = (float)m_scene.RegionInfo.RegionSettings.Elevation2SE;
            args.terrainStartHeight3 = (float)m_scene.RegionInfo.RegionSettings.Elevation1NE;
            args.terrainHeightRange3 = (float)m_scene.RegionInfo.RegionSettings.Elevation2NE;
            args.simAccess           = m_scene.RegionInfo.AccessLevel;
            args.waterHeight         = (float)m_scene.RegionInfo.RegionSettings.WaterHeight;
            args.regionFlags         = GetRegionFlags();
            args.regionName          = m_scene.RegionInfo.RegionName;
            if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero)
            {
                args.SimOwner = m_scene.RegionInfo.EstateSettings.EstateOwner;
            }
            else
            {
                args.SimOwner = m_scene.RegionInfo.MasterAvatarAssignedUUID;
            }

            // Fudge estate owner
            //if (m_scene.Permissions.IsGod(remoteClient.AgentId))
            //    args.SimOwner = remoteClient.AgentId;

            args.terrainBase0   = UUID.Zero;
            args.terrainBase1   = UUID.Zero;
            args.terrainBase2   = UUID.Zero;
            args.terrainBase3   = UUID.Zero;
            args.terrainDetail0 = m_scene.RegionInfo.RegionSettings.TerrainTexture1;
            args.terrainDetail1 = m_scene.RegionInfo.RegionSettings.TerrainTexture2;
            args.terrainDetail2 = m_scene.RegionInfo.RegionSettings.TerrainTexture3;
            args.terrainDetail3 = m_scene.RegionInfo.RegionSettings.TerrainTexture4;

            remoteClient.SendRegionHandshake(m_scene.RegionInfo, args);
        }
Exemple #4
0
        public void SendRegionHandshake(RegionInfo regionInfo, RegionHandshakeArgs args)
        {
            RegionHandshakePacket handshake = new RegionHandshakePacket();

            handshake.RegionInfo = new RegionHandshakePacket.RegionInfoBlock();
            handshake.RegionInfo.BillableFactor       = args.billableFactor;
            handshake.RegionInfo.IsEstateManager      = args.isEstateManager;
            handshake.RegionInfo.TerrainHeightRange00 = args.terrainHeightRange0;
            handshake.RegionInfo.TerrainHeightRange01 = args.terrainHeightRange1;
            handshake.RegionInfo.TerrainHeightRange10 = args.terrainHeightRange2;
            handshake.RegionInfo.TerrainHeightRange11 = args.terrainHeightRange3;
            handshake.RegionInfo.TerrainStartHeight00 = args.terrainStartHeight0;
            handshake.RegionInfo.TerrainStartHeight01 = args.terrainStartHeight1;
            handshake.RegionInfo.TerrainStartHeight10 = args.terrainStartHeight2;
            handshake.RegionInfo.TerrainStartHeight11 = args.terrainStartHeight3;
            handshake.RegionInfo.SimAccess            = args.simAccess;
            handshake.RegionInfo.WaterHeight          = args.waterHeight;

            handshake.RegionInfo.RegionFlags    = args.regionFlags;
            handshake.RegionInfo.SimName        = Util.StringToBytes256(args.regionName);
            handshake.RegionInfo.SimOwner       = args.SimOwner;
            handshake.RegionInfo.TerrainBase0   = args.terrainBase0;
            handshake.RegionInfo.TerrainBase1   = args.terrainBase1;
            handshake.RegionInfo.TerrainBase2   = args.terrainBase2;
            handshake.RegionInfo.TerrainBase3   = args.terrainBase3;
            handshake.RegionInfo.TerrainDetail0 = args.terrainDetail0;
            handshake.RegionInfo.TerrainDetail1 = args.terrainDetail1;
            handshake.RegionInfo.TerrainDetail2 = args.terrainDetail2;
            handshake.RegionInfo.TerrainDetail3 = args.terrainDetail3;
            // I guess this is for the client to remember an old setting?
            handshake.RegionInfo.CacheID   = UUID.Random();
            handshake.RegionInfo2          = new RegionHandshakePacket.RegionInfo2Block();
            handshake.RegionInfo2.RegionID = regionInfo.RegionID;

            handshake.RegionInfo3            = new RegionHandshakePacket.RegionInfo3Block();
            handshake.RegionInfo3.CPUClassID = 9;
            handshake.RegionInfo3.CPURatio   = 1;

            handshake.RegionInfo3.ColoName    = Utils.EmptyBytes;
            handshake.RegionInfo3.ProductName = Util.StringToBytes256(regionInfo.RegionType);
            handshake.RegionInfo3.ProductSKU  = Utils.EmptyBytes;
            handshake.RegionInfo4             = new RegionHandshakePacket.RegionInfo4Block[0];

            Call("omp.connect.regionHandshake", handshake);
        }
Exemple #5
0
 public void SendRegionHandshake(RegionInfo regionInfo, RegionHandshakeArgs args)
 {
 }
 public void SendRegionHandshake(RegionInfo regionInfo, RegionHandshakeArgs args)
 {
     throw new System.NotImplementedException();
 }
        public void sendRegionHandshake(IClientAPI remoteClient)
        {
            RegionHandshakeArgs args = new RegionHandshakeArgs();

            args.isEstateManager = m_scene.Permissions.IsGod(remoteClient.AgentId);
            if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero && m_scene.RegionInfo.EstateSettings.EstateOwner == remoteClient.AgentId)
                args.isEstateManager = true;
            else if (m_scene.RegionInfo.EstateSettings.IsEstateManager(remoteClient.AgentId))
                args.isEstateManager = true;

            args.billableFactor = m_scene.RegionInfo.EstateSettings.BillableFactor;
            args.terrainStartHeight0 = (float)m_scene.RegionInfo.RegionSettings.Elevation1SW;
            args.terrainHeightRange0 = (float)m_scene.RegionInfo.RegionSettings.Elevation2SW;
            args.terrainStartHeight1 = (float)m_scene.RegionInfo.RegionSettings.Elevation1NW;
            args.terrainHeightRange1 = (float)m_scene.RegionInfo.RegionSettings.Elevation2NW;
            args.terrainStartHeight2 = (float)m_scene.RegionInfo.RegionSettings.Elevation1SE;
            args.terrainHeightRange2 = (float)m_scene.RegionInfo.RegionSettings.Elevation2SE;
            args.terrainStartHeight3 = (float)m_scene.RegionInfo.RegionSettings.Elevation1NE;
            args.terrainHeightRange3 = (float)m_scene.RegionInfo.RegionSettings.Elevation2NE;
            args.simAccess = m_scene.RegionInfo.AccessLevel;
            args.waterHeight = (float)m_scene.RegionInfo.RegionSettings.WaterHeight;
            args.regionFlags = GetRegionFlags();
            args.regionName = m_scene.RegionInfo.RegionName;
            args.SimOwner = m_scene.RegionInfo.EstateSettings.EstateOwner;

            args.terrainBase0 = UUID.Zero;
            args.terrainBase1 = UUID.Zero;
            args.terrainBase2 = UUID.Zero;
            args.terrainBase3 = UUID.Zero;

            if (!m_scene.RegionInfo.RegionSettings.UsePaintableTerrain)
            {
                args.terrainDetail0 = m_scene.RegionInfo.RegionSettings.TerrainTexture1;
                args.terrainDetail1 = m_scene.RegionInfo.RegionSettings.TerrainTexture2;
                args.terrainDetail2 = m_scene.RegionInfo.RegionSettings.TerrainTexture3;
                args.terrainDetail3 = m_scene.RegionInfo.RegionSettings.TerrainTexture4;
            }
            else
            {
                args.terrainDetail0 = m_scene.RegionInfo.RegionSettings.PaintableTerrainTexture;
                args.terrainDetail1 = m_scene.RegionInfo.RegionSettings.PaintableTerrainTexture;
                args.terrainDetail2 = m_scene.RegionInfo.RegionSettings.PaintableTerrainTexture;
                args.terrainDetail3 = m_scene.RegionInfo.RegionSettings.PaintableTerrainTexture;

                AssetBase paintAsset = m_scene.AssetService.Get(m_scene.RegionInfo.RegionSettings.PaintableTerrainTexture.ToString());
                if (paintAsset == null)
                {
                    paintAsset = new AssetBase(m_scene.RegionInfo.RegionSettings.PaintableTerrainTexture, "PaintableTerrainTexture-" + m_scene.RegionInfo.RegionID, AssetType.Texture, UUID.Zero);
                    paintAsset.Flags = AssetFlags.Deletable;
                    AssetBase defaultTexture = m_scene.AssetService.Get(RegionSettings.DEFAULT_TERRAIN_TEXTURE_2.ToString());//Nice grass
                    if (defaultTexture == null)
                        //Erm... what to do!
                        return;

                    paintAsset.Data = defaultTexture.Data;//Eventually we need to replace this with an interpolation of the existing textures!
                    paintAsset.ID = m_scene.AssetService.Store(paintAsset);
                }
            }
            args.RegionType = Utils.StringToBytes(m_scene.RegionInfo.RegionType);

            remoteClient.SendRegionHandshake(m_scene.RegionInfo,args);
        }
        public void sendRegionHandshake(IClientAPI remoteClient)
        {
            RegionHandshakeArgs args = new RegionHandshakeArgs
                                           {isEstateManager = m_scene.Permissions.IsGod(remoteClient.AgentId)};

            if (m_scene.RegionInfo.EstateSettings.EstateOwner == remoteClient.AgentId)
                args.isEstateManager = true;
            else if (m_scene.RegionInfo.EstateSettings.IsEstateManager(remoteClient.AgentId))
                args.isEstateManager = true;

            args.billableFactor = m_scene.RegionInfo.EstateSettings.BillableFactor;
            args.terrainStartHeight0 = (float) m_scene.RegionInfo.RegionSettings.Elevation1SW;
            args.terrainHeightRange0 = (float) m_scene.RegionInfo.RegionSettings.Elevation2SW;
            args.terrainStartHeight1 = (float) m_scene.RegionInfo.RegionSettings.Elevation1NW;
            args.terrainHeightRange1 = (float) m_scene.RegionInfo.RegionSettings.Elevation2NW;
            args.terrainStartHeight2 = (float) m_scene.RegionInfo.RegionSettings.Elevation1SE;
            args.terrainHeightRange2 = (float) m_scene.RegionInfo.RegionSettings.Elevation2SE;
            args.terrainStartHeight3 = (float) m_scene.RegionInfo.RegionSettings.Elevation1NE;
            args.terrainHeightRange3 = (float) m_scene.RegionInfo.RegionSettings.Elevation2NE;
            args.simAccess = m_scene.RegionInfo.AccessLevel;
            args.waterHeight = (float) m_scene.RegionInfo.RegionSettings.WaterHeight;
            args.regionFlags = GetRegionFlags();
            args.regionName = m_scene.RegionInfo.RegionName;
            args.SimOwner = m_scene.RegionInfo.EstateSettings.EstateOwner;

            args.terrainBase0 = UUID.Zero;
            args.terrainBase1 = UUID.Zero;
            args.terrainBase2 = UUID.Zero;
            args.terrainBase3 = UUID.Zero;
            args.terrainDetail0 = m_scene.RegionInfo.RegionSettings.TerrainTexture1;
            args.terrainDetail1 = m_scene.RegionInfo.RegionSettings.TerrainTexture2;
            args.terrainDetail2 = m_scene.RegionInfo.RegionSettings.TerrainTexture3;
            args.terrainDetail3 = m_scene.RegionInfo.RegionSettings.TerrainTexture4;
            args.RegionType = Utils.StringToBytes(m_scene.RegionInfo.RegionType);

            remoteClient.SendRegionHandshake(m_scene.RegionInfo, args);
        }