79 lines
2.0 KiB
C#
79 lines
2.0 KiB
C#
using UnityEngine;
|
|
|
|
namespace RPGCoreCommon.Helpers
|
|
{
|
|
public static class VectorExtensions
|
|
{
|
|
public static Vector3 Scale(this Vector3 vector, float scale)
|
|
{
|
|
return new Vector3(vector.x * scale, vector.y * scale, vector.z * scale);
|
|
}
|
|
|
|
public static Vector3 Scale(this Vector3 vector, float x, float y, float z)
|
|
{
|
|
return new Vector3(vector.x * x, vector.y * y, vector.z * z);
|
|
}
|
|
|
|
public static Vector3 Add(this Vector3 vector, float x, float y, float z)
|
|
{
|
|
return vector.AddX(x).AddY(y).AddZ(z);
|
|
}
|
|
|
|
public static Vector3 AddX(this Vector3 vector, float x)
|
|
{
|
|
vector.x += x;
|
|
return vector;
|
|
}
|
|
|
|
public static Vector3 AddY(this Vector3 vector, float y)
|
|
{
|
|
vector.y += y;
|
|
return vector;
|
|
}
|
|
|
|
public static Vector3 AddZ(this Vector3 vector, float z)
|
|
{
|
|
vector.z += z;
|
|
return vector;
|
|
}
|
|
|
|
public static Vector3 Set(this Vector3 vector, float x, float y, float z)
|
|
{
|
|
return vector.SetX(x).SetY(y).SetZ(z);
|
|
}
|
|
|
|
public static Vector3 SetX(this Vector3 vector, float x)
|
|
{
|
|
vector.x = x;
|
|
return vector;
|
|
}
|
|
|
|
public static Vector3 SetY(this Vector3 vector, float y)
|
|
{
|
|
vector.y = y;
|
|
return vector;
|
|
}
|
|
|
|
public static Vector3 SetZ(this Vector3 vector, float z)
|
|
{
|
|
vector.z = z;
|
|
return vector;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static Vector3 ToVector3_XZ(this Vector2 vector)
|
|
{
|
|
return new Vector3(vector.x, 0, vector.y);
|
|
}
|
|
|
|
public static Vector3 ToVector3_XY(this Vector2 vector)
|
|
{
|
|
return new Vector3(vector.x, vector.y, 0);
|
|
}
|
|
}
|
|
}
|