DeltaVR/Assets/Scripts/Breakout/BreakoutBall.cs
2021-03-15 02:08:53 +02:00

40 lines
911 B
C#

using System;
using UnityEngine;
namespace Breakout
{
public class BreakoutBall : MonoBehaviour
{
public float speed = 2f;
private Rigidbody _rigidbody;
private void Awake()
{
Events.OnBreakoutEndGame += DestroyBall;
}
private void OnDestroy()
{
Events.OnBreakoutEndGame -= DestroyBall;
}
private void Start()
{
_rigidbody = GetComponent<Rigidbody>();
}
void FixedUpdate()
{
// Fix velocity on X axis so ball is more predictable.
var velocity = _rigidbody.velocity;
velocity.x = Math.Sign(velocity.x) * speed;
velocity = velocity.normalized * (speed * 1.5f);
_rigidbody.velocity = velocity;
}
private void DestroyBall()
{
Destroy(gameObject);
}
}
}