void OnTriggerEnter2D(Collider2D otherColl) { if (otherColl.tag == "Table") { if (circColl.IsTouching(otherColl)) { otherColl.gameObject.GetComponent <TableBehaviour>().Flip(flipForce, torque); SetFlipAccuracy(transform.position.x - otherColl.transform.position.x); Physics2D.IgnoreCollision(circColl, otherColl); } else if (boxColl.IsTouching(otherColl)) { flipAcc = FlipAccuracy.none; HitTable(); } } }
void SetFlipAccuracy(float dist) { if (dist < 1.15 || dist > 1.75) { flipAcc = FlipAccuracy.meh; flipAccMsgRend.sprite = imgMeh; } else if (dist < 1.35 || dist > 1.55) { flipAcc = FlipAccuracy.good; flipAccMsgRend.sprite = imgGood; } else { flipAcc = FlipAccuracy.perf; flipAccMsgRend.sprite = imgPerf; } // Launch in-game flip accuracy message anim.SetTrigger(showFlipAccHash); }
public void Reset() { gameState = GameManager.GameStates.play; flipAcc = FlipAccuracy.perf; anim.SetInteger(stateHash, (int)AnimStates.idle); rb2D.isKinematic = true; rb2D.gravityScale = 0.0f; rb2D.velocity.Set(0.0f, 0.0f); transform.position = startPos; flipForce.Set(-400.0f, 500.0f); torque = 125.0f; impactForce.Set(100.0f, 100.0f); anim.speed = 1.0f; soundFootstepsPitch = 1.0f; audioS.pitch = 1.0f; exitTimer = 0.0f; exitMenuUp = false; }