diff options
author | MW | 2007-06-21 14:34:45 +0000 |
---|---|---|
committer | MW | 2007-06-21 14:34:45 +0000 |
commit | d42483af3dd050faed262ee777950e456cd9806c (patch) | |
tree | 562720f711bf8450272f8357655e3f25416a170c /OpenSim | |
parent | Fixed problem of not being able to move out of the first 3X3 block of regions... (diff) | |
download | opensim-SC-d42483af3dd050faed262ee777950e456cd9806c.zip opensim-SC-d42483af3dd050faed262ee777950e456cd9806c.tar.gz opensim-SC-d42483af3dd050faed262ee777950e456cd9806c.tar.bz2 opensim-SC-d42483af3dd050faed262ee777950e456cd9806c.tar.xz |
Very Preliminary teleporting between regions added.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/OpenSim.Region/Scenes/Scene.cs | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/OpenSim/OpenSim.Region/Scenes/Scene.cs b/OpenSim/OpenSim.Region/Scenes/Scene.cs index 63a6e37..91f07c3 100644 --- a/OpenSim/OpenSim.Region/Scenes/Scene.cs +++ b/OpenSim/OpenSim.Region/Scenes/Scene.cs | |||
@@ -807,7 +807,20 @@ namespace OpenSim.Region.Scenes | |||
807 | } | 807 | } |
808 | else | 808 | else |
809 | { | 809 | { |
810 | remoteClient.SendTeleportCancel(); | 810 | RegionInfo reg = this.RequestNeighbouringRegionInfo(regionHandle); |
811 | if (reg != null) | ||
812 | { | ||
813 | remoteClient.SendTeleportLocationStart(); | ||
814 | AgentCircuitData agent = remoteClient.RequestClientInfo(); | ||
815 | agent.BaseFolder = LLUUID.Zero; | ||
816 | agent.InventoryFolder = LLUUID.Zero; | ||
817 | agent.startpos = new LLVector3(128, 128, 70); | ||
818 | agent.child = true; | ||
819 | this.commsManager.InterRegion.InformNeighbourOfChildAgent(regionHandle, agent); | ||
820 | this.commsManager.InterRegion.ExpectAvatarCrossing(regionHandle, remoteClient.AgentId, position); | ||
821 | remoteClient.SendRegionTeleport(regionHandle, 13, reg.IPListenAddr, (ushort)reg.IPListenPort, 4, (1 << 4)); | ||
822 | } | ||
823 | //remoteClient.SendTeleportCancel(); | ||
811 | } | 824 | } |
812 | } | 825 | } |
813 | 826 | ||