private void OnMessageHandler(object sender, MessageEventArgs e) { CommonTypeMessage msgType = JsonUtility.FromJson <CommonTypeMessage>(e.Data); switch (msgType.type) { case "rotate": RotationMessage rotMsg = JsonUtility.FromJson <RotationMessage>(e.Data); Vector2 ourVector = new Vector2(rotMsg.x, rotMsg.z); queuedCursorMoves.Enqueue(new StoredCursorMove(ourVector, rotMsg.id)); break; case "fire": FireMessage fireMsg = JsonUtility.FromJson <FireMessage>(e.Data); queuedPlayerFires.Enqueue(new StoredPlayerFire(fireMsg.id, fireMsg.held)); break; case "userConnect": //Only add a new user if there is room if (users.Count < userCap) { UserConnectMessage userMsg = JsonUtility.FromJson <UserConnectMessage>(e.Data); queuedUsers.Enqueue(userMsg.id); } break; case "userDisconnect": UserConnectMessage userDCMsg = JsonUtility.FromJson <UserConnectMessage>(e.Data); queuedDisconnects.Enqueue(userDCMsg.id); break; } }
private void processRotation(RotationMessage rm, Connection connection) { if (server.connections.ContainsKey(connection) && server.players.ContainsKey(server.connections[connection])) { server.players[server.connections[connection]].rotation = Quaternion.Euler(rm.rot); server.players[server.connections[connection]].player.transform.eulerAngles = rm.rot; } }
// Update is called once per frame //void Update() { //}//endUpdate private void OnServerRecieveGyro(NetworkMessage netMsg) { tiltROOO = netMsg.ReadMessage <RotationMessage>(); vects = tiltROOO.att; accel = tiltROOO.acc; //tiltROO = tiltROOO.tilty; //transform.rotation = tiltROO; //transform.Translate(0, 0, -Input.acceleration.z); //Debug.Log(tiltROO.ToString()); }
public void GenerateMessage() { var rotation = new Rotation { Id = 1, Name = "Name", RotationType = RotationTypes.Rotation3 }; var rotationMessage = new RotationMessage(rotation); ServiceTestHelper.AssertDomainMessageProperties(rotation, rotationMessage); Assert.AreEqual(rotation.RotationType, rotationMessage.RotationType); }
public void OnGetRotation(NetworkMessage netMsg) { RotationMessage msg = netMsg.ReadMessage <RotationMessage>(); rotation.x = -msg.rot.x; rotation.y = -msg.rot.z; rotation.z = -msg.rot.y; rotation.w = msg.rot.w; //Debug.Log((Time.time - prevTime) + "s"); //prevTime = Time.time; }
private void SendRotationMessage() { float x, y, z, t; float.TryParse(rotationX.text, out x); float.TryParse(rotationY.text, out y); float.TryParse(rotationZ.text, out z); float.TryParse(time.text, out t); var v3 = new Vector3(x, y, z); var message = new RotationMessage(v3, t <= 0 ? 1 : t); EventMessageDispatcher.Dispatch(message); }
private void Rotate() { if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.S)) { RotationMessage message = new RotationMessage(); message.PlayerID = 0; // ist das richtig?! message.Rotation = m_rotation; if (Input.GetKey(KeyCode.A)) { // - y -> Inverse richtig?! //m_rotation = Quaternion.Inverse(m_rotation) * Quaternion.Euler(0.0f, 5.0f, 0.0f); //m_rotation = transform.rotation * Quaternion.Euler(0.0f, -5.0f, 0.0f); // transform.Rotate(0.0f, -1.0f, 0.0f); message.PressedKey = KeyCode.A; } if (Input.GetKey(KeyCode.D)) { // + y // m_rotation = transform.rotation * Quaternion.Euler(0.0f, 5.0f, 0.0f); // transform.Rotate(0.0f, 1.0f, 0.0f); message.PressedKey = KeyCode.D; } if (IsServer) { NetworkManager.Instance.SendMessageToClients(message); } else { NetworkManager.Instance.SendMessageToServer(message); } } }
private int moveFrame = 0; //魔方转动帧数的计数// void Update() { if (!isTween && isChangParent && !isReset) {//复位// AnchorPointReset(); } if (Input.GetMouseButtonDown(0)) {//点中的Cube CollideCube(); } if (Input.GetMouseButtonUp(0)) {//当鼠标弹起碰撞物体为空// rateWasGameObject = null; } if (Input.GetMouseButton(0) && rateWasGameObject != null) { Ray ray1 = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit1; if (Physics.Raycast(ray1, out hit1)) //发出碰撞射线// { mouseButtonhitPoint = hit1.point; //获取碰撞点// } if (!isChangParent && (Mathf.Abs(mouseButtonhitPoint.x - mouseButtonDownhitPoint.x) > 0.5 || Mathf.Abs(mouseButtonhitPoint.y - mouseButtonDownhitPoint.y) > 0.5 || Mathf.Abs(mouseButtonhitPoint.z - mouseButtonDownhitPoint.z) > 0.5)) { RotationMessage message = TouchRotation(); //测试完用下一条 //TouchRotation(); print(message.dir); //测试完删除 print(message.scriptRotationController); //测试完删除 } } //测试完删除 if (Input.GetKeyDown(KeyCode.Space)) { Rotation(scriptRotationController, dir); } }