public void ShootCannon() { GameObject thisCannonBall = Instantiate(cannonBall, transform.position, transform.rotation); thisCannonBall.GetComponent <Rigidbody>().AddRelativeForce(firePower, 0, 0, ForceMode.Impulse); thisCannonBall.GetComponent <CannonBall>().SetMountainTops(MountainGenerator.GetMountainTops()); thisCannonBall.GetComponent <CannonBall>().SetMountainTop(MountainGenerator.GetMountainTop()); }
private void MountainCollisionDetection() { Dictionary <int, float> mountainTops = MountainGenerator.GetMountainTops(); float xminPosition = _turkey.minX; float xmaxPosition = (_turkey.GetAvgLateralVelocity() > 0) ? _turkey.maxX : (_turkey.maxX + _turkey.minX) / 2; float yPosition = _turkey.minY; int roundedXminPosition = (int)Math.Round(xminPosition); int roundedXmaxPosition = (int)Math.Round(xmaxPosition); if (mountainTops.Keys.Contains(roundedXminPosition) && yPosition < mountainTops[roundedXminPosition]) { _turkey.MountainBouncing(mountainTops[roundedXminPosition]); } else if ((mountainTops.Keys.Contains(roundedXmaxPosition) && yPosition < mountainTops[roundedXmaxPosition])) { _turkey.MountainBouncing(mountainTops[roundedXmaxPosition]); } }