diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Framework/IClientAPI.cs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index 0c5224b..5a5e5d0 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs | |||
@@ -602,16 +602,26 @@ namespace OpenSim.Framework | |||
602 | { | 602 | { |
603 | // we are on the new one | 603 | // we are on the new one |
604 | if (m_flags.HasFlag(PrimUpdateFlags.CancelKill)) | 604 | if (m_flags.HasFlag(PrimUpdateFlags.CancelKill)) |
605 | m_flags = PrimUpdateFlags.FullUpdatewithAnim; | 605 | { |
606 | if (m_flags.HasFlag(PrimUpdateFlags.UpdateProbe)) | ||
607 | m_flags = PrimUpdateFlags.UpdateProbe; | ||
608 | else | ||
609 | m_flags = PrimUpdateFlags.FullUpdatewithAnim; | ||
610 | } | ||
606 | } | 611 | } |
607 | 612 | ||
608 | public virtual void Update(EntityUpdate oldupdate) | 613 | public virtual void Update(EntityUpdate oldupdate) |
609 | { | 614 | { |
610 | // we are on the new one | 615 | // we are on the new one |
611 | PrimUpdateFlags updateFlags = oldupdate.Flags; | 616 | PrimUpdateFlags updateFlags = oldupdate.Flags; |
617 | if (updateFlags.HasFlag(PrimUpdateFlags.UpdateProbe)) | ||
618 | updateFlags &= ~PrimUpdateFlags.UpdateProbe; | ||
612 | if (m_flags.HasFlag(PrimUpdateFlags.CancelKill)) | 619 | if (m_flags.HasFlag(PrimUpdateFlags.CancelKill)) |
613 | { | 620 | { |
614 | m_flags = PrimUpdateFlags.FullUpdatewithAnim; | 621 | if(m_flags.HasFlag(PrimUpdateFlags.UpdateProbe)) |
622 | m_flags = PrimUpdateFlags.UpdateProbe; | ||
623 | else | ||
624 | m_flags = PrimUpdateFlags.FullUpdatewithAnim; | ||
615 | } | 625 | } |
616 | else | 626 | else |
617 | m_flags |= updateFlags; | 627 | m_flags |= updateFlags; |
@@ -679,6 +689,7 @@ namespace OpenSim.Framework | |||
679 | 689 | ||
680 | FullUpdatewithAnim = FullUpdate | Animations, | 690 | FullUpdatewithAnim = FullUpdate | Animations, |
681 | 691 | ||
692 | UpdateProbe = 0x10000000, // 1 << 28 | ||
682 | SendInTransit = 0x20000000, // 1 << 29 | 693 | SendInTransit = 0x20000000, // 1 << 29 |
683 | CancelKill = 0x40000000, // 1 << 30 | 694 | CancelKill = 0x40000000, // 1 << 30 |
684 | Kill = 0x80000000 // 1 << 31 | 695 | Kill = 0x80000000 // 1 << 31 |
@@ -805,7 +816,7 @@ namespace OpenSim.Framework | |||
805 | event TeleportCancel OnTeleportCancel; | 816 | event TeleportCancel OnTeleportCancel; |
806 | event DeRezObject OnDeRezObject; | 817 | event DeRezObject OnDeRezObject; |
807 | event RezRestoreToWorld OnRezRestoreToWorld; | 818 | event RezRestoreToWorld OnRezRestoreToWorld; |
808 | event Action<IClientAPI> OnRegionHandShakeReply; | 819 | event Action<IClientAPI, uint> OnRegionHandShakeReply; |
809 | event GenericCall1 OnRequestWearables; | 820 | event GenericCall1 OnRequestWearables; |
810 | event Action<IClientAPI, bool> OnCompleteMovementToRegion; | 821 | event Action<IClientAPI, bool> OnCompleteMovementToRegion; |
811 | 822 | ||