Files
dungeons/Assets/Plugins/Zenject/OptionalExtras/SampleGame2 (Advanced)/Scripts/Enemy/EnemyView.cs
2025-07-17 16:28:02 +02:00

86 lines
1.8 KiB
C#

using UnityEngine;
namespace Zenject.SpaceFighter
{
public class EnemyView : MonoBehaviour
{
[SerializeField]
MeshRenderer _renderer = null;
[SerializeField]
Collider _collider = null;
[SerializeField]
Rigidbody _rigidBody = null;
[Inject]
public EnemyFacade Facade
{
get; set;
}
public MeshRenderer Renderer
{
get { return _renderer; }
}
public Collider Collider
{
get { return _collider; }
}
public Rigidbody Rigidbody
{
get { return _rigidBody; }
}
public Vector3 LookDir
{
get { return -_rigidBody.transform.right; }
}
public Vector3 RightDir
{
get { return _rigidBody.transform.up; }
}
public Vector3 ForwardDir
{
get { return _rigidBody.transform.right; }
}
public Vector3 Position
{
get { return _rigidBody.transform.position; }
set { _rigidBody.transform.position = value; }
}
public Quaternion Rotation
{
get { return _rigidBody.rotation; }
set { _rigidBody.rotation = value; }
}
public Vector3 Velocity
{
get { return _rigidBody.linearVelocity; }
}
public Vector3 AngularVelocity
{
get { return _rigidBody.angularVelocity; }
set { _rigidBody.angularVelocity = value; }
}
public void AddForce(Vector3 force)
{
_rigidBody.AddForce(force);
}
public void AddTorque(float value)
{
_rigidBody.AddTorque(Vector3.forward * value);
}
}
}