private void PysicalMove(CubeCE ce) { var rbody = gameObject.GetComponent<Rigidbody>(); foreach (var key in ce.key) { switch(key) { case "W": { rbody.AddForce(transform.forward * 1.0f); break; } case "S": { rbody.AddForce(transform.forward * -1.0f); break; } case "A": { rbody.AddForce(transform.right * -1.0f); break; } case "D": { rbody.AddForce(transform.right * 1.0f); break; } } } }
private void DetectUserInput() { var e = new UserEvent (); e.type = UserEvent.EventType.CTR; e.sponsorId = base.gameObjectId; e.targetIdList = new List<string>(){base.gameObjectId}; var ce = new CubeCE (); if (Input.GetKey (KeyCode.W)) { ce.key.Add("W"); } if (Input.GetKey (KeyCode.S)) { ce.key.Add("S"); } if (Input.GetKey (KeyCode.A)) { ce.key.Add("A"); } if (Input.GetKey (KeyCode.D)) { ce.key.Add("D"); } if (ce.key.Count == 0) { return ; } // Debug.Log ("Get key"); e.rawContent = ce as object; base.BroadCastEvent (e); }