Unityに間して質問させてください、よろしくお願いします。
ピンボールのようなゲームを作成している途中でして、ピンボールのフリッパー(左右のレバーの事)を動かす内容を書いている所です。
キーボードで矢印キーの左右のボタンでそれぞれ左右のフリッパーが動くようには設定できたのですが、スマートフォン(Android)をタップしてフリップした時にそれぞれ独立して上へ動くようにしたいと考えています。
現在はタップした時に両方が上へ動くようになっていますが、実装したい内容としましては
・スマートフォンの中心から右側をタップした時に右側のフリッパーが動く
・スマートフォンの中心から左側をタップした時に左側のフリッパーが動く
・タップを離した時にフリッパーを元に戻す
という動作をしたいと思います。
C#
1using UnityEngine; 2using System.Collections; 3 4public class FripperController : MonoBehaviour { 5 6 // HingiJointコンポーネントを入れる 7 private HingeJoint myHingJoynt; 8 9 // 初期の傾き 10 private float defaultAngle = 20; 11 12 // 弾いた時の傾き 13 private float flickAngle = -20; 14 15 // Use this for initialization 16 void Start () { 17 // HinjiJointコンポーネント取得 18 this.myHingJoynt = GetComponent<HingeJoint>(); 19 20 // フリッパーの傾きを設定 21 SetAngle(this.defaultAngle); 22 23 } 24 25 // Update is called once per frame 26 void Update(){ 27 28 // 左矢印キーを押した時、左フリッパーを動かす 29 if(Input.GetKeyDown(KeyCode.LeftArrow) && tag == "LeftFripperTag"){ 30 SetAngle(this.flickAngle); 31 } 32 33 // 右矢印キーを押した時、右フリッパーを動かす 34 if (Input.GetKeyDown(KeyCode.RightArrow) && tag == "RightFripperTag") { 35 SetAngle(this.flickAngle); 36 } 37 38 // 矢印キーを離した時、フリッパーを元に戻す 39 if (Input.GetKeyUp(KeyCode.LeftArrow) || Input.GetKeyUp(KeyCode.RightArrow) ) { 40 SetAngle(this.defaultAngle); 41 } 42 43 // マウスの左クリックを押した時及びスマートフォンでタップした時、フリッパーを動かす 44 if (Input.GetMouseButton(0)) { 45 SetAngle(this.flickAngle); 46 } 47 48 // マウスの左クリックを話した時及びスマートフォンでタップを外した時に、フリッパーを元に戻す 49 if (Input.GetMouseButtonUp(0)) { 50 SetAngle(this.defaultAngle); 51 } 52 } 53 54 55 public void SetAngle(float angle) { 56 JointSpring jointSpr = this.myHingJoynt.spring; 57 jointSpr.targetPosition = angle; 58 this.myHingJoynt.spring = jointSpr; 59 } 60}
現在の仕様ではどこをタップしても両方が動くようになっていますので、申し訳ありませんがどなたかご教授お願いします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/29 00:26