//this waits for the server to respond before actually moving the object. //another strategy might be to move the object, then correct private void Network_PositionChangeHandler(object sender, Massive.Events.MoveEvent e) { //throw new NotImplementedException(); if (!e.InstanceID.Equals(Globals.UserAccount.UserID)) { MSceneObject mo = (MSceneObject)MScene.ModelRoot.FindModuleByInstanceID(e.InstanceID); if (mo != null) { //movesync smoothly moves an object into position MMoveSync ms = (MMoveSync)mo.FindModuleByType(MObject.EType.MoveSync); if (ms == null) { ms = new MMoveSync(mo, e.Position, e.Rotation); mo.Add(ms); } else { ms.SetTarget(e.Position, e.Rotation); } } } else { MMessageBus.AvatarMoved(this, e.InstanceID, e.Position, e.Rotation); } //Console.WriteLine(e.Position); }
private void Network_PositionChangeHandler(object sender, MoveEvent e) { GUIEvent(ObjectMovedEvent, sender, e); }
private void Network_TeleportHandler(object sender, Massive.Events.MoveEvent e) { SetPosition(e.Position); }
private void Network_PositionChangeHandler(object sender, Massive.Events.MoveEvent e) { SetPosition(e.Position); }