Add isRelativeToParent option

This commit is contained in:
Noah Pilarski 2022-11-25 18:04:55 -05:00
parent ca1c669bc4
commit c2e3bd65cf
7 changed files with 23 additions and 6 deletions

View File

@ -60,7 +60,9 @@ namespace NewHorizons.Builder.ShipLog
}
}
revealTriggerVolume.transform.position = planetGO.transform.TransformPoint(info.position ?? Vector3.zero);
var pos = (Vector3)(info.position ?? Vector3.zero);
if (info.isRelativeToParent) revealTriggerVolume.transform.localPosition = pos;
else revealTriggerVolume.transform.position = planetGO.transform.TransformPoint(pos);
return revealTriggerVolume;
}

View File

@ -39,7 +39,9 @@ namespace NewHorizons.Builder.Volumes
}
}
go.transform.position = planetGO.transform.TransformPoint(info.position != null ? (Vector3)info.position : Vector3.zero);
var pos = (Vector3)(info.position ?? Vector3.zero);
if (info.isRelativeToParent) go.transform.localPosition = pos;
else go.transform.position = planetGO.transform.TransformPoint(pos);
go.layer = LayerMask.NameToLayer("AdvancedEffectVolume");
var audioSource = go.AddComponent<AudioSource>();

View File

@ -36,7 +36,9 @@ namespace NewHorizons.Builder.Volumes
}
}
go.transform.position = planetGO.transform.TransformPoint(info.position != null ? (Vector3)info.position : Vector3.zero);
var pos = (Vector3)(info.position ?? Vector3.zero);
if (info.isRelativeToParent) go.transform.localPosition = pos;
else go.transform.position = planetGO.transform.TransformPoint(pos);
go.layer = LayerMask.NameToLayer("BasicEffectVolume");
var shape = go.AddComponent<SphereShape>();

View File

@ -39,7 +39,9 @@ namespace NewHorizons.Builder.Volumes
}
}
go.transform.position = planetGO.transform.TransformPoint(info.position != null ? (Vector3)info.position : Vector3.zero);
var pos = (Vector3)(info.position ?? Vector3.zero);
if (info.isRelativeToParent) go.transform.localPosition = pos;
else go.transform.position = planetGO.transform.TransformPoint(pos);
go.layer = LayerMask.NameToLayer("BasicEffectVolume");
var shape = go.AddComponent<SphereShape>();

View File

@ -32,7 +32,9 @@ namespace NewHorizons.Builder.Volumes
}
}
go.transform.position = planetGO.transform.TransformPoint(info.position != null ? (Vector3)info.position : Vector3.zero);
var pos = (Vector3)(info.position ?? Vector3.zero);
if (info.isRelativeToParent) go.transform.localPosition = pos;
else go.transform.position = planetGO.transform.TransformPoint(pos);
go.layer = LayerMask.NameToLayer("BasicEffectVolume");
var collider = go.AddComponent<SphereCollider>();

View File

@ -32,7 +32,9 @@ namespace NewHorizons.Builder.Volumes
}
}
go.transform.position = planetGO.transform.TransformPoint(info.position != null ? (Vector3)info.position : Vector3.zero);
var pos = (Vector3)(info.position ?? Vector3.zero);
if (info.isRelativeToParent) go.transform.localPosition = pos;
else go.transform.position = planetGO.transform.TransformPoint(pos);
go.layer = LayerMask.NameToLayer("BasicEffectVolume");
var shape = go.AddComponent<SphereShape>();

View File

@ -105,6 +105,11 @@ namespace NewHorizons.External.Modules
/// </summary>
public string parentPath;
/// <summary>
/// Whether the positional coordinates are relative to parent instead of the root planet object.
/// </summary>
public bool isRelativeToParent;
/// <summary>
/// An optional rename of this volume.
/// </summary>