TO SQUASH: shark movement.

This commit is contained in:
2026-08-11 21:47:03 -04:00
parent d15c7002a8
commit e1c418499f
11 changed files with 327 additions and 80 deletions
+11 -1
View File
@@ -74,10 +74,20 @@ public class BasicBall : BallBase
{
if (collision.gameObject.CompareTag("Wall") ||
collision.gameObject.CompareTag("BasicBall") ||
collision.gameObject.CompareTag("FruitBall"))
collision.gameObject.CompareTag("FruitBall") ||
collision.gameObject.CompareTag("Shark"))
{
ContactPoint2D contact = collision.GetContact(0);
speed = Vector2.Reflect(speed, contact.normal);
if (collision.gameObject.CompareTag("Shark"))
{
audioSource.PlayOneShot(bounceSound);
}
}
else
{
Physics2D.IgnoreCollision(collision.collider, GetComponent<Collider2D>(), true);
}
}
}
+4
View File
@@ -97,5 +97,9 @@ public class EyeBall : BallBase
ContactPoint2D contact = collision.GetContact(0);
speed = Vector2.Reflect(speed, contact.normal);
}
else
{
Physics2D.IgnoreCollision(collision.collider, GetComponent<Collider2D>(), true);
}
}
}
+13 -2
View File
@@ -86,17 +86,28 @@ public class FruitBall : BallBase
{
if (collision.gameObject.CompareTag("Wall") ||
collision.gameObject.CompareTag("BasicBall") ||
collision.gameObject.CompareTag("FruitBall"))
collision.gameObject.CompareTag("FruitBall") ||
collision.gameObject.CompareTag("Shark"))
{
ContactPoint2D contact = collision.GetContact(0);
speed = Vector2.Reflect(speed, contact.normal);
if (collision.gameObject.CompareTag("BasicBall") ||
collision.gameObject.CompareTag("FruitBall"))
collision.gameObject.CompareTag("FruitBall") ||
collision.gameObject.CompareTag("Shark"))
{
speedIncreaseTimer = 2.0f; // Reset the timer to 2 seconds
speedMultiplier = 20.0f; // Set the speed multiplier to 7x
}
if (collision.gameObject.CompareTag("Shark"))
{
audioSource.PlayOneShot(bounceSound);
}
}
else
{
Physics2D.IgnoreCollision(collision.collider, GetComponent<Collider2D>(), true);
}
}
}
+4
View File
@@ -104,6 +104,10 @@ public class GlassBall : BallBase
Damage();
}
}
else
{
Physics2D.IgnoreCollision(collision.collider, GetComponent<Collider2D>(), true);
}
}
private void Damage()
+4
View File
@@ -143,6 +143,10 @@ public class NukeBall : BallBase
transform.position = currentPosition;
}
}
else
{
Physics2D.IgnoreCollision(collision.collider, GetComponent<Collider2D>(), true);
}
}
private void UpdateFallTargetFromCurrentPosition()
+4
View File
@@ -107,6 +107,10 @@ public class OozeBall : BallBase
ContactPoint2D contact = collision.GetContact(0);
speed = Vector2.Reflect(speed, contact.normal);
}
else
{
Physics2D.IgnoreCollision(collision.collider, GetComponent<Collider2D>(), true);
}
}
public void Split()