r2mods/ilspy_dump/ror2_csproj/RoR2/BoxZone.cs

55 lines
1.2 KiB
C#

using UnityEngine;
using UnityEngine.Networking;
namespace RoR2;
public class BoxZone : BaseZoneBehavior, IZone
{
[SerializeField]
[Tooltip("If false, \"IsInBounds\" returns true when inside the box. If true, outside the box is considered in bounds.")]
private bool isInverted;
public override bool IsInBounds(Vector3 position)
{
Vector3 vector = position - base.transform.position;
vector.x = Mathf.Abs(vector.x);
vector.y = Mathf.Abs(vector.y);
vector.z = Mathf.Abs(vector.z);
Vector3 vector2 = base.transform.lossyScale * 0.5f;
if (isInverted)
{
if (vector.x > vector2.x && vector.y > vector2.y)
{
return vector.z > vector2.z;
}
return false;
}
if (vector.x < vector2.x && vector.y < vector2.y)
{
return vector.z < vector2.z;
}
return false;
}
private void UNetVersion()
{
}
public override bool OnSerialize(NetworkWriter writer, bool forceAll)
{
bool flag = base.OnSerialize(writer, forceAll);
bool flag2 = default(bool);
return flag2 || flag;
}
public override void OnDeserialize(NetworkReader reader, bool initialState)
{
base.OnDeserialize(reader, initialState);
}
public override void PreStartClient()
{
base.PreStartClient();
}
}