// Update is called once per frame void Update() { if (OnTouchDown()) { Vector2 tapPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition);//スクリーンから見たマウスの座標を得る //コライダーを持つオブジェクト=クリックされた場所の座標 Collider2D collider = Physics2D.OverlapPoint(tapPoint); //変更:コライダーが取得出来た時だけ処理する if (collider == thiscol) { Debug.Log("Buyタップされました"); ydc.Rise_rate(10); } } //スマホ向け そのオブジェクトがタッチされていたらtrue(マルチタップ対応) bool OnTouchDown() { if (Input.GetMouseButtonDown(0)) { return(true); } // タッチされているとき if (0 < Input.touchCount) { // タッチされている指の数だけ処理 for (int i = 0; i < Input.touchCount; i++) { // タッチ情報をコピー Touch t = Input.GetTouch(i); // タッチしたときかどうか if (t.phase == TouchPhase.Began) { //タッチした位置からRayを飛ばす Ray ray = Camera.main.ScreenPointToRay(t.position); RaycastHit hit = new RaycastHit(); if (Physics.Raycast(ray, out hit)) { //Rayを飛ばしてあたったオブジェクトが自分自身だったら if (hit.collider.gameObject == this.gameObject) { return(true); } } } } } return(false); //タッチされてなかったらfalse } }
public void OnClick(int no) { Debug.Log(no); switch (no)//ボタン処理(売買処理) { //ドル買い処理 case 0: if (ydc.ConfirmRate() < 0) { break; } if (SController.ConfirmS() > TRILLION) { SController.scoreRD(-TRILLION); SController.DollerRD(Math.Truncate(TRILLION / ydc.ConfirmRate()) * 0.99); ydc.Rise_rate(10); } else { SController.scoreRD(-SController.ConfirmS()); SController.DollerRD(Math.Truncate(SController.ConfirmS() / ydc.ConfirmRate())); } break; case 2: if (ydc.ConfirmRate() < 0) { break; } if (SController.ConfirmS() >= 10 * TRILLION) { SController.scoreRD(-10 * TRILLION); SController.DollerRD(Math.Truncate(10 * TRILLION / ydc.ConfirmRate()) * 0.98); ydc.Rise_rate(30); } break; case 4: if (ydc.ConfirmRate() < 0) { break; } if (SController.ConfirmS() >= 100 * TRILLION) { SController.scoreRD(-100 * TRILLION); SController.DollerRD(Math.Truncate(100 * TRILLION / ydc.ConfirmRate()) * 0.95); ydc.Rise_rate(50); } break; //ドル売り処理 case 1: if (ydc.ConfirmRate() < 0) { break; } if (SController.ConfirmD() > 0.01 * TRILLION) { SController.DollerRD(-0.01 * TRILLION); SController.scoreRD(Math.Truncate(TRILLION * 0.01 * ydc.ConfirmRate())); ydc.Drop_rate(10); } break; case 3: if (ydc.ConfirmRate() < 0) { break; } if (SController.ConfirmD() > 0.1 * TRILLION) { SController.DollerRD(-0.1 * TRILLION); SController.scoreRD(Math.Truncate(0.1 * TRILLION * ydc.ConfirmRate())); ydc.Drop_rate(30); } break; case 5: if (ydc.ConfirmRate() < 0) { break; } if (SController.ConfirmD() > TRILLION) { SController.DollerRD(-TRILLION); SController.scoreRD(Math.Truncate(TRILLION * ydc.ConfirmRate())); ydc.Drop_rate(50); } break; } }