Files
badeend-go/Assets/FloatingDuckController.cs

47 lines
1.0 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class FloatingDuckController : MonoBehaviour
{
public Vector3 initialForce = new Vector3(-100, 0, 0);
public float minimumVelocity = 3;
public Collider duckCaughtCollider;
public event EventHandler DuckCaught;
private Rigidbody _rigidbody;
private void Awake()
{
_rigidbody = GetComponent<Rigidbody>();
}
private void OnEnable()
{
_rigidbody.velocity = Vector3.zero;
_rigidbody.AddForce(initialForce);
}
private void Update()
{
if (_rigidbody.velocity.magnitude < minimumVelocity)
{
_rigidbody.velocity = _rigidbody.velocity.normalized * minimumVelocity;
}
}
private void OnTriggerEnter(Collider other)
{
if (other == duckCaughtCollider)
{
if (DuckCaught != null)
{
DuckCaught.Invoke(this, EventArgs.Empty);
}
}
}
}