コード例 #1
0
        void UseCircuitCodeHandler(Packet packet, Agent agent)
        {
            RegionHandshakePacket handshake = new RegionHandshakePacket();
            handshake.RegionInfo.BillableFactor = 0f;
            handshake.RegionInfo.CacheID = UUID.Random();
            handshake.RegionInfo.IsEstateManager = false;
            handshake.RegionInfo.RegionFlags = 1;
            handshake.RegionInfo.SimOwner = UUID.Random();
            handshake.RegionInfo.SimAccess = 1;
            handshake.RegionInfo.SimName = Utils.StringToBytes("Simian");
            handshake.RegionInfo.WaterHeight = 20.0f;
            handshake.RegionInfo.TerrainBase0 = UUID.Zero;
            handshake.RegionInfo.TerrainBase1 = UUID.Zero;
            handshake.RegionInfo.TerrainBase2 = UUID.Zero;
            handshake.RegionInfo.TerrainBase3 = UUID.Zero;
            handshake.RegionInfo.TerrainDetail0 = UUID.Zero;
            handshake.RegionInfo.TerrainDetail1 = UUID.Zero;
            handshake.RegionInfo.TerrainDetail2 = UUID.Zero;
            handshake.RegionInfo.TerrainDetail3 = UUID.Zero;
            handshake.RegionInfo.TerrainHeightRange00 = 0f;
            handshake.RegionInfo.TerrainHeightRange01 = 20f;
            handshake.RegionInfo.TerrainHeightRange10 = 0f;
            handshake.RegionInfo.TerrainHeightRange11 = 20f;
            handshake.RegionInfo.TerrainStartHeight00 = 0f;
            handshake.RegionInfo.TerrainStartHeight01 = 40f;
            handshake.RegionInfo.TerrainStartHeight10 = 0f;
            handshake.RegionInfo.TerrainStartHeight11 = 40f;
            handshake.RegionInfo2.RegionID = UUID.Random();

            agent.SendPacket(handshake);
        }
コード例 #2
0
        void UseCircuitCodeHandler(Packet packet, Agent agent)
        {
            RegionHandshakePacket handshake = new RegionHandshakePacket();

            handshake.RegionInfo.BillableFactor  = 0f;
            handshake.RegionInfo.CacheID         = UUID.Random();
            handshake.RegionInfo.IsEstateManager = false;
            handshake.RegionInfo.RegionFlags     = (uint)(RegionFlags.AllowDirectTeleport | RegionFlags.AllowLandmark |
                                                          RegionFlags.AllowParcelChanges | RegionFlags.AllowSetHome | RegionFlags.AllowVoice | RegionFlags.PublicAllowed |
                                                          RegionFlags.Sandbox | RegionFlags.TaxFree);
            handshake.RegionInfo.SimOwner             = UUID.Random();
            handshake.RegionInfo.SimAccess            = (byte)SimAccess.Min;
            handshake.RegionInfo.SimName              = Utils.StringToBytes("Simian");
            handshake.RegionInfo.WaterHeight          = server.Scene.WaterHeight;
            handshake.RegionInfo.TerrainBase0         = UUID.Zero;
            handshake.RegionInfo.TerrainBase1         = UUID.Zero;
            handshake.RegionInfo.TerrainBase2         = UUID.Zero;
            handshake.RegionInfo.TerrainBase3         = UUID.Zero;
            handshake.RegionInfo.TerrainDetail0       = UUID.Zero;
            handshake.RegionInfo.TerrainDetail1       = UUID.Zero;
            handshake.RegionInfo.TerrainDetail2       = UUID.Zero;
            handshake.RegionInfo.TerrainDetail3       = UUID.Zero;
            handshake.RegionInfo.TerrainHeightRange00 = 0f;
            handshake.RegionInfo.TerrainHeightRange01 = 20f;
            handshake.RegionInfo.TerrainHeightRange10 = 0f;
            handshake.RegionInfo.TerrainHeightRange11 = 20f;
            handshake.RegionInfo.TerrainStartHeight00 = 0f;
            handshake.RegionInfo.TerrainStartHeight01 = 40f;
            handshake.RegionInfo.TerrainStartHeight10 = 0f;
            handshake.RegionInfo.TerrainStartHeight11 = 40f;
            handshake.RegionInfo2.RegionID            = UUID.Random();

            server.UDP.SendPacket(agent.AgentID, handshake, PacketCategory.Transaction);
        }
コード例 #3
0
ファイル: Estates.cs プロジェクト: jhurliman/simian
        public static void SendRegionHandshake(LLAgent agent, LLUDP udp, IScene scene, RegionInfo regionInfo, LLPermissions permissions)
        {
            RegionHandshakePacket handshake = new RegionHandshakePacket();

            // If the CacheID changes, the viewer will purge its object cache for this scene. We
            // just use the sceneID as the cacheID to make sure the viewer retains its object cache
            handshake.RegionInfo.CacheID         = scene.ID;
            handshake.RegionInfo.SimName         = Utils.StringToBytes(scene.Name);
            handshake.RegionInfo2.RegionID       = scene.ID;
            handshake.RegionInfo.IsEstateManager = (permissions != null) ? permissions.IsEstateManager(agent) : true;
            handshake.RegionInfo3.ColoName       = Utils.EmptyBytes;
            handshake.RegionInfo3.CPUClassID     = 0;
            handshake.RegionInfo3.CPURatio       = 0;

            if (regionInfo != null)
            {
                handshake.RegionInfo3.ProductName         = Utils.StringToBytes(PRODUCT_NAME);
                handshake.RegionInfo3.ProductSKU          = Utils.EmptyBytes;
                handshake.RegionInfo.RegionFlags          = (uint)regionInfo.RegionFlags;
                handshake.RegionInfo.SimAccess            = (byte)regionInfo.SimAccess;
                handshake.RegionInfo.SimOwner             = regionInfo.OwnerID;
                handshake.RegionInfo.TerrainBase0         = UUID.Zero;
                handshake.RegionInfo.TerrainBase1         = UUID.Zero;
                handshake.RegionInfo.TerrainBase2         = UUID.Zero;
                handshake.RegionInfo.TerrainBase3         = UUID.Zero;
                handshake.RegionInfo.TerrainDetail0       = regionInfo.TerrainDetail0;
                handshake.RegionInfo.TerrainDetail1       = regionInfo.TerrainDetail1;
                handshake.RegionInfo.TerrainDetail2       = regionInfo.TerrainDetail2;
                handshake.RegionInfo.TerrainDetail3       = regionInfo.TerrainDetail3;
                handshake.RegionInfo.TerrainHeightRange00 = regionInfo.TerrainHeightRange00;
                handshake.RegionInfo.TerrainHeightRange01 = regionInfo.TerrainHeightRange01;
                handshake.RegionInfo.TerrainHeightRange10 = regionInfo.TerrainHeightRange10;
                handshake.RegionInfo.TerrainHeightRange11 = regionInfo.TerrainHeightRange11;
                handshake.RegionInfo.TerrainStartHeight00 = regionInfo.TerrainStartHeight00;
                handshake.RegionInfo.TerrainStartHeight01 = regionInfo.TerrainStartHeight01;
                handshake.RegionInfo.TerrainStartHeight10 = regionInfo.TerrainStartHeight10;
                handshake.RegionInfo.TerrainStartHeight11 = regionInfo.TerrainStartHeight11;
                handshake.RegionInfo.WaterHeight          = regionInfo.WaterHeight;
            }
            else
            {
                handshake.RegionInfo3.ProductName = Utils.EmptyBytes;
                handshake.RegionInfo3.ProductSKU  = Utils.EmptyBytes;
                handshake.RegionInfo.SimAccess    = (byte)SimAccess.PG;
            }

            udp.SendPacket(agent, handshake, ThrottleCategory.Task, false);
        }
コード例 #4
0
ファイル: Client.cs プロジェクト: rryk/omp-addon
        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);
        }
コード例 #5
0
ファイル: Client.cs プロジェクト: rryk/omp-addon
        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);
        }
コード例 #6
0
        private void RegionHandshakeHandler(Packet packet, Simulator simulator)
        {
            RegionHandshakePacket handshake = (RegionHandshakePacket)packet;

            simulator.ID = handshake.RegionInfo.CacheID;

            simulator.IsEstateManager      = handshake.RegionInfo.IsEstateManager;
            simulator.Name                 = Helpers.FieldToUTF8String(handshake.RegionInfo.SimName);
            simulator.SimOwner             = handshake.RegionInfo.SimOwner;
            simulator.TerrainBase0         = handshake.RegionInfo.TerrainBase0;
            simulator.TerrainBase1         = handshake.RegionInfo.TerrainBase1;
            simulator.TerrainBase2         = handshake.RegionInfo.TerrainBase2;
            simulator.TerrainBase3         = handshake.RegionInfo.TerrainBase3;
            simulator.TerrainDetail0       = handshake.RegionInfo.TerrainDetail0;
            simulator.TerrainDetail1       = handshake.RegionInfo.TerrainDetail1;
            simulator.TerrainDetail2       = handshake.RegionInfo.TerrainDetail2;
            simulator.TerrainDetail3       = handshake.RegionInfo.TerrainDetail3;
            simulator.TerrainHeightRange00 = handshake.RegionInfo.TerrainHeightRange00;
            simulator.TerrainHeightRange01 = handshake.RegionInfo.TerrainHeightRange01;
            simulator.TerrainHeightRange10 = handshake.RegionInfo.TerrainHeightRange10;
            simulator.TerrainHeightRange11 = handshake.RegionInfo.TerrainHeightRange11;
            simulator.TerrainStartHeight00 = handshake.RegionInfo.TerrainStartHeight00;
            simulator.TerrainStartHeight01 = handshake.RegionInfo.TerrainStartHeight01;
            simulator.TerrainStartHeight10 = handshake.RegionInfo.TerrainStartHeight10;
            simulator.TerrainStartHeight11 = handshake.RegionInfo.TerrainStartHeight11;
            simulator.WaterHeight          = handshake.RegionInfo.WaterHeight;
            simulator.Flags                = (Simulator.RegionFlags)handshake.RegionInfo.RegionFlags;
            simulator.BillableFactor       = handshake.RegionInfo.BillableFactor;
            simulator.Access               = (Simulator.SimAccess)handshake.RegionInfo.SimAccess;

            Client.Log("Received a region handshake for " + simulator.ToString(), Helpers.LogLevel.Info);

            // Send a RegionHandshakeReply
            RegionHandshakeReplyPacket reply = new RegionHandshakeReplyPacket();

            reply.AgentData.AgentID   = Client.Self.AgentID;
            reply.AgentData.SessionID = Client.Self.SessionID;
            reply.RegionInfo.Flags    = 0;
            SendPacket(reply, simulator);

            // We're officially connected to this sim
            simulator.connected = true;
            simulator.ConnectedEvent.Set();
        }
コード例 #7
0
ファイル: Avatar.cs プロジェクト: BackupTheBerlios/ulife-svn
        //really really should be moved somewhere else (RegionInfo.cs ?)
        public void SendRegionHandshake(World RegionInfo)
        {
            OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs:SendRegionHandshake() - Creating empty RegionHandshake packet");
            System.Text.Encoding  _enc      = System.Text.Encoding.ASCII;
            RegionHandshakePacket handshake = new RegionHandshakePacket();

            OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs:SendRegionhandshake() - Filling in RegionHandshake details");
            handshake.RegionInfo.BillableFactor       = 0;
            handshake.RegionInfo.IsEstateManager      = false;
            handshake.RegionInfo.TerrainHeightRange00 = 60;
            handshake.RegionInfo.TerrainHeightRange01 = 60;
            handshake.RegionInfo.TerrainHeightRange10 = 60;
            handshake.RegionInfo.TerrainHeightRange11 = 60;
            handshake.RegionInfo.TerrainStartHeight00 = 10;
            handshake.RegionInfo.TerrainStartHeight01 = 10;
            handshake.RegionInfo.TerrainStartHeight10 = 10;
            handshake.RegionInfo.TerrainStartHeight11 = 10;
            handshake.RegionInfo.SimAccess            = 13;
            handshake.RegionInfo.WaterHeight          = m_regionWaterHeight;
            uint regionFlags = 72458694;

            if (this.m_regionTerraform)
            {
                regionFlags -= 64;
            }
            handshake.RegionInfo.RegionFlags    = regionFlags;
            handshake.RegionInfo.SimName        = _enc.GetBytes(m_regionName + "\0");
            handshake.RegionInfo.SimOwner       = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainBase0   = new LLUUID("b8d3965a-ad78-bf43-699b-bff8eca6c975");
            handshake.RegionInfo.TerrainBase1   = new LLUUID("abb783e6-3e93-26c0-248a-247666855da3");
            handshake.RegionInfo.TerrainBase2   = new LLUUID("179cdabd-398a-9b6b-1391-4dc333ba321f");
            handshake.RegionInfo.TerrainBase3   = new LLUUID("beb169c7-11ea-fff2-efe5-0f24dc881df2");
            handshake.RegionInfo.TerrainDetail0 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainDetail1 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainDetail2 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainDetail3 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.CacheID        = new LLUUID("545ec0a5-5751-1026-8a0b-216e38a7ab37");

            OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs:SendRegionHandshake() - Sending RegionHandshake packet");
            this.ControllingClient.OutPacket(handshake);
        }
コード例 #8
0
ファイル: Connections.cs プロジェクト: osgrid/openmetaverse
        private void UseCircuitCodeHandler(Packet packet, LLAgent agent)
        {
            RegionHandshakePacket handshake = new RegionHandshakePacket();

            handshake.RegionInfo.CacheID = m_scene.ID;
            handshake.RegionInfo.SimName = Utils.StringToBytes(m_scene.Name);
            handshake.RegionInfo2.RegionID = m_scene.ID;
            handshake.RegionInfo.IsEstateManager = (m_permissions != null) ? m_permissions.IsEstateManager(agent) : true;

            if (m_regionInfo != null)
            {
                handshake.RegionInfo3.ColoName = Utils.EmptyBytes;
                handshake.RegionInfo3.ProductName = Utils.StringToBytes(m_regionInfo.ProductName);
                handshake.RegionInfo3.ProductSKU = Utils.StringToBytes(m_regionInfo.ProductSKU);
                handshake.RegionInfo.RegionFlags = (uint)m_regionInfo.RegionFlags;
                handshake.RegionInfo.SimAccess = (byte)m_regionInfo.SimAccess;
                handshake.RegionInfo.SimOwner = m_regionInfo.OwnerID;
                handshake.RegionInfo.TerrainBase0 = m_regionInfo.TerrainBase0;
                handshake.RegionInfo.TerrainBase1 = m_regionInfo.TerrainBase1;
                handshake.RegionInfo.TerrainBase2 = m_regionInfo.TerrainBase2;
                handshake.RegionInfo.TerrainBase3 = m_regionInfo.TerrainBase3;
                handshake.RegionInfo.TerrainDetail0 = m_regionInfo.TerrainDetail0;
                handshake.RegionInfo.TerrainDetail1 = m_regionInfo.TerrainDetail1;
                handshake.RegionInfo.TerrainDetail2 = m_regionInfo.TerrainDetail2;
                handshake.RegionInfo.TerrainDetail3 = m_regionInfo.TerrainDetail3;
                handshake.RegionInfo.TerrainHeightRange00 = m_regionInfo.TerrainHeightRange00;
                handshake.RegionInfo.TerrainHeightRange01 = m_regionInfo.TerrainHeightRange01;
                handshake.RegionInfo.TerrainHeightRange10 = m_regionInfo.TerrainHeightRange10;
                handshake.RegionInfo.TerrainHeightRange11 = m_regionInfo.TerrainHeightRange11;
                handshake.RegionInfo.TerrainStartHeight00 = m_regionInfo.TerrainStartHeight00;
                handshake.RegionInfo.TerrainStartHeight01 = m_regionInfo.TerrainStartHeight01;
                handshake.RegionInfo.TerrainStartHeight10 = m_regionInfo.TerrainStartHeight10;
                handshake.RegionInfo.TerrainStartHeight11 = m_regionInfo.TerrainStartHeight11;
                handshake.RegionInfo.WaterHeight = m_regionInfo.WaterHeight;
            }
            else
            {
                handshake.RegionInfo3.ColoName = Utils.EmptyBytes;
                handshake.RegionInfo3.ProductName = Utils.StringToBytes("Simian");
                handshake.RegionInfo3.ProductSKU = Utils.EmptyBytes;
                handshake.RegionInfo.SimAccess = (byte)SimAccess.Min;
            }

            // Add the agent to the scene
            m_scene.EntityAddOrUpdate(this, agent, UpdateFlags.FullUpdate, 0);

            m_udp.SendPacket(agent, handshake, ThrottleCategory.Task, false);
        }
コード例 #9
0
ファイル: Estates.cs プロジェクト: thoys/simian
        public static void SendRegionHandshake(LLAgent agent, LLUDP udp, IScene scene, RegionInfo regionInfo, LLPermissions permissions)
        {
            RegionHandshakePacket handshake = new RegionHandshakePacket();

            // If the CacheID changes, the viewer will purge its object cache for this scene. We
            // just use the sceneID as the cacheID to make sure the viewer retains its object cache
            handshake.RegionInfo.CacheID = scene.ID;
            handshake.RegionInfo.SimName = Utils.StringToBytes(scene.Name);
            handshake.RegionInfo2.RegionID = scene.ID;
            handshake.RegionInfo.IsEstateManager = (permissions != null) ? permissions.IsEstateManager(agent) : true;
            handshake.RegionInfo3.ColoName = Utils.EmptyBytes;
            handshake.RegionInfo3.CPUClassID = 0;
            handshake.RegionInfo3.CPURatio = 0;

            if (regionInfo != null)
            {
                handshake.RegionInfo3.ProductName = Utils.StringToBytes(PRODUCT_NAME);
                handshake.RegionInfo3.ProductSKU = Utils.EmptyBytes;
                handshake.RegionInfo.RegionFlags = (uint)regionInfo.RegionFlags;
                handshake.RegionInfo.SimAccess = (byte)regionInfo.SimAccess;
                handshake.RegionInfo.SimOwner = regionInfo.OwnerID;
                handshake.RegionInfo.TerrainBase0 = UUID.Zero;
                handshake.RegionInfo.TerrainBase1 = UUID.Zero;
                handshake.RegionInfo.TerrainBase2 = UUID.Zero;
                handshake.RegionInfo.TerrainBase3 = UUID.Zero;
                handshake.RegionInfo.TerrainDetail0 = regionInfo.TerrainDetail0;
                handshake.RegionInfo.TerrainDetail1 = regionInfo.TerrainDetail1;
                handshake.RegionInfo.TerrainDetail2 = regionInfo.TerrainDetail2;
                handshake.RegionInfo.TerrainDetail3 = regionInfo.TerrainDetail3;
                handshake.RegionInfo.TerrainHeightRange00 = regionInfo.TerrainHeightRange00;
                handshake.RegionInfo.TerrainHeightRange01 = regionInfo.TerrainHeightRange01;
                handshake.RegionInfo.TerrainHeightRange10 = regionInfo.TerrainHeightRange10;
                handshake.RegionInfo.TerrainHeightRange11 = regionInfo.TerrainHeightRange11;
                handshake.RegionInfo.TerrainStartHeight00 = regionInfo.TerrainStartHeight00;
                handshake.RegionInfo.TerrainStartHeight01 = regionInfo.TerrainStartHeight01;
                handshake.RegionInfo.TerrainStartHeight10 = regionInfo.TerrainStartHeight10;
                handshake.RegionInfo.TerrainStartHeight11 = regionInfo.TerrainStartHeight11;
                handshake.RegionInfo.WaterHeight = regionInfo.WaterHeight;
            }
            else
            {
                handshake.RegionInfo3.ProductName = Utils.EmptyBytes;
                handshake.RegionInfo3.ProductSKU = Utils.EmptyBytes;
                handshake.RegionInfo.SimAccess = (byte)SimAccess.PG;
            }

            udp.SendPacket(agent, handshake, ThrottleCategory.Task, false);
        }
コード例 #10
0
ファイル: Avatar.cs プロジェクト: BackupTheBerlios/ulife-svn
        //really really should be moved somewhere else (RegionInfo.cs ?)
        public void SendRegionHandshake(World RegionInfo)
        {
            OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs:SendRegionHandshake() - Creating empty RegionHandshake packet");
            System.Text.Encoding _enc = System.Text.Encoding.ASCII;
            RegionHandshakePacket handshake = new RegionHandshakePacket();

            OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs:SendRegionhandshake() - Filling in RegionHandshake details");
            handshake.RegionInfo.BillableFactor = 0;
            handshake.RegionInfo.IsEstateManager = false;
            handshake.RegionInfo.TerrainHeightRange00 = 60;
            handshake.RegionInfo.TerrainHeightRange01 = 60;
            handshake.RegionInfo.TerrainHeightRange10 = 60;
            handshake.RegionInfo.TerrainHeightRange11 = 60;
            handshake.RegionInfo.TerrainStartHeight00 = 10;
            handshake.RegionInfo.TerrainStartHeight01 = 10;
            handshake.RegionInfo.TerrainStartHeight10 = 10;
            handshake.RegionInfo.TerrainStartHeight11 = 10;
            handshake.RegionInfo.SimAccess = 13;
            handshake.RegionInfo.WaterHeight = m_regionWaterHeight;
            uint regionFlags = 72458694;
            if (this.m_regionTerraform)
            {
                regionFlags -= 64;
            }
            handshake.RegionInfo.RegionFlags = regionFlags;
            handshake.RegionInfo.SimName = _enc.GetBytes(m_regionName + "\0");
            handshake.RegionInfo.SimOwner = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainBase0 = new LLUUID("b8d3965a-ad78-bf43-699b-bff8eca6c975");
            handshake.RegionInfo.TerrainBase1 = new LLUUID("abb783e6-3e93-26c0-248a-247666855da3");
            handshake.RegionInfo.TerrainBase2 = new LLUUID("179cdabd-398a-9b6b-1391-4dc333ba321f");
            handshake.RegionInfo.TerrainBase3 = new LLUUID("beb169c7-11ea-fff2-efe5-0f24dc881df2");
            handshake.RegionInfo.TerrainDetail0 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainDetail1 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainDetail2 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.TerrainDetail3 = new LLUUID("00000000-0000-0000-0000-000000000000");
            handshake.RegionInfo.CacheID = new LLUUID("545ec0a5-5751-1026-8a0b-216e38a7ab37");

            OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs:SendRegionHandshake() - Sending RegionHandshake packet");
            this.ControllingClient.OutPacket(handshake);
        }